提交 c4f2cc32 作者: luyincheng

品牌墙盒和三方墙盒发货分开导入

父级 3c256e64
......@@ -77,6 +77,10 @@ public class DeliveryImport implements Import {
}else if(wallboxs.stream().noneMatch(w-> StringUtils.isEmpty(w.getTrackingStatus())||"0".equals(w.getTrackingStatus()))){
rowdata.add("error:已审批墙盒申请单必须为未发货状态!");
}
if(wallboxs.stream().noneMatch(w->"CAMS".equals(w.getWallboxModelName()))){
rowdata.add("error:必须是品牌墙盒!");
}
// String error = "error:";
// if(ProductType.品牌墙盒.name().equals(deliveryAddVo.getMaterialCategory())||
// ProductType.三方墙盒.name().equals(deliveryAddVo.getMaterialCategory())){
......
package com.starcharge.wios.Import.impl;
import com.starcharge.wios.Import.Import;
import com.starcharge.wios.dao.entity.WallboxApply;
import com.starcharge.wios.dao.mappers.OrderMapper;
import com.starcharge.wios.dao.mappers.WallboxApplyMapper;
import com.starcharge.wios.vo.DeliveryAddVo;
import com.starcharge.wios.vo.WallboxApplyInstallListVO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import javax.validation.ConstraintViolation;
import javax.validation.Validator;
import java.util.List;
import java.util.Set;
/**
* @projectName:xr-wios
* @packageName:com.starcharge.wios.Import.impl
* @Description:TODO
* @Author:luyincheng
* @CreateDate: 2023/10/1317:01
*/
@Service
public class DeliveryOtherBoxImport implements Import {
public interface BatchCreateEntityGroup {
}
@Autowired
private Validator validator;
@Autowired
private OrderMapper orderMapper;
@Autowired
private WallboxApplyMapper wallboxApplyMapper;
@Override
public List<?> handle(List<Object> list) {
// List<String> headList = (List<String>)list.get(0);
for(int i=1;i<list.size();i++){
List<String> rowdata = (List<String>)list.get(i);
DeliveryAddVo deliveryAddVo=new DeliveryAddVo();
deliveryAddVo.setInstallOrder(rowdata.get(0));
deliveryAddVo.setMaterialSn(rowdata.get(1));
deliveryAddVo.setLogisticOrder(rowdata.get(2));
// deliveryAddVo.setMaterialCategory(rowdata.get(2));
// deliveryAddVo.setMaterialCode(rowdata.get(3));
// deliveryAddVo.setMaterialName(rowdata.get(4));
// deliveryAddVo.setMaterialCompany(rowdata.get(5));
// deliveryAddVo.setLogisticOrder(rowdata.get(6));
// deliveryAddVo.setTeam(rowdata.get(7));
Set<ConstraintViolation<DeliveryAddVo>> sets = validator.validate(deliveryAddVo, DeliveryOtherBoxImport.BatchCreateEntityGroup.class);
if(!sets.isEmpty()){
rowdata.add(sets.stream().map(ConstraintViolation::getMessage).reduce("error:",(s1,s2)->s1+";"+s2));
continue;
}
WallboxApply wallboxApplyquery=new WallboxApply();
wallboxApplyquery.setOrderId(deliveryAddVo.getInstallOrder());
wallboxApplyquery.setCheckStatus(2l);
List<WallboxApplyInstallListVO> wallboxs= this.wallboxApplyMapper.selectWallboxApplyListFromOrder(wallboxApplyquery);
if(CollectionUtils.isEmpty(wallboxs)){
rowdata.add("error:未找到已审批墙盒申请单!");
}else if(wallboxs.stream().noneMatch(w-> StringUtils.isEmpty(w.getTrackingStatus())||"0".equals(w.getTrackingStatus()))){
rowdata.add("error:已审批墙盒申请单必须为未发货状态!");
}
if(wallboxs.stream().noneMatch(w->!"CAMS".equals(w.getWallboxModelName()))){
rowdata.add("error:必须是三方墙盒!");
}
// String error = "error:";
// if(ProductType.品牌墙盒.name().equals(deliveryAddVo.getMaterialCategory())||
// ProductType.三方墙盒.name().equals(deliveryAddVo.getMaterialCategory())){
// if(ProductType.品牌墙盒.name().equals(deliveryAddVo.getMaterialCategory())){
// //判断订单中是否品牌墙盒
// Order order=this.orderMapper.selectById(deliveryAddVo.getInstallOrder());
// if(order==null||!"CAMS".equals(order)){
// error+="订单必须是CAMS品牌墙盒订单;";
// }
// }
// }else {
// error+="物料类型必须是:"+ ProductType.品牌墙盒.name()+"/"+ProductType.三方墙盒.name()+";";
//
// }
//
// if(error.length()>0){
// rowdata.add(error);
// continue;
// }
}
return list;
}
}
......@@ -129,10 +129,12 @@
t_wallbox_apply.modify_account,
t_wallbox_apply.modify_time,
t_order.shipno as tracking_number,
t_order.status as install_status
t_order.status as install_status,
tc.name as wallboxModelName
FROM t_wallbox_apply
LEFT JOIN t_order ON t_wallbox_apply.order_id = t_order.id
left join t_region reg on reg.id=t_wallbox_apply.region_id
left join t_oem_cascade tc on tc.id = t_wallbox_apply.wallbox_model
<where>
<if test="supplierTeam != null and supplierTeam != ''">and t_wallbox_apply.supplier_team like concat('%',
#{supplierTeam},
......
......@@ -86,4 +86,12 @@ public class WallboxApplyInstallListVO {
private String trackingStatus;
@ApiModelProperty(value = "数量")
private String number;
/**
* 墙盒品牌名称
*
* @mbg.generated
*/
@ApiModelProperty(value = "墙盒品牌名称")
private String wallboxModelName;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论