|  |  | 
 |  |  |         Mat mat = matService.selectByMatnr(nccJcQilibcBarcodeflowWms.getWlbm()); | 
 |  |  |         MatParam matParam = new MatParam(); | 
 |  |  |         Synchro.Copy(mat, matParam); | 
 |  |  |         matParam.setOrderNo(nccJcQilibcBarcodeflowWms.getZkdh()); | 
 |  |  |         matParam.setBatch(nccJcQilibcBarcodeflowWms.getVbatchcode()); | 
 |  |  |         matParam.setAnfme(nccJcQilibcBarcodeflowWms.getAsnnum() == null ? 0.0D : nccJcQilibcBarcodeflowWms.getAsnnum().doubleValue()); | 
 |  |  |         return R.ok().add(matParam); | 
 
 |  |  | 
 |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.LocMastService; | 
 |  |  | import com.zy.asrs.service.LocOwnerService; | 
 |  |  | import com.zy.asrs.service.*; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getBoxType1$(){ | 
 |  |  |         BasProcessProceduresService service = SpringUtils.getBean(BasProcessProceduresService.class); | 
 |  |  |         BasProcessProcedures processProcedures = service.selectOne(new EntityWrapper<BasProcessProcedures>().eq("box_type", this.boxType1)); | 
 
 |  |  | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.OrderService; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public boolean beSimilar2(OrderDetl orderDetl){ | 
 |  |  |         return ( | 
 |  |  |                 this.orderNo.equals(orderDetl.getOrderNo()) | 
 |  |  |                         && this.matnr.equals(orderDetl.getMatnr()) | 
 |  |  |                         && this.brand.equals(orderDetl.getBrand()) | 
 |  |  |                         && this.standby1.equals(orderDetl.getStandby1()) | 
 |  |  |                         && this.standby2.equals(orderDetl.getStandby2()) | 
 |  |  |                         && this.standby3.equals(orderDetl.getStandby3()) | 
 |  |  |                         && this.boxType1.equals(orderDetl.getBoxType1()) | 
 |  |  |                         && this.boxType2.equals(orderDetl.getBoxType2()) | 
 |  |  |                         && this.boxType3.equals(orderDetl.getBoxType3()) | 
 |  |  |         ); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public static OrderDetl find(List<OrderDetl> detlDtos, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) { | 
 |  |  |         if (Cools.isEmpty(matnr)) { | 
 |  |  |             return null; | 
 
 |  |  | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.OrderService; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |         return this.boxType1; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public boolean beSimilar(OrderDetlPakin orderDetlPakin){ | 
 |  |  |         return ( | 
 |  |  |                 this.orderNo.equals(orderDetlPakin.getOrderNo()) | 
 
 |  |  | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.OrderService; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |         ); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public void sync(Object source) { | 
 |  |  |         Synchro.Copy(source, this); | 
 |  |  |     } | 
 
 |  |  | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import io.swagger.annotations.ApiModelProperty; | 
 |  |  | import lombok.Data; | 
 |  |  | 
 |  |  |         return this.boxType1; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     public String getBoxType2$(){ | 
 |  |  |         BasQualityTestingService service = SpringUtils.getBean(BasQualityTestingService.class); | 
 |  |  |         BasQualityTesting basQualityTesting = service.selectOne(new EntityWrapper<BasQualityTesting>().eq("box_type", this.boxType1)); | 
 
 |  |  | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.zy.asrs.service.BasProcessProceduresService; | 
 |  |  | import com.zy.asrs.service.BasQualityTestingService; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import io.swagger.annotations.ApiModelProperty; | 
 |  |  | import lombok.Data; | 
 |  |  |  | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getInspect$(){ | 
 |  |  |         if (null == this.inspect){ return null; } | 
 |  |  |         switch (this.inspect){ | 
 
 |  |  | 
 |  |  | import com.baomidou.mybatisplus.annotations.TableName; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |     /** | 
 |  |  |      * 工作号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "工作号") | 
 |  |  |     @ApiModelProperty(value = "工作号") | 
 |  |  |     @TableField("wrk_no") | 
 |  |  |     private Integer wrkNo; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 工作时间 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "工作时间") | 
 |  |  |     @ApiModelProperty(value = "工作时间") | 
 |  |  |     @TableField("io_time") | 
 |  |  |     private Date ioTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 数量 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "数量") | 
 |  |  |     @ApiModelProperty(value = "数量") | 
 |  |  |     private Double anfme; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 托盘条码 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "托盘条码") | 
 |  |  |     @ApiModelProperty(value = "托盘条码") | 
 |  |  |     private String zpallet; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 物料 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "商品编号") | 
 |  |  |     @ApiModelProperty(value = "商品编号") | 
 |  |  |     private String matnr; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 物料描述 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "商品名称") | 
 |  |  |     @ApiModelProperty(value = "商品名称") | 
 |  |  |     private String maktx; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 批号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "批号") | 
 |  |  |     @ApiModelProperty(value = "批号") | 
 |  |  |     private String batch; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 单据编号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "单据编号") | 
 |  |  |     @ApiModelProperty(value = "单据编号") | 
 |  |  |     @TableField("order_no") | 
 |  |  |     private String orderNo; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 规格 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "规格") | 
 |  |  |     @ApiModelProperty(value = "规格") | 
 |  |  |     private String specs; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 型号 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "型号") | 
 |  |  |     @ApiModelProperty(value = "型号") | 
 |  |  |     private String model; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 颜色 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "颜色") | 
 |  |  |     @ApiModelProperty(value = "颜色") | 
 |  |  |     private String color; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 品牌 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "品牌") | 
 |  |  |     @ApiModelProperty(value = "品牌") | 
 |  |  |     private String brand; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 单位 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "单位") | 
 |  |  |     @ApiModelProperty(value = "单位") | 
 |  |  |     private String unit; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 单价 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "单价") | 
 |  |  |     @ApiModelProperty(value = "单价") | 
 |  |  |     private Double price; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * sku | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "sku") | 
 |  |  |     @ApiModelProperty(value = "sku") | 
 |  |  |     private String sku; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 单位量 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "单位量") | 
 |  |  |     @ApiModelProperty(value = "单位量") | 
 |  |  |     private Double units; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 条码 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "条码") | 
 |  |  |     @ApiModelProperty(value = "条码") | 
 |  |  |     private String barcode; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 产地 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "产地") | 
 |  |  |     @ApiModelProperty(value = "产地") | 
 |  |  |     private String origin; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 厂家 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "厂家") | 
 |  |  |     @ApiModelProperty(value = "厂家") | 
 |  |  |     private String manu; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 生产日期 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "生产日期") | 
 |  |  |     @ApiModelProperty(value = "生产日期") | 
 |  |  |     @TableField("manu_date") | 
 |  |  |     private String manuDate; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 品项数 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "品项数") | 
 |  |  |     @ApiModelProperty(value = "品项数") | 
 |  |  |     @TableField("item_num") | 
 |  |  |     private String itemNum; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 安全库存量 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "安全库存量") | 
 |  |  |     @ApiModelProperty(value = "安全库存量") | 
 |  |  |     @TableField("safe_qty") | 
 |  |  |     private Double safeQty; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 重量 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "重量") | 
 |  |  |     @ApiModelProperty(value = "重量") | 
 |  |  |     private Double weight; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 长度 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "长度") | 
 |  |  |     @ApiModelProperty(value = "长度") | 
 |  |  |     @TableField("man_length") | 
 |  |  |     private Double manLength; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 体积 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "体积") | 
 |  |  |     @ApiModelProperty(value = "体积") | 
 |  |  |     private Double volume; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 三方编码 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "三方编码") | 
 |  |  |     @ApiModelProperty(value = "三方编码") | 
 |  |  |     @TableField("three_code") | 
 |  |  |     private String threeCode; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 供应商 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "供应商") | 
 |  |  |     @ApiModelProperty(value = "供应商") | 
 |  |  |     private String supp; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 供应商编码 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "供应商编码") | 
 |  |  |     @ApiModelProperty(value = "供应商编码") | 
 |  |  |     @TableField("supp_code") | 
 |  |  |     private String suppCode; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 是否批次 1: 是  0: 否 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "是否批次 1: 是  0: 否  ") | 
 |  |  |     @ApiModelProperty(value = "是否批次 1: 是  0: 否  ") | 
 |  |  |     @TableField("be_batch") | 
 |  |  |     private Integer beBatch; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 保质期 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "保质期") | 
 |  |  |     @ApiModelProperty(value = "保质期") | 
 |  |  |     @TableField("dead_time") | 
 |  |  |     private String deadTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 预警天数 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "预警天数") | 
 |  |  |     @ApiModelProperty(value = "预警天数") | 
 |  |  |     @TableField("dead_warn") | 
 |  |  |     private Integer deadWarn; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 制购 1: 制造  2: 采购  3: 外协 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "制购 1: 制造  2: 采购  3: 外协  ") | 
 |  |  |     @ApiModelProperty(value = "制购 1: 制造  2: 采购  3: 外协  ") | 
 |  |  |     private Integer source; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 要求检验 1: 是  0: 否 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "要求检验 1: 是  0: 否  ") | 
 |  |  |     @ApiModelProperty(value = "要求检验 1: 是  0: 否  ") | 
 |  |  |     private Integer inspect; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 危险品 1: 是  0: 否 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "危险品 1: 是  0: 否  ") | 
 |  |  |     @ApiModelProperty(value = "危险品 1: 是  0: 否  ") | 
 |  |  |     private Integer danger; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 修改人员 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "修改人员") | 
 |  |  |     @ApiModelProperty(value = "修改人员") | 
 |  |  |     @TableField("modi_user") | 
 |  |  |     private Long modiUser; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 修改时间 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "修改时间") | 
 |  |  |     @ApiModelProperty(value = "修改时间") | 
 |  |  |     @TableField("modi_time") | 
 |  |  |     private Date modiTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 创建者 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "创建者") | 
 |  |  |     @ApiModelProperty(value = "创建者") | 
 |  |  |     @TableField("appe_user") | 
 |  |  |     private Long appeUser; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 添加时间 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "添加时间") | 
 |  |  |     @ApiModelProperty(value = "添加时间") | 
 |  |  |     @TableField("appe_time") | 
 |  |  |     private Date appeTime; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备注 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备注") | 
 |  |  |     @ApiModelProperty(value = "备注") | 
 |  |  |     private String memo; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用1 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用1") | 
 |  |  |     @ApiModelProperty(value = "备用1") | 
 |  |  |     private String standby1 = ""; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用2 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用2") | 
 |  |  |     @ApiModelProperty(value = "备用2") | 
 |  |  |     private String standby2 = ""; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用3 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用3") | 
 |  |  |     @ApiModelProperty(value = "备用3") | 
 |  |  |     private String standby3 = ""; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用1 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用1") | 
 |  |  |     @ApiModelProperty(value = "备用1") | 
 |  |  |     @TableField("box_type1") | 
 |  |  |     private String boxType1 = ""; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用2 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用2") | 
 |  |  |     @ApiModelProperty(value = "备用2") | 
 |  |  |     @TableField("box_type2") | 
 |  |  |     private String boxType2 = ""; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 备用3 | 
 |  |  |      */ | 
 |  |  |     @ApiModelProperty(value= "备用3") | 
 |  |  |     @ApiModelProperty(value = "备用3") | 
 |  |  |     @TableField("box_type3") | 
 |  |  |     private String boxType3 = ""; | 
 |  |  |  | 
 |  |  |     public String getIoTime$(){ | 
 |  |  |         if (Cools.isEmpty(this.ioTime)){ | 
 |  |  |     public String getIoTime$() { | 
 |  |  |         if (Cools.isEmpty(this.ioTime)) { | 
 |  |  |             return ""; | 
 |  |  |         } | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.ioTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getBeBatch$(){ | 
 |  |  |         if (null == this.beBatch){ return null; } | 
 |  |  |         switch (this.beBatch){ | 
 |  |  |     public String getBeBatch$() { | 
 |  |  |         if (null == this.beBatch) { | 
 |  |  |             return null; | 
 |  |  |         } | 
 |  |  |         switch (this.beBatch) { | 
 |  |  |             case 1: | 
 |  |  |                 return "是"; | 
 |  |  |             case 0: | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getSource$(){ | 
 |  |  |         if (null == this.source){ return null; } | 
 |  |  |         switch (this.source){ | 
 |  |  |     public String getSource$() { | 
 |  |  |         if (null == this.source) { | 
 |  |  |             return null; | 
 |  |  |         } | 
 |  |  |         switch (this.source) { | 
 |  |  |             case 1: | 
 |  |  |                 return "制造"; | 
 |  |  |             case 2: | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getInspect$(){ | 
 |  |  |         if (null == this.inspect){ return null; } | 
 |  |  |         switch (this.inspect){ | 
 |  |  |     public String getInspect$() { | 
 |  |  |         if (null == this.inspect) { | 
 |  |  |             return null; | 
 |  |  |         } | 
 |  |  |         switch (this.inspect) { | 
 |  |  |             case 1: | 
 |  |  |                 return "是"; | 
 |  |  |             case 0: | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getDanger$(){ | 
 |  |  |         if (null == this.danger){ return null; } | 
 |  |  |         switch (this.danger){ | 
 |  |  |     public String getDanger$() { | 
 |  |  |         if (null == this.danger) { | 
 |  |  |             return null; | 
 |  |  |         } | 
 |  |  |         switch (this.danger) { | 
 |  |  |             case 1: | 
 |  |  |                 return "是"; | 
 |  |  |             case 0: | 
 |  |  | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getModiUser$(){ | 
 |  |  |     public String getModiUser$() { | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class); | 
 |  |  |         User user = service.selectById(this.modiUser); | 
 |  |  |         if (!Cools.isEmpty(user)){ | 
 |  |  |         if (!Cools.isEmpty(user)) { | 
 |  |  |             return String.valueOf(user.getUsername()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getModiTime$(){ | 
 |  |  |         if (Cools.isEmpty(this.modiTime)){ | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getModiTime$() { | 
 |  |  |         if (Cools.isEmpty(this.modiTime)) { | 
 |  |  |             return ""; | 
 |  |  |         } | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getAppeUser$(){ | 
 |  |  |     public String getAppeUser$() { | 
 |  |  |         UserService service = SpringUtils.getBean(UserService.class); | 
 |  |  |         User user = service.selectById(this.appeUser); | 
 |  |  |         if (!Cools.isEmpty(user)){ | 
 |  |  |         if (!Cools.isEmpty(user)) { | 
 |  |  |             return String.valueOf(user.getUsername()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getAppeTime$(){ | 
 |  |  |         if (Cools.isEmpty(this.appeTime)){ | 
 |  |  |     public String getAppeTime$() { | 
 |  |  |         if (Cools.isEmpty(this.appeTime)) { | 
 |  |  |             return ""; | 
 |  |  |         } | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime); | 
 
 |  |  | 
 |  |  | import com.baomidou.mybatisplus.annotations.TableName; | 
 |  |  | import com.core.common.Cools; | 
 |  |  | import com.core.common.SpringUtils; | 
 |  |  | import com.zy.asrs.service.StoreTypeService; | 
 |  |  | import com.zy.common.utils.Synchro; | 
 |  |  | import com.zy.system.entity.User; | 
 |  |  | import com.zy.system.service.UserService; | 
 |  |  | 
 |  |  |         return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime); | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public String getStandby1$() { | 
 |  |  |         StoreTypeService service = SpringUtils.getBean(StoreTypeService.class); | 
 |  |  |         StoreType storeType = service.selectById(this.standby1); | 
 |  |  |         if (!Cools.isEmpty(storeType)) { | 
 |  |  |             return String.valueOf(storeType.getStoreName()); | 
 |  |  |         } | 
 |  |  |         return null; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     public void sync(Object source) { | 
 |  |  |         Synchro.Copy(source, this); | 
 |  |  |     } | 
 
 |  |  | 
 |  |  |      * 备注 | 
 |  |  |      */ | 
 |  |  |     private Integer times = 0; | 
 |  |  |     /** | 
 |  |  |      * 单据单号 | 
 |  |  |      */ | 
 |  |  |     private String orderNo; | 
 |  |  |  | 
 |  |  | } | 
 
 |  |  | 
 |  |  |                              @Param("boxType2")String boxType2, | 
 |  |  |                              @Param("boxType3")String boxType3, @Param("qty")Double qty); | 
 |  |  |  | 
 |  |  |     int  increaseQtyById(@Param("id")Long id, @Param("qty")Double qty); | 
 |  |  |  | 
 |  |  |     int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand, | 
 |  |  |                         @Param("standby1")String standby1, @Param("standby2")String standby2, @Param("standby3")String standby3, @Param("boxType1")String boxType1, | 
 |  |  |                         @Param("boxType2")String boxType2, | 
 
 |  |  | 
 |  |  |  | 
 |  |  |     boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty); | 
 |  |  |  | 
 |  |  |     boolean increaseQtyById(Long id, Double qty); | 
 |  |  |     /** | 
 |  |  |      * 入出库任务生成时,更新单据表中作业数量 | 
 |  |  |      * @param orderId | 
 
 |  |  | 
 |  |  |         return this.baseMapper.increaseQtyByOrderNo(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty) > 0; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean increaseQtyById(Long id, Double qty) { | 
 |  |  |         return this.baseMapper.increaseQtyById(id, qty) > 0; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * 入出库任务生成时,更新单据表中作业数量 | 
 |  |  |      * @param orderId | 
 
 |  |  | 
 |  |  |             wrkDetl.setAppeUser(userId); | 
 |  |  |             wrkDetl.setModiTime(now); | 
 |  |  |             wrkDetl.setModiUser(userId); | 
 |  |  |             wrkDetl.setThreeCode(orderDetl.getId() + ""); | 
 |  |  |             if (!wrkDetlService.insert(wrkDetl)) { | 
 |  |  |                 throw new CoolException("保存工作档明细失败"); | 
 |  |  |             } | 
 
 |  |  | 
 |  |  | //        } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     @Scheduled(cron = "0/5 * * * * ? ") | 
 |  |  |     @Async("orderThreadPool") | 
 |  |  |     //@Scheduled(cron = "0/5 * * * * ? ") | 
 |  |  |     //@Async("orderThreadPool") | 
 |  |  |     public void completeAndReportOrderInAndOutUtil2() { | 
 |  |  | //        String erpReport = Parameter.get().getErpReport(); | 
 |  |  | //        if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { | 
 
 |  |  | 
 |  |  |         if (null == docType) { | 
 |  |  |             return SUCCESS; | 
 |  |  |         } | 
 |  |  |         if (docType.getDocName().equals("销售发货")) { | 
 |  |  |             return SUCCESS; | 
 |  |  |         } | 
 |  |  | //        if (docType.getDocName().equals("销售发货")) { | 
 |  |  | //            return SUCCESS; | 
 |  |  | //        } | 
 |  |  |         Order orderSou = orderService.selectByNo(order.getOrderNo()); | 
 |  |  |         if (!orderSou.getSettle().equals(2L)) { | 
 |  |  |             return FAIL.setMsg("订单状态不正确,请联系管理员"); | 
 |  |  | 
 |  |  |                 if (orderDetl.getQty().equals(0D)) { | 
 |  |  |                     continue; | 
 |  |  |                 } | 
 |  |  |                 if (orderDetlSou.beSimilar(orderDetl)) { | 
 |  |  |                     double v = orderDetlSou.getAnfme() - orderDetlSou.getQty(); | 
 |  |  |                     if (v < orderDetl.getQty() || orderDetl.getQty().equals(v)) { | 
 |  |  |                         orderDetlSou.setQty(orderDetlSou.getAnfme()); | 
 |  |  |                         orderDetl.setQty(orderDetl.getQty() - v); | 
 |  |  |                         break; | 
 |  |  |                     } else { | 
 |  |  |                         orderDetlSou.setQty(orderDetlSou.getQty() + orderDetl.getQty()); | 
 |  |  |                         orderDetl.setQty(0D); | 
 |  |  |                 if (!Cools.isEmpty(orderDetlSou.getBatch())){ | 
 |  |  |                     if (orderDetlSou.beSimilar(orderDetl)) { | 
 |  |  |                         double v = orderDetlSou.getAnfme() - orderDetlSou.getQty(); | 
 |  |  |                         if (v < orderDetl.getQty() || orderDetl.getQty().equals(v)) { | 
 |  |  |                             orderDetlSou.setQty(orderDetlSou.getAnfme()); | 
 |  |  |                             orderDetl.setQty(orderDetl.getQty() - v); | 
 |  |  |                             break; | 
 |  |  |                         } else { | 
 |  |  |                             orderDetlSou.setQty(orderDetlSou.getQty() + orderDetl.getQty()); | 
 |  |  |                             orderDetl.setQty(0D); | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                 }else { | 
 |  |  |                     if (orderDetlSou.beSimilar2(orderDetl)) { | 
 |  |  |                         double v = orderDetlSou.getAnfme() - orderDetlSou.getQty(); | 
 |  |  |                         if (v < orderDetl.getQty() || orderDetl.getQty().equals(v)) { | 
 |  |  |                             orderDetlSou.setQty(orderDetlSou.getAnfme()); | 
 |  |  |                             orderDetl.setQty(orderDetl.getQty() - v); | 
 |  |  |                             break; | 
 |  |  |                         } else { | 
 |  |  |                             orderDetlSou.setQty(orderDetlSou.getQty() + orderDetl.getQty()); | 
 |  |  |                             orderDetl.setQty(0D); | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |             } | 
 
 |  |  | 
 |  |  |                         } | 
 |  |  |  | 
 |  |  |                         // 更新订单完成数量 | 
 |  |  |                         addOrderDetlQty(wrkMast, wrkDetl); | 
 |  |  | //                        OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  | //                        if (orderDetlPakout == null) { | 
 |  |  | //                            orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  | //                        } | 
 |  |  | //                        try { | 
 |  |  | //                            if (!Cools.isEmpty(orderDetlPakout)) { | 
 |  |  | ////                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), | 
 |  |  | ////                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), | 
 |  |  | ////                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) { | 
 |  |  | // | 
 |  |  | //                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(), orderDetlPakout.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(), orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3(), wrkDetl.getAnfme())) { | 
 |  |  | ////                                    exceptionHandle("拣料入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", | 
 |  |  | ////                                            wrkMast.getWrkNo(), wrkMast.getLocNo()); | 
 |  |  | //                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); | 
 |  |  | //                                    return FAIL.setMsg("拣料入库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); | 
 |  |  | //                                } | 
 |  |  | //                            } | 
 |  |  | //                        } catch (Exception ignore) { | 
 |  |  | //                        } | 
 |  |  |                         //addOrderDetlQty(wrkMast, wrkDetl); | 
 |  |  |                         OrderDetlPakout orderDetlPakout; | 
 |  |  |                         if (!Cools.isEmpty(wrkDetl.getThreeCode())) { | 
 |  |  |                             orderDetlPakout = orderDetlPakoutService.selectById(Long.parseLong(wrkDetl.getThreeCode())); | 
 |  |  |                         } else { | 
 |  |  |                             orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                             if (orderDetlPakout == null) { | 
 |  |  |                                 orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |                         try { | 
 |  |  |                             if (!Cools.isEmpty(orderDetlPakout)) { | 
 |  |  | //                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), | 
 |  |  | //                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), | 
 |  |  | //                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) { | 
 |  |  |                                 if (!orderDetlPakoutService.increaseQtyById(orderDetlPakout.getId(), wrkDetl.getAnfme())) { | 
 |  |  |  | 
 |  |  |                                 //if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(), orderDetlPakout.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(), orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3(), wrkDetl.getAnfme())) { | 
 |  |  | //                                    exceptionHandle("拣料入库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", | 
 |  |  | //                                            wrkMast.getWrkNo(), wrkMast.getLocNo()); | 
 |  |  |                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); | 
 |  |  |                                     return FAIL.setMsg("拣料入库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); | 
 |  |  |                                 } | 
 |  |  |                             } | 
 |  |  |                         } catch (Exception ignore) { | 
 |  |  |                         } | 
 |  |  |  | 
 |  |  |                     } | 
 |  |  |                     // 修改库位状态 Q ====>> F | 
 |  |  | 
 |  |  |                     } | 
 |  |  |                     for (WrkDetl wrkDetl : wrkDetls101) { | 
 |  |  |                         // 更新订单完成数量 | 
 |  |  |                         addOrderDetlQty(wrkMast, wrkDetl); | 
 |  |  | //                        OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  | //                        if (orderDetlPakout == null) { | 
 |  |  | //                            orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  | //                        } | 
 |  |  | //                        try { | 
 |  |  | //                            if (!Cools.isEmpty(orderDetlPakout)) { | 
 |  |  | //                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(), orderDetlPakout.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(), orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3(), wrkDetl.getAnfme())) { | 
 |  |  | ////                                    exceptionHandle("全板出库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", | 
 |  |  | ////                                            wrkMast.getWrkNo(), wrkMast.getLocNo()); | 
 |  |  | //                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); | 
 |  |  | //                                    return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); | 
 |  |  | //                                } | 
 |  |  | //                            } | 
 |  |  | //                        } catch (Exception ignore) { | 
 |  |  | //                        } | 
 |  |  |                         //addOrderDetlQty(wrkMast, wrkDetl); | 
 |  |  |                         OrderDetlPakout orderDetlPakout; | 
 |  |  |                         if (!Cools.isEmpty(wrkDetl.getThreeCode())) { | 
 |  |  |                             orderDetlPakout = orderDetlPakoutService.selectById(Long.parseLong(wrkDetl.getThreeCode())); | 
 |  |  |                         } else { | 
 |  |  |                             orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                             if (orderDetlPakout == null) { | 
 |  |  |                                 orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                             } | 
 |  |  |                         } | 
 |  |  |  | 
 |  |  |                         try { | 
 |  |  |                             if (!Cools.isEmpty(orderDetlPakout)) { | 
 |  |  |                                 if (!orderDetlPakoutService.increaseQtyById(orderDetlPakout.getId(), wrkDetl.getAnfme())) { | 
 |  |  | //                                    exceptionHandle("全板出库 ===>> 更新订单完成数量失败;[workNo={0}],[locNo={1}]", | 
 |  |  | //                                            wrkMast.getWrkNo(), wrkMast.getLocNo()); | 
 |  |  |                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); | 
 |  |  |                                     return FAIL.setMsg("全板出库 ===>> 更新订单完成数量失败; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); | 
 |  |  |                                 } | 
 |  |  |                             } | 
 |  |  |                         } catch (Exception ignore) { | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                     // 删除工作档源库位的库存明细 | 
 |  |  |                     if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) { | 
 |  |  | 
 |  |  |             OrderDetlPakout orderDetlPakout; | 
 |  |  |             switch (order.getDocType$()) { | 
 |  |  |                 case "销售发货": | 
 |  |  |                     orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                     orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                     if (Cools.isEmpty(orderDetlPakout)) { | 
 |  |  |                         orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3()); | 
 |  |  |                     } | 
 |  |  |                     if (!Cools.isEmpty(orderDetlPakout)) { | 
 |  |  |                         OrderDetl orderDetl = orderDetlService.selectItem(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(), wrkDetl.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(), orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3()); | 
 |  |  |                         if (orderDetl == null) { | 
 
 |  |  | 
 |  |  |     private String pkBarcode; | 
 |  |  |  | 
 |  |  |     /** | 
 |  |  |      * | 
 |  |  |      */ | 
 |  |  |     private String zkdh; | 
 |  |  |     /** | 
 |  |  |      *  | 
 |  |  |      */ | 
 |  |  |     private String ts; | 
 
 |  |  | 
 |  |  |      */ | 
 |  |  |     private String wmsMemo; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean equals(Object that) { | 
 |  |  |         if (this == that) { | 
 
 |  |  | 
 |  |  |             if (wmsFlag == null || wmsFlag.isEmpty()) { | 
 |  |  |                 return; | 
 |  |  |             } | 
 |  |  |             ReturnT<String> returnT; | 
 |  |  |             if (wmsFlag.get(0).getNastnum().doubleValue() > 0) { | 
 |  |  |                 returnT = planOrderHandler.start1(wmsFlag); | 
 |  |  |             } else { | 
 |  |  |                 returnT = planOrderHandler.start1In(wmsFlag); | 
 |  |  |             } | 
 |  |  |             ReturnT<String> returnT = planOrderHandler.start1(wmsFlag); | 
 |  |  |             if (!returnT.isSuccess()) { | 
 |  |  |                 for (NccSaleXsfhmxWms wms : wmsFlag) { | 
 |  |  |                     wms.setWmsMemo(returnT.getMsg()); | 
 |  |  | 
 |  |  |                 } | 
 |  |  |                 log.error(returnT.getMsg()); | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |  | 
 |  |  | //            if (wmsFlag.get(0).getNastnum().doubleValue() > 0) { | 
 |  |  | //                returnT = planOrderHandler.start1(wmsFlag); | 
 |  |  | //            } else { | 
 |  |  | //                returnT = planOrderHandler.start1In(wmsFlag); | 
 |  |  | //            } | 
 |  |  |         } | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     /** | 
 
 |  |  | 
 |  |  |  | 
 |  |  | import java.util.ArrayList; | 
 |  |  | import java.util.Date; | 
 |  |  | import java.util.HashMap; | 
 |  |  | import java.util.List; | 
 |  |  |  | 
 |  |  | @Service | 
 |  |  | 
 |  |  |     @Transactional | 
 |  |  |     public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) { | 
 |  |  |         try { | 
 |  |  |             OpenOrderPakoutParam param = new OpenOrderPakoutParam(); | 
 |  |  |             DetlDto detlDto; | 
 |  |  |             List<DetlDto> orderDetails = new ArrayList<>(); | 
 |  |  |             long i = 1; | 
 |  |  |             for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) { | 
 |  |  |                 param.setOrderType("销售发货"); | 
 |  |  |                 detlDto = new DetlDto(); | 
 |  |  |                 detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm()); | 
 |  |  |                 detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue()); | 
 |  |  |                 detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm()); | 
 |  |  |                 detlDto.setLineNumber(i); | 
 |  |  |                 detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms)); | 
 |  |  |                 orderDetails.add(detlDto); | 
 |  |  |                 log.info("NccSaleXsfhmxWms数据:{}", JSONObject.toJSON(nccSaleXsfhmxWms)); | 
 |  |  |                 i++; | 
 |  |  |                 nccSaleXsfhmxWms.setWmsFlag(1); | 
 |  |  |                 param.setOrderNo(nccSaleXsfhmxWms.getVbillcode()); | 
 |  |  |             HashMap<String, List<NccSaleXsfhmxWms>> map = new HashMap<>(); | 
 |  |  |             List<NccSaleXsfhmxWms> fenzu; | 
 |  |  |             for (NccSaleXsfhmxWms wms : wmsFlag) { | 
 |  |  |                 if (map.get(wms.getFhckbm()) == null) { | 
 |  |  |                     fenzu = new ArrayList<>(); | 
 |  |  |                     fenzu.add(wms); | 
 |  |  |                     map.put(wms.getFhckbm(), fenzu); | 
 |  |  |                 } else { | 
 |  |  |                     fenzu = map.get(wms.getFhckbm()); | 
 |  |  |                     fenzu.add(wms); | 
 |  |  |                     map.put(wms.getFhckbm(), fenzu); | 
 |  |  |                 } | 
 |  |  |             } | 
 |  |  |             param.setOrderDetails(orderDetails); | 
 |  |  |             openService.pakoutOrderCreate(param); | 
 |  |  |             nccSaleXsfhmxWmsService.updateBatchById(wmsFlag); | 
 |  |  |             int size = 1; | 
 |  |  |             for (String key : map.keySet()) { | 
 |  |  |                 OpenOrderPakoutParam param = new OpenOrderPakoutParam(); | 
 |  |  |                 DetlDto detlDto; | 
 |  |  |                 List<DetlDto> orderDetails = new ArrayList<>(); | 
 |  |  |                 long i = 1; | 
 |  |  |                 for (NccSaleXsfhmxWms nccSaleXsfhmxWms : map.get(key)) { | 
 |  |  |                     param.setOrderType("销售发货"); | 
 |  |  |                     detlDto = new DetlDto(); | 
 |  |  |                     detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm()); | 
 |  |  |                     detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue()); | 
 |  |  |                     detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm()); | 
 |  |  |                     detlDto.setLineNumber(i); | 
 |  |  |                     detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms)); | 
 |  |  |                     orderDetails.add(detlDto); | 
 |  |  |                     log.info("NccSaleXsfhmxWms数据:{}", JSONObject.toJSON(nccSaleXsfhmxWms)); | 
 |  |  |                     i++; | 
 |  |  |                     nccSaleXsfhmxWms.setWmsFlag(1); | 
 |  |  |                     param.setOrderNo(nccSaleXsfhmxWms.getVbillcode() + "-" + size); | 
 |  |  |                 } | 
 |  |  |                 param.setOrderDetails(orderDetails); | 
 |  |  |                 openService.pakoutOrderCreate(param); | 
 |  |  |                 nccSaleXsfhmxWmsService.updateBatchById(map.get(key)); | 
 |  |  |             } | 
 |  |  |         } catch (Exception e) { | 
 |  |  |             e.printStackTrace(); | 
 |  |  |             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); | 
 
 |  |  | 
 |  |  |         <include refid="standbyAll"></include> | 
 |  |  |     </update> | 
 |  |  |  | 
 |  |  |     <update id="increaseQtyById"> | 
 |  |  |         update man_order_detl_pakout | 
 |  |  |         set qty = qty + #{qty} | 
 |  |  |         where id = #{id} | 
 |  |  |     </update> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     <update id="increaseWorkQty"> | 
 |  |  |         update man_order_detl_pakout | 
 |  |  |         set work_qty = work_qty + #{workQty} | 
 
 |  |  | 
 |  |  |     ,{field: 'maktx', align: 'center',title: '商品名称(品名)', width: 200} | 
 |  |  |     // ,{field: 'name', align: 'center',title: '别名'} | 
 |  |  |     ,{field: 'specs', align: 'center',title: '规格'} | 
 |  |  |     ,{field: 'model', align: 'center',title: '代码', hide: true} | 
 |  |  |     ,{field: 'model', align: 'center',title: '型号'} | 
 |  |  |     ,{field: 'color', align: 'center',title: '颜色', hide: true} | 
 |  |  |     ,{field: 'brand', align: 'center',title: '品牌', hide: true} | 
 |  |  |     ,{field: 'unit', align: 'center',title: '单位', hide: false} | 
 |  |  |     ,{field: 'price', align: 'center',title: '单价', hide: true} | 
 |  |  |     ,{field: 'sku', align: 'center',title: 'sku', hide: true} | 
 |  |  |     ,{field: 'sku', align: 'center',title: '物料简称'} | 
 |  |  |     ,{field: 'units', align: 'center',title: '单位量', hide: true} | 
 |  |  |     ,{field: 'barcode', align: 'center',title: '条码', hide: true} | 
 |  |  |     ,{field: 'origin', align: 'center',title: '产地', hide: true} | 
 |  |  | 
 |  |  |     {field: 'matnr', align: 'center',title: '商品编号(品号)', sort:true} | 
 |  |  |     ,{field: 'maktx', align: 'center',title: '商品名称(品名)', sort:true} | 
 |  |  |     ,{field: 'orderNo', align: 'center',title: '单据编号', hide: false} | 
 |  |  |     ,{field: 'batch', align: 'center',title: '货品特征', sort:true} | 
 |  |  |     ,{field: 'batch', align: 'center',title: '批次'} | 
 |  |  |     ,{field: 'anfme', align: 'center',title: '数量', hide: false} | 
 |  |  |     ,{field: 'zpallet', align: 'center',title: '托盘条码', hide: false} | 
 |  |  |  | 
 |  |  |     ,{field: 'specs', align: 'center',title: '规格', hide: false} | 
 |  |  |     ,{field: 'model', align: 'center',title: '代码', hide: true} | 
 |  |  |     ,{field: 'model', align: 'center',title: '型号'} | 
 |  |  |     ,{field: 'supp', align: 'center',title: '客户'} | 
 |  |  |     ,{field: 'standby1$', align: 'center',title: '仓库'} | 
 |  |  |     ,{field: 'color', align: 'center',title: '颜色', hide: true} | 
 |  |  |     ,{field: 'brand', align: 'center',title: '品牌', hide: true} | 
 |  |  |     ,{field: 'unit', align: 'center',title: '单位', hide: false} | 
 |  |  | 
 |  |  |     ,{field: 'length', align: 'center',title: '单箱毛重', hide: true} | 
 |  |  |     ,{field: 'volume', align: 'center',title: '单箱体积', hide: true} | 
 |  |  |     ,{field: 'threeCode', align: 'center',title: '箱子尺寸', hide: true} | 
 |  |  |     ,{field: 'supp', align: 'center',title: '供应商', hide: true} | 
 |  |  |     ,{field: 'suppCode', align: 'center',title: '供应商编码', hide: true} | 
 |  |  |     ,{field: 'beBatch$', align: 'center',title: '是否批次', hide: true} | 
 |  |  |     ,{field: 'deadTime', align: 'center',title: '保质期', hide: true} | 
 |  |  |     ,{field: 'deadWarn', align: 'center',title: '预警天数', hide: true} | 
 |  |  |     ,{field: 'source$', align: 'center',title: '制购', hide: true} | 
 |  |  |     ,{field: 'check$', align: 'center',title: '要求检验', hide: true} | 
 |  |  |     ,{field: 'danger$', align: 'center',title: '危险品', hide: true} | 
 |  |  |     ,{field: 'frozen$', align: 'center',title: '冻结否',hide: true, |