瀏覽代碼

改动过的

huanglizhi 1 年之前
父節點
當前提交
0da7d2c46b

+ 3 - 0
module-erp/src/main/java/com/hys/app/mapper/erp/WarehouseEntryMapper.java

@@ -36,6 +36,9 @@ public interface WarehouseEntryMapper extends BaseMapperX<WarehouseEntryDO> {
                 .likeIfPresent(WarehouseEntryDO::getContractAttachment, params.getContractAttachment())
                 .eqIfPresent(WarehouseEntryDO::getStatus, params.getStatus())
                 .eqIfPresent(WarehouseEntryDO::getSupplierSettlementFlag, params.getSupplierSettlementFlag())
+                .eqIfPresent(WarehouseEntryDO::getCustomerName, params.getCustomerName())
+                .eqIfPresent(WarehouseEntryDO::getCustomerPhone, params.getCustomerPhone())
+                .eqIfPresent(WarehouseEntryDO::getType, params.getType())
                 .orderByDesc(WarehouseEntryDO::getEntryTime)
                 .page(params);
     }

+ 6 - 0
module-erp/src/main/java/com/hys/app/model/erp/dos/WarehouseEntryDO.java

@@ -128,6 +128,12 @@ public class WarehouseEntryDO extends BaseDO {
     @ApiModelProperty(name = "has_submit", value = "是否已经入库")
     private String hasSubmit = "N";
 
+    @ApiModelProperty(name = "attachment", value = "客户电话")
+    private String customerPhone;
+
+    @ApiModelProperty(name = "attachment", value = "客户名称")
+    private String customerName;
+
 
 
 }

+ 2 - 0
module-erp/src/main/java/com/hys/app/model/erp/dto/WarehouseEntryProductDTO.java

@@ -18,6 +18,8 @@ import java.util.List;
 @Data
 public class WarehouseEntryProductDTO {
 
+    private Long id;
+
     @ApiModelProperty(name = "product_id", value = "shangpinID")
     private Long goodsId;
 

+ 10 - 0
module-erp/src/main/java/com/hys/app/model/erp/dto/WarehouseEntryQueryParams.java

@@ -1,6 +1,7 @@
 package com.hys.app.model.erp.dto;
 
 import com.hys.app.framework.database.BaseQueryParam;
+import com.hys.app.model.erp.enums.WarehouseEntyrTypeEnum;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -62,5 +63,14 @@ public class WarehouseEntryQueryParams extends BaseQueryParam {
     @ApiModelProperty(name = "supplier_settlement_flag", value = "是否已生成供应商结算单")
     private Boolean supplierSettlementFlag;
 
+    @ApiModelProperty(name = "attachment", value = "客户电话")
+    private String customerPhone;
+
+    @ApiModelProperty(name = "attachment", value = "客户名称")
+    private String customerName;
+
+    @ApiModelProperty(name = "type", value = "入库类型")
+    private WarehouseEntyrTypeEnum type;
+
 }
 

+ 2 - 0
module-erp/src/main/java/com/hys/app/service/erp/impl/OrderManagerImpl.java

@@ -481,6 +481,8 @@ public class OrderManagerImpl extends BaseServiceImpl<OrderMapper, OrderDO> impl
         WarehouseEntryDO warehouseEntryDO = new WarehouseEntryDO();
         warehouseEntryDO.setWarehouseId(orderDO.getReturnWarehouseId());
         warehouseEntryDO.setOrderId(orderDO.getId());
+        warehouseEntryDO.setCustomerName(orderDO.getCustomerName());
+        warehouseEntryDO.setCustomerPhone(orderDO.getCustomerPhone());
         warehouseEntryDO.setType(WarehouseEntyrTypeEnum.HAIL_ENTRY);
         warehouseEntryDO.setMemo("租赁订单出库生成的入库单");
         warehouseEntryDO.setSn(noGenerateManager.generate(NoBusinessTypeEnum.WarehouseEntry));

+ 3 - 1
module-erp/src/main/java/com/hys/app/service/erp/impl/OrderReturnManagerImpl.java

@@ -91,7 +91,7 @@ public class OrderReturnManagerImpl extends BaseServiceImpl<OrderReturnMapper, O
                 if (ObjectUtil.isNull(itemDO)) {
                     throw new ServiceException("退货的商品必须在订单里");
                 }
-                if (itemDO.getNum() <= dto.getReturnNum()) {
+                if (itemDO.getNum() < dto.getReturnNum()) {
                     throw new ServiceException("退貨的数量不能大于原订单的物品数量");
                 }
                 itemDO.setReturnNum(itemDO.getReturnNum() + dto.getReturnNum());
@@ -114,6 +114,8 @@ public class OrderReturnManagerImpl extends BaseServiceImpl<OrderReturnMapper, O
                 WarehouseEntryDO warehouseEntryDO = new WarehouseEntryDO();
                 warehouseEntryDO.setWarehouseId(aDo.getReturnWarehouseId());
                 warehouseEntryDO.setOrderId(returnDO.getId());
+                warehouseEntryDO.setCustomerName(aDo.getCustomerName());
+                warehouseEntryDO.setCustomerPhone(aDo.getCustomerPhone());
                 warehouseEntryDO.setType(WarehouseEntyrTypeEnum.SALE_AFTER);
                 warehouseEntryDO.setMemo("订单售后生成的入库单");
                 warehouseEntryDO.setSn(noGenerateManager.generate(NoBusinessTypeEnum.WarehouseEntry));

+ 23 - 12
module-erp/src/main/java/com/hys/app/service/erp/impl/WarehouseEntryManagerImpl.java

@@ -157,17 +157,28 @@ public class WarehouseEntryManagerImpl extends BaseServiceImpl<WarehouseEntryMap
         // 更新入库单
         WarehouseEntryDO warehouseEntryDO = BeanUtil.copyProperties(warehouseEntryDTO, WarehouseEntryDO.class);
         updateById(warehouseEntryDO);
-        warehouseEntryProductManager.deleteByWarehouseEntryIds(Collections.singletonList(warehouseEntryDTO.getId()));
         ArrayList<WarehouseEntryProductDO> productList = new ArrayList<>();
-        for (WarehouseEntryProductDTO dto : warehouseEntryDTO.getProductList()) {
-            WarehouseEntryProductDO productDO = BeanUtil.copyProperties(dto, WarehouseEntryProductDO.class);
-            productDO.setProductId(dto.getProductId());
-            productDO.setEntryNum(productDO.getEntryNum() + productDO.getNum());
-            productDO.setNotEntryNum(productDO.getOrderNum() - productDO.getEntryNum());
-            productDO.setWarehouseEntryId(warehouseEntryDO.getId());
-            productList.add(productDO);
+        //如果不是调拨入库,售后入库,调拨入库直接更爱入库单状态
+        if (!WarehouseEntyrTypeEnum.HAIL_ENTRY.equals(warehouseEntryDTO.getType()) &&
+                !WarehouseEntyrTypeEnum.SALE_AFTER.equals(warehouseEntryDTO.getType()) &&
+                !WarehouseEntyrTypeEnum.TRANSFER_ENTRY.equals(warehouseEntryDTO.getType())) {
+            warehouseEntryProductManager.deleteByWarehouseEntryIds(Collections.singletonList(warehouseEntryDTO.getId()));
+            for (WarehouseEntryProductDTO dto : warehouseEntryDTO.getProductList()) {
+                WarehouseEntryProductDO productDO = BeanUtil.copyProperties(dto, WarehouseEntryProductDO.class);
+                productDO.setProductId(dto.getProductId());
+                productDO.setWarehouseEntryId(warehouseEntryDO.getId());
+                productList.add(productDO);
+            }
+            warehouseEntryProductManager.saveBatch(productList);
+        }else {
+            for (WarehouseEntryProductDTO dto : warehouseEntryDTO.getProductList()) {
+                WarehouseEntryProductDO productDO = BeanUtil.copyProperties(dto, WarehouseEntryProductDO.class);
+                productDO.setEntryNum(productDO.getEntryNum() + productDO.getNum());
+                productDO.setNotEntryNum(productDO.getOrderNum() - productDO.getEntryNum());
+                productList.add(productDO);
+            }
+            warehouseEntryProductManager.updateBatchById(productList);
         }
-        warehouseEntryProductManager.saveBatch(productList);
         //保存子表和序列号的关系
         warehouseEntryDTO.setId(warehouseEntryDO.getId());
         saveSnCode(warehouseEntryDTO.getId(), productList);
@@ -183,9 +194,9 @@ public class WarehouseEntryManagerImpl extends BaseServiceImpl<WarehouseEntryMap
         for (WarehouseEntryProductDO aDo : productList) {
             ProductDO manager = productManager.getById(aDo.getProductId());
             if (manager.getHaveSn()) {
-                if (CollUtil.isEmpty(aDo.getSnCodeList())) {
-                    throw new ServiceException(manager.getId() + ":有序列号的商品入库需要录入序列号");
-                }
+//                if (CollUtil.isEmpty(aDo.getSnCodeList())) {
+//                    throw new ServiceException(manager.getId() + ":有序列号的商品入库需要录入序列号");
+//                }
                 if (aDo.getNum() != aDo.getSnCodeList().size()) {
                     throw new ServiceException(manager.getId() + ":入库的数量须和序列号的个数相等");
                 }

+ 3 - 2
module-erp/src/main/java/com/hys/app/service/kuaidiniao/KuaiDiNiaoServiceImpl.java

@@ -92,7 +92,8 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
     public String kdShip(PreOrderModelDTO preOrderModel, Long orderId, AddressDTO addressDTO) {
         preOrderModel.setOrderCode(IdUtil.fastUUID());
         fillParam(preOrderModel);
-        String kdnCode = sendUrl(JSONUtil.toJsonStr(preOrderModel));
+        PreOrderModel model = BeanUtil.copyProperties(preOrderModel, PreOrderModel.class);
+        String kdnCode = sendUrl(JSONUtil.toJsonStr(model));
         if (StrUtil.isNotEmpty(kdnCode)) {
             //如果快递鸟下单成功保存 快递信息
             OrderSendDO aDo = orderSendManager.getById(orderId);
@@ -277,7 +278,7 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
 
     }
 
-    private void fillParam(PreOrderModel preOrderModel) {
+    private void fillParam(PreOrderModelDTO preOrderModel) {
         if (preOrderModel.getAppointmentType() == 1 ){
             if (LocalDateTime.now().plusHours(2).isAfter(preOrderModel.getAppointmentTime())){
                 throw new ServiceException("预约单必须在当前时间完后2小时");

+ 1 - 1
module-erp/src/main/java/com/hys/app/service/kuaidiniao/entity/KdGood.java

@@ -25,5 +25,5 @@ public class KdGood {
     private Integer quantity;
 
     @ApiModelProperty(value = "物品单位(箱/件)")
-    private String unit;
+    private String unit = "件";
 }

+ 1 - 12
module-erp/src/main/java/com/hys/app/service/kuaidiniao/entity/PreOrderModel.java

@@ -88,21 +88,10 @@ public class PreOrderModel {
     @ApiModelProperty(value = "货物信息,最大数量50")
     private List<KdGood> goodsList;
 
-    @ApiModelProperty(value = "发货人信息")
-    @Valid
-    private ReceiverSender sender;
-
-    @ApiModelProperty(value = "收货人信息")
-    @Valid
-    private ReceiverSender receiver;
-
     @ApiModelProperty(value = "商家订单号 全局唯一")
     private String orderCode;
 
-    @ApiModelProperty(value = "备注")
-    private String remark;
 
-    private String sendAddress;
 
-    private String receiveAddress;
+
 }

+ 15 - 0
module-erp/src/main/java/com/hys/app/service/kuaidiniao/entity/PreOrderModelDTO.java

@@ -29,6 +29,21 @@ public class PreOrderModelDTO extends PreOrderModel{
     @ApiModelProperty("寄件人手机号后四位")
     private String  logisticsPhone;
 
+    @ApiModelProperty(value = "发货人信息")
+    @Valid
+    private ReceiverSender sender;
+
+    @ApiModelProperty(value = "收货人信息")
+    @Valid
+    private ReceiverSender receiver;
+
+    private String sendAddress;
+
+    private String receiveAddress;
+
+
+    @ApiModelProperty(value = "备注")
+    private String remark;
 
 
 }