From ae12da06a527d242f645cfcc752aa189b7f02ae5 Mon Sep 17 00:00:00 2001
From: wangwei <1610949092@qq.com>
Date: Thu, 9 Feb 2023 10:42:00 +0800
Subject: [PATCH 01/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
index ee87e379f..ea513741d 100644
--- a/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
+++ b/src/main/resources/mybatis/mapper/basic/UdiRlSupDao.xml
@@ -118,8 +118,8 @@
and (
nameCode LIKE concat('%', #{unionCode}, '%')
- or basic_udirel.ybbm LIKE concat('%', #{unionCode}, '%')
- or basic_udirel.sptm LIKE concat('%', #{unionCode}, '%')
+ or basic_products.ybbm LIKE concat('%', #{unionCode}, '%')
+ or basic_products.sptm LIKE concat('%', #{unionCode}, '%')
)
From b8aeb30de559a1fce5c503f2bbf2eb764c1f9335 Mon Sep 17 00:00:00 2001
From: x_z
Date: Thu, 9 Feb 2023 11:55:44 +0800
Subject: [PATCH 02/11] =?UTF-8?q?1.=E8=A1=A5=E5=85=85=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E6=9F=A5=E8=AF=A2VO=E7=B1=BB=E5=B1=9E=E6=80=A7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../glxp/api/res/inv/InvProductResponse.java | 98 +++++++++++++++++++
1 file changed, 98 insertions(+)
diff --git a/src/main/java/com/glxp/api/res/inv/InvProductResponse.java b/src/main/java/com/glxp/api/res/inv/InvProductResponse.java
index f90e1b872..45c5019c3 100644
--- a/src/main/java/com/glxp/api/res/inv/InvProductResponse.java
+++ b/src/main/java/com/glxp/api/res/inv/InvProductResponse.java
@@ -7,4 +7,102 @@ import lombok.Data;
*/
@Data
public class InvProductResponse {
+
+ private Integer id;
+
+ /**
+ * 产品标识DI
+ */
+ private String nameCode;
+
+ /**
+ * 产品名称
+ */
+ private String cpmctymc;
+
+ /**
+ * 耗材字典ID
+ */
+ private String relIdFk;
+
+ /**
+ * 规格型号
+ */
+ private String ggxh;
+
+ /**
+ * 批次号
+ */
+ private String batchNo;
+
+ /**
+ * 生产日期
+ */
+ private String productionDate;
+
+ /**
+ * 过期时间
+ */
+ private String expireDate;
+
+ /**
+ * 生产厂家名称
+ */
+ private String ylqxzcrbarmc;
+
+ /**
+ * 批准文号
+ */
+ private String zczbhhzbapzbh;
+
+ /**
+ * 入库数量
+ */
+ private Integer inCount;
+
+ /**
+ * 出库数量
+ */
+ private Integer outCount;
+
+ /**
+ * 实际数量
+ */
+ private Integer reCount;
+
+ /**
+ * 客户ID
+ */
+ private String customerId;
+
+ /**
+ * 供应商名称
+ */
+ private String supName;
+
+ /**
+ * 供应商ID
+ */
+ private String supId;
+
+ /**
+ * 部门名称
+ */
+ private String deptName;
+
+ /**
+ * 仓库名称
+ */
+ private String invName;
+
+ /**
+ * 部门编码
+ */
+ private String deptCode;
+
+ /**
+ * 仓库编码
+ */
+ private String invCode;
+
}
From 01d818b7150a7707fcbd4b166c1feec64dda9d93 Mon Sep 17 00:00:00 2001
From: anthonywj
Date: Thu, 9 Feb 2023 14:54:20 +0800
Subject: [PATCH 03/11] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=8D=95=E6=8D=AE->?=
=?UTF-8?q?=E5=BA=93=E5=AD=98=E6=B5=81=E7=A8=8B=E8=B5=B0=E9=80=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/glxp/api/constant/ConstantStatus.java | 6 +
.../com/glxp/api/dao/inout/IoOrderDao.java | 9 +
.../entity/inout/IoOrderDetailBizEntity.java | 2 +-
.../entity/inout/IoOrderDetailCodeEntity.java | 2 +-
.../inout/IoOrderDetailResultEntity.java | 2 +-
.../entity/inv/InvProductDetailEntity.java | 2 +-
.../api/req/inout/FilterOrderRequest.java | 2 +
.../glxp/api/res/inout/IoOrderResponse.java | 4 +
.../api/service/basic/UdiRlSupService.java | 2 +
.../basic/impl/UdiRlSupServiceImpl.java | 8 +
.../api/service/inout/IoAddInoutService.java | 341 +++++++++++++++++-
.../service/inout/IoCheckInoutService.java | 9 +-
.../api/service/inout/IoGenInvService.java | 11 +-
.../inout/IoOrderDetailCodeService.java | 2 +
.../api/service/inout/IoOrderService.java | 12 +
.../service/inout/impl/IoCodeServiceImpl.java | 1 +
.../inout/impl/IoCodeTempServiceImpl.java | 1 +
.../impl/IoOrderDetailBizServiceImpl.java | 1 +
.../impl/IoOrderDetailCodeServiceImpl.java | 15 +-
.../impl/IoOrderDetailResultServiceImpl.java | 1 +
.../inout/impl/IoOrderServiceImpl.java | 68 ++++
.../service/inv/InvProductDetailService.java | 2 +
.../inv/impl/InvPreinOrderServiceImpl.java | 1 +
.../inv/impl/InvProductDetailServiceImpl.java | 11 +
.../inv/impl/InvProductServiceImpl.java | 1 +
.../glxp/api/task/SupplementOrderTask.java | 80 ++++
src/main/resources/application-dev.yml | 4 +-
.../mybatis/mapper/inout/IoOrderDao.xml | 16 +-
28 files changed, 584 insertions(+), 32 deletions(-)
create mode 100644 src/main/java/com/glxp/api/task/SupplementOrderTask.java
diff --git a/src/main/java/com/glxp/api/constant/ConstantStatus.java b/src/main/java/com/glxp/api/constant/ConstantStatus.java
index f31bff7f8..a53b8d32f 100644
--- a/src/main/java/com/glxp/api/constant/ConstantStatus.java
+++ b/src/main/java/com/glxp/api/constant/ConstantStatus.java
@@ -47,6 +47,12 @@ public class ConstantStatus {
*/
public static final Integer ORDER_STATUS_AUDITED_REFUSED = 8;
+ /**
+ * 已提交正在处理
+ */
+ public static final Integer ORDER_STATUS_PROCESSING = 9;
+
+
public static final Integer ORDER_STATUS_ADDITIONAL = 5; //补录单据
// public static final Integer ORDER_STATUS_RECEIVEED = 7;
diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDao.java
index 11c2aa554..12241a75b 100644
--- a/src/main/java/com/glxp/api/dao/inout/IoOrderDao.java
+++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDao.java
@@ -24,4 +24,13 @@ public interface IoOrderDao extends BaseMapperPlus filterOrderList(FilterOrderRequest filterOrderRequest);
+
+
+ /**
+ * 查询补单单号为空的单据号
+ *
+ * @return
+ */
+ List selectSupplementOrderList();
+
}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java
index cce0050c0..559201c2f 100644
--- a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java
+++ b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailBizEntity.java
@@ -11,7 +11,7 @@ import java.math.BigDecimal;
@Data
@TableName(value = "io_order_detail_biz")
public class IoOrderDetailBizEntity {
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailCodeEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailCodeEntity.java
index a7f2b0d57..56a68778c 100644
--- a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailCodeEntity.java
+++ b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailCodeEntity.java
@@ -11,7 +11,7 @@ import java.math.BigDecimal;
@Data
@TableName(value = "io_order_detail_code")
public class IoOrderDetailCodeEntity {
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailResultEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailResultEntity.java
index 786282a26..e058f8127 100644
--- a/src/main/java/com/glxp/api/entity/inout/IoOrderDetailResultEntity.java
+++ b/src/main/java/com/glxp/api/entity/inout/IoOrderDetailResultEntity.java
@@ -11,7 +11,7 @@ import java.math.BigDecimal;
@Data
@TableName(value = "io_order_detail_result")
public class IoOrderDetailResultEntity {
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
diff --git a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
index 4a61bd17d..cd0a72e39 100644
--- a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
+++ b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
@@ -11,7 +11,7 @@ import java.util.Date;
@Data
@TableName(value = "inv_product_detail")
public class InvProductDetailEntity {
- @TableId(value = "id", type = IdType.INPUT)
+ @TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
index 2d0887f27..f327b2d6c 100644
--- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
+++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
@@ -113,4 +113,6 @@ public class FilterOrderRequest extends ListPageRequest {
*/
private String invCode;
+ private String igNoreBillNo;
+
}
diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
index cd6c646d8..c7a6d3540 100644
--- a/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
+++ b/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
@@ -201,6 +201,10 @@ public class IoOrderResponse {
private String fromName;
+ //是否可以补单
+ private boolean enableSupplementOrder;
+
+
public String getFromName() {
if (StrUtil.isNotEmpty(fromCorpName))
diff --git a/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java b/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java
index 6b49b5824..b699c61b5 100644
--- a/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java
+++ b/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java
@@ -22,6 +22,8 @@ public interface UdiRlSupService {
UdiRlSupEntity findByUdiRlIdUnitFk(String udiRlIdFk, String unitFk);
+ List findByUdiRlId(String udiRlIdFk);
+
UdiRlSupEntity findCompanyProductRelevanceByProductUuid(UdiRlSupEntity udiRlSupEntity);
List getCompanyProductRelevance(FilterCompanyProductRelevanceRequest filterCompanyProductRelevanceRequest);
diff --git a/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java
index bf37e601a..2dd4fd455 100644
--- a/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java
@@ -83,6 +83,14 @@ public class UdiRlSupServiceImpl implements UdiRlSupService {
return null;
}
+ @Override
+ public List findByUdiRlId(String udiRlIdFk) {
+ FilterCompanyProductRelevanceRequest filterCompanyProductRelevanceRequest = new FilterCompanyProductRelevanceRequest();
+ filterCompanyProductRelevanceRequest.setUdiRlIdFk(udiRlIdFk);
+ List companyProductRelevanceEntities = udiRlSupDao.filterCompanyProductRelevance(filterCompanyProductRelevanceRequest);
+ return companyProductRelevanceEntities;
+ }
+
@Override
public UdiRlSupEntity findCompanyProductRelevanceByProductUuid(UdiRlSupEntity udiRlSupEntity) {
return udiRlSupDao.findCompanyProductRelevanceByProductUuid(udiRlSupEntity);
diff --git a/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java b/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java
index 370f9e2a3..4bd4260b4 100644
--- a/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoAddInoutService.java
@@ -1,30 +1,47 @@
package com.glxp.api.service.inout;
+import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
+import com.glxp.api.common.enums.ResultEnum;
+import com.glxp.api.common.res.BaseResponse;
+import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
+import com.glxp.api.entity.basic.BasicCorpEntity;
+import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiRlSupEntity;
import com.glxp.api.entity.inout.IoCodeEntity;
import com.glxp.api.entity.inout.IoCodeTempEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
+import com.glxp.api.entity.inv.InvProductDetailEntity;
+import com.glxp.api.entity.system.SystemParamConfigEntity;
+import com.glxp.api.req.basic.CompanyProductRelevanceRequest;
import com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest;
+import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.req.inout.PdaCodeEntity;
import com.glxp.api.req.inout.PostOrderRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
+import com.glxp.api.service.basic.BasicCorpService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.basic.UdiRlSupService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
+import com.glxp.api.service.inv.InvProductDetailService;
+import com.glxp.api.service.inv.InvProductService;
+import com.glxp.api.service.system.SystemParamConfigService;
+import com.glxp.api.util.CustomUtil;
import com.glxp.api.util.DateUtil;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
+import com.glxp.api.util.udi.FilterUdiUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
@Service
@@ -39,11 +56,266 @@ public class IoAddInoutService {
@Resource
IoCodeService codeService;
@Resource
+ IoCodeTempService codeTempService;
+ @Resource
UdiRlSupService udiRlSupService;
@Resource
IoOrderDetailCodeService orderDetailCodeService;
@Resource
UdiRelevanceService udiRelevanceService;
+ @Resource
+ InvProductDetailService invProductDetailService;
+ @Resource
+ BasicCorpService basicCorpService;
+ @Resource
+ IoCheckInoutService ioCheckInoutService;
+ @Resource
+ SystemParamConfigService systemParamConfigService;
+
+ //新增单据处理
+ public void dealProcess(IoOrderEntity orderEntity) {
+
+ orderEntity.setRemark("正在处理!");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESSING);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+
+ List orderEntities = orderService.isExitRepeat(orderEntity.getCorpOrderId(), orderEntity.getBillNo());
+
+ if (CollUtil.isNotEmpty(orderEntities)) {
+ orderEntity.setRemark("单据重复上传");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ return;
+ }
+
+ BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
+ if (bussinessTypeEntity == null) {
+ orderEntity.setRemark("单据类型不存在");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ return;
+ }
+ if (StrUtil.isEmpty(orderEntity.getFromCorp()) && StrUtil.isEmpty(orderEntity.getFromInvCode())) {
+ orderEntity.setRemark("未选择往来单位");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ return;
+ } else if (StrUtil.isNotEmpty(orderEntity.getFromCorp())) {
+ if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INPUT && bussinessTypeEntity.isGenUnit()) {
+
+ BasicCorpEntity basicCorpEntity = basicCorpService.selectByName(orderEntity.getFromCorp());
+ if (basicCorpEntity == null) {
+ basicCorpEntity = new BasicCorpEntity();
+ basicCorpEntity.setErpId(CustomUtil.getUnitId());
+ basicCorpEntity.setCorpType(ConstantStatus.CORP_SICK);
+ basicCorpEntity.setOutType(ConstantStatus.CORP_SICK_SICK);
+ basicCorpEntity.setName(orderEntity.getFromCorp());
+
+ }
+ orderEntity.setFromCorp(basicCorpEntity.getErpId());
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ basicCorpService.insertBasicUnitMaintain(basicCorpEntity);
+ }
+ }
+
+
+ if (StrUtil.isEmpty(orderEntity.getInvCode())) {
+ orderEntity.setRemark("未选择当前仓库信息");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ return;
+ }
+
+
+ List filterList = codeTempService.findByOrderId(orderEntity.getBillNo());
+ List insertList = new ArrayList<>();
+
+ for (int j = 0; j < filterList.size(); j++) {
+ IoCodeTempEntity warehouseEntity = filterList.get(j);
+ String result = checkOrderRepeatCode(warehouseEntity, filterList);
+ if (result == null) {
+ insertList.add(warehouseEntity);
+ } else {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ insertList.clear();
+ return;
+ }
+ //三期校验
+ String checkOriginMsg = checkOriginCode(warehouseEntity);
+ if (StrUtil.isNotEmpty(checkOriginMsg)) {
+ orderEntity.setRemark("checkOriginMsg");
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderService.update(orderEntity);
+ insertList.clear();
+ return;
+ }
+
+ //产品是否已维护已关联
+ if ((warehouseEntity.getRelId() == null)) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setRemark("udi码:" + warehouseEntity.getCode() + "上传时对照数据丢失,请选择对!");
+ orderService.update(orderEntity);
+ return;
+ }
+
+ //产品是否指定供应商
+ if (StrUtil.isEmpty(warehouseEntity.getSupId())) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setRemark("udi码:" + warehouseEntity.getCode() + "未指定供应商!");
+ orderService.update(orderEntity);
+ return;
+ }
+
+ //校验是否是当前供应商
+ if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
+ UdiRlSupEntity udiRlSupEntity = udiRlSupService.findByUdiRlIdUnitFk(warehouseEntity.getRelId() + "", orderEntity.getFromCorp());
+ if (udiRlSupEntity == null) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setRemark("udi码:" + warehouseEntity.getCode() + "当前供应商不存在此配送产品");
+ orderService.update(orderEntity);
+ return;
+ }
+ }
+
+ //产品是否可以以使用单元入库
+ UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(warehouseEntity.getRelId());
+ if (udiRelevanceResponse == null) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setRemark("udi码:" + warehouseEntity.getCode() + "该产品信息未维护");
+ orderService.update(orderEntity);
+ return;
+ } else if (!udiRelevanceResponse.getUseDy() && udiRelevanceResponse.getDiType() == ConstantStatus.DITYPE_SYDY) {
+
+ orderEntity.setStatus(ConstantStatus.ORDER_STATS_ERROR);
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setRemark("udi码:" + warehouseEntity.getCode() + "该产品不允许以使用单元入库");
+ orderService.update(orderEntity);
+ return;
+ }
+
+ }
+
+ if (CollUtil.isNotEmpty(insertList)) {
+ //临时表转正式表
+ List ioCodeEntities = new ArrayList<>();
+ for (IoCodeTempEntity codeTempEntity : insertList) {
+ IoCodeEntity codeEntity = new IoCodeEntity();
+ BeanUtils.copyProperties(codeTempEntity, codeEntity);
+ ioCodeEntities.add(codeEntity);
+ }
+ codeService.insertBatch(ioCodeEntities);
+
+ //生成扫码单据详情
+ if (!orderDetailCodeService.isExit(orderEntity.getBillNo())) {
+ for (IoCodeTempEntity codeTempEntity : insertList) {
+ genOrderDetailCode(orderEntity, codeTempEntity);
+ }
+ }
+ codeTempService.deleteByBillNo(orderEntity.getBillNo());
+
+ //进行单据校验
+ ioCheckInoutService.check(orderEntity.getBillNo());
+ }
+
+ }
+
+ //生成扫码单据详情
+ public void genOrderDetailCode(IoOrderEntity orderEntity, IoCodeTempEntity codeTempEntity) {
+
+ List ioOrderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderEntity.getBillNo());
+ UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId());
+ if (CollUtil.isEmpty(ioOrderDetailCodeEntities)) {
+ orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse));
+ } else {
+ ioOrderDetailCodeEntities.forEach(orderDetailCodeEntity ->
+ {
+ if (orderDetailCodeEntity.getBindRlFk().longValue() == udiRelevanceResponse.getId().longValue() && orderDetailCodeEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
+ orderDetailCodeEntity.setCount(orderDetailCodeEntity.getCount() + codeTempEntity.getCount());
+ orderDetailCodeEntity.setReCount(orderDetailCodeEntity.getReCount() + codeTempEntity.getReCount());
+ orderDetailCodeService.update(orderDetailCodeEntity);
+ } else {
+ orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse));
+ }
+ });
+ }
+ }
+
+ //平衡补单
+ public BaseResponse supplementOrder(String orderId) {
+
+ IoOrderEntity order = orderService.findByBillNo(orderId);
+ BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(order.getAction());
+ if (StrUtil.isBlank(bussinessTypeEntity.getSupplementOrderType())) {
+ return ResultVOUtils.error(ResultEnum.valueOf("此类型单据不可补单"));
+ }
+ IoOrderEntity supplementOrder = new IoOrderEntity();
+ BeanUtil.copyProperties(order, supplementOrder);
+
+ //生成补单单号,互填单号
+ String supplementOrderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trimToEmpty(bussinessTypeEntity.getPrefix()), "yyyyMMdd"));
+ supplementOrder.setSupplementNo(orderId);
+ order.setSupplementNo(supplementOrderNo);
+ supplementOrder.setBillNo(supplementOrderNo);
+ supplementOrder.setCorpOrderId(CustomUtil.getId() + "x");
+
+ //修改状态
+ SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("additional_auto_submit");
+ if ("1".equals(systemParamConfigEntity.getParamValue())) {
+ supplementOrder.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); //设置状态为补录单据
+ } else {
+ supplementOrder.setStatus(ConstantStatus.ORDER_STATUS_ADDITIONAL); //设置状态为补录单据
+ }
+
+ //交换往来信息
+ supplementOrder.setFromDeptCode(order.getDeptCode());
+ supplementOrder.setFromInvCode(order.getInvCode());
+ supplementOrder.setInvCode(order.getFromInvCode());
+ supplementOrder.setDeptCode(order.getFromDeptCode());
+ supplementOrder.setFromType(ConstantStatus.FROM_PEACE_CHANGE);
+
+ //设置往来信息
+ BasicBussinessTypeEntity supplementType = basicBussinessTypeService.findByAction(bussinessTypeEntity.getSupplementOrderType());
+ supplementOrder.setMainAction(supplementType.getMainAction());
+ supplementOrder.setAction(supplementType.getAction());
+
+ //复制码表
+ List codes = codeService.findByOrderId(orderId);
+ List supplementCodes = new ArrayList<>();
+ codes.forEach(
+ code -> {
+ IoCodeTempEntity supplementCode = new IoCodeTempEntity();
+ BeanUtil.copyProperties(code, supplementCode);
+ supplementCode.setId(null);
+ supplementCode.setInvCode(order.getFromInvCode());
+ supplementCode.setDeptCode(order.getFromDeptCode());
+ supplementCode.setOrderId(supplementOrderNo);
+ supplementCode.setAction(supplementType.getAction());
+ supplementCode.setMainAction(supplementType.getMainAction());
+ supplementCodes.add(supplementCode);
+
+ }
+ );
+
+ //更新数据
+ orderService.insertOrder(supplementOrder);
+ orderService.update(order);
+ codeTempService.insertBatch(supplementCodes);
+ dealProcess(supplementOrder);
+ return ResultVOUtils.success();
+ }
//手持终端上传生成扫码单据
public void creatOrderByPda(PostOrderRequest postOrderRequest) {
@@ -196,28 +468,62 @@ public class IoAddInoutService {
return null;
}
+ //查询本单是否有重复条码
+ public String checkOrderRepeatCode(IoCodeTempEntity codeEntity, List filterList) {
+ int count = 0;
+ if (filterList != null) {
+ for (IoCodeTempEntity temp : filterList) {
+ if (temp.getCode().equals(codeEntity.getCode())) {
+ count = count + 1;
+ }
+ }
+ }
+ if (count > 1) {
+ return codeEntity.getCode() + "条码重复";
+ } else
+ return null;
+ }
- //生成扫码单据详情
- public void genOrderDetailCode(IoOrderEntity orderEntity, IoCodeTempEntity codeTempEntity) {
- List ioOrderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderEntity.getBillNo());
- UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId());
- if (CollUtil.isEmpty(ioOrderDetailCodeEntities)) {
- orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse));
- } else {
- ioOrderDetailCodeEntities.forEach(orderDetailCodeEntity ->
- {
- if (orderDetailCodeEntity.getBindRlFk().longValue() == udiRelevanceResponse.getId().longValue() && orderDetailCodeEntity.getBatchNo().equals(codeTempEntity.getBatchNo())) {
- orderDetailCodeEntity.setCount(orderDetailCodeEntity.getCount() + codeTempEntity.getCount());
- orderDetailCodeEntity.setReCount(orderDetailCodeEntity.getReCount() + codeTempEntity.getReCount());
- orderDetailCodeService.update(orderDetailCodeEntity);
- } else {
- orderDetailCodeService.insert(buildEntity(orderEntity, codeTempEntity, udiRelevanceResponse));
- }
- });
+ public String checkOriginCode(IoCodeTempEntity warehouseEntity) {
+
+ UdiEntity udiEntity = FilterUdiUtils.getUdi(warehouseEntity.getCode());
+ //校验条码的完整性
+ String errMsg = "";
+ UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByNameCode(udiEntity.getUdi());
+ if (udiRelevanceResponse == null) {
+ return "耗材字典不存在此产品";
+ }
+ InvProductDetailEntity invProductDetailEntity = invProductDetailService.sortFindByCode(warehouseEntity.getCode());
+ if (invProductDetailEntity != null) {
+ if (StrUtil.isEmpty(warehouseEntity.getBatchNo())) {
+ warehouseEntity.setBatchNo(invProductDetailEntity.getBatchNo());
+ }
+ if (StrUtil.isEmpty(warehouseEntity.getProduceDate())) {
+ warehouseEntity.setProduceDate(invProductDetailEntity.getProduceDate());
+ }
+ if (StrUtil.isEmpty(warehouseEntity.getExpireDate())) {
+ warehouseEntity.setExpireDate(invProductDetailEntity.getExpireDate());
+ }
+ }
+
+ if (StrUtil.isEmpty(warehouseEntity.getBatchNo()) && !udiRelevanceResponse.getAllowNoBatch()) {
+ errMsg = errMsg + ",批次号";
}
+ if (StrUtil.isEmpty(warehouseEntity.getProduceDate()) && !udiRelevanceResponse.getAllowNoProduct()) {
+ errMsg = errMsg + ",生产日期";
+ }
+ if (StrUtil.isEmpty(warehouseEntity.getExpireDate()) && !udiRelevanceResponse.getAllowNoExpire()) {
+ errMsg = errMsg + ",失效日期";
+ }
+
+ if (StrUtil.isNotEmpty(errMsg)) {
+ return "UDI码" + warehouseEntity.getCode() + "产品三期缺失请补齐" + errMsg.substring(1) + "";
+ }
+ return null;
}
+
IoOrderDetailCodeEntity buildEntity(IoOrderEntity orderEntity, IoCodeTempEntity codeTempEntity, UdiRelevanceResponse udiRelevanceResponse) {
IoOrderDetailCodeEntity ioOrderDetailCodeEntity = new IoOrderDetailCodeEntity();
ioOrderDetailCodeEntity.setOrderIdFk(orderEntity.getBillNo());
@@ -240,4 +546,5 @@ public class IoAddInoutService {
return ioOrderDetailCodeEntity;
}
+
}
diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
index 697254adf..4d1f36e4b 100644
--- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
@@ -137,12 +137,14 @@ public class IoCheckInoutService {
//生成业务单据
IoOrderDetailBizEntity orderDetailBizEntity = new IoOrderDetailBizEntity();
BeanUtils.copyProperties(orderDetailCodeEntity, orderDetailBizEntity);
+ orderDetailBizEntity.setId(null);
orderDetailBizService.insert(orderDetailBizEntity);
//生成单据结果
IoOrderDetailResultEntity orderDetailResultEntity = new IoOrderDetailResultEntity();
BeanUtils.copyProperties(orderDetailCodeEntity, orderDetailResultEntity);
+ orderDetailResultEntity.setId(null);
orderDetailResultService.insert(orderDetailResultEntity);
});
@@ -152,6 +154,7 @@ public class IoCheckInoutService {
for (IoCodeTempEntity codeTempEntity : codeTempEntities) {
IoCodeEntity codeEnttity = new IoCodeEntity();
BeanUtils.copyProperties(codeTempEntity, codeEnttity);
+ codeEnttity.setId(null);
codeService.insert(codeEnttity);
}
codeTempService.deleteByBillNo(orderEntity.getBillNo());
@@ -168,7 +171,7 @@ public class IoCheckInoutService {
List orderDetailBizEntities = orderDetailBizService.findByOrderId(orderEntity.getBillNo());
if (CollUtil.isEmpty(orderDetailCodeEntities)) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_FAIL);
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK);
orderEntity.setUpdateTime(new Date());
orderEntity.setErrMsg("校验失败,扫码详情为空!");
orderService.update(orderEntity);
@@ -176,12 +179,13 @@ public class IoCheckInoutService {
}
if (CollUtil.isEmpty(orderDetailBizEntities)) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK_FAIL);
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_CHECK);
orderEntity.setUpdateTime(new Date());
orderEntity.setErrMsg("校验失败,业务详情为空!");
orderService.update(orderEntity);
return;
}
+
String errMsg = "";
//正向校验
for (IoOrderDetailBizEntity bizEntity : orderDetailBizEntities) {
@@ -242,6 +246,7 @@ public class IoCheckInoutService {
for (IoOrderDetailBizEntity orderDetailBizEntity : orderDetailBizEntities) {
IoOrderDetailResultEntity orderDetailResultEntity = new IoOrderDetailResultEntity();
BeanUtils.copyProperties(orderDetailBizEntity, orderDetailResultEntity);
+ orderDetailResultEntity.setId(null);
orderDetailResultEntity.setReCount(orderDetailBizEntity.getScanCount());
orderDetailResultService.insert(orderDetailResultEntity);
}
diff --git a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java
index 8f4c6458c..b8d11acae 100644
--- a/src/main/java/com/glxp/api/service/inout/IoGenInvService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoGenInvService.java
@@ -140,6 +140,7 @@ public class IoGenInvService {
{
InvPreinDetailEntity invPreinDetailEntity = new InvPreinDetailEntity();
BeanUtils.copyProperties(codeEntity, invPreinDetailEntity);
+ invPreinDetailEntity.setId(null);
invPreinDetailEntities.add(invPreinDetailEntity);
});
@@ -235,9 +236,13 @@ public class IoGenInvService {
if (targetBustypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
outOrder.setCustomerId(corpName);
outOrder.setFromCorp(corpName);
+ outOrder.setFromInvCode(null);
+ outOrder.setFromDeptCode(null);
} else {
outOrder.setCustomerId(Constant.SYSTEM_CUSTOMER_ID);
outOrder.setFromInvCode(bussinessChangeTypeEntity.getDefaultInvCode());
+ outOrder.setFromDeptCode(bussinessChangeTypeEntity.getDefaultDeptCode());
+ outOrder.setFromCorp(null);
}
outOrder.setCorpOrderId(CustomUtil.getId() + "x");
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByInvSubByCode(bussinessChangeTypeEntity.getInvCode());
@@ -262,16 +267,20 @@ public class IoGenInvService {
for (IoCodeEntity warehouseEntity : temps) {
IoCodeTempEntity codeTempEntity = new IoCodeTempEntity();
BeanUtils.copyProperties(warehouseEntity, codeTempEntity);
- codeTempEntity.setOrderId(outOrder.getBillNo());
codeTempEntity.setId(null);
+ codeTempEntity.setOrderId(outOrder.getBillNo());
codeTempEntity.setAction(outOrder.getAction());
codeTempEntity.setMainAction(outOrder.getMainAction());
codeTempEntities.add(codeTempEntity);
}
codeTempService.insertBatch(codeTempEntities);
+ addInoutService.dealProcess(outOrder);
}
}
+ @Resource
+ IoAddInoutService addInoutService;
+
//计算当前库存数量
public int getInvCount(IoCodeEntity codeEntity) {
diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java
index 9fe63e0f4..4dd835fec 100644
--- a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java
@@ -37,4 +37,6 @@ public interface IoOrderDetailCodeService {
int deleteByOrderId(String orderId);
public List checkOrderList(String orderId);
+
+ boolean isExit(String orderId);
}
diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderService.java b/src/main/java/com/glxp/api/service/inout/IoOrderService.java
index 837cc6483..bfbe7f14f 100644
--- a/src/main/java/com/glxp/api/service/inout/IoOrderService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoOrderService.java
@@ -11,6 +11,10 @@ public interface IoOrderService {
List selectAll();
+ List findAll(FilterOrderRequest filterOrderRequest);
+
+ List isExitRepeat(String corpOrderId, String billNo);
+
IoOrderEntity findById(String orderId);
IoOrderEntity findByBillNo(String billNO);
@@ -42,4 +46,12 @@ public interface IoOrderService {
* @return
*/
List filterOrderList(FilterOrderRequest filterOrderRequest);
+
+
+ List selectSupplementOrderList();
+
+ /**
+ * 判断订单是否可以补单
+ */
+ List checkSupplementOrder(List orderEntities);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java
index 0fb58c43d..657bb3909 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoCodeServiceImpl.java
@@ -25,6 +25,7 @@ public class IoCodeServiceImpl implements IoCodeService {
@Override
public int insert(IoCodeEntity codeEnttity) {
+ codeEnttity.setId(null);
return ioCodeDao.insert(codeEnttity);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java
index 0f83195e7..9c101d9b1 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoCodeTempServiceImpl.java
@@ -28,6 +28,7 @@ public class IoCodeTempServiceImpl implements IoCodeTempService {
@Override
public int insert(IoCodeTempEntity codeEnttity) {
+ codeEnttity.setId(null);
return ioCodeTempDao.insert(codeEnttity);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
index 4769b5157..15f7fcd6a 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
@@ -29,6 +29,7 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
@Override
public int insert(IoOrderDetailBizEntity orderDetailBizEntity) {
+ orderDetailBizEntity.setId(null);
return ioOrderDetailBizDao.insert(orderDetailBizEntity);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java
index 9e22451df..620434a03 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailCodeServiceImpl.java
@@ -25,6 +25,10 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService {
@Resource
IoOrderDetailCodeDao ioOrderDetailCodeDao;
+ @Resource
+ IoOrderDetailBizService orderDetailBizService;
+ @Resource
+ IoCheckInoutService checkInoutService;
@Override
public List findByOrderId(String orderId) {
@@ -38,6 +42,7 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService {
@Override
public int insert(IoOrderDetailCodeEntity orderDetailCodeEntity) {
+ orderDetailCodeEntity.setId(null);
return ioOrderDetailCodeDao.insert(orderDetailCodeEntity);
}
@@ -68,11 +73,6 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService {
}
- @Resource
- IoOrderDetailBizService orderDetailBizService;
- @Resource
- IoCheckInoutService checkInoutService;
-
@Override
public List checkOrderList(String orderId) {
@@ -81,4 +81,9 @@ public class IoOrderDetailCodeServiceImpl implements IoOrderDetailCodeService {
checkInoutService.codeOrderCheck(orderDetailCodeEntities, orderDetailBizEntities);
return orderDetailCodeEntities;
}
+
+ @Override
+ public boolean isExit(String orderId) {
+ return ioOrderDetailCodeDao.exists(new QueryWrapper().eq("orderIdFk", orderId));
+ }
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
index 62f3f4933..a0d43c9c5 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailResultServiceImpl.java
@@ -26,6 +26,7 @@ public class IoOrderDetailResultServiceImpl implements IoOrderDetailResultServic
@Override
public int insert(IoOrderDetailResultEntity orderDetailResultEntity) {
+ orderDetailResultEntity.setId(null);
return orderDetailResultDao.insert(orderDetailResultEntity);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
index d600c9987..957851c12 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
@@ -1,8 +1,16 @@
package com.glxp.api.service.inout.impl;
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
+import com.glxp.api.constant.ConstantStatus;
+import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.inout.IoOrderDao;
+import com.glxp.api.entity.auth.SysDictData;
+import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.res.inout.IoOrderResponse;
@@ -10,6 +18,7 @@ import com.glxp.api.service.inout.IoOrderService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -24,6 +33,30 @@ public class IoOrderServiceImpl implements IoOrderService {
return orderDao.selectList();
}
+ @Override
+ public List findAll(FilterOrderRequest filterOrderRequest) {
+ QueryWrapper queryWrapper = new QueryWrapper()
+ .eq(StrUtil.isNotEmpty(filterOrderRequest.getCustomerId()), "customerId", filterOrderRequest.getCustomerId())
+ .eq(StrUtil.isNotBlank(filterOrderRequest.getCorpOrderId()), "corpOrderId", filterOrderRequest.getCorpOrderId())
+ .eq(StrUtil.isNotBlank(filterOrderRequest.getBillNo()), "billNo", filterOrderRequest.getBillNo())
+ .ne(StrUtil.isNotEmpty(filterOrderRequest.getIgNoreBillNo()), "billNo", filterOrderRequest.getIgNoreBillNo());
+ return orderDao.selectList(queryWrapper);
+ }
+
+ @Override
+ public List isExitRepeat(String corpOrderId, String billNo) {
+
+ List filterStatus = new ArrayList<>();
+ filterStatus.add(ConstantStatus.ORDER_DEAL_POST);
+ filterStatus.add(ConstantStatus.ORDER_DEAL_CHECK);
+
+ return orderDao.selectList(new QueryWrapper()
+ .eq("corpOrderId", corpOrderId)
+ .ne("billNo", billNo)
+ .in("dealStatus", filterStatus)
+ );
+ }
+
@Override
public IoOrderEntity findById(String orderId) {
return orderDao.selectById(orderId);
@@ -36,6 +69,7 @@ public class IoOrderServiceImpl implements IoOrderService {
@Override
public int insertOrder(IoOrderEntity orderEntity) {
+ orderEntity.setId(null);
return orderDao.insert(orderEntity);
}
@@ -92,4 +126,38 @@ public class IoOrderServiceImpl implements IoOrderService {
return orderDao.filterOrderList(filterOrderRequest);
}
+ @Override
+ public List selectSupplementOrderList() {
+ return orderDao.selectSupplementOrderList();
+ }
+
+ @Override
+ public List checkSupplementOrder(List orderEntities) {
+ if (CollUtil.isEmpty(orderEntities)) {
+ return Collections.emptyList();
+ }
+ List result = new ArrayList<>();
+ orderEntities.forEach(orderEntity -> {
+ IoOrderResponse response = new IoOrderResponse();
+ BeanUtil.copyProperties(orderEntity, response);
+ if (orderEntity.getStatus().equals(ConstantStatus.ORDER_STATUS_AUDITED) && checkBusTypeSupplementOrder(orderEntity)
+ && StrUtil.isEmpty(orderEntity.getSupplementNo())) {
+ response.setEnableSupplementOrder(true);
+ }
+ result.add(response);
+ });
+ return result;
+ }
+
+ @Resource
+ BasicBussinessTypeDao basicBussinessTypeDao;
+
+ boolean checkBusTypeSupplementOrder(IoOrderEntity orderEntity) {
+ BasicBussinessTypeEntity supplementOrderType = basicBussinessTypeDao.selectOne(new QueryWrapper().eq("action", orderEntity.getAction()));
+ if (supplementOrderType != null) {
+ return true;
+ }
+ return false;
+ }
+
}
diff --git a/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java b/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
index 0a3b7b782..8df090251 100644
--- a/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
+++ b/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
@@ -11,6 +11,8 @@ public interface InvProductDetailService {
List selectByUnique(Long relId, String batchNo, String supId, String deptCode, String invCode);
+ InvProductDetailEntity sortFindByCode(String code);
+
boolean insertList(List invProductDetailEntities);
/**
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPreinOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPreinOrderServiceImpl.java
index f7114aef3..d06b35924 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvPreinOrderServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvPreinOrderServiceImpl.java
@@ -17,6 +17,7 @@ public class InvPreinOrderServiceImpl implements InvPreinOrderService {
@Override
public void insert(InvPreinOrderEntity invPreinOrderEntity) {
+ invPreinOrderEntity.setId(null);
invPreinOrderDao.insert(invPreinOrderEntity);
}
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
index b1db70287..1e61f48e8 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
@@ -1,5 +1,6 @@
package com.glxp.api.service.inv.impl;
+import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.inv.InvProductDetailDao;
@@ -22,6 +23,7 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
@Override
public int insert(InvProductDetailEntity invProductDetailEntity) {
+ invProductDetailEntity.setId(null);
return invProductDetailDao.insert(invProductDetailEntity);
}
@@ -30,6 +32,15 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
return invProductDetailDao.selectList(new QueryWrapper().eq("relId", relId).eq("batchNo", batchNo).eq("supId", supId).eq("deptCode", deptCode).eq("invCode", invCode));
}
+ @Override
+ public InvProductDetailEntity sortFindByCode(String code) {
+ List invProductDetailEntities = invProductDetailDao.selectList(new QueryWrapper().eq("code", code).orderByDesc("id"));
+ if (CollUtil.isNotEmpty(invProductDetailEntities))
+ return invProductDetailEntities.get(0);
+ else
+ return null;
+ }
+
@Override
public boolean insertList(List invProductDetailEntities) {
return invProductDetailDao.insertBatch(invProductDetailEntities);
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
index 44cfd7279..9658dc350 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
@@ -23,6 +23,7 @@ public class InvProductServiceImpl implements InvProductService {
@Override
public int insert(InvProductEntity invProductEntity) {
+ invProductEntity.setId(null);
return invProductDao.insert(invProductEntity);
}
diff --git a/src/main/java/com/glxp/api/task/SupplementOrderTask.java b/src/main/java/com/glxp/api/task/SupplementOrderTask.java
new file mode 100644
index 000000000..8ec3cb9ff
--- /dev/null
+++ b/src/main/java/com/glxp/api/task/SupplementOrderTask.java
@@ -0,0 +1,80 @@
+package com.glxp.api.task;
+
+import cn.hutool.core.collection.CollUtil;
+import com.glxp.api.dao.schedule.ScheduledDao;
+import com.glxp.api.entity.inout.IoOrderEntity;
+import com.glxp.api.entity.system.ScheduledEntity;
+import com.glxp.api.entity.system.SystemParamConfigEntity;
+import com.glxp.api.req.system.ScheduledRequest;
+import com.glxp.api.res.inout.IoOrderResponse;
+import com.glxp.api.service.inout.IoAddInoutService;
+import com.glxp.api.service.inout.IoOrderService;
+import com.glxp.api.service.system.SystemParamConfigService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.SchedulingConfigurer;
+import org.springframework.scheduling.config.ScheduledTaskRegistrar;
+import org.springframework.scheduling.support.CronTrigger;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
+
+/**
+ * 自动补单定时任务
+ */
+@Slf4j
+@Component
+@EnableScheduling
+public class SupplementOrderTask implements SchedulingConfigurer {
+
+ @Resource
+ ScheduledDao scheduledDao;
+ @Resource
+ IoOrderService orderService;
+ @Resource
+ SystemParamConfigService systemParamConfigService;
+ @Resource
+ IoAddInoutService addInoutService;
+
+ @Override
+ public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
+ taskRegistrar.addTriggerTask(() -> process(),
+ triggerContext -> {
+ ScheduledRequest scheduledRequest = new ScheduledRequest();
+ scheduledRequest.setCronName("supplementOrderTask");
+ ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
+ if (scheduledEntity == null) {
+ log.error("定时任务未配置,请注意!");
+ return null;
+ }
+ String cron = scheduledEntity.getCron();
+ return new CronTrigger(cron).nextExecutionTime(triggerContext);
+ });
+ }
+
+ private void process() {
+
+ SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey("supplement_order_interval");
+ if (!"0".equals(systemParamConfigEntity.getParamValue())) {
+ log.info("开始扫描需要平衡补单数据");
+ //计数器
+ AtomicInteger counter = new AtomicInteger(0);
+ List orderEntities = orderService.selectSupplementOrderList();
+ if (CollUtil.isNotEmpty(orderEntities)) {
+ List orderResponses = orderService.checkSupplementOrder(orderEntities);
+ for (IoOrderResponse orderResponse : orderResponses) {
+ if (orderResponse.isEnableSupplementOrder()) {
+ //此单据可以补单
+ addInoutService.supplementOrder(orderResponse.getBillNo());
+ counter.addAndGet(1);
+ }
+ }
+ }
+ log.info("平衡补单,此次补单数量为:{}", counter.get());
+ }
+ }
+
+
+}
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 973044518..c450cfd9b 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -4,9 +4,9 @@ server:
spring:
datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
- jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
+ jdbc-url: jdbc:p6spy:mysql://192.168.0.66:3364/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
- password: 123456
+ password: Glxp@6066
hikari:
connection-timeout: 60000
maximum-pool-size: 60
diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
index 313d8e391..a2ce4f7ba 100644
--- a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
+++ b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
@@ -76,7 +76,8 @@
AND deptCode = #{deptCode}
- AND createTime between #{startTime} and #{endTime}
+ AND createTime between #{startTime}
+ and #{endTime}
AND createTime >= #{startTime}
@@ -86,4 +87,17 @@
+
+
+
\ No newline at end of file
From 52f27786aaf39d9ba27030f75d0f1e2b938d1845 Mon Sep 17 00:00:00 2001
From: x_z
Date: Thu, 9 Feb 2023 14:59:36 +0800
Subject: [PATCH 04/11] =?UTF-8?q?1.=E5=AE=8C=E5=96=84=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E8=AF=A6=E6=83=85=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=E9=80=BB?=
=?UTF-8?q?=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/inv/InvProductController.java | 13 +++-----
.../api/res/inv/InvProductDetailResponse.java | 10 ++++++
.../service/inv/InvProductDetailService.java | 8 +++++
.../inv/impl/InvProductDetailServiceImpl.java | 32 ++++++++++++++++++-
src/main/java/com/glxp/api/util/DateUtil.java | 25 +++++++++++++++
5 files changed, 79 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/glxp/api/controller/inv/InvProductController.java b/src/main/java/com/glxp/api/controller/inv/InvProductController.java
index 731c862ea..d5dece44f 100644
--- a/src/main/java/com/glxp/api/controller/inv/InvProductController.java
+++ b/src/main/java/com/glxp/api/controller/inv/InvProductController.java
@@ -7,7 +7,6 @@ import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
-import com.glxp.api.constant.ConstantType;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
@@ -19,6 +18,7 @@ import com.glxp.api.res.inv.InvProductPageResponse;
import com.glxp.api.res.inv.InvProductResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.WarehouseUserService;
+import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inv.InvProductDetailService;
import com.glxp.api.service.inv.InvProductService;
import com.glxp.api.util.udi.FilterUdiUtils;
@@ -48,6 +48,8 @@ public class InvProductController {
private WarehouseUserService warehouseUserService;
@Resource
private CustomerService customerService;
+ @Resource
+ private IBasicBussinessTypeService bussinessTypeService;
/**
* 库存列表查询接口
@@ -98,13 +100,8 @@ public class InvProductController {
invProductDetailEntities.forEach(invProductDetailEntity -> {
InvProductDetailResponse response = new InvProductDetailResponse();
BeanUtil.copyProperties(invProductDetailEntity, response);
- if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
- response.setMainActionStr("出库");
- response.setOutCount(invProductDetailEntity.getCount());
- } else {
- response.setMainActionStr("入库");
- response.setInCount(invProductDetailEntity.getCount());
- }
+ //设置单据类型名称等单据相关参数
+ invProductDetailService.setOrderInfo(response);
list.add(response);
});
}
diff --git a/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java b/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
index 5a9238526..8aeb691aa 100644
--- a/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
+++ b/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
@@ -107,6 +107,11 @@ public class InvProductDetailResponse {
*/
private String action;
+ /**
+ * 单据类型名称
+ */
+ private String actionName;
+
/**
* 出入库类型中文字符串
*/
@@ -121,4 +126,9 @@ public class InvProductDetailResponse {
* 出库数量
*/
private Integer outCount;
+
+ /**
+ * 单据日期
+ */
+ private String orderTime;
}
diff --git a/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java b/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
index 8df090251..6d68e19d2 100644
--- a/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
+++ b/src/main/java/com/glxp/api/service/inv/InvProductDetailService.java
@@ -2,6 +2,7 @@ package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
+import com.glxp.api.res.inv.InvProductDetailResponse;
import java.util.List;
@@ -24,4 +25,11 @@ public interface InvProductDetailService {
List filterInvProductDetailList(FilterInvProductDetailRequest filterInvProductDetailRequest);
boolean deleteInvProductDetail(FilterInvProductDetailRequest detailRequest);
+
+ /**
+ * 库存详情封装单据相关信息
+ *
+ * @param response
+ */
+ void setOrderInfo(InvProductDetailResponse response);
}
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
index 1e61f48e8..daaafcc45 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
@@ -3,10 +3,17 @@ package com.glxp.api.service.inv.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
+import com.glxp.api.constant.ConstantType;
+import com.glxp.api.dao.basic.BasicBussinessTypeDao;
+import com.glxp.api.dao.inout.IoOrderDao;
import com.glxp.api.dao.inv.InvProductDetailDao;
+import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
+import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.InvProductDetailEntity;
import com.glxp.api.req.inv.FilterInvProductDetailRequest;
+import com.glxp.api.res.inv.InvProductDetailResponse;
import com.glxp.api.service.inv.InvProductDetailService;
+import com.glxp.api.util.DateUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -19,7 +26,12 @@ import java.util.List;
public class InvProductDetailServiceImpl implements InvProductDetailService {
@Resource
- InvProductDetailDao invProductDetailDao;
+ private InvProductDetailDao invProductDetailDao;
+ @Resource
+ private BasicBussinessTypeDao bussinessTypeDao;
+ @Resource
+ private IoOrderDao orderDao;
+
@Override
public int insert(InvProductDetailEntity invProductDetailEntity) {
@@ -61,4 +73,22 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
public boolean deleteInvProductDetail(FilterInvProductDetailRequest detailRequest) {
return invProductDetailDao.deleteInvProductDetail(detailRequest);
}
+
+ @Override
+ public void setOrderInfo(InvProductDetailResponse response) {
+ //设置出入库中文及出入库数量
+ if (response.getMainAction().equals(ConstantType.TYPE_OUT)) {
+ response.setMainActionStr("出库");
+ response.setOutCount(response.getCount());
+ } else {
+ response.setMainActionStr("入库");
+ response.setInCount(response.getCount());
+ }
+ //设置单据类型名称
+ BasicBussinessTypeEntity busType = bussinessTypeDao.selectOne(new QueryWrapper().select("name").eq("action", response.getAction()));
+ response.setActionName(busType.getName());
+ //设置单据日期
+ IoOrderEntity order = orderDao.selectOne(new QueryWrapper().select("createTime").eq("billNo", response.getOrderId()));
+ response.setOrderTime(DateUtil.toDateStr(order.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
+ }
}
diff --git a/src/main/java/com/glxp/api/util/DateUtil.java b/src/main/java/com/glxp/api/util/DateUtil.java
index 7843e85d8..a83dd1944 100644
--- a/src/main/java/com/glxp/api/util/DateUtil.java
+++ b/src/main/java/com/glxp/api/util/DateUtil.java
@@ -1,6 +1,8 @@
package com.glxp.api.util;
+import cn.hutool.core.util.StrUtil;
import com.glxp.api.entity.inout.IoOrderEntity;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import org.apache.commons.lang3.time.FastDateFormat;
@@ -11,6 +13,7 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
+@Slf4j
public class DateUtil extends DateUtils {
private static String[] parsePatterns = {
@@ -579,4 +582,26 @@ public class DateUtil extends DateUtils {
}
return time;
}
+
+ /**
+ * 将Date类型转换为指定格式字符串
+ *
+ * @param date
+ * @return
+ */
+ public static String toDateStr(Date date, String format) {
+ if (null != date) {
+ try {
+ //如果未指定格式,则使用默认格式
+ if (StrUtil.isBlank(format)) {
+ format = "yyyy-MM-dd HH:mm:ss";
+ }
+ return cn.hutool.core.date.DateUtil.date(date).toString(format);
+ } catch (Exception e) {
+ log.error("日期类型转字符串异常,日期参数:{}, 格式:{}, 异常信息:{}", date, format, e);
+ }
+ }
+ log.error("日期类型转字符串异常,日期数据为空");
+ return null;
+ }
}
\ No newline at end of file
From d2dcf470038fbdace03f8e9d484e56f3e3c60147 Mon Sep 17 00:00:00 2001
From: x_z
Date: Thu, 9 Feb 2023 15:04:39 +0800
Subject: [PATCH 05/11] =?UTF-8?q?1.=E5=88=A0=E9=99=A4=E5=BA=93=E5=AD=98?=
=?UTF-8?q?=E8=AF=A6=E6=83=85=E5=8E=9F=E5=A7=8B=E7=A0=81=E5=AD=97=E6=AE=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/glxp/api/entity/inv/InvProductDetailEntity.java | 6 ------
.../com/glxp/api/req/inv/FilterInvProductDetailRequest.java | 5 -----
.../java/com/glxp/api/res/inv/InvProductDetailResponse.java | 5 -----
.../resources/mybatis/mapper/inv/invProductDetailDao.xml | 5 +----
4 files changed, 1 insertion(+), 20 deletions(-)
diff --git a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
index cd0a72e39..3424b1d29 100644
--- a/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
+++ b/src/main/java/com/glxp/api/entity/inv/InvProductDetailEntity.java
@@ -98,12 +98,6 @@ public class InvProductDetailEntity {
@TableField(value = "invSpaceCode")
private String invSpaceCode;
- /**
- * 原始编码
- */
- @TableField(value = "originCode")
- private String originCode;
-
/**
* 采购类型
*/
diff --git a/src/main/java/com/glxp/api/req/inv/FilterInvProductDetailRequest.java b/src/main/java/com/glxp/api/req/inv/FilterInvProductDetailRequest.java
index 6ffa94b1e..fba6804c7 100644
--- a/src/main/java/com/glxp/api/req/inv/FilterInvProductDetailRequest.java
+++ b/src/main/java/com/glxp/api/req/inv/FilterInvProductDetailRequest.java
@@ -61,11 +61,6 @@ public class FilterInvProductDetailRequest extends ListPageRequest {
*/
private String invSpaceCode;
- /**
- * 原始编码
- */
- private String originCode;
-
/**
* 批次号
*/
diff --git a/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java b/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
index 8aeb691aa..04e0d7b18 100644
--- a/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
+++ b/src/main/java/com/glxp/api/res/inv/InvProductDetailResponse.java
@@ -82,11 +82,6 @@ public class InvProductDetailResponse {
*/
private String invSpaceCode;
- /**
- * 原始编码
- */
- private String originCode;
-
/**
* 采购类型
*/
diff --git a/src/main/resources/mybatis/mapper/inv/invProductDetailDao.xml b/src/main/resources/mybatis/mapper/inv/invProductDetailDao.xml
index 970414e34..f1edcd52b 100644
--- a/src/main/resources/mybatis/mapper/inv/invProductDetailDao.xml
+++ b/src/main/resources/mybatis/mapper/inv/invProductDetailDao.xml
@@ -9,7 +9,7 @@
from inv_product_detail
- AND originCode = #{code}
+ AND code = #{code}
AND mainAction = #{mainAction}
@@ -38,9 +38,6 @@
AND invSpaceCode = #{invSpaceCode}
-
- AND originCode = #{originCode}
-
AND batchNo = #{batchNo}
From 961e231561cedc9d50afd04fdfbce105073cbca9 Mon Sep 17 00:00:00 2001
From: wangwei <1610949092@qq.com>
Date: Thu, 9 Feb 2023 17:44:12 +0800
Subject: [PATCH 06/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/glxp/api/controller/auth/InvWarehouseController.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
index d83c703b5..8616461aa 100644
--- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
+++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
@@ -90,7 +90,7 @@ public class InvWarehouseController extends BaseController {
AuthAdmin authAdmin = getUser();
filterInvWarehouseRequest.setUserId(authAdmin.getId());
if (StrUtil.isEmpty(filterInvWarehouseRequest.getDeptCode())) {
- return ResultVOUtils.error(500, "部门编码不能为空");
+ return ResultVOUtils.error(500, "部门不能为空");
}
List invSubWarehouseEntities = invWarehouseService.filterGroupInvSub(filterInvWarehouseRequest);
return ResultVOUtils.success(invSubWarehouseEntities);
From 9e42e8ee528dd816a80672123231648113df5099 Mon Sep 17 00:00:00 2001
From: x_z
Date: Thu, 9 Feb 2023 18:11:46 +0800
Subject: [PATCH 07/11] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=8D=95=E6=8D=AE?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=EF=BC=8C?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=82=E6=95=B0=E6=A0=87=E8=AF=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/glxp/api/constant/Constant.java | 33 ++++++++++++++
.../controller/inout/IoOrderController.java | 5 ++-
.../api/req/inout/FilterOrderRequest.java | 23 ++++++++++
.../api/service/inout/IoOrderService.java | 7 +++
.../inout/impl/IoOrderServiceImpl.java | 39 ++++++++++++++--
.../mybatis/mapper/inout/IoOrderDao.xml | 44 ++++++++++++-------
6 files changed, 128 insertions(+), 23 deletions(-)
diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java
index adc93bef9..18880e914 100644
--- a/src/main/java/com/glxp/api/constant/Constant.java
+++ b/src/main/java/com/glxp/api/constant/Constant.java
@@ -155,4 +155,37 @@ public class Constant {
public static final String LOGIN_FAIL = "Error";
+
+ //-------------前端页面查询单据列表标识类型------------------
+ /**
+ * 单据-草稿标识
+ */
+ public static final String ORDER_STATUS_DRAFT = "draft";
+
+ /**
+ * 单据-处理异常标识
+ */
+ public static final String ORDER_STATUS_PROCESSED_ERROR = "processedError";
+
+ /**
+ * 单据-未校验标识
+ */
+ public static final String ORDER_STATUS_UN_CHECK = "unCheck";
+
+ /**
+ * 单据-校验异常标识
+ */
+ public static final String ORDER_STATUS_CHECKED_ERROR = "checkedError";
+
+ /**
+ * 单据-已校验标识
+ */
+ public static final String ORDER_STATUS_CHECK_SUCCESS = "checkSuccess";
+
+ /**
+ * 单据-已审核标识
+ */
+ public static final String ORDER_STATUS_AUDITED = "audited";
+
+
}
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
index 93d809fa9..b0cae91db 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
@@ -6,7 +6,6 @@ import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
-import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoCodeTempEntity;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
@@ -27,7 +26,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
-import java.util.Date;
import java.util.List;
@@ -56,6 +54,9 @@ public class IoOrderController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
+ if (StrUtil.isNotBlank(filterOrderRequest.getStatusType())) {
+ orderService.setFilterStatus(filterOrderRequest);
+ }
List list = orderService.filterList(filterOrderRequest);
PageInfo pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
index f327b2d6c..f563969dd 100644
--- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
+++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java
@@ -3,6 +3,8 @@ package com.glxp.api.req.inout;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
+import java.util.List;
+
@Data
public class FilterOrderRequest extends ListPageRequest {
@@ -115,4 +117,25 @@ public class FilterOrderRequest extends ListPageRequest {
private String igNoreBillNo;
+ /**
+ * 单据状态类型标识
+ * 草稿:draft
+ * 处理异常:processedError
+ * 未校验:unCheck
+ * 校验异常:checkedError
+ * 已校验:checkSuccess
+ * 已审核:audited
+ */
+ private String statusType;
+
+ /**
+ * 单据状态集合
+ */
+ private List statuses;
+
+ /**
+ * 单据提交审核状态集合
+ */
+ private List dealStatuses;
+
}
diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderService.java b/src/main/java/com/glxp/api/service/inout/IoOrderService.java
index bfbe7f14f..b6cca5562 100644
--- a/src/main/java/com/glxp/api/service/inout/IoOrderService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoOrderService.java
@@ -54,4 +54,11 @@ public interface IoOrderService {
* 判断订单是否可以补单
*/
List checkSupplementOrder(List orderEntities);
+
+ /**
+ * 根据查询单据状态标识,设置单据状态值
+ *
+ * @param filterOrderRequest
+ */
+ void setFilterStatus(FilterOrderRequest filterOrderRequest);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
index 957851c12..c92c40dd2 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
@@ -3,13 +3,12 @@ package com.glxp.api.service.inout.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
+import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.dao.basic.BasicBussinessTypeDao;
import com.glxp.api.dao.inout.IoOrderDao;
-import com.glxp.api.entity.auth.SysDictData;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterOrderRequest;
@@ -19,6 +18,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -27,6 +27,8 @@ public class IoOrderServiceImpl implements IoOrderService {
@Resource
private IoOrderDao orderDao;
+ @Resource
+ BasicBussinessTypeDao basicBussinessTypeDao;
@Override
public List selectAll() {
@@ -149,8 +151,37 @@ public class IoOrderServiceImpl implements IoOrderService {
return result;
}
- @Resource
- BasicBussinessTypeDao basicBussinessTypeDao;
+ @Override
+ public void setFilterStatus(FilterOrderRequest filterOrderRequest) {
+ switch (filterOrderRequest.getStatusType()) {
+ case Constant.ORDER_STATUS_DRAFT:
+ filterOrderRequest.setStatuses(Arrays.asList(1, 2));
+ filterOrderRequest.setDealStatuses(Arrays.asList(1));
+ break;
+ case Constant.ORDER_STATUS_PROCESSED_ERROR:
+ filterOrderRequest.setStatuses(Arrays.asList(4));
+ filterOrderRequest.setDealStatuses(Arrays.asList(2));
+ break;
+ case Constant.ORDER_STATUS_UN_CHECK:
+ filterOrderRequest.setStatuses(Arrays.asList(3));
+ filterOrderRequest.setDealStatuses(Arrays.asList(2));
+ break;
+ case Constant.ORDER_STATUS_CHECKED_ERROR:
+ filterOrderRequest.setStatuses(Arrays.asList(6));
+ filterOrderRequest.setDealStatuses(Arrays.asList(2));
+ break;
+ case Constant.ORDER_STATUS_CHECK_SUCCESS:
+ filterOrderRequest.setStatuses(Arrays.asList(5, 8));
+ filterOrderRequest.setDealStatuses(Arrays.asList(2));
+ break;
+ case Constant.ORDER_STATUS_AUDITED:
+ filterOrderRequest.setStatuses(Arrays.asList(7));
+ filterOrderRequest.setDealStatuses(Arrays.asList(3));
+ break;
+ default:
+ break;
+ }
+ }
boolean checkBusTypeSupplementOrder(IoOrderEntity orderEntity) {
BasicBussinessTypeEntity supplementOrderType = basicBussinessTypeDao.selectOne(new QueryWrapper().eq("action", orderEntity.getAction()));
diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
index a2ce4f7ba..804425f4d 100644
--- a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
+++ b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml
@@ -30,13 +30,25 @@
AND invCode = #{invCode}
- AND createTime between #{startTime} and #{endTime}
+ AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d')
-
- AND createTime >= #{startTime}
+
+ AND date_format(createTime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d')
-
- AND createTime <= #{endTime}
+
+ AND date_format(createTime, '%Y-%m-%d') <= date_format(#{endTime}, '%Y-%m-%d')
+
+
+ AND status in
+
+ #{item}
+
+
+
+ AND dealStatus in
+
+ #{item}
+
@@ -76,14 +88,13 @@
AND deptCode = #{deptCode}
- AND createTime between #{startTime}
- and #{endTime}
+ AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d')
-
- AND createTime >= #{startTime}
+
+ AND date_format(createTime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d')
-
- AND createTime <= #{endTime}
+
+ AND date_format(createTime, '%Y-%m-%d') <= date_format(#{endTime}, '%Y-%m-%d')
@@ -93,11 +104,10 @@
SELECT *
FROM io_order
WHERE (supplementNo IS NULL OR supplementNo = '')
- AND `action` IN (
- SELECT `action`
- FROM basic_bussiness_type
- WHERE supplementOrderType IS NOT NULL
- OR supplementOrderType
- != '')
+ AND `action` IN (SELECT `action`
+ FROM basic_bussiness_type
+ WHERE supplementOrderType IS NOT NULL
+ OR supplementOrderType
+ != '')
\ No newline at end of file
From f49fb06de31e5a8ac51cc5a416770861c40a7209 Mon Sep 17 00:00:00 2001
From: wangwei <1610949092@qq.com>
Date: Fri, 10 Feb 2023 10:19:50 +0800
Subject: [PATCH 08/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/glxp/api/controller/auth/AuthUserController.java | 1 +
src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java | 2 +-
.../java/com/glxp/api/req/auth/FilterInvLinkDataRequest.java | 1 +
.../java/com/glxp/api/req/auth/FilterNoSelectUserRequest.java | 1 +
.../com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java | 2 +-
src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml | 4 +++-
6 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java
index f42cd758a..4f63c2783 100644
--- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java
+++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java
@@ -102,6 +102,7 @@ public class AuthUserController extends BaseController {
FilterNoSelectUserRequest filterNoSelectUserRequest = new FilterNoSelectUserRequest();
BeanUtils.copyProperties(filterInvLinkDataRequest, filterNoSelectUserRequest);
filterNoSelectUserRequest.setUserIds(userIds);
+ filterNoSelectUserRequest.setLocDeptCode(filterInvLinkDataRequest.getParentId());
List hospitalUserList = authAdminService.selectNotSelectUser(filterNoSelectUserRequest);
PageInfo authAdminPageInfo = new PageInfo<>(hospitalUserList);
PageSimpleResponse authAdminPageSimpleResponse = new PageSimpleResponse<>();
diff --git a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java
index 44c6a77ce..9eb1b4094 100644
--- a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java
+++ b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java
@@ -74,7 +74,7 @@ public interface AuthAdminDao {
*/
List selectHospitalUser();
- List selectNotSelectUser(@Param("userIds") List userIds);
+ List selectNotSelectUser(@Param("userIds") List userIds,@Param("locDeptCode") String locDeptCode);
List selectAllocatedList(FilterAuthUserRequest filterAuthUserRequest);
diff --git a/src/main/java/com/glxp/api/req/auth/FilterInvLinkDataRequest.java b/src/main/java/com/glxp/api/req/auth/FilterInvLinkDataRequest.java
index ba07327fe..58fc1977b 100644
--- a/src/main/java/com/glxp/api/req/auth/FilterInvLinkDataRequest.java
+++ b/src/main/java/com/glxp/api/req/auth/FilterInvLinkDataRequest.java
@@ -14,6 +14,7 @@ public class FilterInvLinkDataRequest extends ListPageRequest {
private String userName;
private String employeeName;
private Long listUser[];
+ private String parentId;
}
diff --git a/src/main/java/com/glxp/api/req/auth/FilterNoSelectUserRequest.java b/src/main/java/com/glxp/api/req/auth/FilterNoSelectUserRequest.java
index 307553b73..647284d38 100644
--- a/src/main/java/com/glxp/api/req/auth/FilterNoSelectUserRequest.java
+++ b/src/main/java/com/glxp/api/req/auth/FilterNoSelectUserRequest.java
@@ -10,4 +10,5 @@ public class FilterNoSelectUserRequest extends ListPageRequest {
List userIds;
+ private String locDeptCode;
}
diff --git a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java
index 3c9ba9e98..17b05e265 100644
--- a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java
@@ -140,7 +140,7 @@ public class AuthAdminServiceImpl implements AuthAdminService {
int offset = (filterNoSelectUserRequest.getPage() - 1) * filterNoSelectUserRequest.getLimit();
PageHelper.offsetPage(offset, filterNoSelectUserRequest.getLimit());
}
- return authAdminDao.selectNotSelectUser(filterNoSelectUserRequest.getUserIds());
+ return authAdminDao.selectNotSelectUser(filterNoSelectUserRequest.getUserIds(),filterNoSelectUserRequest.getLocDeptCode());
}
diff --git a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml
index 189e910fa..70779a140 100644
--- a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml
+++ b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml
@@ -181,7 +181,9 @@
from auth_user
userFlag != 0
-
+
+ AND locDeptCode = #{locDeptCode}
+
and id not in
From 6892a86ce7a9c1f84643854aaf94e0d63e921063 Mon Sep 17 00:00:00 2001
From: x_z
Date: Fri, 10 Feb 2023 12:04:34 +0800
Subject: [PATCH 09/11] =?UTF-8?q?1.=E8=B0=83=E6=95=B4=E4=BB=93=E5=BA=93?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/glxp/api/constant/Constant.java | 6 +++++-
.../glxp/api/controller/BaseController.java | 3 +--
.../auth/InvWarehouseController.java | 19 +++++++++++++++----
.../glxp/api/dao/auth/InvSubWarehouseDao.java | 9 +++++++--
.../req/basic/FilterBussinessTypeRequest.java | 5 +++++
.../api/service/auth/InvWarehouseService.java | 7 +++++++
.../auth/impl/InvWarehouseServiceImpl.java | 5 +++++
.../inout/impl/IoOrderServiceImpl.java | 4 ++++
.../mapper/auth/InvSubWarehouseDao.xml | 12 ++++++++++++
9 files changed, 61 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java
index 18880e914..139dfb3fe 100644
--- a/src/main/java/com/glxp/api/constant/Constant.java
+++ b/src/main/java/com/glxp/api/constant/Constant.java
@@ -155,7 +155,6 @@ public class Constant {
public static final String LOGIN_FAIL = "Error";
-
//-------------前端页面查询单据列表标识类型------------------
/**
* 单据-草稿标识
@@ -167,6 +166,11 @@ public class Constant {
*/
public static final String ORDER_STATUS_PROCESSED_ERROR = "processedError";
+ /**
+ * 单据-新增单据标识(包括草稿和异常单据)
+ */
+ public static final String ORDER_STATUS_NEW_ORDER = "newOrder";
+
/**
* 单据-未校验标识
*/
diff --git a/src/main/java/com/glxp/api/controller/BaseController.java b/src/main/java/com/glxp/api/controller/BaseController.java
index e8d3fde94..7c7984e72 100644
--- a/src/main/java/com/glxp/api/controller/BaseController.java
+++ b/src/main/java/com/glxp/api/controller/BaseController.java
@@ -34,8 +34,7 @@ public class BaseController {
}
public Long getUserId() {
- AuthAdmin authAdmin = getUser();
- return authAdmin.getId();
+ return customerService.getUserId();
}
public String getCustomerId() {
diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
index 8616461aa..2ed6f95cc 100644
--- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
+++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
@@ -18,7 +18,6 @@ import com.glxp.api.req.basic.FilterBussinessTypeRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.req.thrsys.FilterBasicThirdSysRequest;
import com.glxp.api.res.PageSimpleResponse;
-import com.glxp.api.res.auth.InvBusUserResponse;
import com.glxp.api.res.auth.InvSubWarehouseResponse;
import com.glxp.api.res.auth.InvWarehouseThirdSysResponse;
import com.glxp.api.res.auth.WarehouseUserResponse;
@@ -36,7 +35,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.*;
-import java.util.stream.Collectors;
@RestController
public class InvWarehouseController extends BaseController {
@@ -105,12 +103,25 @@ public class InvWarehouseController extends BaseController {
@AuthRuleAnnotation("")
@GetMapping("spms/inv/warehouse/findByUser")
public BaseResponse findByUser(FilterInvWarehouseRequest filterInvWarehouseRequest) {
- AuthAdmin authAdmin = getUser();
- filterInvWarehouseRequest.setUserId(authAdmin.getId());
+ filterInvWarehouseRequest.setUserId(getUserId());
List invSubWarehouseEntities = invWarehouseService.filterGroupInvSub(filterInvWarehouseRequest);
return ResultVOUtils.success(invSubWarehouseEntities);
}
+ /**
+ * 前端页面查询参数拉取用户关联所有仓库接口,只返回编码,父ID和名称
+ *
+ * @return
+ */
+ @GetMapping("spms/inv/warehouse/findInvListByUser")
+ public BaseResponse findInvListByUser() {
+ Long userId = getUserId();
+ if (null == userId) {
+ return ResultVOUtils.error(ResultEnum.LOGIN_VERIFY_FALL);
+ }
+ List list = invWarehouseService.findInvListByUser(userId);
+ return ResultVOUtils.success(list);
+ }
/**
* 获取往来仓库(除了自己)
diff --git a/src/main/java/com/glxp/api/dao/auth/InvSubWarehouseDao.java b/src/main/java/com/glxp/api/dao/auth/InvSubWarehouseDao.java
index 09a9dece2..5ed750636 100644
--- a/src/main/java/com/glxp/api/dao/auth/InvSubWarehouseDao.java
+++ b/src/main/java/com/glxp/api/dao/auth/InvSubWarehouseDao.java
@@ -1,9 +1,7 @@
package com.glxp.api.dao.auth;
import com.glxp.api.dao.BaseMapperPlus;
-import com.glxp.api.dao.inout.IoOrderDetailCodeDao;
import com.glxp.api.entity.auth.InvWarehouseEntity;
-import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.req.auth.FilterInvSubWarehouseRequest;
import com.glxp.api.req.auth.FilterInvWarehouseRequest;
import com.glxp.api.res.auth.InvSubWarehouseResponse;
@@ -81,4 +79,11 @@ public interface InvSubWarehouseDao extends BaseMapperPlus selectInvListByUser(@Param("userId") Long userId);
}
diff --git a/src/main/java/com/glxp/api/req/basic/FilterBussinessTypeRequest.java b/src/main/java/com/glxp/api/req/basic/FilterBussinessTypeRequest.java
index 5ccde0851..13ec0e496 100644
--- a/src/main/java/com/glxp/api/req/basic/FilterBussinessTypeRequest.java
+++ b/src/main/java/com/glxp/api/req/basic/FilterBussinessTypeRequest.java
@@ -68,6 +68,11 @@ public class FilterBussinessTypeRequest extends ListPageRequest {
*/
private String locInvCode;
+ /**
+ *
+ */
+ private String invCode;
+
/**
* 分库编码,用于关联查询仓库关联单据类型
*/
diff --git a/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java b/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java
index e434dc72f..e9f763bd0 100644
--- a/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java
+++ b/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java
@@ -72,4 +72,11 @@ public interface InvWarehouseService {
*/
List filterSubInvList(FilterInvWarehouseRequest filterInvWarehouseRequest);
+ /**
+ * 查询用户关联所有仓库的编码,名称,父ID字段
+ *
+ * @param userId
+ * @return
+ */
+ List findInvListByUser(Long userId);
}
diff --git a/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java
index 010c66bb6..875458cdb 100644
--- a/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java
@@ -207,4 +207,9 @@ public class InvWarehouseServiceImpl implements InvWarehouseService {
public List filterSubInvList(FilterInvWarehouseRequest filterInvWarehouseRequest) {
return invSubWarehouseDao.filterSubInvList(filterInvWarehouseRequest);
}
+
+ @Override
+ public List findInvListByUser(Long userId) {
+ return invSubWarehouseDao.selectInvListByUser(userId);
+ }
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
index c92c40dd2..07494bd12 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
@@ -162,6 +162,10 @@ public class IoOrderServiceImpl implements IoOrderService {
filterOrderRequest.setStatuses(Arrays.asList(4));
filterOrderRequest.setDealStatuses(Arrays.asList(2));
break;
+ case Constant.ORDER_STATUS_NEW_ORDER:
+ filterOrderRequest.setStatuses(Arrays.asList(1, 2, 4));
+ filterOrderRequest.setDealStatuses(Arrays.asList(1, 2));
+ break;
case Constant.ORDER_STATUS_UN_CHECK:
filterOrderRequest.setStatuses(Arrays.asList(3));
filterOrderRequest.setDealStatuses(Arrays.asList(2));
diff --git a/src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml b/src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml
index cbb6d9ad4..6a40ad4d7 100644
--- a/src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml
+++ b/src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml
@@ -329,4 +329,16 @@
GROUP BY a.code
+
+
\ No newline at end of file
From 6014dd764006524b4df12ef2ab6578e6119e1852 Mon Sep 17 00:00:00 2001
From: anthonywj
Date: Fri, 10 Feb 2023 13:34:00 +0800
Subject: [PATCH 10/11] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E7=B1=BB=E5=9E=8B?=
=?UTF-8?q?=EF=BC=8C=E5=A7=94=E6=89=98=E9=AA=8C=E6=94=B6=E7=9B=B8=E5=85=B3?=
=?UTF-8?q?=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../auth/InvWarehouseController.java | 32 +---
.../basic/BasicBussinessTypeController.java | 20 +++
.../basic/EntrustReceController.java | 117 +++++++++++++
.../controller/inout/IoOrderController.java | 12 +-
.../inout/IoOrderReviewController.java | 101 +++++++++++
.../glxp/api/dao/basic/EntrustReceDao.java | 31 ++++
.../api/entity/basic/DlEntrustReceEntity.java | 14 ++
.../api/entity/basic/EntrustReceEntity.java | 116 ++++++++++++
.../api/req/basic/BasicEntrustRecRequest.java | 23 +++
.../glxp/api/req/basic/BusNoUserRequest.java | 10 ++
.../api/req/inout/ReviewFinishRequest.java | 13 ++
.../api/res/auth/WarehouseUserResponse.java | 2 +-
.../api/res/basic/EntrustReceResponse.java | 62 +++++++
.../api/res/inout/AcceptOrderResponse.java | 22 +++
.../api/service/basic/EntrustReceService.java | 32 ++++
.../basic/IBasicBussinessTypeService.java | 2 +
.../impl/BasicBussinessTypeServiceImpl.java | 6 +
.../basic/impl/EntrustReceServiceImpl.java | 115 ++++++++++++
.../service/inout/IoCheckInoutService.java | 71 ++++----
.../mybatis/mapper/auth/WarehouseUserDao.xml | 60 ++++---
.../mapper/basic/BasicBussinessTypeDao.xml | 5 +-
.../mybatis/mapper/basic/EntrustReceDao.xml | 165 ++++++++++++++++++
22 files changed, 935 insertions(+), 96 deletions(-)
create mode 100644 src/main/java/com/glxp/api/controller/basic/EntrustReceController.java
create mode 100644 src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java
create mode 100644 src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java
create mode 100644 src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java
create mode 100644 src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java
create mode 100644 src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java
create mode 100644 src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java
create mode 100644 src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java
create mode 100644 src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java
create mode 100644 src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java
create mode 100644 src/main/java/com/glxp/api/service/basic/EntrustReceService.java
create mode 100644 src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java
create mode 100644 src/main/resources/mybatis/mapper/basic/EntrustReceDao.xml
diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
index 8616461aa..c869feaad 100644
--- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
+++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java
@@ -70,10 +70,6 @@ public class InvWarehouseController extends BaseController {
@GetMapping("spms/sub/inv/warehouse/filter")
public BaseResponse filterInvWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest) {
List responses = invWarehouseService.filterInvSubWarehouseResponse(filterInvSubWarehouseRequest);
-// PageInfo pageInfo = new PageInfo<>(responses);
-// PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>();
-// pageSimpleResponse.setTotal(pageInfo.getTotal());
- // pageSimpleResponse.setList(responses);
return ResultVOUtils.success(responses);
}
@@ -382,32 +378,10 @@ public class InvWarehouseController extends BaseController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
- filterInvLinkDataRequest.setUserName(filterInvLinkDataRequest.getKey());
List warehouseUserList = warehouseUserService.getWarehouseUserList(filterInvLinkDataRequest);
- filterInvLinkDataRequest.setUserName(null);
- filterInvLinkDataRequest.setEmployeeName(filterInvLinkDataRequest.getKey());
- List warehouseUserList1 = warehouseUserService.getWarehouseUserList(filterInvLinkDataRequest);
- PageInfo pageInfo = null;
- if (warehouseUserList.size() != 0) {
- pageInfo = new PageInfo<>(warehouseUserList);
- } else if (warehouseUserList1.size() != 0) {
- pageInfo = new PageInfo<>(warehouseUserList1);
- } else {
- pageInfo = new PageInfo<>(warehouseUserList);
- }
-
-
- List result = new ArrayList<>();
- if (CollUtil.isNotEmpty(pageInfo.getList())) {
- pageInfo.getList().forEach(warehouseUserEntity -> {
- WarehouseUserResponse warehouseUserResponse = new WarehouseUserResponse();
- BeanUtils.copyProperties(warehouseUserEntity, warehouseUserResponse);
- warehouseUserResponse.setUserid(warehouseUserEntity.getUserid() + "");
- result.add(warehouseUserResponse);
- });
- }
- PageSimpleResponse response = new PageSimpleResponse<>();
- response.setList(result);
+ PageInfo pageInfo = new PageInfo<>(warehouseUserList);
+ PageSimpleResponse response = new PageSimpleResponse<>();
+ response.setList(pageInfo.getList());
response.setTotal(pageInfo.getTotal());
return ResultVOUtils.success(response);
}
diff --git a/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java b/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java
index cdff9c6b0..f8853c1ed 100644
--- a/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java
+++ b/src/main/java/com/glxp/api/controller/basic/BasicBussinessTypeController.java
@@ -11,6 +11,7 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
+import com.glxp.api.req.basic.BusNoUserRequest;
import com.glxp.api.req.basic.BussinessTypeSaveRequest;
import com.glxp.api.req.basic.FilterBussinessTypeRequest;
import com.glxp.api.req.system.DeleteRequest;
@@ -307,4 +308,23 @@ public class BasicBussinessTypeController extends BaseController {
return ResultVOUtils.success(list);
}
+
+ @AuthRuleAnnotation("")
+ @GetMapping("/udiwms/localBusType/filterUnUse")
+ public BaseResponse filterUnUse(BusNoUserRequest busNoUserRequest,
+ BindingResult bindingResult) {
+
+ if (bindingResult.hasErrors()) {
+ return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
+ }
+ FilterBussinessTypeRequest bussinessTypeFilterRequest = new FilterBussinessTypeRequest();
+ bussinessTypeFilterRequest.setEnable(true);
+
+ List bussinessTypeEntities;
+ bussinessTypeEntities = basicBussinessTypeService.selectIgnoreSelf(busNoUserRequest.getCurAction());
+ PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>();
+ pageSimpleResponse.setList(bussinessTypeEntities);
+ return ResultVOUtils.success(pageSimpleResponse);
+ }
+
}
diff --git a/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java
new file mode 100644
index 000000000..c08649a1d
--- /dev/null
+++ b/src/main/java/com/glxp/api/controller/basic/EntrustReceController.java
@@ -0,0 +1,117 @@
+package com.glxp.api.controller.basic;
+
+import com.github.pagehelper.PageInfo;
+import com.glxp.api.common.res.BaseResponse;
+import com.glxp.api.common.util.ResultVOUtils;
+import com.glxp.api.controller.BaseController;
+import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
+import com.glxp.api.entity.basic.DlEntrustReceEntity;
+import com.glxp.api.entity.basic.EntrustReceEntity;
+import com.glxp.api.req.auth.BussinessTypeFilterRequest;
+import com.glxp.api.req.basic.BasicEntrustRecRequest;
+import com.glxp.api.req.basic.FilterBussinessTypeRequest;
+import com.glxp.api.req.system.DeleteRequest;
+import com.glxp.api.res.PageSimpleResponse;
+import com.glxp.api.res.basic.EntrustReceResponse;
+import com.glxp.api.service.auth.CustomerService;
+import com.glxp.api.service.basic.EntrustReceService;
+import com.glxp.api.service.basic.IBasicBussinessTypeService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+
+@RestController
+public class EntrustReceController extends BaseController {
+
+
+ @Resource
+ EntrustReceService entrustReceService;
+ @Resource
+ CustomerService customerService;
+ @Resource
+ private IBasicBussinessTypeService bussinessTypeService;
+
+ @GetMapping("/spms/entrust/rece/filter")
+ public BaseResponse getEntrustRece(BasicEntrustRecRequest basicExportStatusRequest) {
+ List entrustReceEntities = entrustReceService.filterJoinEntrustRec(basicExportStatusRequest);
+ PageInfo pageInfo;
+ pageInfo = new PageInfo<>(entrustReceEntities);
+ PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>();
+ pageSimpleResponse.setTotal(pageInfo.getTotal());
+ pageSimpleResponse.setList(entrustReceEntities);
+ return ResultVOUtils.success(pageSimpleResponse);
+ }
+
+ //手持终端下载委托验收
+ @GetMapping("/spms/entrust/rece/downloads")
+ public BaseResponse downloadEntrust(BasicEntrustRecRequest basicExportStatusRequest) {
+ basicExportStatusRequest.setEntrustUser(getUserId());
+ List entrustReceEntities = entrustReceService.downloadEntrustRec(basicExportStatusRequest);
+ PageInfo pageInfo;
+ pageInfo = new PageInfo<>(entrustReceEntities);
+ PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>();
+ pageSimpleResponse.setTotal(pageInfo.getTotal());
+ pageSimpleResponse.setList(entrustReceEntities);
+ return ResultVOUtils.success(pageSimpleResponse);
+ }
+
+
+ @GetMapping("/spms/entrust/rece/filterAllNoUse")
+ public BaseResponse filterAllNoUse(FilterBussinessTypeRequest bussinessTypeFilterRequest) {
+ bussinessTypeFilterRequest.setUserId(getUserId());
+ List bussinessTypeEntities = bussinessTypeService.filterByUser(bussinessTypeFilterRequest);
+ return ResultVOUtils.success(bussinessTypeEntities);
+
+ }
+
+
+ @PostMapping("/spms/entrust/rece/add")
+ public BaseResponse aadEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) {
+ entrustReceEntity.setUserId(getUserId());
+ entrustReceEntity.setUpdateTime(new Date());
+
+ EntrustReceEntity temp = entrustReceService.findByUnique(entrustReceEntity.getAction(), entrustReceEntity.getEntrustUser());
+ if (temp != null) {
+ return ResultVOUtils.error(500, "已存在相同的委托验收");
+ }
+ int b = entrustReceService.insertEntrustRec(entrustReceEntity);
+ if (b > 0) {
+ return ResultVOUtils.success("添加成功!");
+ } else {
+ return ResultVOUtils.error(500, "添加失败!");
+ }
+
+ }
+
+
+ @PostMapping("/spms/entrust/rece/update")
+ public BaseResponse updateEntrustRece(@RequestBody EntrustReceEntity entrustReceEntity) {
+ entrustReceEntity.setUpdateTime(new Date());
+
+
+ int b = entrustReceService.updateEntrustRec(entrustReceEntity);
+ if (b > 0) {
+ return ResultVOUtils.success("添加成功!");
+ } else {
+ return ResultVOUtils.error(500, "添加失败!");
+ }
+
+ }
+
+ @PostMapping("/spms/entrust/rece/delete")
+ public BaseResponse deleteByStatus(@RequestBody DeleteRequest deleteRequest) {
+
+ boolean b = entrustReceService.deleteById(deleteRequest.getId());
+ if (b)
+ return ResultVOUtils.success("删除成功!");
+ else
+ return ResultVOUtils.error(500, "删除失败!");
+ }
+
+
+}
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
index b0cae91db..2b610ad22 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java
@@ -1,5 +1,6 @@
package com.glxp.api.controller.inout;
+import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
@@ -15,9 +16,11 @@ import com.glxp.api.req.inout.AddOrderRequest;
import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.PageSimpleResponse;
+import com.glxp.api.res.inout.AcceptOrderResponse;
import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
+import com.glxp.api.util.RedisUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
@@ -41,6 +44,10 @@ public class IoOrderController {
private IoCodeTempService codeTempService;
@Resource
private IoCheckInoutService checkInoutService;
+ @Resource
+ IoOrderDetailBizService orderDetailBizService;
+ @Resource
+ IoOrderDetailCodeService orderDetailCodeService;
/**
* 查询单据列表
@@ -98,10 +105,6 @@ public class IoOrderController {
return ResultVOUtils.success("保存成功!");
}
- @Resource
- IoOrderDetailBizService orderDetailBizService;
- @Resource
- IoOrderDetailCodeService orderDetailCodeService;
//单据提交
@AuthRuleAnnotation("")
@@ -133,4 +136,5 @@ public class IoOrderController {
}
+
}
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java
new file mode 100644
index 000000000..d0507771e
--- /dev/null
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderReviewController.java
@@ -0,0 +1,101 @@
+package com.glxp.api.controller.inout;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import com.glxp.api.annotation.AuthRuleAnnotation;
+import com.glxp.api.common.enums.ResultEnum;
+import com.glxp.api.common.res.BaseResponse;
+import com.glxp.api.common.util.ResultVOUtils;
+import com.glxp.api.constant.ConstantStatus;
+import com.glxp.api.controller.BaseController;
+import com.glxp.api.entity.auth.AuthAdmin;
+import com.glxp.api.entity.basic.EntrustReceEntity;
+import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
+import com.glxp.api.entity.inout.IoOrderEntity;
+import com.glxp.api.req.inout.ReviewFinishRequest;
+import com.glxp.api.res.inout.AcceptOrderResponse;
+import com.glxp.api.service.inout.IoAddInoutService;
+import com.glxp.api.service.inout.IoCheckInoutService;
+import com.glxp.api.service.inout.IoOrderDetailBizService;
+import com.glxp.api.service.inout.IoOrderService;
+import com.glxp.api.util.RedisUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+
+//单据验收
+@Slf4j
+@RestController
+public class IoOrderReviewController extends BaseController {
+
+ @Resource
+ private RedisUtil redisUtil;
+ @Resource
+ IoOrderDetailBizService orderDetailBizService;
+ @Resource
+ IoOrderService orderService;
+ @Resource
+ IoCheckInoutService ioCheckInoutService;
+
+ //获取验收单据业务详情
+ @AuthRuleAnnotation("")
+ @GetMapping("/udiwms/stock/order/accept/getOrder")
+ public BaseResponse getAcceptOrder(String billNo) {
+ if (StrUtil.isBlank(billNo)) {
+ return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
+ }
+ AcceptOrderResponse acceptOrderEntity = new AcceptOrderResponse();
+ acceptOrderEntity.setBillNo(billNo);
+ List datas = (List) redisUtil.get(ConstantStatus.REDIS_BILLNO + billNo);
+ if (CollUtil.isNotEmpty(datas)) {
+ acceptOrderEntity.setOrderDetailEntities(datas);
+ acceptOrderEntity.setExitAccept(true);
+ } else {
+ List stockOrderDetailEntities = orderDetailBizService.findByOrderId(billNo);
+ acceptOrderEntity.setOrderDetailEntities(stockOrderDetailEntities);
+ acceptOrderEntity.setExitAccept(false);
+ }
+ return ResultVOUtils.success(acceptOrderEntity);
+
+ }
+
+
+ //前端直接验收完成
+ @AuthRuleAnnotation("")
+ @PostMapping("/spms/inout/order/web/updateStatus")
+ public BaseResponse webUpdateStatus(@RequestBody ReviewFinishRequest updateExportStatusRequest,
+ BindingResult bindingResult) {
+
+ if (bindingResult.hasErrors()) {
+ return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
+ }
+ IoOrderEntity orderEntity = orderService.findByBillNo(updateExportStatusRequest.getOrderId());
+ if (orderEntity == null) {
+ return ResultVOUtils.error(500, "未找到该业务单据");
+ }
+ return updateReview(orderEntity);
+ }
+
+
+ public BaseResponse updateReview(IoOrderEntity orderEntity) {
+ AuthAdmin authAdmin = getUser();
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ orderEntity.setReviewUser(authAdmin.getId() + "");
+ orderEntity.setUpdateTime(new Date());
+ orderEntity.setAuditTime(new Date());
+ orderService.update(orderEntity);
+ redisUtil.del(ConstantStatus.REDIS_BILLNO + orderEntity.getBillNo());
+ redisUtil.del(ConstantStatus.REDIS_BILLNO_CODES + orderEntity.getBillNo());
+ //验收完成->进入流程
+ ioCheckInoutService.checkSecond(orderEntity);
+ return ResultVOUtils.success("更新成功");
+ }
+
+}
diff --git a/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java b/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java
new file mode 100644
index 000000000..b3c98f633
--- /dev/null
+++ b/src/main/java/com/glxp/api/dao/basic/EntrustReceDao.java
@@ -0,0 +1,31 @@
+package com.glxp.api.dao.basic;
+
+import com.glxp.api.dao.BaseMapperPlus;
+import com.glxp.api.entity.basic.DlEntrustReceEntity;
+import com.glxp.api.entity.basic.EntrustReceEntity;
+import com.glxp.api.req.basic.BasicEntrustRecRequest;
+import com.glxp.api.res.basic.EntrustReceResponse;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface EntrustReceDao extends BaseMapperPlus {
+
+ List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ EntrustReceEntity findByUnique(@Param("action") String action, @Param("entrustUser") Long entrustUser);
+
+ boolean insertEntrustRec(EntrustReceEntity ioOrderStatusEntity);
+
+ boolean deleteById(String id);
+
+ boolean deleteAll();
+
+
+}
diff --git a/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java b/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java
new file mode 100644
index 000000000..79aea2037
--- /dev/null
+++ b/src/main/java/com/glxp/api/entity/basic/DlEntrustReceEntity.java
@@ -0,0 +1,14 @@
+package com.glxp.api.entity.basic;
+
+import lombok.Data;
+
+@Data
+public class DlEntrustReceEntity {
+
+
+ private Integer id;
+ private String action;
+ private String name;
+ private String mainAction;
+
+}
diff --git a/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java b/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java
new file mode 100644
index 000000000..79d0e8496
--- /dev/null
+++ b/src/main/java/com/glxp/api/entity/basic/EntrustReceEntity.java
@@ -0,0 +1,116 @@
+package com.glxp.api.entity.basic;
+
+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 lombok.Data;
+import org.apache.xpath.operations.Bool;
+
+import java.util.Date;
+
+@Data
+@TableName(value = "basic_entrust_accept")
+public class EntrustReceEntity {
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Integer id;
+
+ /**
+ * 当前单据类型
+ */
+ @TableField(value = "`action`")
+ private String action;
+
+ /**
+ * 当前部门
+ */
+ @TableField(value = "curDept")
+ private String curDept;
+
+ /**
+ * 当前仓库
+ */
+ @TableField(value = "curInv")
+ private String curInv;
+
+ /**
+ * 当前用户
+ */
+ @TableField(value = "userId")
+ private Long userId;
+
+ /**
+ * 委托分库
+ */
+ @TableField(value = "entrustDept")
+ private String entrustDept;
+
+ /**
+ * 委托人仓库
+ */
+ @TableField(value = "entrustInv")
+ private String entrustInv;
+
+ /**
+ * 委托验收后生成单据类型
+ */
+ @TableField(value = "entrustAction")
+ private String entrustAction;
+
+ /**
+ * 委托人用户
+ */
+ @TableField(value = "entrustUser")
+ private Long entrustUser;
+
+ /**
+ * 是否完成验收
+ */
+ @TableField(value = "finishRece")
+ private Boolean finishRece;
+
+ /**
+ * 更新时间
+ */
+ @TableField(value = "updateTime")
+ private Date updateTime;
+
+ /**
+ * 备注
+ */
+ @TableField(value = "remark")
+ private String remark;
+
+ /**
+ * 是否委托验收完成
+ */
+ @TableField(value = "entrustEnd")
+ private Integer entrustEnd;
+
+ public static final String COL_ID = "id";
+
+ public static final String COL_ACTION = "action";
+
+ public static final String COL_CURDEPT = "curDept";
+
+ public static final String COL_CURINV = "curInv";
+
+ public static final String COL_USERID = "userId";
+
+ public static final String COL_ENTRUSTDEPT = "entrustDept";
+
+ public static final String COL_ENTRUSTINV = "entrustInv";
+
+ public static final String COL_ENTRUSTACTION = "entrustAction";
+
+ public static final String COL_ENTRUSTUSER = "entrustUser";
+
+ public static final String COL_FINISHRECE = "finishRece";
+
+ public static final String COL_UPDATETIME = "updateTime";
+
+ public static final String COL_REMARK = "remark";
+
+ public static final String COL_ENTRUSTEND = "entrustEnd";
+}
diff --git a/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java b/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java
new file mode 100644
index 000000000..1f7de8025
--- /dev/null
+++ b/src/main/java/com/glxp/api/req/basic/BasicEntrustRecRequest.java
@@ -0,0 +1,23 @@
+package com.glxp.api.req.basic;
+
+import com.glxp.api.util.page.ListPageRequest;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class BasicEntrustRecRequest extends ListPageRequest {
+
+ private Integer id;
+ private String action;
+ private String entrustInv;
+ private Long entrustUser;
+ private String userId;
+ private Date updateTime;
+ private String curInv;
+ private String lastUpdateTime;
+ private String entrustSubInv;
+ private String invWarehouseCode;
+ private String name;
+
+}
diff --git a/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java b/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java
new file mode 100644
index 000000000..ebb799111
--- /dev/null
+++ b/src/main/java/com/glxp/api/req/basic/BusNoUserRequest.java
@@ -0,0 +1,10 @@
+package com.glxp.api.req.basic;
+
+import lombok.Data;
+
+@Data
+public class BusNoUserRequest {
+
+ private String curAction;
+
+}
diff --git a/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java b/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java
new file mode 100644
index 000000000..a4b4a40ae
--- /dev/null
+++ b/src/main/java/com/glxp/api/req/inout/ReviewFinishRequest.java
@@ -0,0 +1,13 @@
+package com.glxp.api.req.inout;
+
+import lombok.Data;
+
+@Data
+public class ReviewFinishRequest {
+ private String orderId;
+ private Integer exportStatus;
+ private Integer checkStatus;
+ private String stockOrderId;
+ private Integer entrustId;
+ private boolean entrust;
+}
diff --git a/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java b/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java
index 630274a4f..0dab4a012 100644
--- a/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java
+++ b/src/main/java/com/glxp/api/res/auth/WarehouseUserResponse.java
@@ -18,7 +18,7 @@ public class WarehouseUserResponse {
/**
* 用户id
*/
- private String userid;
+ private Long userid;
/**
* 用户名/登录账号
diff --git a/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java b/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java
new file mode 100644
index 000000000..7bf820d13
--- /dev/null
+++ b/src/main/java/com/glxp/api/res/basic/EntrustReceResponse.java
@@ -0,0 +1,62 @@
+package com.glxp.api.res.basic;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class EntrustReceResponse {
+ private Integer id;
+ private String action;
+ private String entrustInv;
+ private Long entrustUser;
+ private String userId;
+ private String entrustAction;
+ private Date updateTime;
+ private String remark;
+ private boolean finishRece;
+ private String curName;
+
+ private String entrustName;
+
+ /**
+ * 委托验收人
+ */
+ private String employeeName;
+
+ /**
+ * 分库名称
+ */
+ private String entrustInvName;
+
+ /**
+ * 当前仓库编码
+ */
+ private String curInv;
+
+ /**
+ * 当前仓库名称
+ */
+ private String curInvName;
+
+ /**
+ * 委托分库编码
+ */
+ private String entrustSubInv;
+
+ /**
+ * 当前分库编码
+ */
+ private String invWarehouseCode;
+
+ /**
+ * 当前分库名称
+ */
+ private String invWarehouseName;
+
+ /**
+ * 委托分库名称
+ */
+ private String entrustSubInvName;
+
+}
diff --git a/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java b/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java
new file mode 100644
index 000000000..fa24c023e
--- /dev/null
+++ b/src/main/java/com/glxp/api/res/inout/AcceptOrderResponse.java
@@ -0,0 +1,22 @@
+package com.glxp.api.res.inout;
+
+import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class AcceptOrderResponse {
+
+
+ private String billNo;
+
+ private String code;
+
+ private boolean isExitAccept;
+
+ private boolean finishAccept;
+
+ private List orderDetailEntities;
+
+}
diff --git a/src/main/java/com/glxp/api/service/basic/EntrustReceService.java b/src/main/java/com/glxp/api/service/basic/EntrustReceService.java
new file mode 100644
index 000000000..6843ac24c
--- /dev/null
+++ b/src/main/java/com/glxp/api/service/basic/EntrustReceService.java
@@ -0,0 +1,32 @@
+package com.glxp.api.service.basic;
+
+import com.glxp.api.entity.basic.DlEntrustReceEntity;
+import com.glxp.api.entity.basic.EntrustReceEntity;
+import com.glxp.api.req.basic.BasicEntrustRecRequest;
+import com.glxp.api.res.basic.EntrustReceResponse;
+
+import java.util.List;
+
+public interface EntrustReceService {
+
+ EntrustReceEntity findById(Integer id);
+
+ List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ EntrustReceEntity findByUnique(String action, Long entrustUser);
+
+ List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest);
+
+ int insertEntrustRec(EntrustReceEntity entrustReceEntity);
+
+ boolean replaceEntrustRec(EntrustReceEntity entrustReceEntity);
+
+ boolean deleteById(String id);
+
+ boolean deleteAll();
+
+ int updateEntrustRec(EntrustReceEntity warehouseEntity);
+
+}
diff --git a/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java b/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java
index c1674d261..61d90da9c 100644
--- a/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java
+++ b/src/main/java/com/glxp/api/service/basic/IBasicBussinessTypeService.java
@@ -108,4 +108,6 @@ public interface IBasicBussinessTypeService {
* @return
*/
boolean checkBusTypeNameExists(String name, Integer id);
+
+ List selectIgnoreSelf(String action);
}
diff --git a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java
index c676b4318..238997046 100644
--- a/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/basic/impl/BasicBussinessTypeServiceImpl.java
@@ -182,6 +182,12 @@ public class BasicBussinessTypeServiceImpl implements IBasicBussinessTypeService
return true;
}
+ @Override
+ public List selectIgnoreSelf(String action) {
+ List list = basicBussinessTypeDao.selectList(new QueryWrapper().ne("action", action));
+ return list;
+ }
+
/**
* 统一设置创建/更新信息
*
diff --git a/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java
new file mode 100644
index 000000000..cd0ea3278
--- /dev/null
+++ b/src/main/java/com/glxp/api/service/basic/impl/EntrustReceServiceImpl.java
@@ -0,0 +1,115 @@
+package com.glxp.api.service.basic.impl;
+
+import cn.hutool.core.collection.CollUtil;
+import com.github.pagehelper.PageHelper;
+import com.glxp.api.dao.auth.InvSubWarehouseDao;
+import com.glxp.api.dao.basic.EntrustReceDao;
+import com.glxp.api.entity.basic.DlEntrustReceEntity;
+import com.glxp.api.entity.basic.EntrustReceEntity;
+import com.glxp.api.req.basic.BasicEntrustRecRequest;
+import com.glxp.api.res.basic.EntrustReceResponse;
+import com.glxp.api.service.basic.EntrustReceService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Collections;
+import java.util.List;
+
+@Service
+public class EntrustReceServiceImpl implements EntrustReceService {
+
+ @Resource
+ EntrustReceDao entrustReceDao;
+ @Resource
+ private InvSubWarehouseDao invSubWarehouseDao;
+
+ @Override
+ public EntrustReceEntity findById(Integer id) {
+ BasicEntrustRecRequest basicEntrustRecRequest = new BasicEntrustRecRequest();
+ basicEntrustRecRequest.setId(id);
+ List entrustReceEntities = entrustReceDao.filterEntrustRec(basicEntrustRecRequest);
+ if (CollUtil.isNotEmpty(entrustReceEntities)) {
+ return entrustReceEntities.get(0);
+ }
+ return null;
+ }
+
+ @Override
+ public List filterEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) {
+
+ if (basicEntrustRecRequest == null) {
+ return Collections.emptyList();
+ }
+ if (basicEntrustRecRequest.getPage() != null) {
+ int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit();
+ PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit());
+ }
+ return entrustReceDao.filterEntrustRec(basicEntrustRecRequest);
+ }
+
+ @Override
+ public EntrustReceEntity findByUnique(String action, Long entrustUser) {
+ return entrustReceDao.findByUnique(action, entrustUser);
+ }
+
+ @Override
+ public List downloadEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) {
+ if (basicEntrustRecRequest == null) {
+ return Collections.emptyList();
+ }
+ if (basicEntrustRecRequest.getPage() != null) {
+ int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit();
+ PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit());
+ }
+ return entrustReceDao.downloadEntrustRec(basicEntrustRecRequest);
+ }
+
+ @Override
+ public List filterJoinEntrustRec(BasicEntrustRecRequest basicEntrustRecRequest) {
+
+ if (basicEntrustRecRequest == null) {
+ return Collections.emptyList();
+ }
+ if (basicEntrustRecRequest.getPage() != null) {
+ int offset = (basicEntrustRecRequest.getPage() - 1) * basicEntrustRecRequest.getLimit();
+ PageHelper.offsetPage(offset, basicEntrustRecRequest.getLimit());
+ }
+ List entrustReceResponses = entrustReceDao.filterJoinEntrustRec(basicEntrustRecRequest);
+ if (CollUtil.isNotEmpty(entrustReceResponses)) {
+ //查询当前分库名称和委托验收分库名称
+ entrustReceResponses.forEach(entrustReceResponse -> {
+ String invWarehouseName = invSubWarehouseDao.selectNameByCode(entrustReceResponse.getInvWarehouseCode());//查询当前分库名称
+ entrustReceResponse.setInvWarehouseName(invWarehouseName);
+
+ String entrustSubInvName = invSubWarehouseDao.selectNameByCode(entrustReceResponse.getEntrustSubInv());
+ entrustReceResponse.setEntrustSubInvName(entrustSubInvName);
+ });
+ }
+ return entrustReceResponses;
+ }
+
+ @Override
+ public int insertEntrustRec(EntrustReceEntity entrustReceEntity) {
+ return entrustReceDao.insert(entrustReceEntity);
+ }
+
+ @Override
+ public boolean replaceEntrustRec(EntrustReceEntity entrustReceEntity) {
+ return entrustReceDao.insertEntrustRec(entrustReceEntity);
+ }
+
+ @Override
+ public boolean deleteById(String id) {
+ return entrustReceDao.deleteById(id);
+ }
+
+ @Override
+ public boolean deleteAll() {
+ return entrustReceDao.deleteAll();
+ }
+
+ @Override
+ public int updateEntrustRec(EntrustReceEntity entrustReceEntity) {
+ return entrustReceDao.updateById(entrustReceEntity);
+ }
+}
diff --git a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
index 4d1f36e4b..1675c63bb 100644
--- a/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
+++ b/src/main/java/com/glxp/api/service/inout/IoCheckInoutService.java
@@ -334,43 +334,46 @@ public class IoCheckInoutService {
//二次校验
public void checkSecond(IoOrderEntity orderEntity) {
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
- if (bussinessTypeEntity.isSecCheckEnable()) {
- if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_UDIMS) {
- if (!bussinessTypeEntity.isSecCheckUdims()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_WEBNEW) {
- if (!bussinessTypeEntity.isSecCheckWebNew()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAED) {
- if (!bussinessTypeEntity.isSecCheckPdaEd()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAUN) {
- if (!bussinessTypeEntity.isSecCheckPdaUn()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PC) {
- if (!bussinessTypeEntity.isSecCheckPc()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_CHANGE) {
- if (!bussinessTypeEntity.isSecCheckChange()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PEACE_CHANGE) {
- if (!bussinessTypeEntity.isSecCheckBalance()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
- }
- } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_COPY) {
- if (!bussinessTypeEntity.isSecCheckCopy()) {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ if (orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_AUDITED) {
+ if (bussinessTypeEntity.isSecCheckEnable()) {
+ if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_UDIMS) {
+ if (!bussinessTypeEntity.isSecCheckUdims()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_WEBNEW) {
+ if (!bussinessTypeEntity.isSecCheckWebNew()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAED) {
+ if (!bussinessTypeEntity.isSecCheckPdaEd()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PDAUN) {
+ if (!bussinessTypeEntity.isSecCheckPdaUn()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PC) {
+ if (!bussinessTypeEntity.isSecCheckPc()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_CHANGE) {
+ if (!bussinessTypeEntity.isSecCheckChange()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_PEACE_CHANGE) {
+ if (!bussinessTypeEntity.isSecCheckBalance()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
+ } else if (orderEntity.getFromType().intValue() == ConstantStatus.FROM_COPY) {
+ if (!bussinessTypeEntity.isSecCheckCopy()) {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
+ }
}
+ } else {
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
}
- } else {
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_AUDITED);
}
+
if (orderEntity.getStatus() == ConstantStatus.ORDER_STATUS_AUDITED) {
orderEntity.setUpdateTime(new Date());
orderService.update(orderEntity);
diff --git a/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml b/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml
index 3c768da42..350a23b39 100644
--- a/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml
+++ b/src/main/resources/mybatis/mapper/auth/WarehouseUserDao.xml
@@ -9,11 +9,15 @@
-
- id, code, userId, userName, isDirector,locSubInvCode
+ id,
+ code,
+ userId,
+ userName,
+ isDirector,
+ locSubInvCode
- delete from auth_warehouse_user
+ delete
+ from auth_warehouse_user
where id = #{id,jdbcType=INTEGER}
- delete from auth_warehouse_user
- where userid = #{id} and code=#{code}
+ delete
+ from auth_warehouse_user
+ where userid = #{id}
+ and code = #{code}
- insert into auth_warehouse_user (code, userId, userName, isDirector
- )
- values (#{code,jdbcType=VARCHAR}, #{userid,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR}, #{isDirector}
- )
+ insert into auth_warehouse_user (code, userId, userName, isDirector)
+ values (#{code,jdbcType=VARCHAR}, #{userid,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR}, #{isDirector})
@@ -102,10 +106,9 @@
update auth_warehouse_user
- set code = #{code,jdbcType=VARCHAR},
- userId = #{userid,jdbcType=BIGINT},
- userName = #{username,jdbcType=VARCHAR}
- isDirector = #{isDirector}
+ set code = #{code,jdbcType=VARCHAR},
+ userId = #{userid,jdbcType=BIGINT},
+ userName = #{username,jdbcType=VARCHAR} isDirector = #{isDirector}
where id = #{id,jdbcType=INTEGER}
@@ -167,12 +170,11 @@
insert into auth_warehouse_user
- (code, userId, userName, isDirector)
+ (code, userId, userName, isDirector)
values
(#{item.code,jdbcType=VARCHAR}, #{item.userid,jdbcType=BIGINT}, #{item.username,jdbcType=VARCHAR},
- #{item.isDirector}
- )
+ #{item.isDirector})
code = #{code,jdbcType=VARCHAR},
- userId = #{userid,jdbcType=BIGINT},
- userName = #{username,jdbcType=VARCHAR},
+ userId = #{userid,jdbcType=BIGINT},
+ userName = #{username,jdbcType=VARCHAR},
-
+
+ AND status = #{status}
+