Ver código fonte

订单管理调整

FengChaoYu 1 mês atrás
pai
commit
67bdb4b776
34 arquivos alterados com 320 adições e 1793 exclusões
  1. 0 24
      mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackageBean.java
  2. 0 38
      mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackageList.java
  3. 0 19
      mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackagePopBean.java
  4. 0 5
      mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsSpecBean.java
  5. 0 4
      mall-server-api/src/main/java/com/gree/mall/manager/bean/listvo/OrderInfoVO.java
  6. 0 19
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OldProductManagerAdd.java
  7. 0 19
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OldProductManagerItemAdd.java
  8. 14 0
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderDeliveryDetailBean.java
  9. 0 3
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderDetailBeanVO.java
  10. 26 12
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderInfoAddBean.java
  11. 8 0
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderInfoDetailBean.java
  12. 1 1
      mall-server-api/src/main/java/com/gree/mall/manager/bean/order/SendOrderBody.java
  13. 0 18
      mall-server-api/src/main/java/com/gree/mall/manager/bean/trade/OldProductManagerDetail.java
  14. 0 131
      mall-server-api/src/main/java/com/gree/mall/manager/bean/trade/OldProductManagerVO.java
  15. 0 1
      mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/CustomGoodsMapper.java
  16. 0 3
      mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/JxMapper.java
  17. 1 0
      mall-server-api/src/main/java/com/gree/mall/manager/constant/Constant.java
  18. 32 0
      mall-server-api/src/main/java/com/gree/mall/manager/controller/common/OrderPickTimeConfigController.java
  19. 0 2
      mall-server-api/src/main/java/com/gree/mall/manager/controller/goods/GoodsController.java
  20. 0 2
      mall-server-api/src/main/java/com/gree/mall/manager/controller/order/OrderController.java
  21. 19 1
      mall-server-api/src/main/java/com/gree/mall/manager/controller/order/OrderOfflineController.java
  22. 0 101
      mall-server-api/src/main/java/com/gree/mall/manager/controller/trade/OldProductManagerController.java
  23. 0 578
      mall-server-api/src/main/java/com/gree/mall/manager/logic/common/GongdanLogic.java
  24. 31 0
      mall-server-api/src/main/java/com/gree/mall/manager/logic/common/OrderPickTimeConfigLogic.java
  25. 0 235
      mall-server-api/src/main/java/com/gree/mall/manager/logic/common/WorkWechatLogic.java
  26. 0 23
      mall-server-api/src/main/java/com/gree/mall/manager/logic/goods/GoodsLogic.java
  27. 35 41
      mall-server-api/src/main/java/com/gree/mall/manager/logic/goods/JxGoodsLogic.java
  28. 98 121
      mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderDeliveryLogic.java
  29. 0 23
      mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderLogic.java
  30. 52 39
      mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderOfflineLogic.java
  31. 0 252
      mall-server-api/src/main/java/com/gree/mall/manager/logic/trade/OldProdctManagerLogic.java
  32. 0 59
      mall-server-api/src/main/java/com/gree/mall/manager/logic/workorder/OrderLogLogic.java
  33. 2 2
      mall-server-api/src/main/resources/mapper/CommonMapper.xml
  34. 1 17
      mall-server-api/src/main/resources/mapper/JxMapper.xml

+ 0 - 24
mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackageBean.java

@@ -1,24 +0,0 @@
-package com.gree.mall.manager.bean.goods;
-
-import com.gree.mall.manager.plus.entity.GoodsPackagePop;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.util.List;
-
-@ApiModel
-@Data
-public class GoodsPackageBean{
-
-    @ApiModelProperty("商品名称")
-    private String goodsName;
-    @ApiModelProperty("图片")
-    private String imgUrl;
-    @ApiModelProperty("规格")
-    private List<GoodsPackagePopBean> goodsPackagePopList;
-    @ApiModelProperty("排序")
-    private Integer sortNum;
-
-}

+ 0 - 38
mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackageList.java

@@ -1,38 +0,0 @@
-package com.gree.mall.manager.bean.goods;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.math.BigDecimal;
-
-@ApiModel
-@Data
-public class GoodsPackageList {
-
-    @ApiModelProperty("商品id")
-    private String goodsId;
-    @ApiModelProperty("商品图")
-    private String imgUrl;
-    @ApiModelProperty("商品名称")
-    private String goodsName;
-    @ApiModelProperty("状态true=是 false=否")
-    private Boolean status;
-    @ApiModelProperty("参与产品数量")
-    private Integer goodsNums;
-    @ApiModelProperty("最低销售价")
-    private BigDecimal packageMinAmount;
-    @ApiModelProperty("最低分佣金额")
-    private BigDecimal packageMinShareAmount;
-    @ApiModelProperty("使用优惠券 0=不可使用 1=所有优惠券 2=满减券 3=商品券")
-    private Integer useCoupon;
-    @ApiModelProperty("适用范围 0=指定人员 1=所有人 2=普通用户 3=业务员")
-    private Integer packageUserType;
-    @ApiModelProperty("订单数量")
-    private Integer orderNums;
-    @ApiModelProperty("订单总金额")
-    private BigDecimal orderPayAmount;
-    @ApiModelProperty("商户")
-    private String companyName;
-
-}

+ 0 - 19
mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsPackagePopBean.java

@@ -1,19 +0,0 @@
-package com.gree.mall.manager.bean.goods;
-
-import com.gree.mall.manager.plus.entity.GoodsPackagePop;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@ApiModel
-@Data
-public class GoodsPackagePopBean extends GoodsPackagePop {
-
-    @ApiModelProperty("库存")
-    private Integer stock;
-    @ApiModelProperty("规格名称")
-    private String specName;
-    @ApiModelProperty("规格值")
-    private String specValue;
-
-}

+ 0 - 5
mall-server-api/src/main/java/com/gree/mall/manager/bean/goods/GoodsSpecBean.java

@@ -70,11 +70,6 @@ public class GoodsSpecBean extends Goods {
     @ApiModelProperty("标签")
     private List<String> tagsLabel;
 
-    @ApiModelProperty("套购配置的比例商品")
-    private List<GoodsPackagePop> goodsPackagePops;
-    @ApiModelProperty("套购配置的指定用户-新增/编辑用")
-    private List<GoodsPackageUserRela> goodsPackageUserRelas;
-
     @ApiModelProperty("套购商品配置的用户列表-详情用")
     private List<User> users;
 

+ 0 - 4
mall-server-api/src/main/java/com/gree/mall/manager/bean/listvo/OrderInfoVO.java

@@ -64,10 +64,6 @@ public class OrderInfoVO {
     @ZfireField(tbName = "a")
     @ApiModelProperty("总金额")
     private BigDecimal totalAmount;
-    @ApiModelProperty("业务员")
-    private String saleName;
-    @ApiModelProperty("业务员电话")
-    private String saleMobile;
     @ApiModelProperty("客户名称")
     private String receUserName;
     @ApiModelProperty("客户电话")

+ 0 - 19
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OldProductManagerAdd.java

@@ -1,19 +0,0 @@
-package com.gree.mall.manager.bean.order;
-
-import com.gree.mall.manager.plus.entity.OldProductManager;
-import com.gree.mall.manager.plus.entity.OldProductManagerItem;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.util.List;
-
-@EqualsAndHashCode(callSuper = true)
-@ApiModel
-@Data
-public class OldProductManagerAdd extends OldProductManager {
-
-    @ApiModelProperty("回收信息明细")
-    private List<OrderOldProductAdd> orderOldProductAdds;
-}

+ 0 - 19
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OldProductManagerItemAdd.java

@@ -1,19 +0,0 @@
-package com.gree.mall.manager.bean.order;
-
-import com.gree.mall.manager.plus.entity.OldProductManagerItem;
-import com.gree.mall.manager.plus.entity.OldProductManagerItemAttribute;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-import java.util.List;
-
-@EqualsAndHashCode(callSuper = true)
-@ApiModel
-@Data
-public class OldProductManagerItemAdd extends OldProductManagerItem {
-
-    @ApiModelProperty(value = "属性id")
-    private List<OldProductManagerItemAttribute> oldProductManagerItemAttributes;
-}

+ 14 - 0
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderDeliveryDetailBean.java

@@ -0,0 +1,14 @@
+package com.gree.mall.manager.bean.order;
+
+import com.gree.mall.manager.plus.entity.OrderDeliveryDetail;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class OrderDeliveryDetailBean extends OrderDeliveryDetail {
+
+    @ApiModelProperty(value = "条码集")
+    private String barcodeText;
+}

+ 0 - 3
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderDetailBeanVO.java

@@ -38,8 +38,5 @@ public class OrderDetailBeanVO extends OrderInfo {
     @ApiModelProperty("打印次数")
     private Integer printRecordCount;
 
-    @ApiModelProperty("回收信息明细")
-    private List<OrderOldProductDTO> orderOldProductDTOList;
-
 
 }

+ 26 - 12
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderInfoAddBean.java

@@ -9,6 +9,8 @@ import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Pattern;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -24,35 +26,31 @@ public class OrderInfoAddBean {
     @ApiModelProperty("订单号,传则为修改")
     private String orderId;
 
-    @NotBlank(message = "请选择工单类型")
+//    @NotBlank(message = "请选择工单类型")
     @ApiModelProperty("工单类型id")
     private String orderSmallType;
 
-    @NotBlank(message = "请选择工单类型")
+//    @NotBlank(message = "请选择工单类型")
     @ApiModelProperty("工单类型")
     private String orderSmallTypeText;
 
-    @ApiModelProperty("业务员")
-    private String saleName;
-    @ApiModelProperty("业务员电话")
-    private String saleMobile;
     @ApiModelProperty("客户名称")
     private String receUserName;
     @ApiModelProperty("收货人电话")
     private String recePhone;
 
     @NotNull(message = "支付方式不能为空")
-    @ApiModelProperty("支付方式 WECHAT=微信支付 CASH=现金支付 TRANSFER=转账支付")
+    @ApiModelProperty("支付方式 CASH=现金支付 TRANSFER=转账支付")
     private PayTypeEnum payType;
-    @NotBlank(message = "省不能为空")
+//    @NotBlank(message = "省不能为空")
     private String province;
-    @NotBlank(message = "市不能为空")
+//    @NotBlank(message = "市不能为空")
     private String city;
-    @NotBlank(message = "区不能为空")
+//    @NotBlank(message = "区不能为空")
     private String area;
-    @NotBlank(message = "街道不能为空")
+//    @NotBlank(message = "街道不能为空")
     private String street;
-    @NotBlank(message = "地址不能为空")
+//    @NotBlank(message = "地址不能为空")
     private String receAddress;
     @ApiModelProperty("经度")
     private String lng;
@@ -68,5 +66,21 @@ public class OrderInfoAddBean {
     @ApiModelProperty("商品明细(只用传 物料编号,数量,单价)")
     private List<OrderDetail> orderDetails;
 
+    @NotBlank(message = "提货时间不能为空")
+    @Pattern(regexp = "^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$", message = "提货时间格式有误")
+    @ApiModelProperty("提货开始时间")
+    private String pickStartTime;
 
+    @NotBlank(message = "提货时间不能为空")
+    @Pattern(regexp = "^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}$", message = "提货时间格式有误")
+    @ApiModelProperty("提货结束时间")
+    private String pickEndTime;
+
+    @NotBlank(message = "请选择提货仓库")
+    @ApiModelProperty("提货仓库id")
+    private String pickStorageId;
+
+    @NotBlank(message = "请选择提货仓库")
+    @ApiModelProperty("提货仓库名称")
+    private String pickStorageName;
 }

+ 8 - 0
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/OrderInfoDetailBean.java

@@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Pattern;
 import java.util.List;
 
 /**
@@ -18,6 +20,12 @@ import java.util.List;
 @Data
 public class OrderInfoDetailBean extends OrderInfo {
 
+    @ApiModelProperty("提货开始时间")
+    private String pickStartTime;
+
+    @ApiModelProperty("提货结束时间")
+    private String pickEndTime;
+
     @ApiModelProperty("商品明细")
     private List<OrderDetail> orderDetails;
 

+ 1 - 1
mall-server-api/src/main/java/com/gree/mall/manager/bean/order/SendOrderBody.java

@@ -52,6 +52,6 @@ public class SendOrderBody {
 
 
     @ApiModelProperty(value = "发货物料")
-    private List<OrderDeliveryDetail> orderDeliveryDetailList;
+    private List<OrderDeliveryDetailBean> orderDeliveryDetailList;
 
 }

+ 0 - 18
mall-server-api/src/main/java/com/gree/mall/manager/bean/trade/OldProductManagerDetail.java

@@ -1,18 +0,0 @@
-package com.gree.mall.manager.bean.trade;
-
-import com.gree.mall.manager.bean.order.OldProductManagerItemAdd;
-import com.gree.mall.manager.plus.entity.OldProductManager;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.List;
-
-@ApiModel
-@Data
-public class OldProductManagerDetail extends OldProductManager {
-
-
-    @ApiModelProperty(value = "旧机管理")
-    private List<OldProductManagerItemAdd> itemList;
-}

+ 0 - 131
mall-server-api/src/main/java/com/gree/mall/manager/bean/trade/OldProductManagerVO.java

@@ -1,131 +0,0 @@
-package com.gree.mall.manager.bean.trade;
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.gree.mall.manager.annotation.ZfireField;
-import com.gree.mall.manager.enums.OldManagerTypeStatusEnum;
-import com.gree.mall.manager.enums.SaleTypeEnum;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.util.Date;
-
-@Data
-@ApiModel
-public class OldProductManagerVO     {
-
-    @ZfireField(tbName = "a",hide = true)
-    @TableId(value = "id", type = IdType.ID_WORKER_STR)
-    private String id;
-
-    @ZfireField(tbName = "a",hide = true)
-    @ApiModelProperty(value = "企业微信id")
-    private String companyWechatId;
-
-//    @ZfireField(tbName = "a")
-//    @ApiModelProperty(value = "所属商户")
-//    private String companyName;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "订单号")
-    private String orderId;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "工单号")
-    private String pgOrderId;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "工单类型")
-    private String orderSmallTypeText;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "状态")
-    private OldManagerTypeStatusEnum status;
-
-    @ZfireField(tbName = "b",hide = true)
-    @ApiModelProperty(value = "三级")
-    private String serviceCategoryId;
-    @ZfireField(tbName = "b",hide = true)
-    @ApiModelProperty(value = "属性名称")
-    private String categoryName;
-    @ZfireField(tbName = "b",hide = true)
-    @ApiModelProperty(value = "二级")
-    private String mainId;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "大类")
-    private String mainName;
-    @ZfireField(tbName = "b",hide = true)
-    @ApiModelProperty(value = "一级")
-    private String smallId;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "小类")
-    private String smallName;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "金额")
-    private BigDecimal payAmount;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "属性名称")
-    private String itemName;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "单位")
-    private String unit;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "数量")
-    private Integer num;
-    @ZfireField(tbName = "b",hide = true)
-    @ApiModelProperty(value = "型号id")
-    private String specId;
-    @ZfireField(tbName = "b")
-    @ApiModelProperty(value = "型号")
-    private String specName;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "客户名称")
-    private String userName;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "客户电话")
-    private String userPhone;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "用户地址")
-    private String userAddress;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "销售类型")
-    private SaleTypeEnum saleType;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "师傅报完工时间")
-    private Date overTime;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "备注")
-    private String remark;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "创建人")
-    @TableField(fill = FieldFill.INSERT)
-    private String createBy;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "创建时间")
-    @TableField(fill = FieldFill.INSERT)
-    private Date createTime;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "更新人")
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private String updateBy;
-
-    @ZfireField(tbName = "a")
-    @ApiModelProperty(value = "更新时间")
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Date updateTime;
-
-
-}

+ 0 - 1
mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/CustomGoodsMapper.java

@@ -3,7 +3,6 @@ package com.gree.mall.manager.commonmapper;
 import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.gree.mall.manager.bean.goods.GoodsPackageList;
 import com.gree.mall.manager.bean.goods.GoodsSpecBean;
 import com.gree.mall.manager.bean.goods.GoodsTypeCount;
 import com.gree.mall.manager.plus.entity.Goods;

+ 0 - 3
mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/JxMapper.java

@@ -8,7 +8,6 @@ import com.gree.mall.manager.bean.goods.GoodsSaleLedgerVO;
 import com.gree.mall.manager.bean.goods.GoodsStockVO;
 import com.gree.mall.manager.bean.trade.GoodsCategoryItemVO;
 import com.gree.mall.manager.bean.trade.GoodsCategoryOtherItemVO;
-import com.gree.mall.manager.bean.trade.OldProductManagerVO;
 import com.gree.mall.manager.zfire.bean.ZfireParamBean;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -33,6 +32,4 @@ public interface JxMapper {
     @InterceptorIgnore(tenantLine = "1", blockAttack = "1", illegalSql = "1")
     IPage<GoodsCategoryOtherItemVO> listOther(Page page,@Param("ex")  ZfireParamBean zfireParam, @Param("companyWechatIds") List<String> companyWechatIds);
 
-    @InterceptorIgnore(tenantLine = "1", blockAttack = "1", illegalSql = "1")
-    IPage<OldProductManagerVO> pageManagerV2(Page page,@Param("ex")  ZfireParamBean zfireParam, @Param("companyWechatIds")  List<String> companyWechatIds);
 }

+ 1 - 0
mall-server-api/src/main/java/com/gree/mall/manager/constant/Constant.java

@@ -69,6 +69,7 @@ public class Constant {
         public final static String GOODS_MATERIAL_PURCHASE_RET = "zfire:overseas:lock:goods:material:purchase:ret:";
         public final static String MATERIAL_WORKER_INCR = "zfire:overseas:lock:material:worker:incr";
         public final static String TRADE_RECORD_LOCK = "zfire:overseas:lock:trade:record:";
+        public final static String LOCK_ORDER_OFFLINE = "zfire:overseas:lock:order:offline:";
         //订单号每日流水
         public final static String ORDER_NUM = "zfire:overseas:orderNo:";
 

+ 32 - 0
mall-server-api/src/main/java/com/gree/mall/manager/controller/common/OrderPickTimeConfigController.java

@@ -0,0 +1,32 @@
+package com.gree.mall.manager.controller.common;
+
+import com.gree.mall.manager.helper.ResponseHelper;
+import com.gree.mall.manager.logic.common.OrderPickTimeConfigLogic;
+import com.gree.mall.manager.plus.entity.OrderPickTimeConfig;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Slf4j
+@RestController
+@Api(value = "提货时间段配置API", tags ={"提货时间段配置API"} )
+@RequestMapping(value = "/pick/time/config", produces = "application/json; charset=utf-8")
+public class OrderPickTimeConfigController {
+
+    @Resource
+    OrderPickTimeConfigLogic orderPickTimeConfigLogic;
+
+    @PostMapping("/list")
+    @ApiParam(value ="列表")
+    public ResponseHelper<List<OrderPickTimeConfig>> list() {
+        List<OrderPickTimeConfig> list = orderPickTimeConfigLogic.list();
+        return ResponseHelper.success(list);
+    }
+
+}

+ 0 - 2
mall-server-api/src/main/java/com/gree/mall/manager/controller/goods/GoodsController.java

@@ -30,8 +30,6 @@ import java.util.Map;
 public class GoodsController {
     @Resource
     GoodsLogic goodsLogic;
-//    @Autowired
-//    GongdanLogic gongdanLogic;
 
 
     @GetMapping("/count")

+ 0 - 2
mall-server-api/src/main/java/com/gree/mall/manager/controller/order/OrderController.java

@@ -41,8 +41,6 @@ public class OrderController {
 
     @Autowired
     OrderLogic orderLogic;
-//    @Autowired
-//    GongdanLogic gongdanLogic;
     @Autowired
     RedisLockRegistry redisLockRegistry;
 

+ 19 - 1
mall-server-api/src/main/java/com/gree/mall/manager/controller/order/OrderOfflineController.java

@@ -7,6 +7,7 @@ import com.gree.mall.manager.annotation.ZfireList;
 import com.gree.mall.manager.bean.PayDetail;
 import com.gree.mall.manager.bean.listvo.OrderInfoVO;
 import com.gree.mall.manager.bean.order.*;
+import com.gree.mall.manager.constant.Constant;
 import com.gree.mall.manager.enums.ExamineStatusEnum;
 import com.gree.mall.manager.exception.RemoteServiceException;
 import com.gree.mall.manager.helper.ResponseHelper;
@@ -19,11 +20,15 @@ import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.integration.redis.util.RedisLockRegistry;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.locks.Lock;
 
 
 @Slf4j
@@ -34,6 +39,8 @@ public class OrderOfflineController {
 
     @Autowired
     OrderOfflineLogic orderOfflineLogic;
+    @Resource
+    RedisLockRegistry redisLockRegistry;
 
     @ZfireList
     @PostMapping("/list")
@@ -85,7 +92,18 @@ public class OrderOfflineController {
             HttpServletRequest request
     ) throws Exception {
         String ip = IpUtil.getIpAddr(request);
-        PayDetail payDetail = orderOfflineLogic.examine(orderId, examineStatus,examineRemark, ip);
+        PayDetail payDetail = null;
+        Lock obtain = redisLockRegistry.obtain(Constant.RedisPrefix.LOCK_ORDER_OFFLINE + orderId);
+        try {
+            if (obtain.tryLock(5, TimeUnit.SECONDS)) {
+                payDetail = orderOfflineLogic.examine(orderId, examineStatus,examineRemark, ip);
+            }
+        } catch(Exception e) {
+            log.error("【商品采购入库修改处理】失败", e);
+            throw e;
+        } finally {
+            obtain.unlock();
+        }
         return ResponseHelper.success(payDetail);
     }
 

+ 0 - 101
mall-server-api/src/main/java/com/gree/mall/manager/controller/trade/OldProductManagerController.java

@@ -1,101 +0,0 @@
-package com.gree.mall.manager.controller.trade;
-
-import cn.hutool.core.lang.TypeReference;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.gree.mall.manager.annotation.ZfireList;
-import com.gree.mall.manager.bean.trade.OldProductManagerDetail;
-import com.gree.mall.manager.bean.order.OldProductManagerAdd;
-import com.gree.mall.manager.bean.trade.OldProductManagerVO;
-import com.gree.mall.manager.helper.ResponseHelper;
-import com.gree.mall.manager.logic.trade.OldProdctManagerLogic;
-import com.gree.mall.manager.zfire.bean.ZfireParamBean;
-import com.gree.mall.manager.zfire.util.FieldUtils;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.util.List;
-
-@Slf4j
-@RestController
-@Api(value = "旧机管理API", tags = {"旧机管理API"})
-@RequestMapping(value = "/oldManager", produces = "application/json; charset=utf-8")
-public class OldProductManagerController {
-
-    @Autowired
-    OldProdctManagerLogic oldProdctManagerLogic;
-
-
-
-
-    @ZfireList
-    @PostMapping("/list/page")
-    @ApiOperation(value = "旧机管理列表")
-    public ResponseHelper<IPage<OldProductManagerVO>> pageV2(
-            @RequestBody ZfireParamBean zfireParamBean
-    ) {
-        IPage<OldProductManagerVO> page = oldProdctManagerLogic.pageV2(zfireParamBean);
-        return ResponseHelper.success(page, new TypeReference<OldProductManagerVO>() {});
-    }
-
-    @PostMapping("/pageExport")
-    @ApiOperation(value = "旧机管理列表导出")
-    public void listExport(@RequestBody ZfireParamBean zfireParamBean, HttpServletRequest request, HttpServletResponse response) throws Exception {
-        //1.组装查询条件
-        ZfireParamBean zfireParam = FieldUtils.supplyParam(zfireParamBean);
-        //2.查询要导出的内容
-        IPage<OldProductManagerVO> page = oldProdctManagerLogic.pageV2(zfireParamBean);
-        //3.导出
-        FieldUtils.exportData(page.getRecords(), zfireParam.getExportFields(), request, response);
-    }
-
-    @PostMapping("/add")
-    @ApiOperation(value = "旧机管理新增")
-    public ResponseHelper addItem(
-            @ApiParam(value = "object",required = true) @RequestBody OldProductManagerAdd oldProductManagerAdd, HttpServletRequest request) {
-        oldProdctManagerLogic.addItem(oldProductManagerAdd);
-        return ResponseHelper.success();
-    }
-
-    @PostMapping("/update")
-    @ApiOperation(value = "修改旧机管理")
-    public ResponseHelper update(
-            @ApiParam(value = "object",required = true) @RequestBody OldProductManagerAdd oldProductManagerAdd, HttpServletRequest request
-    ) {
-        oldProdctManagerLogic.update(oldProductManagerAdd,request);
-        return ResponseHelper.success();
-    }
-
-    @PostMapping("/del")
-    @ApiOperation(value = "删除")
-    public ResponseHelper del(
-            @ApiParam(value = "id",required = true) @RequestParam String oldManagerId
-    ) {
-        oldProdctManagerLogic.del(oldManagerId);
-        return ResponseHelper.success();
-    }
-
-    @PostMapping("/out")
-    @ApiOperation(value = "出库")
-    public ResponseHelper out(
-            @ApiParam(value = "id",required = true) @RequestParam List<String> oldManagerId
-    ) {
-        oldProdctManagerLogic.out(oldManagerId);
-        return ResponseHelper.success();
-    }
-
-    @PostMapping("/detail")
-    @ApiOperation(value = "详情")
-    public ResponseHelper detail(
-            @ApiParam(value = "id",required = true) @RequestParam String oldManagerId
-    ) {
-        OldProductManagerDetail oldProductManagerDetail = oldProdctManagerLogic.detail(oldManagerId);
-        return ResponseHelper.success(oldProductManagerDetail);
-    }
-
-}

+ 0 - 578
mall-server-api/src/main/java/com/gree/mall/manager/logic/common/GongdanLogic.java

@@ -1,578 +0,0 @@
-//package com.gree.mall.manager.logic.common;
-//
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-//import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-//import com.gree.mall.manager.bean.order.OrderDetailBean;
-//import com.gree.mall.manager.bean.order.WorkerOrderInfo;
-//import com.gree.mall.manager.commonmapper.CustomGoodsMapper;
-//import com.gree.mall.manager.constant.Constant;
-//import com.gree.mall.manager.enums.WorkOrderTypeEnum;
-//import com.gree.mall.manager.exception.RemoteServiceException;
-//import com.gree.mall.manager.plus.entity.GoodsCategory;
-//import com.gree.mall.manager.plus.entity.OrderDetail;
-//import com.gree.mall.manager.plus.entity.OrderInfo;
-//import com.gree.mall.manager.plus.entity.OrderRequest;
-//import com.gree.mall.manager.plus.service.GoodsCategoryService;
-//import com.gree.mall.manager.plus.service.OrderDetailService;
-//import com.gree.mall.manager.plus.service.OrderInfoService;
-//import com.gree.mall.manager.plus.service.OrderRequestService;
-//import com.gree.mall.manager.utils.AESUtils;
-//import com.gree.mall.manager.utils.HttpUtils;
-//import com.gree.mall.manager.utils.RedisUtil;
-//import com.gree.mall.manager.utils.refund.Base64Util;
-//import lombok.extern.slf4j.Slf4j;
-//import org.apache.commons.lang3.StringUtils;
-//import org.junit.Test;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.scheduling.annotation.Async;
-//import org.springframework.stereotype.Service;
-//
-//import java.util.*;
-//import java.util.stream.Collectors;
-//
-///**
-// * 对接工单系统
-// */
-//@Slf4j
-//@Service
-//public class GongdanLogic {
-//
-//    @Value("${gongdan.token.get.url}")
-//    private String getTokenUrl;
-//    @Value("${gongdan.install.create.url}")
-//    private String createInstallUrl;
-//    @Value("${gongdan.repair.create.url}")
-//    private String createRepairUrl;
-//    @Value("${gongdan.install.detail.url}")
-//    private String detailInstallUrl;
-//    @Value("${gongdan.repair.detail.url}")
-//    private String detailRepairUrl;
-//    @Value("${gongdan.marketing.url}")
-//    private String marketingUrl;
-//    @Value("${gongdan.smalltype.url}")
-//    private String smallTypeUrl;
-//    @Value("${gongdan.client_name}")
-//    private String clientName;
-//    @Value("${gongdan.password}")
-//    private String password;
-//    @Value("${gongdan.key}")
-//    private String key;
-//    @Value("${spring.profiles.active}")
-//    private String profiles;
-//
-//    @Autowired
-//    OrderInfoService orderInfoService;
-//    @Autowired
-//    OrderDetailService orderDetailService;
-//    @Autowired
-//    OrderRequestService orderRequestService;
-//    @Autowired
-//    CustomGoodsMapper customGoodsMapper;
-//    @Autowired
-//    GoodsCategoryService goodsCategoryService;
-//
-//    @Autowired
-//    RedisUtil redisUtil;
-//
-//    /**
-//     * 获取工单token
-//     * @return
-//     * @throws RemoteServiceException
-//     */
-//    public String getGongdanToken() throws Exception {
-//        redisUtil.del(Constant.RedisPrefix.TOKEN_GONGDAN);
-//        if(redisUtil.hasKey(Constant.RedisPrefix.TOKEN_GONGDAN)){
-//            String token = (String)redisUtil.get(Constant.RedisPrefix.TOKEN_GONGDAN);
-//            log.info("【获取工单token】:{}",token);
-//            return (String)redisUtil.get(Constant.RedisPrefix.TOKEN_GONGDAN);
-//        }
-//        Map<String,Object> dataContents = new HashMap<>();
-//        dataContents.put("password",password);
-//        //请求php服务
-//        JSONObject jsonObject = this.doPhpSevice(dataContents,null, getTokenUrl);
-//        JSONObject data = (JSONObject) jsonObject.get("data");
-//        long time = new Date().getTime() / 1000;
-//        Integer exp = (Integer) data.get("exp");
-//        String token = (String)data.get("token");
-//        String prefix = (String)data.get("prefix");
-//        redisUtil.set(Constant.RedisPrefix.TOKEN_GONGDAN,prefix+token,exp - time - 100);
-//
-//        return token;
-//    }
-//
-//    /**
-//     * 获取小类
-//     */
-//    public List getSmallType(String mainNumber,String categoryId) throws Exception {
-//        GoodsCategory goodsCategory = goodsCategoryService.getById(categoryId);
-//
-//        Map<String, Object> map = new HashMap<>();
-//        map.put("main_id", mainNumber);
-//        map.put("pageNumber",1);
-//        map.put("pageSize",100);
-//        if(StringUtils.equals(goodsCategory.getWorkOrderType(),WorkOrderTypeEnum.REPAIR.toString())){
-//            map.put("worker_type","2");
-//        }else{
-//            map.put("worker_type","1");
-//        }
-//        Map<String, String> header = new HashMap<>();
-//        header.put("Authorization", this.getGongdanToken());
-//        JSONObject jsonObject = this.doPhpSevice(map, header, smallTypeUrl);
-//        JSONObject data = (JSONObject)jsonObject.get("data");
-//        return (List<Map<String,Object>>)data.get("data");
-//    }
-//
-//    /**
-//     * 获取营销活动
-//     */
-//    public List<Map<String,Object>> getMarketingList(Integer type) throws Exception {
-//        try {
-//            if(!profiles.equals("prd")){
-//                return new ArrayList<>();
-//            }
-//            Map<String, Object> map = new HashMap<>();
-//            map.put("type", type);
-//            Map<String, String> header = new HashMap<>();
-//            header.put("Authorization", this.getGongdanToken());
-//            JSONObject jsonObject = this.doPhpSevice(map, header, marketingUrl);
-//            return (List<Map<String, Object>>) jsonObject.get("data");
-//        }catch(Exception e){
-//            log.error("获取工单系统营销活动失败",e);
-//            return new ArrayList<>();
-//        }
-//    }
-//
-//    /**
-//     * 创建安装工单
-//     * @param orderInfo
-//     * @param orderDetailList
-//     * @param mainNumber
-//     * @return
-//     * @throws Exception
-//     */
-//    @Async
-//    public String installOrder(OrderInfo orderInfo, List<OrderDetail> orderDetailList,String mainNumber) throws Exception {
-//        if(!orderInfo.getWorkOrder()){
-//            return null;
-//        }
-//        List<OrderDetail> orderDetail = orderDetailList.stream().filter(o -> o.getMainNumber().equals(mainNumber)).collect(Collectors.toList());
-//        if(CollectionUtils.isEmpty(orderDetail)){
-//            return null;
-//        }
-//
-//        List<Integer> marketingIds = orderDetail.stream().map(OrderDetail::getMarketingId).distinct().collect(Collectors.toList());
-//        for(Integer marketingId : marketingIds) {
-//            Map<String, Object> map = new HashMap<>();
-//            map.put("websit_number", orderInfo.getWebsitNumber());
-//            map.put("websit_worker_mobile", orderInfo.getWorkerPhone());
-//            map.put("user_name", orderInfo.getReceUserName());
-//            map.put("user_phone", orderInfo.getRecePhone());
-//            map.put("user_phone2", orderInfo.getPhone());
-//            map.put("sales_order_no", orderInfo.getOrderId());
-//            if (orderInfo.getExchangeOrder()) {
-//                map.put("sales_type_id", 10);
-//            }
-//            if (orderInfo.getPayTime() != null) {
-//                map.put("buy_datetime", orderInfo.getPayTime().getTime() / 1000);
-//            }
-//            map.put("province", orderInfo.getProvince());
-//            map.put("city", orderInfo.getCity());
-//            map.put("area", orderInfo.getArea());
-//            map.put("street", orderInfo.getStreet());
-//            map.put("address", orderInfo.getReceAddress()+orderInfo.getHouseNo());
-//            map.put("request_no", IdWorker.getIdStr());
-//            map.put("dispatch_type",orderInfo.getDispatchType());
-//            String remark = "";
-//            if(StringUtils.isNotBlank(orderInfo.getWorkerPhone()) && orderInfo.getCompanyWechatId().equals(Constant.GD_COMPANY_WECHAT_ID)){
-//                remark += "师傅名称:"+orderInfo.getWorkerName() + "(" + orderInfo.getWorkerPhone() + ")";
-//            }
-//            if(StringUtils.isNotBlank(orderInfo.getBuyerMsg())){
-//                remark += ",买家留言:"+orderInfo.getBuyerMsg();
-//            }
-//            if(StringUtils.isNotBlank(orderInfo.getRemark())){
-//                remark +=",商家备注:"+orderInfo.getRemark();
-//            }
-//            if(StringUtils.isNotBlank(orderInfo.getDispatchType())){
-//                remark +=",工单派单方式:"+orderInfo.getDispatchType();
-//            }
-//            if (StringUtils.isNotBlank(remark)) {
-//                map.put("remark", remark);
-//            }
-//            if(marketingId != null && marketingId !=0) {
-//                map.put("marketing_id", marketingId);
-//            }
-//            List<String> orderDetailIds = new ArrayList<>();
-//            List<Map<String, Object>> productList = new ArrayList<>();
-//            for (OrderDetail detail : orderDetail) {
-//                if (!mainNumber.equals(detail.getMainNumber()) || marketingId != detail.getMarketingId()) {
-//                    continue;
-//                }
-//                Map<String, Object> pMap = new HashMap<>();
-//                pMap.put("name", detail.getGoodsName());
-//                pMap.put("main_id", detail.getMainNumber());
-//                pMap.put("small_id",StringUtils.isBlank(detail.getSmallNumber())?"0":detail.getSmallNumber());
-//                pMap.put("number", detail.getNum() - detail.getRefundNum());
-//                pMap.put("price", detail.getPayAmount().subtract(detail.getRefundAmount()));
-//                pMap.put("pic_url",detail.getImgUrl());
-//                productList.add(pMap);
-//
-//                orderDetailIds.add(detail.getOrderDetailId());
-//            }
-//            if (productList.size() == 0) {
-//                return null;
-//            }
-//            map.put("product_list", productList);
-//            if(orderInfo.getCompanyWechatId().equals("1")) {
-//                map.put("order_source", 7);//3=分销商城
-//            }else{
-//                map.put("order_source",8);
-//            }
-//            Map<String, String> header = new HashMap<>();
-//            header.put("Authorization", this.getGongdanToken());
-//
-//            JSONObject jsonObject = this.doPhpSevice(map, header, createInstallUrl);
-//
-//            JSONObject data = (JSONObject) jsonObject.get("data");
-//            Integer workerOrderId = (Integer)data.get("id");
-//            String workerOrderNo = (String) data.get("worker_order_no");
-//
-//            OrderRequest orderRequest = new OrderRequest();
-//            orderRequest.setCreateTime(new Date());
-//            orderRequest.setMainNumber(mainNumber);
-//            orderRequest.setOrderId(orderInfo.getOrderId());
-//            orderRequest.setOrderType("INSTALL");
-//            orderRequest.setUserId(orderInfo.getUserId());
-//            orderRequest.setWorkerOrderId(workerOrderId);
-//            orderRequest.setWorkerOrderNo(workerOrderNo);
-//            orderRequest.insert();
-//
-//            //记录工单详情的工单号
-//            orderDetailService.lambdaUpdate().set(OrderDetail::getWorkerOrderNo,workerOrderNo).in(OrderDetail::getOrderDetailId,orderDetailIds).update();
-//
-//        }
-//
-//        return "";
-//    }
-//
-//    /**
-//     * 创建维修工单
-//     * @param orderInfo
-//     * @param detail
-//     * @throws Exception
-//     */
-//    @Async
-//    public void repairOrder(OrderInfo orderInfo, OrderDetail detail) throws Exception {
-//        if(!orderInfo.getWorkOrder()){
-//            return ;
-//        }
-//        //检查是否都已退款
-//        if(detail.getNum() <= detail.getRefundNum()){
-//            return;
-//        }
-//        //查询商品分类
-//        GoodsCategory goodsCategory = customGoodsMapper.queryGoodsCategoryByGoodsId(detail.getGoodsId());
-//        String skillTagId = "1";
-//        if(StringUtils.equals(goodsCategory.getName(),"家用中央空调清洗")){
-//            skillTagId = "2";
-//        }
-//
-//        Map<String,Object> map = new HashMap<>();
-//        map.put("websit_number",orderInfo.getWebsitNumber());
-//        map.put("websit_worker_mobile",orderInfo.getWorkerPhone());
-//        map.put("user_name",orderInfo.getReceUserName());
-//        map.put("user_phone",orderInfo.getRecePhone());
-//        map.put("user_phone2", orderInfo.getPhone());
-//        map.put("sales_order_no",orderInfo.getOrderId());
-//        map.put("buy_datetime",orderInfo.getPayTime().getTime()/1000);
-//        map.put("province",orderInfo.getProvince());
-//        map.put("city",orderInfo.getCity());
-//        map.put("area",orderInfo.getArea());
-//        map.put("street",orderInfo.getStreet());
-//        map.put("address",orderInfo.getReceAddress()+orderInfo.getHouseNo());
-//        map.put("request_no",IdWorker.getIdStr());
-//
-//        List<Map<String,Object>> productList = new ArrayList<>();
-//        Map<String, Object> pMap = new HashMap<>();
-//        pMap.put("name",detail.getGoodsName());
-//        pMap.put("main_id",detail.getMainNumber());
-//        pMap.put("small_id",StringUtils.isBlank(detail.getSmallNumber())?"0":detail.getSmallNumber());
-//        pMap.put("number",detail.getNum() - detail.getRefundNum());
-//        pMap.put("price",detail.getPayAmount().subtract(detail.getRefundAmount()));
-//        pMap.put("pic_url",detail.getImgUrl());
-//
-//        String remark = "商品名称:"+detail.getGoodsName()+",规格:"+detail.getGoodsSpecValue()+",数量:"+pMap.get("number")+",总金额:"+pMap.get("price");
-//        remark += ",买家留言:"+orderInfo.getBuyerMsg()+",商家备注:"+orderInfo.getRemark();
-//        pMap.put("description",remark);
-//        productList.add(pMap);
-//        map.put("product_list",productList);
-//        map.put("remark",remark);
-//        map.put("marketing_id",detail.getMarketingId());
-//        if(orderInfo.getCompanyWechatId().equals("1")) {
-//            map.put("order_source", 7);//3=分销商城
-//        }else{
-//            map.put("order_source",8);
-//        }
-//        map.put("skill_tag_id",skillTagId);
-//        //map.put("sale_type","1");
-//        map.put("type_id",goodsCategory.getDemandTypeId());
-//        map.put("small_type_id",goodsCategory.getDemandSmallTypeId());
-//        Map<String,String> header = new HashMap<>();
-//        header.put("Authorization",this.getGongdanToken());
-//
-//        JSONObject jsonObject  = this.doPhpSevice(map, header, createRepairUrl);
-//
-//        JSONObject data = (JSONObject)jsonObject.get("data");
-//        Integer workerOrderId = (Integer)data.get("id");
-//        String workerOrderNo = (String)data.get("worker_order_no");
-//
-//        OrderRequest orderRequest = new OrderRequest();
-//        orderRequest.setCreateTime(new Date());
-//        orderRequest.setMainNumber(detail.getMainNumber());
-//        orderRequest.setOrderId(orderInfo.getOrderId());
-//        orderRequest.setOrderType("REPAIR");
-//        orderRequest.setUserId(orderInfo.getUserId());
-//        orderRequest.setWorkerOrderId(workerOrderId);
-//        orderRequest.setWorkerOrderNo(workerOrderNo);
-//        orderRequest.insert();
-//
-//        detail.setWorkerOrderNo(workerOrderNo);
-//        detail.updateById();
-//    }
-//
-//
-//    /**
-//     * 安装工单列表
-//     */
-//    public List<WorkerOrderInfo> getInstallOrderList(String orderId) throws Exception {
-//
-//        List<WorkerOrderInfo> workerOrderInfos = new ArrayList<>();
-//        try{
-//            Map<String,Object> map = new HashMap<>();
-//            map.put("request_order_no",orderId);
-//            Map<String,String> header = new HashMap<>();
-//            header.put("Authorization",this.getGongdanToken());
-//            JSONObject jsonObject  = this.doPhpSevice(map, header, detailInstallUrl);
-//            JSONArray datas = (JSONArray)jsonObject.get("data");
-//            for(Object o : datas) {
-//                JSONObject data = (JSONObject)o;
-//                WorkerOrderInfo workerOrderInfo = new WorkerOrderInfo();
-//                workerOrderInfo.setWorkerOrder(data.getString("worker_order_no"));
-//                workerOrderInfo.setPgid(data.getString("pgid"));
-//                workerOrderInfo.setWorkerName(data.getString("worker_name"));
-//                workerOrderInfo.setWorkerPhone(data.getString("worker_phone"));
-//                workerOrderInfo.setInstallNumber(data.getString("install_number"));
-//                workerOrderInfo.setInstallName(data.getString("install_name"));
-//                workerOrderInfo.setOrderState(data.getString("order_state_text"));
-//                workerOrderInfo.setOrderStateInt(data.getInteger("order_state"));
-//                workerOrderInfo.setOrderReceTime(data.getString("receive_time_text"));
-//                workerOrderInfo.setFinishTime(data.getString("finish_time_text"));
-//                workerOrderInfo.setReserveTime(data.getString("reserve_datetime_text"));
-//                workerOrderInfo.setServerContent("安装服务");
-//                workerOrderInfo.setBracket(data.getString("bracket"));
-//                workerOrderInfo.setPipe(data.getString("pipe"));
-//                workerOrderInfo.setSwitchFlag(data.getString("switch_flag"));
-//                workerOrderInfo.setHighAltitude(data.getString("high_altitude"));
-//                workerOrderInfo.setHole(data.getString("hole"));
-//                workerOrderInfo.setRemark(data.getString("remark"));
-//                //辅助人员
-//                List<Map<String, String>> assist = (List<Map<String, String>>) data.get("assist_data_list");
-//                if(CollectionUtils.isNotEmpty(assist)){
-//                    workerOrderInfo.setAssistName(assist.get(0).get("name"));
-//                }
-//                //操作类型
-//                List<WorkerOrderInfo.Fkxx> fkxxs = new ArrayList<>();
-//                List<Map<String, String>> operators = (List<Map<String, String>>) data.get("order_install_operating_log");
-//                if (CollectionUtils.isNotEmpty(operators)) {
-//                    for (Map<String, String> operator : operators) {
-//                        WorkerOrderInfo.Fkxx fkxx = new WorkerOrderInfo.Fkxx();
-//                        fkxx.setOperatorType(operator.get("type"));
-//                        fkxx.setOperatorContent(operator.get("content"));
-//                        fkxx.setLastOperatorTime(operator.get("updatetime"));
-//                        fkxx.setOperatorName(operator.get("operator"));
-//                        fkxx.setOperatorWebsit(operator.get("operate_websit"));
-//                        fkxx.setResult(operator.get("feedback"));
-//                        fkxxs.add(fkxx);
-//                    }
-//                    workerOrderInfo.setFkxxs(fkxxs);
-//                }
-//                List<Map<String, Object>> stocks = (List<Map<String, Object>>) data.get("stock_order");
-//                if (CollectionUtils.isNotEmpty(stocks)) {
-//                    //辅材信息
-//                    List<WorkerOrderInfo.Fcxx> fcxxs = new ArrayList<>();
-//                    for (Map<String, Object> stock : stocks) {
-//                        WorkerOrderInfo.Fcxx fcxx = new WorkerOrderInfo.Fcxx();
-//                        fcxx.setId((int) stock.get("id"));
-//                        fcxx.setOrderNo((String) stock.get("docnum"));
-//                        fcxx.setOperatorWebsit((String) stock.get("websit_name"));
-//                        fcxx.setOperatorName((String) stock.get("worker_name"));
-//                        fcxx.setPayStatus((String) stock.get("pay_status_text"));
-//                        fcxx.setPayTime((String) stock.get("paytime_text"));
-//                        fcxx.setAmount((String) stock.get("total_amount"));
-//                        fcxx.setRemark((String) stock.get("remark"));
-//
-//                        List<Map<String, Object>> details = (List<Map<String, Object>>) stock.get("stock_order_goods");
-//                        fcxx.setDetails(details);
-//                        fcxxs.add(fcxx);
-//                    }
-//                    workerOrderInfo.setFcxxs(fcxxs);
-//                }
-//
-//                workerOrderInfos.add(workerOrderInfo);
-//            }
-//        }catch(Exception e){
-//            log.error("获取安装工单列表失败"+e.getMessage());
-//        }
-//        return workerOrderInfos;
-//
-//    }
-//
-//
-//    /**
-//     * 维修工单列表
-//     */
-//    public List<WorkerOrderInfo> getRepairOrderList(String orderId) throws Exception {
-//
-//        List<WorkerOrderInfo> workerOrderInfos = new ArrayList<>();
-//        try {
-//            Map<String, Object> map = new HashMap<>();
-//            map.put("request_order_no", orderId);
-//            Map<String, String> header = new HashMap<>();
-//            header.put("Authorization", this.getGongdanToken());
-//            JSONObject jsonObject = this.doPhpSevice(map, header, detailRepairUrl);
-//            JSONArray datas = (JSONArray) jsonObject.get("data");
-//            for (Object o : datas) {
-//                JSONObject data = (JSONObject) o;
-//                WorkerOrderInfo workerOrderInfo = new WorkerOrderInfo();
-//                workerOrderInfo.setWorkerOrder(data.getString("worker_order_no"));
-//                workerOrderInfo.setPgid(data.getString("pgid"));
-//                workerOrderInfo.setWorkerName(data.getString("woname"));
-//                workerOrderInfo.setWorkerPhone(data.getString("wophone"));
-//                workerOrderInfo.setInstallNumber(data.getString("after_number"));
-//                workerOrderInfo.setInstallName(data.getString("after_name"));
-//                workerOrderInfo.setOrderState(data.getString("order_state_text"));
-//                workerOrderInfo.setOrderStateInt(data.getInteger("order_state"));
-//                workerOrderInfo.setOrderReceTime(data.getString("receive_time_text"));
-//                workerOrderInfo.setFinishTime(data.getString("finish_time_text"));
-//                workerOrderInfo.setServerContent("清洗服务");
-//                workerOrderInfo.setBracket(data.getString("bracket"));
-//                workerOrderInfo.setPipe(data.getString("pipe"));
-//                workerOrderInfo.setSwitchFlag(data.getString("switch_flag"));
-//                workerOrderInfo.setHighAltitude(data.getString("high_altitude"));
-//                workerOrderInfo.setHole(data.getString("hole"));
-//                workerOrderInfo.setRemark(data.getString("remark"));
-//                //操作类型
-//                List<WorkerOrderInfo.Fkxx> fkxxs = new ArrayList<>();
-//                List<Map<String, String>> operators = (List<Map<String, String>>) data.get("order_install_operating_log");
-//                if (CollectionUtils.isNotEmpty(operators)) {
-//                    for (Map<String, String> operator : operators) {
-//                        WorkerOrderInfo.Fkxx fkxx = new WorkerOrderInfo.Fkxx();
-//                        fkxx.setOperatorType(operator.get("type"));
-//                        fkxx.setOperatorContent(operator.get("content"));
-//                        fkxx.setLastOperatorTime(operator.get("updatetime"));
-//                        fkxx.setOperatorName(operator.get("operator"));
-//                        fkxx.setOperatorWebsit(operator.get("operate_websit"));
-//                        fkxx.setResult(operator.get("feedback"));
-//                        fkxxs.add(fkxx);
-//                    }
-//                    workerOrderInfo.setFkxxs(fkxxs);
-//                }
-//                List<Map<String, Object>> stocks = (List<Map<String, Object>>) data.get("stock_order");
-//                if (CollectionUtils.isNotEmpty(stocks)) {
-//                    //辅材信息
-//                    List<WorkerOrderInfo.Fcxx> fcxxs = new ArrayList<>();
-//                    for (Map<String, Object> stock : stocks) {
-//                        WorkerOrderInfo.Fcxx fcxx = new WorkerOrderInfo.Fcxx();
-//                        fcxx.setId((int) stock.get("id"));
-//                        fcxx.setOrderNo((String) stock.get("docnum"));
-//                        fcxx.setOperatorWebsit((String) stock.get("websit_name"));
-//                        fcxx.setOperatorName((String) stock.get("worker_name"));
-//                        fcxx.setPayStatus((String) stock.get("pay_status_text"));
-//                        fcxx.setPayTime((String) stock.get("paytime_text"));
-//                        fcxx.setAmount((String) stock.get("total_amount"));
-//                        fcxx.setRemark((String) stock.get("remark"));
-//
-//                        List<Map<String, Object>> details = (List<Map<String, Object>>) stock.get("stock_order_goods");
-//                        fcxx.setDetails(details);
-//                        fcxxs.add(fcxx);
-//                    }
-//                    workerOrderInfo.setFcxxs(fcxxs);
-//                }
-//
-//                workerOrderInfos.add(workerOrderInfo);
-//            }
-//        }catch(Exception e){
-//            log.error("获取维修工单列表失败"+e.getMessage());
-//        }
-//        return workerOrderInfos;
-//
-//    }
-//
-//
-//    private JSONObject doPhpSevice(Map<String,Object> dataContents,Map<String,String> header,String url) throws Exception {
-//        return this.doPhpSevice(dataContents,header,url,"POST");
-//    }
-//
-//    /**
-//     * 通用请求
-//     * @param dataContents
-//     * @param header
-//     * @param url
-//     * @return
-//     * @throws Exception
-//     */
-//    private JSONObject doPhpSevice(Map<String,Object> dataContents,Map<String,String> header,String url,String method) throws Exception {
-//        String ivValue = get16Random();
-//        String iv = Base64Util.encode(ivValue.getBytes());
-//
-//        //dataContents.put("password",password);
-//        String dataJson = JSONObject.toJSONString(dataContents);
-//        log.info("【请求工单服务】request...:dataContents:{},iv:{},client_name:{}",dataJson,ivValue,clientName);
-//        byte[] bytes = AESUtils.encryptAES(dataJson,ivValue,key).getBytes();
-//        String encode = Base64Util.encode(bytes);
-//
-//        Map<String,String> map = new HashMap<>();
-//        map.put("client_name",clientName);
-//        map.put("data_contents",encode);
-//        map.put("iv",iv);
-//
-//        log.info("【请求工单服务,加密】request...:{}",JSONObject.toJSONString(map));
-//        String s = "";
-//        if(StringUtils.equals(method,"POST")) {
-//            s = HttpUtils.requestPostForm(url, map, header);
-//        }else{
-//            s = HttpUtils.requestGet(url, map, header);
-//        }
-//        log.info("【请求工单服务】response...:{}",s);
-//        JSONObject jsonObject = JSONObject.parseObject(s);
-//        if(jsonObject == null || !jsonObject.get("code").toString().equals("1")){
-//            throw new RemoteServiceException("对接工单系统失败,请联系相关开发人员");
-//        }
-//        return jsonObject;
-//    }
-//
-//
-//
-//
-//    public static String get16Random(){
-//        //随机生成一位整数
-//        int random = (int) (Math.random()*9+1);
-//        String valueOf = String.valueOf(random);
-//        //生成uuid的hashCode值
-//        int hashCode = UUID.randomUUID().toString().hashCode();
-//        //可能为负数
-//        if(hashCode<0){
-//            hashCode = -hashCode;
-//        }
-//        String value = valueOf + String.format("%015d", hashCode);
-//        return value;
-//    }
-//
-//
-//
-//
-//
-//
-//}

+ 31 - 0
mall-server-api/src/main/java/com/gree/mall/manager/logic/common/OrderPickTimeConfigLogic.java

@@ -0,0 +1,31 @@
+package com.gree.mall.manager.logic.common;
+
+import cn.hutool.core.collection.CollectionUtil;
+import com.gree.mall.manager.bean.admin.AdminUserCom;
+import com.gree.mall.manager.plus.entity.OrderPickTimeConfig;
+import com.gree.mall.manager.plus.service.OrderPickTimeConfigService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@RequiredArgsConstructor
+@Service
+@Slf4j
+public class OrderPickTimeConfigLogic {
+
+    private final CommonLogic commonLogic;
+    private final OrderPickTimeConfigService orderPickTimeConfigService;
+
+
+    public List<OrderPickTimeConfig> list() {
+        AdminUserCom adminUser = commonLogic.getAdminUser();
+        return orderPickTimeConfigService.lambdaQuery()
+                .eq(StringUtils.isNotBlank(adminUser.getCompanyWechatId()), OrderPickTimeConfig::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .in(StringUtils.isBlank(adminUser.getCompanyWechatId())
+                        && CollectionUtil.isNotEmpty(adminUser.getCompanyWechatIds()), OrderPickTimeConfig::getCompanyWechatId, adminUser.getCompanyWechatIds())
+                .list();
+    }
+}

+ 0 - 235
mall-server-api/src/main/java/com/gree/mall/manager/logic/common/WorkWechatLogic.java

@@ -1,235 +0,0 @@
-//package com.gree.mall.manager.logic.common;
-//
-//import org.apache.commons.lang3.StringUtils;
-//import com.gree.mall.manager.config.wx.WxConfiguration;
-//import com.gree.mall.manager.plus.entity.AdminCompanyWechat;
-//import lombok.extern.slf4j.Slf4j;
-//import me.chanjar.weixin.common.error.WxErrorException;
-//import me.chanjar.weixin.cp.api.WxCpService;
-//import me.chanjar.weixin.cp.bean.Gender;
-//import me.chanjar.weixin.cp.bean.WxCpDepart;
-//import me.chanjar.weixin.cp.bean.WxCpMaJsCode2SessionResult;
-//import me.chanjar.weixin.cp.bean.WxCpUser;
-//import me.chanjar.weixin.cp.bean.external.WxCpUserExternalTagGroupList;
-//import me.chanjar.weixin.cp.bean.external.contact.WxCpExternalContactBatchInfo;
-//import me.chanjar.weixin.cp.bean.external.contact.WxCpExternalContactInfo;
-//import org.springframework.stereotype.Component;
-//
-//import java.util.List;
-//import java.util.Map;
-//
-///**
-// *  企业微信api
-// *  2021-09-17
-// *  lijh
-// */
-//@Component
-//@Slf4j
-//public class WorkWechatLogic {
-//
-//
-//    /**
-//     * 小程序应用
-//     */
-//    public WxCpService miniApp(AdminCompanyWechat adminCompanyWechat){
-//        WxCpService wxCpService = WxConfiguration.cpServices.get(adminCompanyWechat.getCompanyWechatId()).get(adminCompanyWechat.getAgentId1());
-//        return wxCpService;
-//    }
-//
-//
-//    /**
-//     * 客户联系密钥
-//     */
-//    public WxCpService miniTagApp(AdminCompanyWechat adminCompanyWechat){
-//        WxCpService cpService = WxConfiguration.cpServices.get(adminCompanyWechat.getCompanyWechatId()).get(adminCompanyWechat.getAgentId2());
-//        return cpService;
-//    }
-//
-//    /**
-//     * 通讯录同步
-//     */
-//    public WxCpService tongxunluApp(AdminCompanyWechat adminCompanyWechat){
-//        WxCpService cpService = WxConfiguration.cpServices.get(adminCompanyWechat.getCompanyWechatId()).get(adminCompanyWechat.getAgentId3());
-//        return cpService;
-//    }
-//
-//    /**
-//     * 验证登录身份
-//     * @param code
-//     * @return
-//     * @throws WxErrorException
-//     */
-//    public WxCpMaJsCode2SessionResult jsCode2Session(String code,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        WxCpMaJsCode2SessionResult wxCpMaJsCode2SessionResult = this.miniApp(adminCompanyWechat).jsCode2Session(code);
-//        return wxCpMaJsCode2SessionResult;
-//    }
-//
-//    /**
-//     * 获取企业微信成员
-//     * @param userId
-//     * @return
-//     * @throws WxErrorException
-//     */
-//    public WxCpUser getUser(String userId,AdminCompanyWechat adminCompanyWechat) {
-//        try {
-//            WxCpUser wxCpUser = this.miniApp(adminCompanyWechat).getUserService().getById(userId);
-//            return wxCpUser;
-//        }catch(Exception e){
-//            log.error("获取企业微信成员失败",e);
-//            return null;
-//        }
-//    }
-//
-//
-//    /**
-//     * 获取企业标签
-//     * @return
-//     * @throws WxErrorException
-//     */
-//    public  List<WxCpUserExternalTagGroupList.TagGroup> getTag(AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        WxCpUserExternalTagGroupList corpTagList = this.miniTagApp(adminCompanyWechat).getExternalContactService().getCorpTagList(null);
-//        List<WxCpUserExternalTagGroupList.TagGroup> tagGroupList = corpTagList.getTagGroupList();
-//        return tagGroupList;
-//    }
-//
-//    /**
-//     * 获取客户列表用户id
-//     * @param workUserId
-//     * @return
-//     * @throws WxErrorException
-//     */
-//    public List<String> getExternalUserIdByWorkUserId(String workUserId,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        List<String> strings = this.miniTagApp(adminCompanyWechat).getExternalContactService().listExternalContacts(workUserId);
-//        return strings;
-//    }
-//
-//    /**
-//     * 获取客户详情
-//     */
-//    public WxCpExternalContactInfo getCustomerDetail(String externalUserId,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        WxCpExternalContactInfo contactDetail = this.miniTagApp(adminCompanyWechat).getExternalContactService().getContactDetail(externalUserId);
-//        return contactDetail;
-//    }
-//
-//    /**
-//     * 批量获取客户详情
-//     * @param workUserIds 成员ids
-//     * @param cursor 用于分页查询的游标,字符串类型,由上一次调用返回,首次调用可不填
-//     * @param limit 返回的最大记录数,整型,最大值100,默认值50,超过最大值时取最大值
-//     */
-//    public List<WxCpExternalContactBatchInfo.ExternalContactInfo> getCustomerByExternalUserId(String workUserIds, String cursor, Integer limit,AdminCompanyWechat adminCompanyWechat) {
-//        try {
-//            List<WxCpExternalContactBatchInfo.ExternalContactInfo> contactDetailBatch = this.miniTagApp(adminCompanyWechat).getExternalContactService()
-//                    .getContactDetailBatch(workUserIds, cursor, limit).getExternalContactList();
-//            return contactDetailBatch;
-//        }catch(Exception e){
-//            log.error("获取客户详情失败",e);
-//        }
-//        return null;
-//    }
-//
-//
-//    /**
-//     * 新增部门
-//     */
-//    public Long addOrganization(String name,Long parentId,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        WxCpDepart wxCpDepart = new WxCpDepart();
-//        //wxCpDepart.setId(id);
-//        wxCpDepart.setName(name);
-//        wxCpDepart.setParentId(parentId);
-//        Long aLong = this.tongxunluApp(adminCompanyWechat).getDepartmentService().create(wxCpDepart);
-//        return aLong;
-//    }
-//
-//    /**
-//     * 修改部门
-//     */
-//    public void updateOrganization(Long id,String name,Long parentId,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//
-//        WxCpDepart wxCpDepart = new WxCpDepart();
-//        wxCpDepart.setId(id);
-//        wxCpDepart.setName(name);
-//        wxCpDepart.setParentId(parentId);
-//        this.tongxunluApp(adminCompanyWechat).getDepartmentService().update(wxCpDepart);
-//
-//    }
-//
-//    /**
-//     * 删除部门
-//     */
-//    public void deleteOrganization(Long id,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        try {
-//            this.tongxunluApp(adminCompanyWechat).getDepartmentService().delete(id);
-//        }catch (Exception e){
-//            log.error("删除部门失败"+e.getMessage());
-//        }
-//    }
-//
-//
-//    /**
-//     * 新增成员
-//     */
-//    public void addWorkUser(String userId,String name,String mobile,Integer gender,String email,Long department,String position,AdminCompanyWechat adminCompanyWechat) {
-//
-//        WxCpUser wxCpUser = new WxCpUser();
-//        wxCpUser.setUserId(userId);
-//        wxCpUser.setName(name);
-//        wxCpUser.setMobile(mobile);
-//        wxCpUser.setPosition(position);
-//        wxCpUser.setDepartIds(new Long[]{department});
-//        wxCpUser.setMainDepartment(department.toString());
-//        if(gender == 0) {
-//            wxCpUser.setGender(Gender.UNDEFINED);
-//        }else if(gender == 1){
-//            wxCpUser.setGender(Gender.MALE);
-//        }else{
-//            wxCpUser.setGender(Gender.FEMALE);
-//        }
-//        if(StringUtils.isNotBlank(email)){
-//            wxCpUser.setEmail(email);
-//        }
-//        try {
-//            //this.tongxunluApp(adminCompanyWechat).getUserService().create(wxCpUser);
-//        }catch(Exception e){
-//            log.error("同步企业微信成员失败:{}",userId);
-//        }
-//    }
-//
-//    /**
-//     * 修改成员
-//     */
-//    public void updateWorkUser(String userId,String name,String mobile,Integer gender,String email,Long department,String position,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        WxCpUser wxCpUser = new WxCpUser();
-//        wxCpUser.setUserId(userId);
-//        wxCpUser.setName(name);
-//        wxCpUser.setMobile(mobile);
-//        wxCpUser.setDepartIds(new Long[]{department});
-//        wxCpUser.setMainDepartment(department.toString());
-//        wxCpUser.setPosition(position);
-//        if(gender == 0) {
-//            wxCpUser.setGender(Gender.UNDEFINED);
-//        }else if(gender == 1){
-//            wxCpUser.setGender(Gender.MALE);
-//        }else{
-//            wxCpUser.setGender(Gender.FEMALE);
-//        }
-//        if(StringUtils.isNotBlank(email)){
-//            wxCpUser.setEmail(email);
-//        }
-//        //this.tongxunluApp(adminCompanyWechat).getUserService().update(wxCpUser);
-//    }
-//
-//    /**
-//     * 删除成员
-//     */
-//    public void deleteWorkUser(String userId,AdminCompanyWechat adminCompanyWechat) throws WxErrorException {
-//        try {
-//            //this.tongxunluApp(adminCompanyWechat).getUserService().delete(userId);
-//        }catch(Exception e){
-//            log.error("删除企业微信成员失败"+e.getMessage());
-//        }
-//    }
-//
-//
-//
-//}

+ 0 - 23
mall-server-api/src/main/java/com/gree/mall/manager/logic/goods/GoodsLogic.java

@@ -55,10 +55,6 @@ public class GoodsLogic {
     @Autowired
     private CommonFileService commonFileService;
     @Autowired
-    GoodsPackagePopService goodsPackagePopService;
-    @Autowired
-    GoodsPackageUserRelaService goodsPackageUserRelaService;
-    @Autowired
     GoodsMaterialService goodsMaterialService;
     @Autowired
     UserLogic userLogic;
@@ -280,10 +276,6 @@ public class GoodsLogic {
             List<String> tagList = goodsTagRelas.stream().map(GoodsTagRela::getGoodsTagName).collect(Collectors.toList());
             goodsBean.setTagsLabel(tagList);
         }
-        if (StringUtils.equals(goodsBean.getGoodsType(), GoodsTypeEnum.PACKAGE.toString())) {
-            //套购商品--指定人员列表
-            goodsBean.setUsers(this.getPackageUseUserList(goodsBean.getGoodsId(), null));
-        }
 
         return goodsBean;
     }
@@ -615,21 +607,6 @@ public class GoodsLogic {
                 .update();
     }
 
-    /**
-     * 套购商品指定人员列表
-     */
-    public List<User> getPackageUseUserList(String goodsId, String mobile) {
-        List<GoodsPackageUserRela> list = goodsPackageUserRelaService.lambdaQuery()
-                .eq(GoodsPackageUserRela::getGoodsId, goodsId)
-                .like(StringUtils.isNotBlank(mobile), GoodsPackageUserRela::getMobile, mobile).list();
-        if (CollectionUtils.isEmpty(list)) {
-            return new ArrayList<>();
-        }
-        List<String> userIds = list.stream().map(GoodsPackageUserRela::getUserId).collect(Collectors.toList());
-        List<User> users = userLogic.getById(userIds);
-        return users;
-    }
-
 
     public List<Goods> getById(List<String> goodsIds) {
         List<Goods> goodsList = goodsService.lambdaQuery().in(Goods::getGoodsId, goodsIds).list();

+ 35 - 41
mall-server-api/src/main/java/com/gree/mall/manager/logic/goods/JxGoodsLogic.java

@@ -233,13 +233,13 @@ public class JxGoodsLogic {
 
             goodsMaterial.setCostAmount(multiply);
 
-            goodsMaterialStorageService.lambdaUpdate().eq(GoodsMaterialStorage::getGoodsMaterialId,goodsMaterial.getId())
-                    .set(GoodsMaterialStorage::getCostAmount,multiply).update();
+            goodsMaterialStorageService.lambdaUpdate().eq(GoodsMaterialStorage::getGoodsMaterialId, goodsMaterial.getId())
+                    .set(GoodsMaterialStorage::getCostAmount, multiply).update();
 
         } else {
 
 
-            Integer qty = integer- goodsPurchaseItem.getQty();
+            Integer qty = integer - goodsPurchaseItem.getQty();
 
             BigDecimal amount = goodsMaterial.getCostAmount().multiply(Convert.toBigDecimal(qty));
 
@@ -252,8 +252,8 @@ public class JxGoodsLogic {
             goodsMaterial.setCostAmount(bigDecimal);
 
 
-            goodsMaterialStorageService.lambdaUpdate().eq(GoodsMaterialStorage::getGoodsMaterialId,goodsMaterial.getId())
-                    .set(GoodsMaterialStorage::getCostAmount,bigDecimal).update();
+            goodsMaterialStorageService.lambdaUpdate().eq(GoodsMaterialStorage::getGoodsMaterialId, goodsMaterial.getId())
+                    .set(GoodsMaterialStorage::getCostAmount, bigDecimal).update();
         }
 
         goodsMaterial.updateById();
@@ -281,7 +281,7 @@ public class JxGoodsLogic {
                     item.getId().equals(goodsPurchaseItem.getGoodsMaterialId())).collect(Collectors.toList()).get(0);
 
             List<GoodsCode> goodsCodeList = goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, goodsPurchaseCode.getCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .eq(GoodsCode::getUniqueCode, IsYesNoEnum.NO.getKey())
                     .eq(GoodsCode::getGoodsMaterialId, goodsMaterial.getId())
                     .list();
@@ -314,19 +314,17 @@ public class JxGoodsLogic {
                     .setGoodsMaterialItemType(goodsPurchaseCode.getGoodsMaterialItemType());
 
 
-
             GoodsCode goodsCode = new GoodsCode();
 
-            if(!CollectionUtils.isEmpty(goodsCodeList) && goodsPurchaseCode.getUniqueCode().equals(IsYesNoEnum.NO.getKey())){
+            if (!CollectionUtils.isEmpty(goodsCodeList) && goodsPurchaseCode.getUniqueCode().equals(IsYesNoEnum.NO.getKey())) {
 
-                goodsCodeAcc.setStockQty(goodsCodeList.get(0).getStockQty()+goodsPurchaseCode.getCodeQty());
+                goodsCodeAcc.setStockQty(goodsCodeList.get(0).getStockQty() + goodsPurchaseCode.getCodeQty());
 
                 goodsCode.setGoodsCodeId(goodsCodeList.get(0).getGoodsCodeId());
-                goodsCode.setStockQty(goodsCodeList.get(0).getStockQty()+goodsPurchaseCode.getCodeQty());
+                goodsCode.setStockQty(goodsCodeList.get(0).getStockQty() + goodsPurchaseCode.getCodeQty());
             }
 
 
-
             goodsCode.setCompanyWechatId(goodsPurchase.getCompanyWechatId())
                     .setCompanyWechatName(goodsPurchase.getCompanyWechatName())
                     .setBrandId(goodsMaterial.getBrandId())
@@ -364,7 +362,7 @@ public class JxGoodsLogic {
      * 销售订单台账
      * codeList 发货条码
      */
-    public void subCodeAcc(List<OrderDetailCode> codeList, OrderInfo orderInfo,String storageId,String storageName) throws InterruptedException {
+    public void subCodeAcc(List<OrderDetailCode> codeList, OrderInfo orderInfo, String storageId, String storageName) throws InterruptedException {
         AdminUserCom adminUser = commonLogic.getAdminUser();
         List<GoodsCodeAcc> goodsCodeAccs = new ArrayList<>();
 
@@ -381,7 +379,7 @@ public class JxGoodsLogic {
                     .collect(Collectors.toList()).get(0);
 
             GoodsCode goodsCode = goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, orderDetailCode.getMaterialCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .gt(GoodsCode::getStockQty, 0).last("limit 1").one();
 
             if (goodsCode == null)
@@ -416,7 +414,7 @@ public class JxGoodsLogic {
                     .setStorageName(storage.getStorageName())
                     .setGoodsMaterialItemType(orderDetailCode.getGoodsMaterialItemType());
 
-            if (goodsPurchase != null){
+            if (goodsPurchase != null) {
                 goodsCodeAcc.setVenderId(goodsPurchase.getVenderId());
                 goodsCodeAcc.setVenderName(goodsPurchase.getVenderName());
             }
@@ -466,7 +464,7 @@ public class JxGoodsLogic {
             GoodsMaterial goodsMaterial = goodsMaterialList.stream().filter(item -> item.getId().equals(orderDetailCode.getGoodsMaterialId())).collect(Collectors.toList()).get(0);
             GoodsCode goodsCode = goodsCodeService.lambdaQuery()
                     .eq(GoodsCode::getMaterialCode, orderDetailCode.getMaterialCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
 
                     .last("limit 1").one();
 
@@ -495,7 +493,7 @@ public class JxGoodsLogic {
                     .setGoodsMaterialItemType(orderDetailCode.getGoodsMaterialItemType());
 
 
-            if (goodsPurchase != null){
+            if (goodsPurchase != null) {
                 goodsCodeAcc.setVenderId(goodsPurchase.getVenderId());
                 goodsCodeAcc.setVenderName(goodsPurchase.getVenderName());
             }
@@ -642,11 +640,11 @@ public class JxGoodsLogic {
      * num   减少数量
      * puOrderId   采购单 可以为空
      */
-    public void subMaterialStock(String goodsMaterialId, Integer num, String puOrderId,String storageId) throws InterruptedException {
+    public void subMaterialStock(String goodsMaterialId, Integer num, String puOrderId, String storageId) throws InterruptedException {
 
         Lock obtain = redisLockRegistry.obtain(Constant.RedisPrefix.LOCK_WALLET + goodsMaterialId);
 
-       // GoodsMaterial goodsMaterial = goodsMaterialService.getById(goodsMaterialId);
+        // GoodsMaterial goodsMaterial = goodsMaterialService.getById(goodsMaterialId);
 
         GoodsMaterialStorage goodsMaterialStorage = goodsMaterialStorageService.lambdaQuery().eq(GoodsMaterialStorage::getGoodsMaterialId, goodsMaterialId)
                 .eq(GoodsMaterialStorage::getStorageId, storageId).last("limit 1").one();
@@ -727,7 +725,7 @@ public class JxGoodsLogic {
      * goodsMaterialId  物料id
      * num   减少数量
      */
-    public void addMaterialStock(String goodsMaterialId, Integer num,String storageId,String befStorageId) throws InterruptedException {
+    public void addMaterialStock(String goodsMaterialId, Integer num, String storageId, String befStorageId) throws InterruptedException {
         Lock obtain = redisLockRegistry.obtain(Constant.RedisPrefix.LOCK_WALLET + goodsMaterialId);
         if (!obtain.tryLock(10, TimeUnit.SECONDS)) {
             throw new RemoteServiceException("库存已冻结:" + goodsMaterialId);
@@ -740,7 +738,7 @@ public class JxGoodsLogic {
 
             Storage storage = storageService.getById(storageId);
 
-            if (goodsMaterialStorage == null){
+            if (goodsMaterialStorage == null) {
 
                 GoodsMaterialStorage goodsMaterialStorageUp = goodsMaterialStorageService.lambdaQuery().eq(GoodsMaterialStorage::getGoodsMaterialId, goodsMaterialId)
                         .eq(GoodsMaterialStorage::getStorageId, befStorageId).last("limit 1").one();
@@ -814,7 +812,7 @@ public class JxGoodsLogic {
         for (int i = 0; i < objects.size(); i++) {
             List<Object> row = (List<Object>) objects.get(i);
             List<GoodsCode> collect = goodsCodeService.lambdaQuery().in(GoodsCode::getMaterialCode, row.get(0))
-                    .in(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .in(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .list();
 
 
@@ -871,7 +869,7 @@ public class JxGoodsLogic {
         for (int i = 0; i < objects.size(); i++) {
             List<Object> row = (List<Object>) objects.get(i);
             List<GoodsCode> collect = goodsCodeService.lambdaQuery().in(GoodsCode::getMaterialCode, row.get(0))
-                    .in(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .in(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .list();
 
 
@@ -920,7 +918,7 @@ public class JxGoodsLogic {
         for (OrderDetailCode orderDetailCode : orderDetailCodes) {
 
             GoodsCode goodsCode = goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, orderDetailCode.getMaterialCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .one();
             OrderDetail orderDetail = orderDetailService.getById(orderDetailCode.getOrderDetailId());
 
@@ -1012,7 +1010,7 @@ public class JxGoodsLogic {
             OrderDetail orderDetailServiceById = orderDetailService.getById(orderDetailCode.getOrderDetailId());
 
             GoodsCode goodsCode = goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, orderDetailCode.getMaterialCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .one();
 
             if (goodsCode == null)
@@ -1076,7 +1074,7 @@ public class JxGoodsLogic {
     }
 
     @Transactional(rollbackFor = Exception.class)
-    public void addGoodsSaleLedger(String orderId,String deId) {
+    public void addGoodsSaleLedger(String orderId, String deId) {
         AdminUserCom adminUser = commonLogic.getAdminUser();
         OrderInfo orderInfo = orderInfoService.getById(orderId);
 
@@ -1168,11 +1166,11 @@ public class JxGoodsLogic {
             try {
                 //添加库存
 
-                this.subMaterialStock(goodsPurchaseRetItem.getGoodsMaterialId(), goodsPurchaseRetItem.getRetQty(), goodsPurchaseRet.getGoodsPurchaseId(),goodsPurchaseRet.getStorageId());
+                this.subMaterialStock(goodsPurchaseRetItem.getGoodsMaterialId(), goodsPurchaseRetItem.getRetQty(), goodsPurchaseRet.getGoodsPurchaseId(), goodsPurchaseRet.getStorageId());
 
                 goodsMaterialStockAccLogic.add(goodsPurchaseRetItem.getGoodsMaterialId(), goodsPurchaseRetItem.getPrice(), goodsPurchaseRetItem.getRetQty(),
                         DirectFlagEnum.SUB, goodsPurchaseRetItem.getGoodsPurchaseRetId(),
-                        GoodsMaterialStockAccBillTypeEnum.C,goodsPurchaseRet.getStorageId(), goodsPurchaseRet.getStorageName());
+                        GoodsMaterialStockAccBillTypeEnum.C, goodsPurchaseRet.getStorageId(), goodsPurchaseRet.getStorageName());
 
                 //变化成本价
                 this.changeRefundCost(goodsPurchaseRetItem.getGoodsMaterialId(), goodsPurchaseRetItem);
@@ -1302,8 +1300,8 @@ public class JxGoodsLogic {
             List<Object> row = (List<Object>) objects.get(i);
 
             if (goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, Convert.toStr(row.get(8)))
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
-                    .eq(GoodsCode::getUniqueCode,IsYesNoEnum.YES.getKey())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getUniqueCode, IsYesNoEnum.YES.getKey())
                     .count() > 0)
                 throw new RemoteServiceException("条码已经导入" + row.get(8));
 
@@ -1336,24 +1334,20 @@ public class JxGoodsLogic {
             GoodsMaterialItem goodsMaterialItem = goodsMaterialItems.get(0);
 
 
-
-
-
             GoodsCode goodsCode = new GoodsCode();
             BeanUtil.copyProperties(goodsMaterial, goodsCode);
             goodsCode.setStockQty(Convert.toInt(row.get(7)));
 
             List<GoodsCode> goodsCodeList = goodsCodeService.lambdaQuery().eq(GoodsCode::getMaterialCode, Convert.toStr(row.get(8)))
                     .eq(GoodsCode::getUniqueCode, IsYesNoEnum.NO.getKey())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
                     .eq(GoodsCode::getGoodsMaterialId, goodsMaterial.getId())
                     .list();
 
 
-
-            if(!CollectionUtils.isEmpty(goodsCodeList) && goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.NO.getKey())){
+            if (!CollectionUtils.isEmpty(goodsCodeList) && goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.NO.getKey())) {
                 goodsCode.setGoodsCodeId(goodsCodeList.get(0).getGoodsCodeId());
-                goodsCode.setStockQty(goodsCodeList.get(0).getStockQty()+Convert.toInt(row.get(7)));
+                goodsCode.setStockQty(goodsCodeList.get(0).getStockQty() + Convert.toInt(row.get(7)));
             }
 
             goodsCode.setGoodsMaterialId(goodsMaterialItem.getGoodsMaterialId());
@@ -1396,9 +1390,9 @@ public class JxGoodsLogic {
                     .setOrderType(CodeAccTypeEnum.INIT.getKey())
                     .setGoodsMaterialItemType(goodsCode.getGoodsMaterialItemType());
 
-            if(!CollectionUtils.isEmpty(goodsCodeList) && goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.NO.getKey())){
+            if (!CollectionUtils.isEmpty(goodsCodeList) && goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.NO.getKey())) {
 
-                goodsCodeAcc.setStockQty(goodsCodeList.get(0).getStockQty()+Convert.toInt(row.get(7)));
+                goodsCodeAcc.setStockQty(goodsCodeList.get(0).getStockQty() + Convert.toInt(row.get(7)));
             }
 
             goodsCodeAccs.add(goodsCodeAcc);
@@ -1410,7 +1404,7 @@ public class JxGoodsLogic {
         goodsCodeAccService.saveBatch(goodsCodeAccs);
     }
 
-    public void addCodeAccOffline(List<OrderOfflineItemCode> codeList,String storaId) throws InterruptedException {
+    public void addCodeAccOffline(List<OrderOfflineItemCode> codeList, String storaId) throws InterruptedException {
         AdminUserCom adminUser = commonLogic.getAdminUser();
         List<GoodsCodeAcc> goodsCodeAccs = new ArrayList<>();
 
@@ -1425,7 +1419,7 @@ public class JxGoodsLogic {
             GoodsMaterial goodsMaterial = goodsMaterialList.stream().filter(item -> item.getId().equals(orderDetailCode.getGoodsMaterialId())).collect(Collectors.toList()).get(0);
             GoodsCode goodsCode = goodsCodeService.lambdaQuery()
                     .eq(GoodsCode::getMaterialCode, orderDetailCode.getMaterialCode())
-                    .eq(GoodsCode::getCompanyWechatId,adminUser.getCompanyWechatId())
+                    .eq(GoodsCode::getCompanyWechatId, adminUser.getCompanyWechatId())
 
                     .last("limit 1").one();
 
@@ -1456,7 +1450,7 @@ public class JxGoodsLogic {
                     .setGoodsMaterialItemType(orderDetailCode.getGoodsMaterialItemType());
 
 
-            if (goodsPurchase != null){
+            if (goodsPurchase != null) {
                 goodsCodeAcc.setVenderId(goodsPurchase.getVenderId());
                 goodsCodeAcc.setVenderName(goodsPurchase.getVenderName());
             }

+ 98 - 121
mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderDeliveryLogic.java

@@ -21,20 +21,17 @@ import com.gree.mall.manager.logic.goods.GoodsMaterialStockAccLogic;
 import com.gree.mall.manager.logic.goods.JxGoodsLogic;
 import com.gree.mall.manager.plus.entity.*;
 import com.gree.mall.manager.plus.service.*;
-import com.gree.mall.manager.utils.StringUtil;
 import com.gree.mall.manager.zfire.bean.ZfireParamBean;
 import com.gree.mall.manager.zfire.util.FieldUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
@@ -99,7 +96,6 @@ public class OrderDeliveryLogic {
         ZfireParamBean zfireParam = FieldUtils.supplyParam(zfireParamBean, OrderDeliveryVO.class);
 
 
-
         IPage<OrderDeliveryVO> orderDeliveryVOIPage = orderMapper.orderDelivery(new Page(zfireParamBean.getPageNum(),
                         zfireParamBean.getPageSize()),
                 zfireParam
@@ -110,17 +106,10 @@ public class OrderDeliveryLogic {
 
     @Transactional(rollbackFor = Exception.class)
     public void deliverV2(SendOrderBody sendOrderBody) throws Exception {
-        //判断导入条码是否符合数量
-        List<OrderDetail> list = orderDetailService.lambdaQuery().eq(OrderDetail::getOrderId, sendOrderBody.getOrderId()).list();
-        List<OrderDetailCode> orderDetailCodes = orderDetailCodeService.lambdaQuery().
-                eq(OrderDetailCode::getOrderId, sendOrderBody.getOrderId())
-                .isNull(OrderDetailCode::getDeliveryId)
-                .list();
-
-        List<OrderDeliveryDetail> orderDeliveryDetails = new ArrayList<>();
+        List<OrderDeliveryDetailBean> orderDeliveryDetails = new ArrayList<>();
 
-        for (OrderDeliveryDetail orderDeliveryDetail : sendOrderBody.getOrderDeliveryDetailList()) {
-            if (orderDeliveryDetail.getSendNum() > 0){
+        for (OrderDeliveryDetailBean orderDeliveryDetail : sendOrderBody.getOrderDeliveryDetailList()) {
+            if (orderDeliveryDetail.getSendNum() > 0) {
                 orderDeliveryDetails.add(orderDeliveryDetail);
             }
 
@@ -130,38 +119,34 @@ public class OrderDeliveryLogic {
 
         sendOrderBody.setOrderDeliveryDetailList(orderDeliveryDetails);
 
-        sendOrderBody.setOrderDetailCodes(orderDetailCodes);
-
-
-
-
-
         //最后调用发货
-        String delivery = this.deliverGoods(sendOrderBody.getOrderDeliveryDetailList(),sendOrderBody.getOrderId(), sendOrderBody.getLogisticsNo(),
+        String delivery = this.deliverGoods(sendOrderBody.getOrderDeliveryDetailList(), sendOrderBody.getOrderId(), sendOrderBody.getLogisticsNo(),
                 sendOrderBody.getCompanyCode(), sendOrderBody.getStorageId(),
                 sendOrderBody.getWorkOrder(), sendOrderBody.getExchange()
-                ,sendOrderBody.getPickName(),sendOrderBody.getPickPhone(),sendOrderBody.getPickType());
+                , sendOrderBody.getPickName(), sendOrderBody.getPickPhone(), sendOrderBody.getPickType());
 
         //减少库存+减去条码
-        this.subStock(sendOrderBody,delivery);
+        this.subStock(sendOrderBody, delivery);
     }
 
     /**
      * 发货
      */
     @Transactional
-    public String deliverGoods(List<OrderDeliveryDetail> orderDeliveryList,String orderId, String logisticsNo, String companyCode, String storageId, Boolean workOrder, Boolean exchange,String pickName,String pickPhone ,String pickType) throws Exception {
+    public String deliverGoods(List<OrderDeliveryDetailBean> orderDeliveryList, String orderId, String logisticsNo,
+                               String companyCode, String storageId, Boolean workOrder, Boolean exchange, String pickName,
+                               String pickPhone, String pickType) throws Exception {
         //仓库
         Storage detail = storageLogic.detail(storageId);
         //快递公司
         DeliverGoodsBean deliverGoodsBean = new DeliverGoodsBean();
         deliverGoodsBean.setOrderId(orderId);
-        if (!StringUtil.isEmpty(logisticsNo)) {
-            String companyName = expressLogic.expressCompanyName(companyCode);
-            deliverGoodsBean.setExpressCorp(companyName);
-            deliverGoodsBean.setLogisticsNo(logisticsNo);
-        }
-        if(detail != null) {
+//        if (!StringUtil.isEmpty(logisticsNo)) {
+//            String companyName = expressLogic.expressCompanyName(companyCode);
+//            deliverGoodsBean.setExpressCorp(companyName);
+//            deliverGoodsBean.setLogisticsNo(logisticsNo);
+//        }
+        if (detail != null) {
             deliverGoodsBean.setWarehouse(detail.getStorageName());
             deliverGoodsBean.setWarehouseId(detail.getStorageId());
         }
@@ -173,82 +158,86 @@ public class OrderDeliveryLogic {
         //预检查
         preCheck(deliverGoodsBean);
         //发货
-        return updateDeliverItem(deliverGoodsBean,orderDeliveryList,companyCode);
+        return updateDeliverItem(deliverGoodsBean, orderDeliveryList, companyCode);
     }
 
 
-    public String updateDeliverItem(DeliverGoodsBean deliverGoodsBean,List<OrderDeliveryDetail> orderDeliveryList,String companyCode) throws Exception {
+    public String updateDeliverItem(DeliverGoodsBean deliverGoodsBean, List<OrderDeliveryDetailBean> orderDeliveryList, String companyCode) throws Exception {
         String orderId = deliverGoodsBean.getOrderId();
         OrderInfo orderInfo = orderInfoService.lambdaQuery()
                 .eq(OrderInfo::getOrderId, orderId)
                 .eq(OrderInfo::getOrderStatus, OrderStatusEnum.DFH.toString())
                 .one();
 
+        if (Objects.isNull(orderInfo)) {
+            throw new RemoteServiceException(String.format("订单号:%s不正确或已发货,请检查", deliverGoodsBean.getOrderId()));
+        }
+
         List<OrderDetail> orderDetails = orderDetailService.lambdaQuery()
                 .eq(OrderDetail::getOrderId, orderInfo.getOrderId()).list();
 
-        Boolean isOver =true;
+        boolean isOver = true;
 
         for (OrderDetail orderDetail : orderDetails) {
-            Integer integer = orderDeliveryList.stream().filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()))
-                    .map(OrderDeliveryDetail::getSendNum).reduce(Integer::sum).orElse(0);
+            Integer integer = orderDeliveryList.stream()
+                    .filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()))
+                    .map(OrderDeliveryDetailBean::getSendNum)
+                    .reduce(Integer::sum)
+                    .orElse(0);
 
-            List<OrderDeliveryDetail> orderDeliveryDetails = orderDeliveryDetailService.lambdaQuery().eq(OrderDeliveryDetail::getDeliveryId, orderDetail.getOrderDetailId()).list();
+            final String barcodeText = orderDeliveryList.stream()
+                    .filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()))
+                    .map(OrderDeliveryDetailBean::getBarcodeText)
+                    .findFirst().orElse("");
 
-            orderDetail.setSendStockNum(orderDetail.getSendStockNum()+integer);
+            orderDetail.setSendStockNum(orderDetail.getSendStockNum() + integer);
 
             // 总发货数量  》   订单数量  + 发货前退得金额
-
-            if ((orderDetail.getSendStockNum()  > (orderDetail.getNum() - (orderDetail.getBeforeRefundNum()) )))
+            if ((orderDetail.getSendStockNum() > (orderDetail.getNum() - (orderDetail.getBeforeRefundNum()))))
                 throw new RemoteServiceException("总发货数量超过了订单数量");
 
-            Integer num = orderDetail.getNum()-orderDetail.getBeforeRefundNum();
+            Integer num = orderDetail.getNum() - orderDetail.getBeforeRefundNum();
 
-            if (! num.equals( orderDetail.getSendStockNum())) {
+            if (!num.equals(orderDetail.getSendStockNum())) {
                 isOver = false;
             }
+            orderDetail.setBarcodeText(barcodeText);
 
             orderDetail.updateById();
         }
 
-        if (org.apache.commons.lang3.StringUtils.isBlank(orderId)) {
+        if (StringUtils.isBlank(orderId)) {
             throw new RemoteServiceException("订单号不能为空");
         }
 
-        if (orderInfo == null) {
-            throw new RemoteServiceException(String.format("订单号:%s不正确或已发货,请检查", deliverGoodsBean.getOrderId()));
-        }
         Storage detail = storageLogic.detailByName(orderInfo.getCompanyWechatId(), deliverGoodsBean.getWarehouse());
 
-        if (!StringUtil.isEmpty(deliverGoodsBean.getLogisticsNo())) {
-            ExpressCompany company = expressLogic.expressCompany(deliverGoodsBean.getExpressCorp());
-            if (company == null) {
-                throw new RemoteServiceException(String.format("订单号:%s物流公司出错,请检查", deliverGoodsBean.getOrderId()));
-            }
-            orderInfo.setCompanyCode(company.getCode());
-            orderInfo.setCompanyName(company.getName());
-        }
+//        if (!StringUtils.isEmpty(deliverGoodsBean.getLogisticsNo())) {
+//            ExpressCompany company = expressLogic.expressCompany(deliverGoodsBean.getExpressCorp());
+//            if (company == null) {
+//                throw new RemoteServiceException(String.format("订单号:%s物流公司出错,请检查", deliverGoodsBean.getOrderId()));
+//            }
+//            orderInfo.setCompanyCode(company.getCode());
+//            orderInfo.setCompanyName(company.getName());
+//        }
         orderInfo.setLogisticsNo(deliverGoodsBean.getLogisticsNo());
 
         if (isOver) {
             orderInfo.setOrderStatus(OrderStatusEnum.YFH.toString());
         }
 
-        if(detail != null) {
+        if (detail != null) {
             orderInfo.setStorageName(detail.getStorageName());
             orderInfo.setStorageAddress(detail.getStorageAddress());
             orderInfo.setStoragePhone(detail.getStorageMobile());
         }
         orderInfo.setDeliverTime(new Date());
         orderInfo.setWorkOrder(deliverGoodsBean.getSend());
-        orderInfo.setExchangeOrder(deliverGoodsBean.getExchangeOrder());
         orderInfo.updateById();
 
         if (isOver) {
-            orderShareLogic.updateOrderStatus(orderId, OrderStatusEnum.YFH.toString());
-
             //对接工单
-            orderLogic.orderToWorkorder(orderInfo);
+//            orderLogic.orderToWorkorder(orderInfo);
         }
 
         OrderDelivery orderDelivery = new OrderDelivery();
@@ -284,7 +273,7 @@ public class OrderDeliveryLogic {
         orderDetailCodeService.lambdaUpdate().
                 eq(OrderDetailCode::getOrderId, orderDelivery.getOrderId())
                 .isNull(OrderDetailCode::getDeliveryId)
-                .set(OrderDetailCode::getDeliveryId,orderDelivery.getDeliveryId())
+                .set(OrderDetailCode::getDeliveryId, orderDelivery.getDeliveryId())
                 .update();
 
         List<OrderDetailCode> list = orderDetailCodeService.lambdaQuery().eq(OrderDetailCode::getOrderId, orderDelivery.getOrderId())
@@ -304,7 +293,7 @@ public class OrderDeliveryLogic {
                     .reduce(Integer::sum).orElse(0);
 
             Integer partsQty = list.stream().filter(item -> item.getGoodsMaterialItemType().equals(GoodsMaterialTypeEnum.PARTS.getKey())
-            && item.getGoodsMaterialId().equals(orderDetail.getGoodsMaterialId())
+                    && item.getGoodsMaterialId().equals(orderDetail.getGoodsMaterialId())
             )
                     .map(OrderDetailCode::getStockQty)
                     .reduce(Integer::sum).orElse(0);
@@ -315,11 +304,11 @@ public class OrderDeliveryLogic {
                     .map(OrderDetailCode::getStockQty)
                     .reduce(Integer::sum).orElse(0);
 
-            orderDelivery.setSendInsideCodeQty(orderDelivery.getSendInsideCodeQty()+insideQty);
-            orderDelivery.setSendOutCodeQty(orderDelivery.getSendOutCodeQty()+outQty);
-            orderDelivery.setSendPartsCodeQty(orderDelivery.getSendPartsCodeQty()+partsQty);
+            orderDelivery.setSendInsideCodeQty(orderDelivery.getSendInsideCodeQty() + insideQty);
+            orderDelivery.setSendOutCodeQty(orderDelivery.getSendOutCodeQty() + outQty);
+            orderDelivery.setSendPartsCodeQty(orderDelivery.getSendPartsCodeQty() + partsQty);
 
-            orderDelivery.setSendNum(orderDelivery.getSendNum()+orderDeliveryDetail.getSendNum());
+            orderDelivery.setSendNum(orderDelivery.getSendNum() + orderDeliveryDetail.getSendNum());
 
             orderDeliveryDetail.setSendInsideCodeQty(insideQty);
             orderDeliveryDetail.setSendOutCodeQty(outQty);
@@ -328,34 +317,23 @@ public class OrderDeliveryLogic {
             orderDeliveryDetail.setDeliveryId(orderDelivery.getDeliveryId());
         }
         for (OrderDetail orderDetail : orderDetails) {
-            orderDelivery.setNum(orderDelivery.getNum()+(orderDetail.getNum()-orderDetail.getBeforeRefundNum()));
+            orderDelivery.setNum(orderDelivery.getNum() + (orderDetail.getNum() - orderDetail.getBeforeRefundNum()));
         }
 
         orderDelivery.updateById();
 
-        orderDeliveryDetailService.saveBatch(orderDeliveryList);
-
-
-
-       return orderDelivery.getDeliveryId();
-
-
-//        User user = userLogic.getById(orderInfo.getUserId());
-//        if (user != null) {
-//            //对接微信发货 //自动发货对接微信(立即发货,腾讯那边会有延迟问题找不到订单,所以交给定时器处理)
-//            //wechatLogic.deliver(orderInfo,user.getMiniOpenId());
-//            //对接小程序发货通知
-//            msgSubscriptLogic.sendFhNotice(user.getUserId(), user.getOpenId(), orderInfo.getOrderId(), orderInfo.getPayAmount()
-//                    , orderInfo.getCompanyName(), orderInfo.getLogisticsNo());
-//        }
+        orderDeliveryDetailService.saveBatch(orderDeliveryList.stream()
+                .map(v -> {
+                    OrderDeliveryDetail detail1 = new OrderDeliveryDetail();
+                    BeanUtils.copyProperties(v, detail1);
+                    return detail1;
+                })
+                .collect(Collectors.toList()));
 
+        return orderDelivery.getDeliveryId();
     }
 
 
-
-
-
-
     private void preCheck(DeliverGoodsBean deliverGoodsBean) {
         String orderId = deliverGoodsBean.getOrderId();
         if (org.apache.commons.lang3.StringUtils.isBlank(orderId)) {
@@ -367,33 +345,33 @@ public class OrderDeliveryLogic {
                 .one();
 
         if (orderInfo == null) {
-            throw new RemoteServiceException("订单号不正确或已发货:"+orderId);
+            throw new RemoteServiceException("订单号不正确或已发货:" + orderId);
         }
         if (StringUtils.isNotBlank(deliverGoodsBean.getWarehouse())) {
             Storage detail = storageLogic.detailByName(orderInfo.getCompanyWechatId(), deliverGoodsBean.getWarehouse().trim());
             if (detail == null) {
-                throw new RemoteServiceException("仓库不正确,订单号:"+orderId);
-            }
-        }
-        if (!StringUtil.isEmpty(deliverGoodsBean.getLogisticsNo())) {
-            ExpressCompany company = expressLogic.expressCompany(deliverGoodsBean.getExpressCorp().trim());
-            if (company == null) {
-                throw new RemoteServiceException("物流公司出错,订单号:" + orderId);
+                throw new RemoteServiceException("仓库不正确,订单号:" + orderId);
             }
         }
+//        if (!StringUtil.isEmpty(deliverGoodsBean.getLogisticsNo())) {
+//            ExpressCompany company = expressLogic.expressCompany(deliverGoodsBean.getExpressCorp().trim());
+//            if (company == null) {
+//                throw new RemoteServiceException("物流公司出错,订单号:" + orderId);
+//            }
+//        }
     }
 
 
-    private void subStock(SendOrderBody sendOrderBody ,String deid) throws InterruptedException {
+    private void subStock(SendOrderBody sendOrderBody, String deid) throws InterruptedException {
 
         AdminUserCom adminUser = commonLogic.getAdminUser();
 
-        log.info("发货"+adminUser.toString());
+        log.info("发货" + adminUser.toString());
 
         //库存扣除 // 库存变更台账
         List<OrderDetail> orderDetails = orderDetailService.lambdaQuery().eq(OrderDetail::getOrderId, sendOrderBody.getOrderId()).list();
         for (OrderDetail orderDetail : orderDetails) {
-            if (orderDetail.getIsVr() || StringUtil.isEmpty(orderDetail.getGoodsMaterialId()) || adminUser.getJoinCode().equals("NO"))
+            if (orderDetail.getIsVr() || StringUtils.isEmpty(orderDetail.getGoodsMaterialId()) || adminUser.getJoinCode().equals("NO"))
                 continue;
 
             List<OrderDeliveryDetail> orderDeliveryDetailList = sendOrderBody.getOrderDeliveryDetailList().stream().filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()))
@@ -404,9 +382,9 @@ public class OrderDeliveryLogic {
 
             OrderDeliveryDetail orderDeliveryDetail = orderDeliveryDetailList.get(0);
 
-            if (StringUtil.isEmpty(orderDetail.getGoodsSpecId())){
+            if (StringUtils.isEmpty(orderDetail.getGoodsSpecId())) {
 
-            }else {
+            } else {
                 GoodsSpec goodsSpec = goodsSpecService.getById(orderDetail.getGoodsSpecId());
 
                 if (goodsSpec == null)
@@ -416,86 +394,85 @@ public class OrderDeliveryLogic {
             }
 
 
-            jxGoodsLogic.subMaterialStock(orderDetail.getGoodsMaterialId(), orderDeliveryDetail.getSendNum(), null,sendOrderBody.getStorageId());
+            jxGoodsLogic.subMaterialStock(orderDetail.getGoodsMaterialId(), orderDeliveryDetail.getSendNum(), null, sendOrderBody.getStorageId());
             goodsMaterialStockAccLogic.add(orderDetail.getGoodsMaterialId(), orderDetail.getPrice(), orderDeliveryDetail.getSendNum(), DirectFlagEnum.SUB,
-                    sendOrderBody.getOrderId(), GoodsMaterialStockAccBillTypeEnum.A,sendOrderBody.getStorageId(),sendOrderBody.getStorageName());
+                    sendOrderBody.getOrderId(), GoodsMaterialStockAccBillTypeEnum.A, sendOrderBody.getStorageId(), sendOrderBody.getStorageName());
         }
 
         OrderInfo orderInfo = orderInfoService.getById(sendOrderBody.getOrderId());
 
-        log.info("发货"+adminUser.getJoinCode().toString());
-        log.info("发货"+sendOrderBody.getOrderDetailCodes().toString());
+        log.info("发货" + adminUser.getJoinCode().toString());
+        log.info("发货" + sendOrderBody.getOrderDetailCodes().toString());
 
-        if (adminUser.getJoinCode().equals("CODE")){
+        if (adminUser.getJoinCode().equals("CODE")) {
 
-            this.checkCode(orderDetails,sendOrderBody);
+            this.checkCode(orderDetails, sendOrderBody);
             //条码变更台账  条码减去批次库存
-            jxGoodsLogic.subCodeAcc(sendOrderBody.getOrderDetailCodes(), orderInfo,sendOrderBody.getStorageId(),sendOrderBody.getStorageName());
+            jxGoodsLogic.subCodeAcc(sendOrderBody.getOrderDetailCodes(), orderInfo, sendOrderBody.getStorageId(), sendOrderBody.getStorageName());
         }
 
         //添加销售台账
-        jxGoodsLogic.addGoodsSaleLedger(sendOrderBody.getOrderId(),deid);
+        jxGoodsLogic.addGoodsSaleLedger(sendOrderBody.getOrderId(), deid);
 
     }
 
 
-    private void checkCode(List<OrderDetail> list,SendOrderBody sendOrderBody) {
+    private void checkCode(List<OrderDetail> list, SendOrderBody sendOrderBody) {
 
         AdminUserCom adminUser = commonLogic.getAdminUser();
 
         for (OrderDetail orderDetail : list) {
-            if (orderDetail.getIsVr() || StringUtil.isEmpty(orderDetail.getGoodsMaterialId()) && adminUser.getJoinCode().equals("CODE"))
+            if (orderDetail.getIsVr() || StringUtils.isEmpty(orderDetail.getGoodsMaterialId()) && adminUser.getJoinCode().equals("CODE"))
                 continue;
 
 
             List<OrderDeliveryDetail> orderDeliveryDetailList = sendOrderBody.getOrderDeliveryDetailList().stream()
-                    .filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()) )
+                    .filter(item -> item.getOrderDetailId().equals(orderDetail.getOrderDetailId()))
                     .collect(Collectors.toList());
 
 
-
             OrderDeliveryDetail orderDeliveryDetail = orderDeliveryDetailList.get(0);
 
             List<GoodsMaterialItem> goodsMaterialItems = goodsMaterialItemService.lambdaQuery()
                     .eq(GoodsMaterialItem::getGoodsMaterialId, orderDetail.getGoodsMaterialId()).list();
             for (GoodsMaterialItem goodsMaterialItem : goodsMaterialItems) {
                 //需要条码数量
-                Integer num = goodsMaterialItem.getQty()* orderDeliveryDetail.getSendNum();
+                Integer num = goodsMaterialItem.getQty() * orderDeliveryDetail.getSendNum();
 
                 if (num == 0)
                     return;
-                if (goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.YES.getKey())){
+                if (goodsMaterialItem.getUniqueCode().equals(IsYesNoEnum.YES.getKey())) {
                     List<OrderDetailCode> collect = sendOrderBody.getOrderDetailCodes().stream()
                             .filter(item -> item.getGoodsMaterialItemId().equals(goodsMaterialItem.getId())
                                     && item.getOrderDetailId().equals(orderDetail.getOrderDetailId())
-                                    && StringUtil.isEmpty(item.getDeliveryId())
+                                    && StringUtils.isEmpty(item.getDeliveryId())
                             )
                             .collect(Collectors.toList());
 
-                    if (CollectionUtils.isEmpty(collect) )
+                    if (CollectionUtils.isEmpty(collect))
                         throw new RemoteServiceException("条码未导入");
 
                     if (collect.size() != num)
-                        throw new RemoteServiceException(goodsMaterialItem.getName()+"此条码名称数量不对,条码数量"+collect.size()+"需要数量"+num);
+                        throw new RemoteServiceException(goodsMaterialItem.getName() + "此条码名称数量不对,条码数量" + collect.size() + "需要数量" + num);
 
-                }else {
+                } else {
                     List<OrderDetailCode> collect = sendOrderBody.getOrderDetailCodes().stream()
                             .filter(item -> item.getGoodsMaterialItemId().equals(goodsMaterialItem.getId())
                                     && item.getOrderDetailId().equals(orderDetail.getOrderDetailId())
-                                    && StringUtil.isEmpty(item.getDeliveryId())
+                                    && StringUtils.isEmpty(item.getDeliveryId())
                             )
                             .collect(Collectors.toList());
 
-                    if (CollectionUtils.isEmpty(collect) )
+                    if (CollectionUtils.isEmpty(collect))
                         throw new RemoteServiceException("条码未导入");
 
                     Integer codeNum = 0;
                     for (OrderDetailCode orderDetailCode : collect) {
-                        codeNum = codeNum+orderDetailCode.getStockQty();
+                        codeNum = codeNum + orderDetailCode.getStockQty();
                     }
 
 
-                    if ( !codeNum.equals(num))
+                    if (!codeNum.equals(num))
                         throw new RemoteServiceException(goodsMaterialItem.getName() + "此条码名称数量不对,条码数量" + codeNum + "需要数量" + num);
                 }
             }

+ 0 - 23
mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderLogic.java

@@ -10,8 +10,6 @@ import com.gree.mall.manager.bean.ExcelData;
 import com.gree.mall.manager.bean.admin.AdminUserCom;
 import com.gree.mall.manager.bean.order.*;
 import com.gree.mall.manager.bean.workorder.OrderAddBean2DTO;
-import com.gree.mall.manager.commonmapper.CoustomUserCouponMapper;
-import com.gree.mall.manager.commonmapper.CustomWebsitMapper;
 import com.gree.mall.manager.commonmapper.OrderMapper;
 import com.gree.mall.manager.constant.Constant;
 import com.gree.mall.manager.enums.*;
@@ -89,10 +87,6 @@ public class OrderLogic {
     @Autowired
     private UserCouponService userCouponService;
     @Autowired
-    private CoustomUserCouponMapper coustomUserCouponMapper;
-    @Autowired
-    private CustomWebsitMapper customWebsitMapper;
-    @Autowired
     ExpressInfoService expressInfoService;
     @Autowired
     OrderRequestService orderRequestService;
@@ -526,7 +520,6 @@ public class OrderLogic {
                 UserCoupon userCoupon = userCouponService.getById(orderInfo.getUserCouponId());
                 if (userCoupon.getSelfUse() != null && userCoupon.getSelfUse()) {
                     //todo sql处理,数量加一,删除指定记录
-                    coustomUserCouponMapper.increaseLeftTimes(userCoupon.getTransferor());
                     userCouponService.removeById(userCouponId);
                 }else{
                     userCouponService.lambdaUpdate()
@@ -709,7 +702,6 @@ public class OrderLogic {
         }
         orderInfo.setDeliverTime(new Date());
         orderInfo.setWorkOrder(deliverGoodsBean.getSend());
-        orderInfo.setExchangeOrder(deliverGoodsBean.getExchangeOrder());
         orderInfo.updateById();
 
         orderShareLogic.updateOrderStatus(orderId, OrderStatusEnum.YFH.toString());
@@ -816,21 +808,6 @@ public class OrderLogic {
         orderDetailBean.setPrintRecordCount(printCount);
 
 
-        List<OrderOldProduct> list = orderOldProductService.lambdaQuery()
-                .eq(OrderOldProduct::getOrderId, orderId).list();
-
-        List<OrderOldProductDTO> orderOldProductDTOS = new ArrayList<>();
-
-        for (OrderOldProduct orderOldProduct : list) {
-            OrderOldProductDTO orderOldProductDTO = BeanUtil.toBean(orderOldProduct, OrderOldProductDTO.class);
-            List<OrderOldProductItem> orderOldProductItemList = orderOldProductItemService.lambdaQuery().eq(OrderOldProductItem::getOrderOldProductId, orderOldProduct.getId()).list();
-            orderOldProductDTO.setItemList(orderOldProductItemList);
-
-            orderOldProductDTOS.add(orderOldProductDTO);
-        }
-
-        orderDetailBean.setOrderOldProductDTOList(orderOldProductDTOS);
-
         return orderDetailBean;
     }
 

+ 52 - 39
mall-server-api/src/main/java/com/gree/mall/manager/logic/order/OrderOfflineLogic.java

@@ -1,6 +1,7 @@
 package com.gree.mall.manager.logic.order;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -35,6 +36,7 @@ import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 线下销售订单
@@ -83,6 +85,7 @@ public class OrderOfflineLogic {
         AdminUserCom adminUser = commonLogic.getAdminUser();
 
         OrderInfo orderInfo = null;
+
         if (StringUtils.isNotBlank(orderInfoAddBean.getOrderId())) {
             orderInfo = orderInfoService.getById(orderInfoAddBean.getOrderId());
             if (orderInfo == null) {
@@ -107,7 +110,7 @@ public class OrderOfflineLogic {
 
         Integer totalNum = 0;
         BigDecimal totalPrice = BigDecimal.ZERO;
-        String orderTitle = "";
+        StringBuilder orderTitle = new StringBuilder();
         List<OrderDetail> orderDetails = orderInfoAddBean.getOrderDetails();
         if (CollectionUtils.isEmpty(orderDetails)) {
             throw new RemoteServiceException("请选择商品信息");
@@ -123,6 +126,7 @@ public class OrderOfflineLogic {
                 throw new RemoteServiceException("购买数量必须大于0");
             }
 
+            orderDetail.setOrderId(orderInfo.getOrderId());
             //物料
             if (orderDetail.getFlag() == 2) {
                 if (StringUtils.isBlank(orderDetail.getGoodsMaterialId())) {
@@ -132,39 +136,40 @@ public class OrderOfflineLogic {
                 if (gm == null) {
                     throw new RemoteServiceException("物料id有误,请检查");
                 }
-                orderDetail = supplyOrderDetail(orderInfo.getOrderId(), gm, orderDetail);
-                orderTitle += gm.getGoodsName() + ",";
+                supplyOrderDetail(orderInfo.getOrderId(), gm, orderDetail);
+                orderTitle.append(gm.getGoodsName()).append(",");
 
             } else {
                 //商品规格
-                Boolean isGm = false;
-                GoodsSpec goodsSpec = goodsSpecService.getById(orderDetail.getGoodsSpecId());
 
-                if (StringUtils.isNotBlank(goodsSpec.getGoodsCode())) {
-                    GoodsMaterial gm = goodsMaterialService.getById(orderDetail.getGoodsMaterialId());
-                    if (gm != null) {
-                        orderDetail = supplyOrderDetail(orderInfo.getOrderId(), gm, orderDetail);
-                        isGm = true;
-                    }
+                GoodsSpec goodsSpec = goodsSpecService.getById(orderDetail.getGoodsSpecId());
+                if (Objects.isNull(goodsSpec)) {
+                    throw new RemoteServiceException(orderDetail.getGoodsName() + " 找不到商品规格");
                 }
-                if (!isGm) {
-                    Goods goods = goodsService.getById(goodsSpec.getGoodsId());
-                    orderDetail.setOrderId(orderInfo.getOrderId());
-                    orderDetail.setBrandId(goods.getBrandId());
-                    orderDetail.setBrandName(goods.getBrandName());
-                    orderDetail.setMainNumber(goodsSpec.getMainId());
-                    orderDetail.setMainName(goodsSpec.getMainName());
-                    orderDetail.setSmallNumber(goodsSpec.getSmallId());
-                    orderDetail.setSmallName(goodsSpec.getSmallName());
-                    orderDetail.setGoodsName(goods.getGoodsName());
-                    orderDetail.setGoodsSpecName(goodsSpec.getSpecValue());
+                GoodsMaterial gm = goodsMaterialService.getById(goodsSpec.getGoodsCode());
+                orderDetail.setGoodsMaterialId(gm.getId());
+
+                supplyOrderDetail(orderInfo.getOrderId(), gm, orderDetail);
+                orderTitle.append(gm.getGoodsName()).append(",");
+
+                Goods goods = goodsService.getById(goodsSpec.getGoodsId());
+                GoodsCategory goodsCategory = goodsCategoryService.getById(goods.getCategoryId());
+                orderDetail.setBrandId(goods.getBrandId());
+                orderDetail.setBrandName(goods.getBrandName());
+                orderDetail.setMainNumber(goodsSpec.getMainId());
+                orderDetail.setMainName(goodsSpec.getMainName());
+                orderDetail.setSmallNumber(goodsSpec.getSmallId());
+                orderDetail.setSmallName(goodsSpec.getSmallName());
+                orderDetail.setGoodsName(goods.getGoodsName());
+                orderDetail.setGoodsSpecName(goodsSpec.getName());
+                orderDetail.setGoodsSpecValue(goodsSpec.getSpecValue());
+                orderDetail.setGoodsMaterialUnit(goodsSpec.getUnit());
+                if (StringUtils.isNotBlank(goodsSpec.getImgUrl())) {
                     orderDetail.setImgUrl(goodsSpec.getImgUrl());
-                    orderDetail.setInsideNum(1);
-                    orderDetail.setOutNum(1);
-                    orderDetail.setPartNum(0);
-                    orderDetail.setIsVr(goods.getIsVr());
                 }
-
+                orderDetail.setIsVr(goods.getIsVr());
+                orderDetail.setGoodsCategoryId(goods.getCategoryId());
+                orderDetail.setGoodsCategoryName(goodsCategory.getName());
             }
             orderDetail.setTotalPrice(orderDetail.getPrice().multiply(BigDecimal.valueOf(orderDetail.getNum())));
             orderDetail.setPayAmount(orderDetail.getTotalPrice());
@@ -185,7 +190,9 @@ public class OrderOfflineLogic {
         orderInfo.setSaleType(2);
         orderInfo.setPhone(orderInfo.getRecePhone());
         orderInfo.setUserName(orderInfo.getReceUserName());
-        if (StringUtils.isNotBlank(orderTitle)) {
+        orderInfo.setAppointmentPickStartTime(DateUtil.parseDateTime(orderInfoAddBean.getPickStartTime()));
+        orderInfo.setAppointmentPickEndTime(DateUtil.parseDateTime(orderInfoAddBean.getPickEndTime()));
+        if (StringUtils.isNotBlank(orderTitle.toString())) {
             orderInfo.setOrderTitle(orderTitle.substring(0, orderTitle.length() - 1));
         }
         orderInfo.setSource("PC");
@@ -196,15 +203,15 @@ public class OrderOfflineLogic {
         orderDetailService.lambdaUpdate().eq(OrderDetail::getOrderId, orderInfo.getOrderId()).remove();
         orderDetailService.saveBatch(orderDetails);
 
-        List<OrderDetail> orderDetailList = orderDetailService.lambdaQuery().eq(OrderDetail::getOrderId, orderInfo.getOrderId()).list();
-
-        for (OrderDetail orderDetail : orderDetailList) {
-            if (!StringUtil.isEmpty(orderDetail.getGoodsSpecId())) {
-                GoodsSpec goodsSpec = goodsSpecService.getById(orderDetail.getGoodsSpecId());
-                orderDetail.setGoodsMaterialId(goodsSpec.getGoodsCode());
-                orderDetail.updateById();
-            }
-        }
+//        List<OrderDetail> orderDetailList = orderDetailService.lambdaQuery().eq(OrderDetail::getOrderId, orderInfo.getOrderId()).list();
+//
+//        for (OrderDetail orderDetail : orderDetailList) {
+//            if (!StringUtil.isEmpty(orderDetail.getGoodsSpecId())) {
+//                GoodsSpec goodsSpec = goodsSpecService.getById(orderDetail.getGoodsSpecId());
+//                orderDetail.setGoodsMaterialId(goodsSpec.getGoodsCode());
+//                orderDetail.updateById();
+//            }
+//        }
 
 
         return orderInfo.getOrderId();
@@ -239,12 +246,13 @@ public class OrderOfflineLogic {
         orderDetail.setSmallName(gm.getSmallName());
         orderDetail.setGoodsName(gm.getGoodsName());
         orderDetail.setGoodsMaterialId(gm.getId());
+        orderDetail.setGoodsMaterialName(gm.getGoodsName());
         orderDetail.setGoodsSpecName(gm.getSpecsName());
+        orderDetail.setGoodsMaterialUnit(gm.getUnit());
         orderDetail.setImgUrl(goodsCategory.getImgUrl());
         orderDetail.setInsideNum(insideQty * orderDetail.getNum());
         orderDetail.setOutNum(outQty * orderDetail.getNum());
         orderDetail.setPartNum(partsQty * orderDetail.getNum());
-        orderDetail.setGoodsMaterialId(gm.getId());
         orderDetail.setIsVr(StringUtils.equals(gm.getIsVirtyual(), IsYesNoEnum.YES.getKey()));
         return orderDetail;
     }
@@ -261,6 +269,9 @@ public class OrderOfflineLogic {
         List<OrderDetail> orderDetails = orderDetailService.lambdaQuery().eq(OrderDetail::getOrderId, orderId).list();
         OrderInfoDetailBean orderInfoDetailBean = BeanUtil.copyProperties(orderInfo, OrderInfoDetailBean.class);
 
+        orderInfoDetailBean.setPickStartTime(DateUtil.formatDateTime(orderInfo.getAppointmentPickStartTime()));
+        orderInfoDetailBean.setPickEndTime(DateUtil.formatDateTime(orderInfo.getAppointmentPickEndTime()));
+
         List<GoodsMaterialStorage> goodsMaterialStorageList = goodsMaterialStorageService.lambdaQuery()
                 .eq(GoodsMaterialStorage::getCompanyWechatId, orderInfo.getCompanyWechatId())
                 .list();
@@ -344,8 +355,10 @@ public class OrderOfflineLogic {
                 orderInfo.setExamineStatus(ExamineStatusEnum.WAIT.getKey());
                 orderInfo.setExamineTime(null);
             } else {
-                orderInfo.setOrderStatus(OrderStatusEnum.DFH.toString());
+                orderInfo.setOrderStatus(OrderStatusEnum.DQR.toString());
                 orderInfo.setPayTime(new Date());
+
+                // TODO 待完善减物料库存逻辑
             }
         }
         orderInfo.updateById();

+ 0 - 252
mall-server-api/src/main/java/com/gree/mall/manager/logic/trade/OldProdctManagerLogic.java

@@ -1,252 +0,0 @@
-package com.gree.mall.manager.logic.trade;
-
-import cn.hutool.core.bean.BeanUtil;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.gree.mall.manager.bean.admin.AdminUserCom;
-import com.gree.mall.manager.bean.order.OldProductManagerAdd;
-import com.gree.mall.manager.bean.order.OldProductManagerItemAdd;
-import com.gree.mall.manager.bean.order.OrderOldProductAdd;
-import com.gree.mall.manager.bean.trade.GoodsCategoryItemVO;
-import com.gree.mall.manager.bean.trade.OldProductManagerDetail;
-import com.gree.mall.manager.bean.trade.OldProductManagerVO;
-import com.gree.mall.manager.commonmapper.JxMapper;
-import com.gree.mall.manager.logic.common.CommonLogic;
-import com.gree.mall.manager.plus.entity.*;
-import com.gree.mall.manager.plus.service.GoodsCategoryItemService;
-import com.gree.mall.manager.plus.service.OldProductManagerItemAttributeService;
-import com.gree.mall.manager.plus.service.OldProductManagerItemService;
-import com.gree.mall.manager.plus.service.OldProductManagerService;
-import com.gree.mall.manager.utils.StringUtil;
-import com.gree.mall.manager.zfire.bean.ZfireParamBean;
-import com.gree.mall.manager.zfire.util.FieldUtils;
-import lombok.extern.slf4j.Slf4j;
-import net.bytebuddy.asm.Advice;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import javax.servlet.http.HttpServletRequest;
-import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.List;
-
-@Slf4j
-@Service
-public class OldProdctManagerLogic {
-
-    @Autowired
-    JxMapper jxMapper;
-
-    @Autowired
-    CommonLogic commonLogic;
-
-    @Autowired
-    GoodsCategoryItemService goodsCategoryItemService;
-
-    @Autowired
-    OldProductManagerService oldProductManagerService;
-
-    @Autowired
-    OldProductManagerItemService oldProductManagerItemService;
-
-    @Autowired
-    OldProductManagerItemAttributeService oldProductManagerItemAttributeService;
-
-    public IPage<OldProductManagerVO> pageV2(ZfireParamBean zfireParamBean) {
-
-        AdminUserCom adminUser = commonLogic.getAdminUser();
-        List<String> companyWechatIds = adminUser.getCompanyWechatIds();
-
-        //1.组装查询条件
-        ZfireParamBean zfireParam = FieldUtils.supplyParam(zfireParamBean, OldProductManagerVO.class);
-
-        IPage<OldProductManagerVO> oldProductManagerVOIPage = jxMapper.pageManagerV2(new Page(zfireParamBean.getPageNum(),
-                        zfireParamBean.getPageSize()),
-                zfireParam
-                , companyWechatIds);
-
-        return oldProductManagerVOIPage;
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    public void addItem(OldProductManagerAdd oldProductManagerAdd) {
-
-        AdminUserCom adminUser = commonLogic.getAdminUser();
-
-        oldProductManagerAdd.setCompanyWechatId(adminUser.getCompanyWechatId());
-        oldProductManagerAdd.setCompanyName(adminUser.getCompanyName());
-
-        oldProductManagerAdd.insert();
-
-        //旧机回收
-
-        if (!CollectionUtils.isEmpty(oldProductManagerAdd.getOrderOldProductAdds())) {
-
-            List<OldProductManagerItem> oldProductManagerItems = new ArrayList<>();
-            List<OldProductManagerItemAttribute> oldProductManagerItemAttributes = new ArrayList<>();
-
-            for (OrderOldProductAdd orderOldProductDTO : oldProductManagerAdd.getOrderOldProductAdds()) {
-
-                GoodsCategoryItem goodsCategoryItemDto = goodsCategoryItemService.getById(orderOldProductDTO.getId());
-
-                OldProductManagerItem oldProductManagerItem = BeanUtil.toBean(goodsCategoryItemDto, OldProductManagerItem.class);
-
-
-                oldProductManagerItem.setId(IdWorker.getIdStr());
-                oldProductManagerItem.setNum(orderOldProductDTO.getNum());
-                oldProductManagerItem.setPayAmount(orderOldProductDTO.getPayAmount());
-                oldProductManagerItem.setSpecId(goodsCategoryItemDto.getId());
-                oldProductManagerItem.setSpecName(goodsCategoryItemDto.getDictName());
-                oldProductManagerItem.setOldProductManagerId(oldProductManagerAdd.getId());
-
-                for (String goodsCategoryItem : orderOldProductDTO.getItemIds()) {
-
-                    GoodsCategoryItem goodsCategoryItems = goodsCategoryItemService.getById(goodsCategoryItem);
-                    OldProductManagerItemAttribute oldProductManagerItemAttribute = BeanUtil.toBean(goodsCategoryItems, OldProductManagerItemAttribute.class);
-
-                    oldProductManagerItemAttribute.setOldProductManagerItemId(oldProductManagerItem.getId());
-                    oldProductManagerItemAttribute.setOldProductManagerId(oldProductManagerAdd.getId());
-                    oldProductManagerItemAttribute.setGoodsCategoryItemId(goodsCategoryItems.getId());
-
-                    oldProductManagerItem.setItemName((StringUtil.isEmpty(oldProductManagerItem.getItemName())?"":oldProductManagerItem.getItemName())+goodsCategoryItems.getDictName()+",");
-
-
-                    oldProductManagerItemAttributes.add(oldProductManagerItemAttribute);
-
-                }
-
-                if (!StringUtil.isEmpty(oldProductManagerItem.getItemName())){
-                    String substring = oldProductManagerItem.getItemName().substring(0, oldProductManagerItem.getItemName().length() - 1);
-                    oldProductManagerItem.setItemName(substring);
-                }
-
-
-                oldProductManagerItems.add(oldProductManagerItem);
-
-
-            }
-
-
-            if (!CollectionUtils.isEmpty(oldProductManagerItems)) {
-                oldProductManagerItemService.saveBatch(oldProductManagerItems);
-            }
-
-            if (!CollectionUtils.isEmpty(oldProductManagerItemAttributes)) {
-                oldProductManagerItemAttributeService.saveBatch(oldProductManagerItemAttributes);
-            }
-
-
-        }
-
-    }
-
-    @Transactional(rollbackFor = Exception.class)
-    public void update(OldProductManagerAdd oldProductManagerAdd, HttpServletRequest request) {
-        oldProductManagerAdd.updateById();
-
-        //旧机回收
-
-        oldProductManagerItemService.lambdaUpdate().eq(OldProductManagerItem::getOldProductManagerId,oldProductManagerAdd.getId()).remove();
-        oldProductManagerItemAttributeService.lambdaUpdate().eq(OldProductManagerItemAttribute::getOldProductManagerId,oldProductManagerAdd.getId()).remove();
-
-        if (!CollectionUtils.isEmpty(oldProductManagerAdd.getOrderOldProductAdds())) {
-
-            List<OldProductManagerItem> oldProductManagerItems = new ArrayList<>();
-            List<OldProductManagerItemAttribute> oldProductManagerItemAttributes = new ArrayList<>();
-
-            for (OrderOldProductAdd orderOldProductDTO : oldProductManagerAdd.getOrderOldProductAdds()) {
-
-                GoodsCategoryItem goodsCategoryItemDto = goodsCategoryItemService.getById(orderOldProductDTO.getId());
-
-                OldProductManagerItem oldProductManagerItem = BeanUtil.toBean(goodsCategoryItemDto, OldProductManagerItem.class);
-
-
-                oldProductManagerItem.setId(IdWorker.getIdStr());
-                oldProductManagerItem.setNum(orderOldProductDTO.getNum());
-                oldProductManagerItem.setPayAmount(orderOldProductDTO.getPayAmount());
-                oldProductManagerItem.setSpecId(goodsCategoryItemDto.getId());
-                oldProductManagerItem.setSpecName(goodsCategoryItemDto.getDictName());
-                oldProductManagerItem.setOldProductManagerId(oldProductManagerAdd.getId());
-
-                for (String goodsCategoryItem : orderOldProductDTO.getItemIds()) {
-
-                    GoodsCategoryItem goodsCategoryItems = goodsCategoryItemService.getById(goodsCategoryItem);
-                    OldProductManagerItemAttribute oldProductManagerItemAttribute = BeanUtil.toBean(goodsCategoryItems, OldProductManagerItemAttribute.class);
-                    oldProductManagerItemAttribute.setId(null);
-                    oldProductManagerItemAttribute.setGoodsCategoryItemId(goodsCategoryItems.getId());
-
-                    oldProductManagerItemAttribute.setOldProductManagerItemId(oldProductManagerItem.getId());
-
-                    oldProductManagerItem.setItemName((StringUtil.isEmpty(oldProductManagerItem.getItemName())?"":oldProductManagerItem.getItemName())+goodsCategoryItems.getDictName()+",");
-
-                    oldProductManagerItemAttributes.add(oldProductManagerItemAttribute);
-
-                }
-
-                if (!StringUtil.isEmpty(oldProductManagerItem.getItemName())){
-                    String substring = oldProductManagerItem.getItemName().substring(0, oldProductManagerItem.getItemName().length() - 1);
-                    oldProductManagerItem.setItemName(substring);
-                }
-
-
-                oldProductManagerItems.add(oldProductManagerItem);
-
-
-            }
-
-
-            if (!CollectionUtils.isEmpty(oldProductManagerItems)) {
-                oldProductManagerItemService.saveBatch(oldProductManagerItems);
-            }
-
-            if (!CollectionUtils.isEmpty(oldProductManagerItemAttributes)) {
-                oldProductManagerItemAttributeService.saveBatch(oldProductManagerItemAttributes);
-            }
-
-
-        }
-
-    }
-
-    public void del(String oldManagerId) {
-
-        oldProductManagerService.removeById(oldManagerId);
-
-        oldProductManagerItemService.lambdaUpdate().eq(OldProductManagerItem::getOldProductManagerId,oldManagerId).remove();
-        oldProductManagerItemAttributeService.lambdaUpdate().eq(OldProductManagerItemAttribute::getOldProductManagerId,oldManagerId).remove();
-
-    }
-
-    public void out(List<String> oldManagerId) {
-        oldProductManagerService.lambdaUpdate().in(OldProductManager::getId,oldManagerId)
-                .set(OldProductManager::getStatus,"OUT").update();
-    }
-
-    public OldProductManagerDetail detail(String oldManagerId) {
-        OldProductManager oldProductManager = oldProductManagerService.getById(oldManagerId);
-
-        OldProductManagerDetail oldProductManagerDetail = BeanUtil.toBean(oldProductManager, OldProductManagerDetail.class);
-
-        List<OldProductManagerItem> list = oldProductManagerItemService.lambdaQuery().eq(OldProductManagerItem::getOldProductManagerId, oldProductManagerDetail.getId())
-                .list();
-
-        List<OldProductManagerItemAdd> oldProductManagerItemAdds = new ArrayList<>();
-
-        for (OldProductManagerItem oldProductManagerItem : list) {
-            OldProductManagerItemAdd oldProductManagerItemAdd = BeanUtil.toBean(oldProductManagerItem, OldProductManagerItemAdd.class);
-
-            List<OldProductManagerItemAttribute> oldProductManagerItemAttributes = oldProductManagerItemAttributeService.lambdaQuery()
-                    .eq(OldProductManagerItemAttribute::getOldProductManagerItemId, oldProductManagerItemAdd.getId()).list();
-            oldProductManagerItemAdd.setOldProductManagerItemAttributes(oldProductManagerItemAttributes);
-
-            oldProductManagerItemAdds.add(oldProductManagerItemAdd);
-
-        }
-
-        oldProductManagerDetail.setItemList(oldProductManagerItemAdds);
-        return oldProductManagerDetail;
-    }
-}

+ 0 - 59
mall-server-api/src/main/java/com/gree/mall/manager/logic/workorder/OrderLogLogic.java

@@ -7,8 +7,6 @@ import cn.hutool.core.date.DateUtil;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.google.common.collect.Lists;
 import com.gree.mall.manager.bean.admin.AdminUserCom;
-import com.gree.mall.manager.bean.order.OldProductManagerAdd;
-import com.gree.mall.manager.bean.order.OrderOldProductAdd;
 import com.gree.mall.manager.bean.workorder.OrderSettleDetailBean;
 import com.gree.mall.manager.bean.workorder.OrderSettleNormBean;
 import com.gree.mall.manager.enums.IsYesNoEnum;
@@ -16,7 +14,6 @@ import com.gree.mall.manager.enums.NoticeEnum;
 import com.gree.mall.manager.enums.workorder.*;
 import com.gree.mall.manager.exception.RemoteServiceException;
 import com.gree.mall.manager.logic.common.CommonLogic;
-import com.gree.mall.manager.logic.trade.OldProdctManagerLogic;
 import com.gree.mall.manager.plus.entity.*;
 import com.gree.mall.manager.plus.service.*;
 import com.gree.mall.manager.utils.CommonUtils;
@@ -49,13 +46,9 @@ public class OrderLogLogic {
     private final SettleOrderLogic settleOrderLogic;
     private final PgOrderSettleWorkerService pgOrderSettleWorkerService;
     private final PgSettleOrderBakService pgSettleOrderBakService;
-    private final OldProductManagerService oldProductManagerService;
-    private final OldProductManagerItemService oldProductManagerItemService;
-    private final OldProductManagerItemAttributeService oldProductManagerItemAttributeService;
     private final OrderInfoService orderInfoService;
     private final OrderOldProductService orderOldProductService;
     private final OrderOldProductItemService orderOldProductItemService;
-    private final OldProdctManagerLogic oldProdctManagerLogic;
 
     /**
      * 工单操作明细
@@ -274,8 +267,6 @@ public class OrderLogLogic {
             //生成已完工标签
             orderFlagLogic.saveOrderFlag(Lists.newArrayList(pgOrderBase.getId()),OrderFlagEnum.YWG);
 
-            if (pgOrderBase.getIsCj())
-                this.addOldManager(pgOrderBase.getId());
         }
         //异常反馈
         if(pgOrderOperatorLog.getType().equals(OrderOperatorLogTypeEnum.YCFK.getKey())){
@@ -294,56 +285,6 @@ public class OrderLogLogic {
                 pgOrderOperatorLog.getCreateWebsit(),pgOrderOperatorLog.getImgSrc());
     }
 
-    private void addOldManager(String id) {
-        if (oldProductManagerService.lambdaQuery().eq(OldProductManager::getPgOrderId,id).count() > 0) {
-            return;
-        }
-
-        PgOrderBase pgOrderBase = pgOrderBaseService.getById(id);
-
-        OrderInfo orderInfo = orderInfoService.getById(pgOrderBase.getSaleOrderId());
-
-        List<OrderOldProduct> list = orderOldProductService.lambdaQuery().eq(OrderOldProduct::getOrderId, pgOrderBase.getSaleOrderId()).list();
-
-        List<OrderOldProductItem> orderOldProductItems = orderOldProductItemService.lambdaQuery().eq(OrderOldProductItem::getOrderId, pgOrderBase.getSaleOrderId()).list();
-
-        OldProductManagerAdd oldProductManagerAdd = new OldProductManagerAdd();
-        oldProductManagerAdd.setCompanyName(orderInfo.getCompanyName());
-        oldProductManagerAdd.setCompanyWechatId(orderInfo.getCompanyWechatId());
-        oldProductManagerAdd.setOrderId(orderInfo.getOrderId());
-        oldProductManagerAdd.setPgOrderId(pgOrderBase.getId());
-        oldProductManagerAdd.setStatus("IN");
-        oldProductManagerAdd.setUserName(pgOrderBase.getUserName());
-        oldProductManagerAdd.setUserPhone(pgOrderBase.getUserMobile());
-        oldProductManagerAdd.setUserAddress(pgOrderBase.getAddress());
-        oldProductManagerAdd.setSaleType(orderInfo.getSaleType());
-        oldProductManagerAdd.setOverTime(pgOrderBase.getOverTime());
-        oldProductManagerAdd.setRemark(pgOrderBase.getRemark());
-        oldProductManagerAdd.setProvince(pgOrderBase.getProvince());
-        oldProductManagerAdd.setProvinceId(pgOrderBase.getProvinceId());
-        oldProductManagerAdd.setCityId(pgOrderBase.getCityId());
-        oldProductManagerAdd.setCity(pgOrderBase.getCity());
-        oldProductManagerAdd.setArea(pgOrderBase.getArea());
-        oldProductManagerAdd.setAreaId(pgOrderBase.getAreaId());
-        oldProductManagerAdd.setStreet(pgOrderBase.getStreet());
-        oldProductManagerAdd.setStreetId(pgOrderBase.getStreetId());
-        oldProductManagerAdd.setOrderSmallType(pgOrderBase.getOrderSmallType());
-        oldProductManagerAdd.setOrderSmallTypeText(pgOrderBase.getOrderSmallTypeText());
-
-        OrderOldProductAdd orderOldProductAdd = new OrderOldProductAdd();
-
-        orderOldProductAdd.setId(list.get(0).getSpecId());
-        orderOldProductAdd.setNum(1);
-        orderOldProductAdd.setPayAmount(list.get(0).getPayAmount());
-        List<String> collect = orderOldProductItems.stream().map(OrderOldProductItem::getGoodsCategoryItemId).collect(Collectors.toList());
-        orderOldProductAdd.setItemIds(collect);
-
-        List<OrderOldProductAdd> orderOldProductAdds = new ArrayList<>();
-        orderOldProductAdds.add(orderOldProductAdd);
-        oldProductManagerAdd.setOrderOldProductAdds(orderOldProductAdds);
-        oldProdctManagerLogic.addItem(oldProductManagerAdd);
-    }
-
     public void insertNotice(String orderBaseId) {
         PgOrderBase pgOrderBase = pgOrderBaseService.getById(orderBaseId);
         List<PgOrderProduct> pgOrderProductList = pgOrderProductService.lambdaQuery().eq(PgOrderProduct::getOrderBaseId, orderBaseId).list();

+ 2 - 2
mall-server-api/src/main/resources/mapper/CommonMapper.xml

@@ -581,9 +581,9 @@
     <select id="queryOrderInfoList" resultType="com.gree.mall.manager.bean.listvo.OrderInfoVO">
         SELECT
           ${ex.selected},
-          if(a.order_status IN ('NOPAY','TIMEOUT'),"待支付","已支付") 'payStatus'
+          if(a.order_status IN ('NOPAY','TIMEOUT'), '待支付', '已支付') 'payStatus'
         from order_info a
-        join order_detail b on a.order_id=b.order_id
+        join order_detail b on a.order_id = b.order_id
         ${ex.query}
         and a.sale_type = 2
         <if test="ex.orderBy == null or ex.orderBy ==''">

+ 1 - 17
mall-server-api/src/main/resources/mapper/JxMapper.xml

@@ -74,21 +74,5 @@
         </if>
         ${ex.orderBy}
     </select>
-    <select id="pageManagerV2" resultType="com.gree.mall.manager.bean.trade.OldProductManagerVO">
-        SELECT
-        ${ex.selected}
-        FROM old_product_manager a
-        join old_product_manager_item b on a.id = b.old_product_manager_id
-        ${ex.query}
-        <if test="companyWechatIds != null and companyWechatIds.size > 0">
-            AND a.company_wechat_id IN
-            <foreach item="item" index="index" collection="companyWechatIds" open="(" separator="," close=")">
-                #{item}
-            </foreach>
-        </if>
-        <if test="ex.orderBy == null or ex.orderBy ==''">
-            ORDER BY a.create_time DESC
-        </if>
-        ${ex.orderBy}
-    </select>
+
 </mapper>