From 2cff973619bb50a36c9f72913fc73a457d8db1ca Mon Sep 17 00:00:00 2001 From: anthonywj Date: Mon, 29 Jan 2024 15:39:32 +0800 Subject: [PATCH] =?UTF-8?q?=E9=95=BF=E6=B3=B0=E9=A2=84=E5=A4=87=E8=B4=A7?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E8=A7=A3=E5=86=B3=EF=BC=8C=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=98=AF=E5=90=A6=E6=8B=86=E5=8D=95=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/mipsdl/client/ctqyy/CtqyyClient.java | 64 ++++++++++++----- .../glxp/mipsdl/client/zaxyy/ZaxyyClient.java | 2 + .../dao/system/SysParamConfigMapper.java | 9 +++ .../entity/system/SysParamConfigEntity.java | 69 +++++++++++++++++++ .../req/base/UdiwmsPreInOrderRequest.java | 2 + .../service/system/SysParamConfigService.java | 29 ++++++++ .../mapper/system/SysParamConfigMapper.xml | 22 ++++++ 7 files changed, 179 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/glxp/mipsdl/dao/system/SysParamConfigMapper.java create mode 100644 src/main/java/com/glxp/mipsdl/entity/system/SysParamConfigEntity.java create mode 100644 src/main/java/com/glxp/mipsdl/service/system/SysParamConfigService.java create mode 100644 src/main/resources/mybatis/mapper/system/SysParamConfigMapper.xml diff --git a/src/main/java/com/glxp/mipsdl/client/ctqyy/CtqyyClient.java b/src/main/java/com/glxp/mipsdl/client/ctqyy/CtqyyClient.java index 206208a..01f6383 100644 --- a/src/main/java/com/glxp/mipsdl/client/ctqyy/CtqyyClient.java +++ b/src/main/java/com/glxp/mipsdl/client/ctqyy/CtqyyClient.java @@ -23,6 +23,7 @@ import com.glxp.mipsdl.dao.basic.BasicCorpDao; import com.glxp.mipsdl.dao.basic.BasicProductsDao; import com.glxp.mipsdl.dao.basic.BasicUdirelDao; import com.glxp.mipsdl.dao.inout.*; +import com.glxp.mipsdl.dao.system.SysParamConfigMapper; import com.glxp.mipsdl.dao.thrsys.ThrInvWarehouseDao; import com.glxp.mipsdl.dao.thrsys.ThrProductsDao; import com.glxp.mipsdl.dao.thrsys.ThrSystemBusApiDao; @@ -37,6 +38,7 @@ import com.glxp.mipsdl.entity.ctqyy.MaterialDictEntity; import com.glxp.mipsdl.entity.ctqyy.PriceClassEntity; import com.glxp.mipsdl.entity.ctqyy.ThrHslbEntity; import com.glxp.mipsdl.entity.inout.*; +import com.glxp.mipsdl.entity.system.SysParamConfigEntity; import com.glxp.mipsdl.entity.thrsys.ThrInvWarehouseEntity; import com.glxp.mipsdl.entity.thrsys.ThrProductsEntity; import com.glxp.mipsdl.entity.thrsys.ThrSystemBusApiEntity; @@ -50,6 +52,7 @@ import com.glxp.mipsdl.res.BaseResponse; import com.glxp.mipsdl.res.ctqyy.CtBaseResponse; import com.glxp.mipsdl.res.udiwms.*; import com.glxp.mipsdl.service.auth.AuthWarehouseService; +import com.glxp.mipsdl.service.system.SysParamConfigService; import com.glxp.mipsdl.service.thrsys.ThrCorpService; import com.glxp.mipsdl.service.thrsys.ThrSystemDetailService; import com.glxp.mipsdl.util.DateUtil; @@ -439,6 +442,8 @@ public class CtqyyClient extends CommonHttpClient { return null; } + @Resource + SysParamConfigService sysParamConfigService; @Override public BaseResponse submitOrders(UdiwmsOrderRequest udiwmsOrderRequest) { @@ -539,7 +544,7 @@ public class CtqyyClient extends CommonHttpClient { //查询业务单据详情 List detailBizEntities = orderDetailBizDao.selectList(new QueryWrapper().eq("orderIdFk", orderEntity.getBillNo())); setOrderDetailList(ioCodeEntities, items, detailBizEntities); - zaxzyyOrderRequest.setItem(items); + zaxzyyOrderRequest.setItems(items); if (CollUtil.isEmpty(items)) { log.error("\"产品信息对照异常,无法上传\""); return ResultVOUtils.error(500, "产品信息对照异常,无法上传"); @@ -579,19 +584,26 @@ public class CtqyyClient extends CommonHttpClient { // zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); // zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); // } - Map> splitMap = items.stream() - .collect(Collectors.groupingBy(UdiwmsOrderDetailRequest::getFirstSalesInvNo)); - BaseResponse baseResponse = null; - int index = 1; - if (splitMap.size() > 1) { - for (List splitItems : splitMap.values()) { - zaxzyyOrderRequest.setItem(splitItems); + Boolean b = sysParamConfigService.selectByKey("ct_split_groupbuy"); + if (b) { + Map> splitMap = items.stream() + .collect(Collectors.groupingBy(UdiwmsOrderDetailRequest::getFirstSalesInvNo)); + BaseResponse baseResponse = null; + int index = 1; + if (splitMap.size() > 1) { + for (List splitItems : splitMap.values()) { + zaxzyyOrderRequest.setItems(splitItems); + zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); + zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); + orderEntity.setBillNo(orderEntity.getBillNo() + "-" + index); + baseResponse = submitOrder(orderEntity, zaZyRequest); + } + return baseResponse; + } else { zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); - orderEntity.setBillNo(orderEntity.getBillNo() + "-" + index); - baseResponse = submitOrder(orderEntity, zaZyRequest); + return submitOrder(orderEntity, zaZyRequest); } - return baseResponse; } else { zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); @@ -601,10 +613,10 @@ public class CtqyyClient extends CommonHttpClient { } else if (thrSystemBusApiEntity.getUrl().equals("saveMaterialHight")) { - // 1.先提交到物资 - zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); - zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); - submitOrder(orderEntity, zaZyRequest); +// // 1.先提交到物资 +// zaZyRequest.setMsgHeader(getMsgHeader("saveMasterialInput")); +// zaZyRequest.setMsgBody(JSONUtil.toJsonStr(zaxzyyOrderRequest)); +// submitOrder(orderEntity, zaZyRequest); //2.提交到预备货 @@ -886,6 +898,16 @@ public class CtqyyClient extends CommonHttpClient { BeanUtils.copyProperties(udiwmsOrderRequest, udiwmsPreInOrderRequest); udiwmsPreInOrderRequest.setLocInvCode(udiwmsOrderRequest.getLocStorageCode()); udiwmsPreInOrderRequest.setLocInvName(udiwmsOrderRequest.getLocStorageName()); + String deptCode = "70"; + if (StrUtil.isNotEmpty(orderEntity.getOriginUllageSupNo())) { + IoOrderEntity temp = orderDao.selectOne(new QueryWrapper().eq("billNo", orderEntity.getOriginUllageSupNo()).last("limit 1")); + if (temp != null && StrUtil.isNotEmpty(temp.getFromInvCode())) { + AuthWarehouseEntity authWarehouseEntity = + authWarehouseDao.selectOne(new QueryWrapper().eq("code", temp.getFromInvCode()).last("limit 1")); + deptCode = authWarehouseEntity.getThirdId(); + } + } + udiwmsPreInOrderRequest.setDeptCode(deptCode); if (orderEntity.getReviewUser() != null) { AuthUserEntity authUser = authUserDao.selectById(orderEntity.getReviewUser()); udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName()); @@ -894,14 +916,20 @@ public class CtqyyClient extends CommonHttpClient { udiwmsPreInOrderRequest.setActor(authUser.getEmployeeName()); } List itemDTOS = new ArrayList<>(); - if (CollUtil.isNotEmpty(udiwmsOrderRequest.getItem())) { - for (UdiwmsOrderDetailRequest udiwmsOrderDetail : udiwmsOrderRequest.getItem()) { + if (CollUtil.isNotEmpty(udiwmsOrderRequest.getItems())) { + for (UdiwmsOrderDetailRequest udiwmsOrderDetail : udiwmsOrderRequest.getItems()) { if (CollUtil.isNotEmpty(udiwmsOrderDetail.getCodeList())) { for (UdiwmsOrderDetailRequest.CodeDetailEntity codeDetaiEntity : udiwmsOrderDetail.getCodeList()) { UdiwmsPreInOrderRequest.ItemDTO itemDTO = new UdiwmsPreInOrderRequest.ItemDTO(); BeanUtils.copyProperties(udiwmsOrderDetail, itemDTO); - itemDTO.setCode(codeDetaiEntity.getCode()); + + String code = codeDetaiEntity.getCode(); + if (code.contains("\u001D")) { + code = code.replace("\u001D", "zysoft"); + } + itemDTO.setCode(code); itemDTO.setCount(codeDetaiEntity.getCount()); + itemDTO.setNameCode(codeDetaiEntity.getNameCode()); itemDTOS.add(itemDTO); } diff --git a/src/main/java/com/glxp/mipsdl/client/zaxyy/ZaxyyClient.java b/src/main/java/com/glxp/mipsdl/client/zaxyy/ZaxyyClient.java index 381c5a2..1e9856d 100644 --- a/src/main/java/com/glxp/mipsdl/client/zaxyy/ZaxyyClient.java +++ b/src/main/java/com/glxp/mipsdl/client/zaxyy/ZaxyyClient.java @@ -671,4 +671,6 @@ public class ZaxyyClient extends CommonHttpClient { return udiwmsPreInOrderRequest; } + + } diff --git a/src/main/java/com/glxp/mipsdl/dao/system/SysParamConfigMapper.java b/src/main/java/com/glxp/mipsdl/dao/system/SysParamConfigMapper.java new file mode 100644 index 0000000..b5c346a --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/dao/system/SysParamConfigMapper.java @@ -0,0 +1,9 @@ +package com.glxp.mipsdl.dao.system; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.mipsdl.entity.system.SysParamConfigEntity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysParamConfigMapper extends BaseMapper { +} diff --git a/src/main/java/com/glxp/mipsdl/entity/system/SysParamConfigEntity.java b/src/main/java/com/glxp/mipsdl/entity/system/SysParamConfigEntity.java new file mode 100644 index 0000000..46dbc69 --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/entity/system/SysParamConfigEntity.java @@ -0,0 +1,69 @@ +package com.glxp.mipsdl.entity.system; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * 参数设置表 + */ +@Data +@TableName(value = "sys_param_config") +public class SysParamConfigEntity implements Serializable { + /** + * 主键ID + */ + @TableId(value = "id", type = IdType.INPUT) + private Integer id; + + /** + * 父ID + */ + @TableField(value = "parentId") + private Integer parentId; + + /** + * 参数名 + */ + @TableField(value = "paramName") + private String paramName; + + /** + * 参数键 + */ + @TableField(value = "paramKey") + private String paramKey; + + /** + * 参数值 + */ + @TableField(value = "paramValue") + private String paramValue; + + /** + * 参数状态 0:通用,不过滤,1:erp参数 + */ + @TableField(value = "paramStatus") + private Integer paramStatus; + + /** + * 参数类型 + */ + @TableField(value = "paramType") + private Integer paramType; + + /** + * 参数说明 + */ + @TableField(value = "paramExplain") + private String paramExplain; + + @TableField(value = "updateTime") + private Date updateTime; + + private static final long serialVersionUID = 1L; +} diff --git a/src/main/java/com/glxp/mipsdl/req/base/UdiwmsPreInOrderRequest.java b/src/main/java/com/glxp/mipsdl/req/base/UdiwmsPreInOrderRequest.java index 45842ea..ed084eb 100644 --- a/src/main/java/com/glxp/mipsdl/req/base/UdiwmsPreInOrderRequest.java +++ b/src/main/java/com/glxp/mipsdl/req/base/UdiwmsPreInOrderRequest.java @@ -15,6 +15,7 @@ public class UdiwmsPreInOrderRequest { private String corpName; private String locInvCode; private String locInvName; + private String deptCode; private String actor; private String thirdSys; private String remark; @@ -38,5 +39,6 @@ public class UdiwmsPreInOrderRequest { private String secSalesListNo; private String firstSalesInvNo; private String remark; + private String nameCode; } } diff --git a/src/main/java/com/glxp/mipsdl/service/system/SysParamConfigService.java b/src/main/java/com/glxp/mipsdl/service/system/SysParamConfigService.java new file mode 100644 index 0000000..4beb292 --- /dev/null +++ b/src/main/java/com/glxp/mipsdl/service/system/SysParamConfigService.java @@ -0,0 +1,29 @@ +package com.glxp.mipsdl.service.system; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.glxp.mipsdl.util.IntUtil; +import org.apache.logging.log4j.spi.Terminable; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.glxp.mipsdl.dao.system.SysParamConfigMapper; +import com.glxp.mipsdl.entity.system.SysParamConfigEntity; + +import javax.annotation.Resource; + +@Service +public class SysParamConfigService extends ServiceImpl { + @Resource + SysParamConfigMapper sysParamConfigMapper; + + public Boolean selectByKey(String key) { + SysParamConfigEntity sysParamConfigEntity = sysParamConfigMapper.selectOne(new QueryWrapper().eq("paramKey", key).last("limit 1")); + if (sysParamConfigEntity != null) { + String value = sysParamConfigEntity.getParamValue(); + if (IntUtil.value(value) > 0) { + return true; + } + } + return false; + } + +} diff --git a/src/main/resources/mybatis/mapper/system/SysParamConfigMapper.xml b/src/main/resources/mybatis/mapper/system/SysParamConfigMapper.xml new file mode 100644 index 0000000..e3ed4eb --- /dev/null +++ b/src/main/resources/mybatis/mapper/system/SysParamConfigMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + id, parentId, paramName, paramKey, paramValue, paramStatus, paramType, paramExplain, + updateTime + +