import com.xzx.gc.GcUserApplication;
|
import com.xzx.gc.entity.AddressInfo;
|
import com.xzx.gc.entity.OrderDetailInfo;
|
import com.xzx.gc.entity.OrderInfo;
|
import com.xzx.gc.entity.UserTargetInfo;
|
import com.xzx.gc.user.mapper.*;
|
import com.xzx.gc.user.service.AddressService;
|
import com.xzx.gc.user.service.UserService;
|
import com.xzx.gc.user.service.UserTargetInfoService;
|
import org.junit.Test;
|
import org.junit.runner.RunWith;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.test.context.ActiveProfiles;
|
import org.springframework.test.context.junit4.SpringRunner;
|
import tk.mybatis.mapper.entity.Example;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
|
@RunWith(SpringRunner.class)
|
@SpringBootTest(classes = {GcUserApplication.class})
|
@ActiveProfiles("fix")
|
public class FixTest {
|
|
@Autowired
|
private UserTargetInfoService userTargetInfoService;
|
|
|
@Autowired
|
private UserTargetInfoMapper userTargetInfoMapper;
|
|
|
@Autowired
|
private UserService userService;
|
|
|
@Autowired
|
private AddressService addressService;
|
|
@Autowired
|
private AddressMapper addressMapper;
|
|
@Autowired
|
private OrderMapper orderMapper;
|
|
@Autowired
|
private OrderDetailMapper orderDetailMapper;
|
|
@Autowired
|
private OrderDetailBatchMapper orderDetailBatchMapper;
|
|
|
@Test
|
public void fixtaeget(){
|
//修复意向客户的地址问题
|
Example example=new Example(UserTargetInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
criteria.andEqualTo("regsterType",3);
|
criteria.andIsNull("provinceId");
|
List<UserTargetInfo> userTargetInfo1 = userTargetInfoMapper.selectByExample(example);
|
for (UserTargetInfo userTargetInfo : userTargetInfo1) {
|
String mobile = userTargetInfo.getMobile();
|
AddressInfo addressInfo=new AddressInfo();
|
addressInfo.setDelFlag("0");
|
addressInfo.setFlag("1");
|
addressInfo.setMobilePhone(mobile);
|
AddressInfo addressInfo1 = addressMapper.selectOne(addressInfo);
|
if(addressInfo1!=null){
|
userTargetInfoService.updateTargetUserAddr(addressInfo1);
|
}
|
}
|
System.out.println("修复了"+userTargetInfo1.size()+"条记录");
|
}
|
|
|
@Test
|
public void fixOrderAdd(){
|
//修复订单地址id
|
Example example=new Example(OrderDetailInfo.class);
|
Example.Criteria criteria = example.createCriteria();
|
criteria.andIsNull("addressId");
|
List<OrderDetailInfo> orderDetailInfos = orderDetailMapper.selectByExample(example);
|
|
List<OrderDetailInfo> list=new ArrayList<>();
|
for (OrderDetailInfo orderDetailInfo : orderDetailInfos) {
|
OrderDetailInfo detailInfo=new OrderDetailInfo();
|
String orderId = orderDetailInfo.getOrderId();
|
OrderInfo orderInfo = orderMapper.selectByPrimaryKey(orderId);
|
String createUserId = orderInfo.getCreateUserId();
|
|
Long addressId;
|
AddressInfo addressInfo=new AddressInfo();
|
addressInfo.setUserId(createUserId);
|
addressInfo.setFlag("1");
|
addressInfo.setDelFlag("0");
|
AddressInfo addressInfo1 = addressMapper.selectOne(addressInfo);
|
if(addressInfo1!=null){
|
addressId=addressInfo1.getAddressId();
|
}else {
|
//找删除的数据里最新的那条
|
Example example1=new Example(AddressInfo.class);
|
Example.Criteria criteria1 = example1.createCriteria();
|
criteria1.andEqualTo("userId",createUserId);
|
criteria1.andEqualTo("flag","1");
|
example1.orderBy("createTime").desc();
|
List<AddressInfo> addressInfos = addressMapper.selectByExample(example1);
|
addressId=addressInfos.get(0).getAddressId();
|
}
|
|
detailInfo.setOrderId(orderDetailInfo.getOrderId());
|
detailInfo.setAddressId(addressId);
|
list.add(detailInfo);
|
}
|
|
orderDetailBatchMapper.updateBatchByPrimaryKeySelective(list);
|
}
|
|
}
|