diff --git a/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java b/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java index 96d2bc82..f5e320d1 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java +++ b/api-admin/src/main/java/com/glxp/api/admin/constant/ConstantStatus.java @@ -141,4 +141,7 @@ public class ConstantStatus { public static final int SYNC_STATUS_SUCCESS = 1; //处理成功 public static final int SYNC_STATUS_FAIL = 2; //处理失败 public static final int SYNC_STATUS_WAIT = 0; //等待处理 + + public static final int THIRD_ORDER_UPLOAD = 1; //业务单据上传至第三方 + public static final int THIRD_ORDER_RECEIVE = 2; //接收第三方上传扫码单据 } diff --git a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrScOrderController.java b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrScOrderController.java index 0a952467..a5837cc3 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrScOrderController.java +++ b/api-admin/src/main/java/com/glxp/api/admin/controller/thrsys/ThrScOrderController.java @@ -1,18 +1,20 @@ package com.glxp.api.admin.controller.thrsys; +import cn.hutool.core.collection.CollUtil; import com.glxp.api.admin.annotation.AuthRuleAnnotation; +import com.glxp.api.admin.dao.basic.UdiRelevanceDao; import com.glxp.api.admin.dao.basic.UnitMaintainDao; import com.glxp.api.admin.dao.inventory.InvWarehouseDao; -import com.glxp.api.admin.entity.basic.BussinessOriginTypeEntity; -import com.glxp.api.admin.entity.basic.BussinessTypeEntity; -import com.glxp.api.admin.entity.basic.UnitMaintainEntity; +import com.glxp.api.admin.entity.basic.*; import com.glxp.api.admin.entity.inventory.InvWarehouseEntity; import com.glxp.api.admin.entity.thrsys.ThrPostOrderRequest; import com.glxp.api.admin.req.inout.AddOrderRequest; import com.glxp.api.admin.req.inout.PostOrderRequest; import com.glxp.api.admin.res.basic.BussinessOriginTypeResponse; import com.glxp.api.admin.service.basic.BussinessOriginTypeService; +import com.glxp.api.admin.service.basic.UdiRelevanceService; import com.glxp.api.admin.service.basic.UnitMaintainService; +import com.glxp.api.admin.util.FilterUdiUtils; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import org.springframework.web.bind.annotation.PostMapping; @@ -20,6 +22,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.List; @RestController public class ThrScOrderController { @@ -30,20 +33,47 @@ public class ThrScOrderController { UnitMaintainDao unitMaintainDao; @Resource InvWarehouseDao invWarehouseDao; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + UdiRelevanceDao udiRelevanceDao; @AuthRuleAnnotation("") @PostMapping("udiwms/inout/thridOrder/upload") public BaseResponse saveOrderWeb(@RequestBody ThrPostOrderRequest thrPostOrderRequest) { // BussinessTypeEntity bussinessTypeEntity = bussinessOriginTypeService.findSysByAction(thrPostOrderRequest.getBillType(), thrPostOrderRequest.getThirdIdSys()); + + } + + public String processOrder(ThrPostOrderRequest thrPostOrderRequest) { + BussinessOriginTypeResponse bussinessOriginTypeEntity = bussinessOriginTypeService.finByThirdAction(thrPostOrderRequest.getBillType()); UnitMaintainEntity unitMaintainEntity = unitMaintainDao.selectByThirdSys(thrPostOrderRequest.getThirdIdSys(), thrPostOrderRequest.getFromCorpId()); InvWarehouseEntity invWarehouseEntity = invWarehouseDao.selectByThirdSys(thrPostOrderRequest.getThirdIdSys(), thrPostOrderRequest.getInvCode()); + List codeDetailEntityList = thrPostOrderRequest.getItems(); + if (CollUtil.isEmpty(codeDetailEntityList)) { + return "单据条码不能为空!"; + } + + for (ThrPostOrderRequest.CodeDetailEntity codeDetailEntity : codeDetailEntityList) { + UdiEntity udiEntity = FilterUdiUtils.getUdi(codeDetailEntity.getCode()); + if (udiEntity == null) { + return codeDetailEntity.getCode() + "UDI码格式错误"; + } + UdiRelevanceEntity udiRelevanceEntity = udiRelevanceDao.selectByDiThirdId(udiEntity.getUdi(), codeDetailEntity.getProductCode(), thrPostOrderRequest.getThirdIdSys()); + if (udiRelevanceEntity == null) { + return "该物资编码:" + codeDetailEntity.getProductCode() + "未与UDI码:" + udiEntity.getUdi() + "做关联对照"; + } + + } + + PostOrderRequest postOrderRequest = new PostOrderRequest(); - return ResultVOUtils.success("上传成功!"); + return null; } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/dao/basic/UdiRelevanceDao.java b/api-admin/src/main/java/com/glxp/api/admin/dao/basic/UdiRelevanceDao.java index acf82d30..0fe87164 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/dao/basic/UdiRelevanceDao.java +++ b/api-admin/src/main/java/com/glxp/api/admin/dao/basic/UdiRelevanceDao.java @@ -13,6 +13,10 @@ public interface UdiRelevanceDao { List filterUdiRelevance(FilterUdiInfoRequest filterUdiInfoRequest); + + UdiRelevanceEntity selectByDiThirdId(String nameCode, String thirdId, String thirdSys); + + List filterUdiJoinSup(FilterUdiInfoRequest filterUdiInfoRequest); diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java index 7e150512..f4e232c7 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderEntity.java @@ -30,6 +30,7 @@ public class StockOrderEntity { private String locStorageCode; private String invWarehouseCode; private String fromSubInvCode; + private String fromSubInvName; //补单单号 private String supplementNo; diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderUploadLogEntity.java b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderUploadLogEntity.java index 680696e3..8301a6ab 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderUploadLogEntity.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/business/StockOrderUploadLogEntity.java @@ -47,4 +47,8 @@ public class StockOrderUploadLogEntity { */ private String result; + private String billTypeName; + + private Integer fromType; + } diff --git a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrPostOrderRequest.java b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrPostOrderRequest.java index ed99da25..3148f897 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrPostOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/entity/thrsys/ThrPostOrderRequest.java @@ -18,10 +18,10 @@ public class ThrPostOrderRequest { private String actorId; //单据创建人ID, private String invCode; //当前所在仓库号 private String invName; //当前所在仓库名称 - private String subInvCode; //当前所在分库号 + private String subInvCode; //当前所在分库编码 private String subInvName; //当前所在分库名称 private String status; //单据状态 - private List codeArray; + private List items; @Data public static class CodeDetailEntity { @@ -31,8 +31,8 @@ public class ThrPostOrderRequest { private String expireDate; //失效日期 private String serialNo; //序列号 private Integer count; //扫码数量 - private String supId; //供应商ID - private String supName; //供应商名称 - + private String supId; //供应商ID + private String supName; //供应商名称 + private String productCode; //物资编码 } } diff --git a/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderUploadLogRequest.java b/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderUploadLogRequest.java index 0db52b06..e866ced2 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderUploadLogRequest.java +++ b/api-admin/src/main/java/com/glxp/api/admin/req/business/StockOrderUploadLogRequest.java @@ -31,4 +31,6 @@ public class StockOrderUploadLogRequest extends ListPageRequest { */ private Integer status; + private Integer fromType; + } diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderServiceImpl.java index 24c2f40c..52c541a4 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderServiceImpl.java @@ -314,6 +314,7 @@ public class StockOrderServiceImpl implements StockOrderService { uploadLog.setBillType(stockOrderEntity.getBillType()); uploadLog.setSubmitTime(new Date()); uploadLog.setBillNo(udiwmsOrderRequest.getBillNo()); + uploadLog.setFromType(ConstantStatus.THIRD_ORDER_UPLOAD); BasicThirdSysEntity basicThirdSysEntity = basicThirdSysDao.selectByThirdId(thirdSysBusApiEntity.getThirdSys()); String response = httpOkClient.uCloudPost(basicThirdSysEntity.getThridUrl() + "/udiwms/erp/submitOrders", udiwmsOrderRequest); diff --git a/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderUploadLogServiceImpl.java b/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderUploadLogServiceImpl.java index 47ce6c6a..df2ca0b2 100644 --- a/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderUploadLogServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/api/admin/service/business/impl/StockOrderUploadLogServiceImpl.java @@ -56,12 +56,12 @@ public class StockOrderUploadLogServiceImpl implements StockOrderUploadLogServic PageHelper.offsetPage(offset, request.getLimit()); } List list = stockOrderUploadLogMapper.selectList(request); - if (CollUtil.isNotEmpty(list)) { - for (StockOrderUploadLogEntity uploadLog : list) { - BussinessLocalTypeEntity localTypeEntity = bussinessLocalTypeService.findBTByAction(uploadLog.getBillType()); - uploadLog.setBillType(localTypeEntity.getName()); - } - } +// if (CollUtil.isNotEmpty(list)) { +// for (StockOrderUploadLogEntity uploadLog : list) { +// BussinessLocalTypeEntity localTypeEntity = bussinessLocalTypeService.findBTByAction(uploadLog.getBillType()); +// uploadLog.setBillType(localTypeEntity.getName()); +// } +// } return list; } diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index 83a586ca..6a49d5da 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -360,6 +360,22 @@ limit 1 + + + + - SELECT stock_order.* ,inv_warehouse.name invName, inv_warehouse_sub.name subInvName ,basic_bustype_local.name billTypeName FROM stock_order + SELECT stock_order.* ,inv_warehouse.name invName, iws.name subInvName ,basic_bustype_local.name + billTypeName,iws2.name fromSubInvName FROM stock_order left join basic_bustype_local on stock_order.billType = basic_bustype_local.action LEFT JOIN inv_warehouse ON stock_order.locStorageCode = inv_warehouse.`code` - LEFT JOIN inv_warehouse_sub ON inv_warehouse_sub.parentId = inv_warehouse.`code` + LEFT JOIN inv_warehouse_sub ON stock_order.locStorageCode = inv_warehouse.`code` + LEFT JOIN inv_warehouse_sub iws ON stock_order.invWarehouseCode = iws.`code` + LEFT JOIN inv_warehouse_sub iws2 ON stock_order.fromSubInvCode = iws2.`code` LEFT JOIN inv_warehouse_user on inv_warehouse_sub.code = inv_warehouse_user.`code` diff --git a/api-admin/src/main/resources/mybatis/mapper/business/StockOrderUploadLogDao.xml b/api-admin/src/main/resources/mybatis/mapper/business/StockOrderUploadLogDao.xml index 506ee39e..64d9f8ab 100644 --- a/api-admin/src/main/resources/mybatis/mapper/business/StockOrderUploadLogDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/business/StockOrderUploadLogDao.xml @@ -1,151 +1,176 @@ - - - - - - - - - - - - - - - id, billNo, billDate, billType, thrBillNo, submitTime, `status`, `result` - - - - - delete from stock_order_upload_log - where id = #{id,jdbcType=INTEGER} - - - - insert into stock_order_upload_log (billNo, billDate, billType, - thrBillNo, submitTime, `status`, - `result`) - values (#{billNo,jdbcType=VARCHAR}, #{billDate,jdbcType=TIMESTAMP}, #{billType,jdbcType=VARCHAR}, - #{thrBillNo,jdbcType=VARCHAR}, #{submitTime,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, - #{result,jdbcType=VARCHAR}) - - - - insert into stock_order_upload_log - - - billNo, - - - billDate, - - - billType, - - - thrBillNo, - - - submitTime, - - - `status`, - - - `result`, - - - - - #{billNo,jdbcType=VARCHAR}, - - - #{billDate,jdbcType=TIMESTAMP}, - - - #{billType,jdbcType=VARCHAR}, - - - #{thrBillNo,jdbcType=VARCHAR}, - - - #{submitTime,jdbcType=TIMESTAMP}, - - - #{status,jdbcType=INTEGER}, - - - #{result,jdbcType=VARCHAR}, - - - - - - update stock_order_upload_log - - - billNo = #{billNo,jdbcType=VARCHAR}, - - + + + + + + + + + + + + + + + id, billNo, billDate, billType, thrBillNo, submitTime, `status`, `result` + + + + + delete from stock_order_upload_log + where id = #{id,jdbcType=INTEGER} + + + + insert into stock_order_upload_log (billNo, billDate, billType, + thrBillNo, submitTime, `status`, + `result`,fromType) + values (#{billNo,jdbcType=VARCHAR}, #{billDate,jdbcType=TIMESTAMP}, #{billType,jdbcType=VARCHAR}, + #{thrBillNo,jdbcType=VARCHAR}, #{submitTime,jdbcType=TIMESTAMP}, #{status,jdbcType=INTEGER}, + #{result,jdbcType=VARCHAR},#{fromType}) + + + + insert into stock_order_upload_log + + + billNo, + + + billDate, + + + billType, + + + thrBillNo, + + + submitTime, + + + `status`, + + + `result`, + + + `fromType`, + + + + + + #{billNo,jdbcType=VARCHAR}, + + + #{billDate,jdbcType=TIMESTAMP}, + + + #{billType,jdbcType=VARCHAR}, + + + #{thrBillNo,jdbcType=VARCHAR}, + + + #{submitTime,jdbcType=TIMESTAMP}, + + + #{status,jdbcType=INTEGER}, + + + #{result,jdbcType=VARCHAR}, + + + `fromType`, + + + + + + + update stock_order_upload_log + + + billNo = #{billNo,jdbcType=VARCHAR}, + + + billDate = #{billDate,jdbcType=TIMESTAMP}, + + + billType = #{billType,jdbcType=VARCHAR}, + + + thrBillNo = #{thrBillNo,jdbcType=VARCHAR}, + + + submitTime = #{submitTime,jdbcType=TIMESTAMP}, + + + `status` = #{status,jdbcType=INTEGER}, + + + `result` = #{result,jdbcType=VARCHAR}, + + + `fromType` = #{fromType}, + + + + where id = #{id,jdbcType=INTEGER} + + + + update stock_order_upload_log + set billNo = #{billNo,jdbcType=VARCHAR}, billDate = #{billDate,jdbcType=TIMESTAMP}, - - billType = #{billType,jdbcType=VARCHAR}, - - thrBillNo = #{thrBillNo,jdbcType=VARCHAR}, - - submitTime = #{submitTime,jdbcType=TIMESTAMP}, - - `status` = #{status,jdbcType=INTEGER}, - - - `result` = #{result,jdbcType=VARCHAR}, - - - where id = #{id,jdbcType=INTEGER} - - - - update stock_order_upload_log - set billNo = #{billNo,jdbcType=VARCHAR}, - billDate = #{billDate,jdbcType=TIMESTAMP}, - billType = #{billType,jdbcType=VARCHAR}, - thrBillNo = #{thrBillNo,jdbcType=VARCHAR}, - submitTime = #{submitTime,jdbcType=TIMESTAMP}, - `status` = #{status,jdbcType=INTEGER}, - `result` = #{result,jdbcType=VARCHAR} - where id = #{id,jdbcType=INTEGER} - + `fromType` = #{fromType,jdbcType=INTEGER}, + `result` = #{result,jdbcType=VARCHAR} + where id = #{id,jdbcType=INTEGER} + + + - select * from stock_order_upload_log - - - AND billNo = #{billNo} - - - AND thrBillNo = #{thirdBillNo} - - - AND status = #{status} - - - AND submitTime = date_format(#{submitTime},'%Y-%m-%d') - - - order by submitTime desc - + + group by stock_order_upload_log.id + order by submitTime desc + \ No newline at end of file diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml index 377d6853..1d529460 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml @@ -191,9 +191,10 @@