Эх сурвалжийг харах

Merge remote-tracking branch 'origin/master'

xiaomi 1 жил өмнө
parent
commit
f206c4e49b
42 өөрчлөгдсөн 1096 нэмэгдсэн , 124 устгасан
  1. 72 0
      sd-business/src/main/java/com/sd/business/controller/craft/CraftProcessController.java
  2. 72 0
      sd-business/src/main/java/com/sd/business/controller/equipment/EquipmentController.java
  3. 10 0
      sd-business/src/main/java/com/sd/business/controller/order/OrderController.java
  4. 3 0
      sd-business/src/main/java/com/sd/business/entity/bom/po/Bom.java
  5. 10 0
      sd-business/src/main/java/com/sd/business/entity/bom/po/BomSpec.java
  6. 17 0
      sd-business/src/main/java/com/sd/business/entity/craft/dto/CraftProcessDto.java
  7. 27 0
      sd-business/src/main/java/com/sd/business/entity/craft/dto/CraftProcessSelectDto.java
  8. 47 0
      sd-business/src/main/java/com/sd/business/entity/craft/po/CraftProcess.java
  9. 17 0
      sd-business/src/main/java/com/sd/business/entity/craft/vo/CraftProcessVo.java
  10. 6 0
      sd-business/src/main/java/com/sd/business/entity/department/dto/DepartmentSelectDto.java
  11. 5 0
      sd-business/src/main/java/com/sd/business/entity/department/vo/DepartmentVo.java
  12. 17 0
      sd-business/src/main/java/com/sd/business/entity/equipment/dto/EquipmentDto.java
  13. 32 0
      sd-business/src/main/java/com/sd/business/entity/equipment/dto/EquipmentSelectDto.java
  14. 73 0
      sd-business/src/main/java/com/sd/business/entity/equipment/po/Equipment.java
  15. 17 0
      sd-business/src/main/java/com/sd/business/entity/equipment/vo/EquipmentVo.java
  16. 5 0
      sd-business/src/main/java/com/sd/business/entity/order/dto/OrderSkuSelectDto.java
  17. 25 0
      sd-business/src/main/java/com/sd/business/entity/order/dto/SkuSpecPriceDto.java
  18. 1 1
      sd-business/src/main/java/com/sd/business/entity/order/po/OrderInfo.java
  19. 10 4
      sd-business/src/main/java/com/sd/business/entity/order/po/OrderSku.java
  20. 15 0
      sd-business/src/main/java/com/sd/business/entity/order/vo/OrderSkuVo.java
  21. 37 0
      sd-business/src/main/java/com/sd/business/entity/order/vo/SkuSpecPriceVo.java
  22. 26 0
      sd-business/src/main/java/com/sd/business/mapper/craft/CraftProcessMapper.java
  23. 26 0
      sd-business/src/main/java/com/sd/business/mapper/equipment/EquipmentMapper.java
  24. 46 0
      sd-business/src/main/java/com/sd/business/service/craft/CraftProcessService.java
  25. 60 0
      sd-business/src/main/java/com/sd/business/service/craft/impl/CraftProcessServiceImpl.java
  26. 1 0
      sd-business/src/main/java/com/sd/business/service/department/impl/DepartmentServiceImpl.java
  27. 46 0
      sd-business/src/main/java/com/sd/business/service/equipment/EquipmentService.java
  28. 61 0
      sd-business/src/main/java/com/sd/business/service/equipment/impl/EquipmentServiceImpl.java
  29. 7 0
      sd-business/src/main/java/com/sd/business/service/order/OrderService.java
  30. 77 15
      sd-business/src/main/java/com/sd/business/service/order/impl/OrderServiceImpl.java
  31. 6 4
      sd-business/src/main/java/com/sd/business/service/order/impl/OrderSkuServiceImpl.java
  32. 6 7
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceBillingStandardServiceImpl.java
  33. 3 0
      sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemServiceImpl.java
  34. 1 1
      sd-business/src/main/java/com/sd/business/service/sku/SkuSpecService.java
  35. 1 1
      sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecServiceImpl.java
  36. 18 0
      sd-business/src/main/resources/mapper/craft/CraftProcessMapper.xml
  37. 4 1
      sd-business/src/main/resources/mapper/department/DepartmentMapper.xml
  38. 23 0
      sd-business/src/main/resources/mapper/equipment/EquipmentMapper.xml
  39. 1 0
      sd-business/src/main/resources/mapper/order/OrderOperatingLogMapper.xml
  40. 14 7
      sd-business/src/main/resources/mapper/order/OrderSkuMapper.xml
  41. 97 56
      sd-starter/src/test/java/SyncBomBootTest.java
  42. 54 27
      sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

+ 72 - 0
sd-business/src/main/java/com/sd/business/controller/craft/CraftProcessController.java

@@ -0,0 +1,72 @@
+package com.sd.business.controller.craft;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.sd.business.entity.craft.dto.CraftProcessDto;
+import com.sd.business.entity.craft.dto.CraftProcessSelectDto;
+import com.sd.business.entity.craft.vo.CraftProcessVo;
+import com.sd.business.service.craft.CraftProcessService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 工艺_工序 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@RestController
+@RequestMapping("/craftProcess")
+public class CraftProcessController {
+
+    @Autowired
+    private CraftProcessService craftProcessService;
+
+    /**
+     * 工艺_工序分页
+     */
+    @PostMapping("/page")
+    public Page<CraftProcessVo> page(@RequestBody CraftProcessSelectDto dto) {
+        return craftProcessService.getPage(dto);
+    }
+
+    /**
+     * 工艺_工序明细
+     */
+    @PostMapping("/detail")
+    public CraftProcessVo detail(@RequestBody BaseSelectDto dto) {
+        return craftProcessService.detail(dto.getId());
+    }
+
+    /**
+     * 工艺_工序新增
+     */
+    @PostMapping("/add")
+    public void add(@Validated @RequestBody CraftProcessDto craftProcessDto) {
+        craftProcessService.add(craftProcessDto);
+    }
+
+    /**
+     * 工艺_工序编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody CraftProcessDto craftProcessDto) {
+        craftProcessService.edit(craftProcessDto);
+    }
+
+    /**
+     * 工艺_工序删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        craftProcessService.delete(dto.getId());
+    }
+
+}

+ 72 - 0
sd-business/src/main/java/com/sd/business/controller/equipment/EquipmentController.java

@@ -0,0 +1,72 @@
+package com.sd.business.controller.equipment;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.sd.business.entity.equipment.dto.EquipmentDto;
+import com.sd.business.entity.equipment.dto.EquipmentSelectDto;
+import com.sd.business.entity.equipment.vo.EquipmentVo;
+import com.sd.business.service.equipment.EquipmentService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+
+/**
+ * <p>
+ * 设备 前端控制器
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@RestController
+@RequestMapping("/equipment")
+public class EquipmentController {
+
+    @Autowired
+    private EquipmentService equipmentService;
+
+    /**
+     * 设备分页
+     */
+    @PostMapping("/page")
+    public Page<EquipmentVo> page(@RequestBody EquipmentSelectDto dto) {
+        return equipmentService.getPage(dto);
+    }
+
+    /**
+     * 设备明细
+     */
+    @PostMapping("/detail")
+    public EquipmentVo detail(@RequestBody BaseSelectDto dto) {
+        return equipmentService.detail(dto.getId());
+    }
+
+    /**
+     * 设备新增
+     */
+    @PostMapping("/add")
+    public void add(@Validated @RequestBody EquipmentDto equipmentDto) {
+        equipmentService.add(equipmentDto);
+    }
+
+    /**
+     * 设备编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody EquipmentDto equipmentDto) {
+        equipmentService.edit(equipmentDto);
+    }
+
+    /**
+     * 设备删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        equipmentService.delete(dto.getId());
+    }
+
+}

+ 10 - 0
sd-business/src/main/java/com/sd/business/controller/order/OrderController.java

@@ -4,7 +4,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.sd.business.entity.order.dto.OrderInfoDto;
 import com.sd.business.entity.order.dto.OrderSelectDto;
+import com.sd.business.entity.order.dto.SkuSpecPriceDto;
 import com.sd.business.entity.order.vo.OrderInfoVo;
+import com.sd.business.entity.order.vo.SkuSpecPriceVo;
 import com.sd.business.service.order.OrderService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
@@ -68,4 +70,12 @@ public class OrderController {
         orderService.delete(dto.getId());
     }
 
+    /**
+     * 通过sku规格id获取产品价格
+     */
+    @PostMapping("/getSkuSpecPrice")
+    public SkuSpecPriceVo getSkuSpecPrice(@RequestBody SkuSpecPriceDto dto) {
+        return orderService.getSkuSpecPrice(dto);
+    }
+
 }

+ 3 - 0
sd-business/src/main/java/com/sd/business/entity/bom/po/Bom.java

@@ -128,6 +128,9 @@ public class Bom extends BasePo {
      */
     private String detailText;
 
+    /**
+     * 原系统id
+     */
     private String oldId;
 
 }

+ 10 - 0
sd-business/src/main/java/com/sd/business/entity/bom/po/BomSpec.java

@@ -85,4 +85,14 @@ public class BomSpec extends BasePo {
      */
     private BigDecimal netWeight;
 
+    /**
+     * 原系统id
+     */
+    private String oldId;
+
+    /**
+     * 原系统bomId
+     */
+    private String oldBomId;
+
 }

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/craft/dto/CraftProcessDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.craft.dto;
+
+import com.sd.business.entity.craft.po.CraftProcess;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 工艺_工序新增编辑入参实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class CraftProcessDto extends CraftProcess {
+
+}

+ 27 - 0
sd-business/src/main/java/com/sd/business/entity/craft/dto/CraftProcessSelectDto.java

@@ -0,0 +1,27 @@
+package com.sd.business.entity.craft.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 工艺_工序列表查询入参实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class CraftProcessSelectDto extends BaseSelectDto {
+
+    /**
+     * 工序编码
+     */
+    private String code;
+
+    /**
+     * 工序名称
+     */
+    private String name;
+
+}

+ 47 - 0
sd-business/src/main/java/com/sd/business/entity/craft/po/CraftProcess.java

@@ -0,0 +1,47 @@
+package com.sd.business.entity.craft.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * <p>
+ * 工艺_工序
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+@TableName("craft_process")
+public class CraftProcess extends BasePo {
+
+    /**
+     * 工序编码
+     */
+    @NotBlank(message = "工序编码不能为空")
+    private String code;
+
+    /**
+     * 工序名称
+     */
+    @NotBlank(message = "工序名称不能为空")
+    private String name;
+
+    /**
+     * 标准工时(秒)
+     */
+    @NotNull(message = "标准工时不能为空")
+    private Integer manHour;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/craft/vo/CraftProcessVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.craft.vo;
+
+import com.sd.business.entity.craft.po.CraftProcess;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 工艺_工序列表查询返回值实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class CraftProcessVo extends CraftProcess {
+
+}

+ 6 - 0
sd-business/src/main/java/com/sd/business/entity/department/dto/DepartmentSelectDto.java

@@ -29,4 +29,10 @@ public class DepartmentSelectDto extends BaseSelectDto {
      */
     private String contactPerson;
 
+    /**
+     * 加工计费标准id
+     */
+    private Long priceBillingStandardId;
+
+
 }

+ 5 - 0
sd-business/src/main/java/com/sd/business/entity/department/vo/DepartmentVo.java

@@ -19,4 +19,9 @@ public class DepartmentVo extends Department {
      */
     private String priceSystemName;
 
+    /**
+     * 加工计费标准名称
+     */
+    private String priceBillingStandardName;
+
 }

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/equipment/dto/EquipmentDto.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.equipment.dto;
+
+import com.sd.business.entity.equipment.po.Equipment;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 设备新增编辑入参实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class EquipmentDto extends Equipment {
+
+}

+ 32 - 0
sd-business/src/main/java/com/sd/business/entity/equipment/dto/EquipmentSelectDto.java

@@ -0,0 +1,32 @@
+package com.sd.business.entity.equipment.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 设备列表查询入参实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class EquipmentSelectDto extends BaseSelectDto {
+
+    /**
+     * 设备编码
+     */
+    private String code;
+
+    /**
+     * 设备名称
+     */
+    private String name;
+
+    /**
+     * 工序id
+     */
+    private Long craftProcessId;
+
+}

+ 73 - 0
sd-business/src/main/java/com/sd/business/entity/equipment/po/Equipment.java

@@ -0,0 +1,73 @@
+package com.sd.business.entity.equipment.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * <p>
+ * 设备
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+@TableName("equipment")
+public class Equipment extends BasePo {
+
+    /**
+     * 设备编码
+     */
+    @NotBlank(message = "设备编码不能为空")
+    private String code;
+
+    /**
+     * 设备名称
+     */
+    @NotBlank(message = "设备名称不能为空")
+    private String name;
+
+    /**
+     * 工序id
+     */
+    @NotNull(message = "工序id不能为空")
+    private Long craftProcessId;
+
+    /**
+     * 规格
+     */
+    private String spec;
+
+    /**
+     * 制造商
+     */
+    private String manufacturer;
+
+    /**
+     * 制造商电话
+     */
+    private String manufacturerTelephone;
+
+    /**
+     * 生产日期
+     */
+    private Date productionDate;
+
+    /**
+     * 生产编号
+     */
+    private String productionNumber;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 17 - 0
sd-business/src/main/java/com/sd/business/entity/equipment/vo/EquipmentVo.java

@@ -0,0 +1,17 @@
+package com.sd.business.entity.equipment.vo;
+
+import com.sd.business.entity.equipment.po.Equipment;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 设备列表查询返回值实体
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Getter
+@Setter
+public class EquipmentVo extends Equipment {
+
+}

+ 5 - 0
sd-business/src/main/java/com/sd/business/entity/order/dto/OrderSkuSelectDto.java

@@ -49,4 +49,9 @@ public class OrderSkuSelectDto extends BaseSelectDto {
      */
     private Integer orderStatus;
 
+    /**
+     * 事业部名称
+     */
+    private String departmentName;
+
 }

+ 25 - 0
sd-business/src/main/java/com/sd/business/entity/order/dto/SkuSpecPriceDto.java

@@ -0,0 +1,25 @@
+package com.sd.business.entity.order.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+
+@Getter
+@Setter
+public class SkuSpecPriceDto {
+
+    /**
+     * sku规格id
+     */
+    @NotNull(message = "sku规格id不能为空")
+    private Long skuSpecId;
+
+    /**
+     * 数量
+     */
+    @NotNull(message = "sku规格数量不能为空")
+    private BigDecimal quantity;
+
+}

+ 1 - 1
sd-business/src/main/java/com/sd/business/entity/order/po/OrderInfo.java

@@ -76,6 +76,7 @@ public class OrderInfo extends BasePo {
     /**
      * 交期
      */
+    @NotNull(message = "交货时间不能为空")
     private Date deliveryTime;
 
     /**
@@ -155,7 +156,6 @@ public class OrderInfo extends BasePo {
     /**
      * 发货时间
      */
-    @NotNull(message = "交货时间不能为空")
     private Date shippingTime;
 
     /**

+ 10 - 4
sd-business/src/main/java/com/sd/business/entity/order/po/OrderSku.java

@@ -15,7 +15,7 @@ import java.util.Date;
  * </p>
  *
  * @author
- * @since 2023-07-19
+ * @since 2023-07-25
  */
 @Getter
 @Setter
@@ -61,6 +61,12 @@ public class OrderSku extends BasePo {
     private BigDecimal quantity;
 
     /**
+     * 单价
+     */
+    @NotNull(message = "单价不能为空")
+    private BigDecimal unitPrice;
+
+    /**
      * 定制加工费
      */
     @NotNull(message = "定制加工费不能为空")
@@ -85,10 +91,10 @@ public class OrderSku extends BasePo {
     private BigDecimal packingLabor;
 
     /**
-     * 单价
+     * 包材费
      */
-    @NotNull(message = "单价不能为空")
-    private BigDecimal unitPrice;
+    @NotNull(message = "包材费不能为空")
+    private BigDecimal packagingMaterialCost;
 
     /**
      * 打印 1单面 2 双面

+ 15 - 0
sd-business/src/main/java/com/sd/business/entity/order/vo/OrderSkuVo.java

@@ -4,6 +4,7 @@ import com.sd.business.entity.order.po.OrderSku;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 
@@ -53,6 +54,16 @@ public class OrderSkuVo extends OrderSku {
     private Integer orderStatus;
 
     /**
+     * 订单结算状态 1未结算 2已对账 3已结算
+     */
+    private String orderSettlementStatus;
+
+    /**
+     * 订单总金额
+     */
+    private BigDecimal orderTotalAmount;
+
+    /**
      * 下单时间
      */
     private Date wlnCreateTime;
@@ -77,5 +88,9 @@ public class OrderSkuVo extends OrderSku {
      */
     private String bomSpecCode;
 
+    /**
+     * 事业部名称
+     */
+    private String departmentName;
 
 }

+ 37 - 0
sd-business/src/main/java/com/sd/business/entity/order/vo/SkuSpecPriceVo.java

@@ -0,0 +1,37 @@
+package com.sd.business.entity.order.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+@Getter
+@Setter
+public class SkuSpecPriceVo {
+
+    /**
+     * 定制加工费
+     */
+    private BigDecimal customProcessingFee;
+
+    /**
+     * 代发费
+     */
+    private BigDecimal lssueFee;
+
+    /**
+     * 快递包材费
+     */
+    private BigDecimal deliveryMaterialsFee;
+
+    /**
+     * 包装人工费
+     */
+    private BigDecimal packingLabor;
+
+    /**
+     * 单价
+     */
+    private BigDecimal unitPrice;
+
+}

+ 26 - 0
sd-business/src/main/java/com/sd/business/mapper/craft/CraftProcessMapper.java

@@ -0,0 +1,26 @@
+package com.sd.business.mapper.craft;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.craft.po.CraftProcess;
+import com.sd.business.entity.craft.vo.CraftProcessVo;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 工艺_工序 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+public interface CraftProcessMapper extends BaseMapper<CraftProcess> {
+
+    /**
+     * 工艺_工序分页
+     */
+    Page<CraftProcessVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<CraftProcess> wrapper);
+
+}

+ 26 - 0
sd-business/src/main/java/com/sd/business/mapper/equipment/EquipmentMapper.java

@@ -0,0 +1,26 @@
+package com.sd.business.mapper.equipment;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.equipment.po.Equipment;
+import com.sd.business.entity.equipment.vo.EquipmentVo;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 设备 Mapper 接口
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+public interface EquipmentMapper extends BaseMapper<Equipment> {
+
+    /**
+     * 设备分页
+     */
+    Page<EquipmentVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<Equipment> wrapper);
+
+}

+ 46 - 0
sd-business/src/main/java/com/sd/business/service/craft/CraftProcessService.java

@@ -0,0 +1,46 @@
+package com.sd.business.service.craft;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.craft.dto.CraftProcessDto;
+import com.sd.business.entity.craft.dto.CraftProcessSelectDto;
+import com.sd.business.entity.craft.po.CraftProcess;
+import com.sd.business.entity.craft.vo.CraftProcessVo;
+
+
+/**
+ * <p>
+ * 工艺_工序 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+public interface CraftProcessService extends BaseService<CraftProcess> {
+
+    /**
+     * 工艺_工序分页
+     */
+    Page<CraftProcessVo> getPage(CraftProcessSelectDto dto);
+
+    /**
+     * 工艺_工序明细
+     */
+    CraftProcessVo detail(Long id);
+
+    /**
+     * 工艺_工序新增
+     */
+    void add(CraftProcessDto craftProcessDto);
+
+    /**
+     * 工艺_工序编辑
+     */
+    void edit(CraftProcessDto craftProcessDto);
+
+    /**
+     * 工艺_工序删除
+     */
+    void delete(Long id);
+
+}

+ 60 - 0
sd-business/src/main/java/com/sd/business/service/craft/impl/CraftProcessServiceImpl.java

@@ -0,0 +1,60 @@
+package com.sd.business.service.craft.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.craft.dto.CraftProcessDto;
+import com.sd.business.entity.craft.dto.CraftProcessSelectDto;
+import com.sd.business.entity.craft.po.CraftProcess;
+import com.sd.business.entity.craft.vo.CraftProcessVo;
+import com.sd.business.mapper.craft.CraftProcessMapper;
+import com.sd.business.service.craft.CraftProcessService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 工艺_工序 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Service
+public class CraftProcessServiceImpl extends ServiceImpl<CraftProcessMapper, CraftProcess> implements CraftProcessService {
+
+    @Override
+    public Page<CraftProcessVo> getPage(CraftProcessSelectDto dto) {
+        IWrapper<CraftProcess> wrapper = getWrapper();
+        wrapper.like("cp", CraftProcess::getName, dto.getName());
+        wrapper.like("cp", CraftProcess::getCode, dto.getCode());
+        wrapper.orderByDesc("cp", CraftProcess::getId);
+
+        Page<CraftProcessVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public CraftProcessVo detail(Long id) {
+        CraftProcess CraftProcess = this.getById(id);
+        CraftProcessVo result = BeanUtil.toBean(CraftProcess, CraftProcessVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(CraftProcessDto craftProcessDto) {
+        this.save(craftProcessDto);
+    }
+
+    @Override
+    public void edit(CraftProcessDto craftProcessDto) {
+        this.updateById(craftProcessDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 1 - 0
sd-business/src/main/java/com/sd/business/service/department/impl/DepartmentServiceImpl.java

@@ -54,6 +54,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
         wrapper.like("d", Department::getName, dto.getName());
         wrapper.eq("d", Department::getPriceSystemId, dto.getPriceSystemId());
         wrapper.like("d", Department::getContactPerson, dto.getContactPerson());
+        wrapper.eq("d", Department::getPriceBillingStandardId, dto.getPriceBillingStandardId());
         Page<DepartmentVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
         return page;
     }

+ 46 - 0
sd-business/src/main/java/com/sd/business/service/equipment/EquipmentService.java

@@ -0,0 +1,46 @@
+package com.sd.business.service.equipment;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.service.BaseService;
+import com.sd.business.entity.equipment.dto.EquipmentDto;
+import com.sd.business.entity.equipment.dto.EquipmentSelectDto;
+import com.sd.business.entity.equipment.po.Equipment;
+import com.sd.business.entity.equipment.vo.EquipmentVo;
+
+
+/**
+ * <p>
+ * 设备 服务类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+public interface EquipmentService extends BaseService<Equipment> {
+
+    /**
+     * 设备分页
+     */
+    Page<EquipmentVo> getPage(EquipmentSelectDto dto);
+
+    /**
+     * 设备明细
+     */
+    EquipmentVo detail(Long id);
+
+    /**
+     * 设备新增
+     */
+    void add(EquipmentDto equipmentDto);
+
+    /**
+     * 设备编辑
+     */
+    void edit(EquipmentDto equipmentDto);
+
+    /**
+     * 设备删除
+     */
+    void delete(Long id);
+
+}

+ 61 - 0
sd-business/src/main/java/com/sd/business/service/equipment/impl/EquipmentServiceImpl.java

@@ -0,0 +1,61 @@
+package com.sd.business.service.equipment.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.equipment.dto.EquipmentDto;
+import com.sd.business.entity.equipment.dto.EquipmentSelectDto;
+import com.sd.business.entity.equipment.po.Equipment;
+import com.sd.business.entity.equipment.vo.EquipmentVo;
+import com.sd.business.mapper.equipment.EquipmentMapper;
+import com.sd.business.service.equipment.EquipmentService;
+import org.springframework.stereotype.Service;
+
+
+/**
+ * <p>
+ * 设备 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-07-25
+ */
+@Service
+public class EquipmentServiceImpl extends ServiceImpl<EquipmentMapper, Equipment> implements EquipmentService {
+
+    @Override
+    public Page<EquipmentVo> getPage(EquipmentSelectDto dto) {
+        IWrapper<Equipment> wrapper = getWrapper();
+        wrapper.like("e", Equipment::getName, dto.getName());
+        wrapper.like("e", Equipment::getCode, dto.getCode());
+        wrapper.eq("e", Equipment::getCraftProcessId, dto.getCraftProcessId());
+        wrapper.orderByDesc("e", Equipment::getId);
+
+        Page<EquipmentVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public EquipmentVo detail(Long id) {
+        Equipment Equipment = this.getById(id);
+        EquipmentVo result = BeanUtil.toBean(Equipment, EquipmentVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(EquipmentDto equipmentDto) {
+        this.save(equipmentDto);
+    }
+
+    @Override
+    public void edit(EquipmentDto equipmentDto) {
+        this.updateById(equipmentDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 7 - 0
sd-business/src/main/java/com/sd/business/service/order/OrderService.java

@@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.service.BaseService;
 import com.sd.business.entity.order.dto.OrderInfoDto;
 import com.sd.business.entity.order.dto.OrderSelectDto;
+import com.sd.business.entity.order.dto.SkuSpecPriceDto;
 import com.sd.business.entity.order.po.OrderInfo;
 import com.sd.business.entity.order.vo.OrderInfoVo;
+import com.sd.business.entity.order.vo.SkuSpecPriceVo;
 
 /**
  * <p>
@@ -42,4 +44,9 @@ public interface OrderService extends BaseService<OrderInfo> {
      */
     void delete(Long id);
 
+    /**
+     * 通过sku规格id获取产品价格
+     */
+    SkuSpecPriceVo getSkuSpecPrice(SkuSpecPriceDto dto);
+
 }

+ 77 - 15
sd-business/src/main/java/com/sd/business/service/order/impl/OrderServiceImpl.java

@@ -1,16 +1,19 @@
 package com.sd.business.service.order.impl;
 
 import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.constant.StatusConstant;
 import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.sd.business.entity.bom.po.BomSpec;
 import com.sd.business.entity.department.po.Department;
 import com.sd.business.entity.order.dto.OrderInfoDto;
 import com.sd.business.entity.order.dto.OrderSelectDto;
 import com.sd.business.entity.order.dto.OrderSkuDto;
+import com.sd.business.entity.order.dto.SkuSpecPriceDto;
 import com.sd.business.entity.order.po.OrderInfo;
 import com.sd.business.entity.order.po.OrderOperatingLog;
 import com.sd.business.entity.order.po.OrderSku;
@@ -18,6 +21,9 @@ import com.sd.business.entity.order.po.OrderSkuBom;
 import com.sd.business.entity.order.vo.OrderInfoVo;
 import com.sd.business.entity.order.vo.OrderSkuBomVo;
 import com.sd.business.entity.order.vo.OrderSkuVo;
+import com.sd.business.entity.order.vo.SkuSpecPriceVo;
+import com.sd.business.entity.price.po.PriceBillingStandardDetail;
+import com.sd.business.entity.sku.po.SkuSpec;
 import com.sd.business.mapper.order.OrderMapper;
 import com.sd.business.service.bom.BomSpecService;
 import com.sd.business.service.department.DepartmentService;
@@ -25,16 +31,15 @@ import com.sd.business.service.order.OrderOperatingLogService;
 import com.sd.business.service.order.OrderService;
 import com.sd.business.service.order.OrderSkuBomService;
 import com.sd.business.service.order.OrderSkuService;
+import com.sd.business.service.price.PriceBillingStandardDetailService;
 import com.sd.business.service.sku.SkuSpecService;
+import com.sd.framework.util.Assert;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -66,6 +71,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
     @Autowired
     private OrderOperatingLogService orderOperatingLogService;
 
+    @Autowired
+    private PriceBillingStandardDetailService priceBillingStandardDetailService;
+
     @Override
     public Page<OrderInfoVo> getPage(OrderSelectDto dto) {
         IWrapper<OrderInfo> wrapper = getWrapper();
@@ -79,7 +87,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
         wrapper.le("o", OrderInfo::getWlnCreateTime, dto.getEndTime());
 
         Page<OrderInfoVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
-
         return page;
     }
 
@@ -92,12 +99,14 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
 
         // 订单
         OrderInfoVo result = BeanUtil.toBean(orderInfo, OrderInfoVo.class);
+
+        // 赋值事业部名称
         Department department = departmentService.getById(orderInfo.getDepartmentId());
         if (department != null) {
             result.setDepartmentName(department.getName());
         }
 
-        // 订单明细
+        // 赋值订单明细
         List<OrderSku> tempOrderSkuList = orderSkuService.list(q -> q.eq(OrderSku::getOrderId, id));
         List<OrderSkuVo> orderSkuList = BeanUtil.copyToList(tempOrderSkuList, OrderSkuVo.class);
         skuSpecService.attributeAssign(orderSkuList, OrderSkuVo::getSkuSpecId, (item, skuSpec) -> {
@@ -109,7 +118,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
         });
         result.setOrderSkuList(orderSkuList);
 
-        // 包材配件/单品
+        // 赋值包材配件/单品
         List<OrderSkuBom> tempOrderSkuBomList = orderSkuBomService.list(q -> q.eq(OrderSkuBom::getOrderId, id));
         List<OrderSkuBomVo> orderSkuBomList = BeanUtil.copyToList(tempOrderSkuBomList, OrderSkuBomVo.class);
         bomSpecService.attributeAssign(orderSkuBomList, OrderSkuBom::getBomSpecId, (item, bomSpec) -> {
@@ -128,7 +137,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
     public void add(OrderInfoDto orderDto) {
         orderDto.setSource(1);
         orderDto.setCode("PI" + new Date().getTime());
-        orderDto.setDeliveryTime(DateUtil.offsetDay(new Date(), 1));
         orderDto.setSettlementStatus(1);
         orderDto.setTaxRate(new BigDecimal("10.00"));
         orderDto.setTag("0");
@@ -143,9 +151,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
         orderSkuService.saveBatch(tempOrderSkuList);
 
         List<OrderSkuBom> orderSkuBomList = orderSkuList.stream()
-                .peek(item -> item.setOrderId(orderDto.getId()))
-                .flatMap(orderSku -> orderSku.getOrderSkuBomList()
-                        .stream().peek(orderSkuBom -> orderSkuBom.setOrderSkuId(orderSku.getId())))
+                .flatMap(orderSku -> orderSku.getOrderSkuBomList().stream()
+                        .peek(orderSkuBom -> orderSkuBom.setOrderId(orderDto.getId()))
+                        .peek(orderSkuBom -> orderSkuBom.setOrderSkuId(orderSku.getId())))
                 .collect(Collectors.toList());
         orderSkuBomService.saveBatch(orderSkuBomList);
 
@@ -170,9 +178,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
         orderSkuService.saveOrUpdateBatch(tempOrderSkuList);
 
         List<OrderSkuBom> orderSkuBomList = orderSkuList.stream()
-                .peek(item -> item.setOrderId(orderDto.getId()))
-                .flatMap(orderSku -> orderSku.getOrderSkuBomList()
-                        .stream().peek(orderSkuBom -> orderSkuBom.setOrderSkuId(orderSku.getId())))
+                .flatMap(orderSku -> orderSku.getOrderSkuBomList().stream()
+                        .peek(orderSkuBom -> orderSkuBom.setOrderId(orderDto.getId()))
+                        .peek(orderSkuBom -> orderSkuBom.setOrderSkuId(orderSku.getId())))
                 .collect(Collectors.toList());
         orderSkuBomService.saveOrUpdateBatch(orderSkuBomList);
 
@@ -199,4 +207,58 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
         orderOperatingLogService.save(orderOperatingLog);
     }
 
+    @Override
+    public SkuSpecPriceVo getSkuSpecPrice(SkuSpecPriceDto dto) {
+
+        // 查询单价
+        Long skuSpecId = dto.getSkuSpecId();
+        SkuSpec skuSpec = skuSpecService.getById(skuSpecId);
+        Assert.notNull(skuSpec, "未知sku规格");
+        Long bomSpecId = skuSpec.getBomSpecId();
+        Assert.notNull(bomSpecId, "sku未绑定bom");
+        BomSpec bomSpec = bomSpecService.getById(bomSpecId);
+        Assert.notNull(bomSpec, "未知bom规格");
+
+        // 其他价格查询
+        Long deptId = SecurityUtils.getDeptId();
+        Department department = departmentService.getById(deptId);
+        Assert.notNull(department, "未知事业部");
+        Long priceBillingStandardId = department.getPriceBillingStandardId();
+        Assert.notNull(priceBillingStandardId, "事业部未绑定加工计费标准");
+        List<PriceBillingStandardDetail> priceBillingStandardDetailList = priceBillingStandardDetailService.list(
+                q -> q.eq(PriceBillingStandardDetail::getPriceBillingStandardId, priceBillingStandardId));
+
+        // 赋值
+        SkuSpecPriceVo skuSpecPriceVo = new SkuSpecPriceVo();
+        skuSpecPriceVo.setUnitPrice(bomSpec.getInternalSellingPrice());
+        skuSpecPriceVo.setCustomProcessingFee(BigDecimal.ZERO);
+        skuSpecPriceVo.setLssueFee(BigDecimal.ZERO);
+        skuSpecPriceVo.setDeliveryMaterialsFee(BigDecimal.ZERO);
+        skuSpecPriceVo.setPackingLabor(BigDecimal.ZERO);
+
+        for (PriceBillingStandardDetail priceBillingStandardDetail : priceBillingStandardDetailList) {
+            String chargeItem = priceBillingStandardDetail.getChargeItem();
+            BigDecimal chargePrice = ObjectUtil.defaultIfNull(priceBillingStandardDetail.getChargePrice(), BigDecimal.ZERO);
+            switch (chargeItem) {
+                case "3":
+                    skuSpecPriceVo.setPackingLabor(chargePrice);
+                    break;
+                case "4":
+                    skuSpecPriceVo.setLssueFee(chargePrice);
+                    break;
+                case "5":
+                    skuSpecPriceVo.setDeliveryMaterialsFee(chargePrice);
+                    break;
+                default:
+                    if (Objects.equals(chargeItem, skuSpec.getMachinedPanel())
+                            && priceBillingStandardDetail.getSectionMin().compareTo(dto.getQuantity()) >= 0
+                            && priceBillingStandardDetail.getSectionMax().compareTo(dto.getQuantity()) < 0) {
+                        skuSpecPriceVo.setCustomProcessingFee(chargePrice);
+                    }
+            }
+        }
+
+        return skuSpecPriceVo;
+    }
+
 }

+ 6 - 4
sd-business/src/main/java/com/sd/business/service/order/impl/OrderSkuServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.utils.wrapper.IWrapper;
 import com.sd.business.entity.bom.po.BomSpec;
+import com.sd.business.entity.department.po.Department;
 import com.sd.business.entity.order.dto.OrderSkuDto;
 import com.sd.business.entity.order.dto.OrderSkuSelectDto;
 import com.sd.business.entity.order.po.OrderInfo;
@@ -38,14 +39,15 @@ public class OrderSkuServiceImpl extends ServiceImpl<OrderSkuMapper, OrderSku> i
     public Page<OrderSkuVo> getPage(OrderSkuSelectDto dto) {
         IWrapper<OrderSku> wrapper = getWrapper();
         wrapper.orderByDesc("os", OrderSku::getId);
+
+        wrapper.like("oi", OrderInfo::getCode, dto.getOrderCode());
+        wrapper.like("oi", OrderInfo::getWlnCode, dto.getOrderWlnCode());
+        wrapper.like("d", Department::getName, dto.getDepartmentName());
         wrapper.like("ss", SkuSpec::getCode, dto.getSkuSpecCode());
         wrapper.like("ss", SkuSpec::getName, dto.getSkuSpecName());
         wrapper.like("bs", BomSpec::getCode, dto.getBomSpecCode());
         wrapper.like("bs", BomSpec::getName, dto.getBomSpecName());
-
-        wrapper.like("oi", OrderInfo::getCode, dto.getOrderCode());
-        wrapper.like("oi", OrderInfo::getWlnCode, dto.getOrderWlnCode());
-        wrapper.like("oi", OrderInfo::getStatus, dto.getOrderStatus());
+        wrapper.eq("oi", OrderInfo::getStatus, dto.getOrderStatus());
 
         wrapper.ge("oi", OrderInfo::getWlnCreateTime, dto.getBeginTime());
         wrapper.le("oi", OrderInfo::getWlnCreateTime, dto.getEndTime());

+ 6 - 7
sd-business/src/main/java/com/sd/business/service/price/impl/PriceBillingStandardServiceImpl.java

@@ -65,9 +65,9 @@ public class PriceBillingStandardServiceImpl extends ServiceImpl<PriceBillingSta
     public void add(PriceBillingStandardDto priceBillingStandardDto) {
         this.save(priceBillingStandardDto);
 
-        List<PriceBillingStandardDetail> priceBillingStandardDetailList = priceBillingStandardDto.getPriceBillingStandardDetailList();
-        priceBillingStandardDetailList.forEach(item -> item.setPriceBillingStandardId(priceBillingStandardDto.getId()));
-        priceBillingStandardDetailService.saveBatch(priceBillingStandardDetailList);
+        List<PriceBillingStandardDetail> list = priceBillingStandardDto.getPriceBillingStandardDetailList();
+        list.forEach(item -> item.setPriceBillingStandardId(priceBillingStandardDto.getId()));
+        priceBillingStandardDetailService.saveBatch(list);
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -75,11 +75,10 @@ public class PriceBillingStandardServiceImpl extends ServiceImpl<PriceBillingSta
     public void edit(PriceBillingStandardDto priceBillingStandardDto) {
         this.updateById(priceBillingStandardDto);
 
-        List<PriceBillingStandardDetail> priceBillingStandardDetailList = priceBillingStandardDto.getPriceBillingStandardDetailList();
-
         // 更新关联
-        priceBillingStandardDetailService.editLinked(priceBillingStandardDetailList,
-                PriceBillingStandardDetail::getPriceBillingStandardId, priceBillingStandardDto.getId());
+        List<PriceBillingStandardDetail> list = priceBillingStandardDto.getPriceBillingStandardDetailList();
+        list.forEach(item -> item.setPriceBillingStandardId(priceBillingStandardDto.getId()));
+        priceBillingStandardDetailService.editLinked(list, PriceBillingStandardDetail::getPriceBillingStandardId, priceBillingStandardDto.getId());
     }
 
     @Transactional(rollbackFor = Exception.class)

+ 3 - 0
sd-business/src/main/java/com/sd/business/service/price/impl/PriceSystemServiceImpl.java

@@ -112,6 +112,9 @@ public class PriceSystemServiceImpl extends ServiceImpl<PriceSystemMapper, Price
                 .flatMap(item -> item.getBomSpecList().stream())
                 .map(BaseIdPo::getId)
                 .collect(Collectors.toList());
+        if (bomSpecIdList.size() == 0) {
+            return page;
+        }
         Map<Long, PriceSystemBomSpec> priceSystemBomSpecMap = priceSystemBomSpecService.mapKEntity(
                 PriceSystemBomSpec::getBomSpecId,
                 q -> q.eq(PriceSystemBomSpec::getPriceSystemId, priceSystemId).in(PriceSystemBomSpec::getBomSpecId, bomSpecIdList));

+ 1 - 1
sd-business/src/main/java/com/sd/business/service/sku/SkuSpecService.java

@@ -50,6 +50,6 @@ public interface SkuSpecService extends BaseService<SkuSpec> {
     /**
      * 根据sku规格id获取bomId和bom规格id
      */
-    Map<Long, BomBo> getBomBoByIdList(List<Long> skuSpecIdList);
+    Map<Long, BomBo> getBomBySkuSpecIdList(List<Long> skuSpecIdList);
 
 }

+ 1 - 1
sd-business/src/main/java/com/sd/business/service/sku/impl/SkuSpecServiceImpl.java

@@ -64,7 +64,7 @@ public class SkuSpecServiceImpl extends ServiceImpl<SkuSpecMapper, SkuSpec> impl
     }
 
     @Override
-    public Map<Long, BomBo> getBomBoByIdList(List<Long> skuSpecIdList) {
+    public Map<Long, BomBo> getBomBySkuSpecIdList(List<Long> skuSpecIdList) {
 
         if (ObjectUtil.isEmpty(skuSpecIdList)) {
             return Collections.emptyMap();

+ 18 - 0
sd-business/src/main/resources/mapper/craft/CraftProcessMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sd.business.mapper.craft.CraftProcessMapper">
+    <select id="getPage" resultType="com.sd.business.entity.craft.vo.CraftProcessVo">
+        select cp.id,
+               cp.code,
+               cp.name,
+               cp.man_hour,
+               cp.remark,
+               cp.create_user,
+               cp.create_time,
+               cp.update_user,
+               cp.update_time
+        from craft_process cp
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 4 - 1
sd-business/src/main/resources/mapper/department/DepartmentMapper.xml

@@ -23,9 +23,12 @@
                d.create_time,
                d.update_user,
                d.update_time,
-               ps.name priceSystemName
+               ps.name  priceSystemName,
+               d.price_billing_standard_id,
+               pbs.name priceBillingStandardName
         from department d
                  left join price_system ps on d.price_system_id = ps.id
+                 left join price_billing_standard pbs on d.price_billing_standard_id = pbs.id
             ${ew.customSqlSegment}
     </select>
 

+ 23 - 0
sd-business/src/main/resources/mapper/equipment/EquipmentMapper.xml

@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sd.business.mapper.equipment.EquipmentMapper">
+    <select id="getPage" resultType="com.sd.business.entity.equipment.vo.EquipmentVo">
+        select e.id,
+               e.code,
+               e.name,
+               e.craft_process_id,
+               e.spec,
+               e.manufacturer,
+               e.manufacturer_telephone,
+               e.production_date,
+               e.production_number,
+               e.remark,
+               e.create_user,
+               e.create_time,
+               e.update_user,
+               e.update_time
+        from equipment e
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 1 - 0
sd-business/src/main/resources/mapper/order/OrderOperatingLogMapper.xml

@@ -4,6 +4,7 @@
     <select id="getPage" resultType="com.sd.business.entity.order.vo.OrderOperatingLogVo">
         select ool.id,
                ool.order_id,
+               ool.order_code,
                ool.type,
                ool.create_user,
                ool.create_time,

+ 14 - 7
sd-business/src/main/resources/mapper/order/OrderSkuMapper.xml

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.sd.business.mapper.order.OrderSkuMapper">
+
     <select id="getPage" resultType="com.sd.business.entity.order.vo.OrderSkuVo">
         select os.id,
                os.order_id,
@@ -11,6 +12,7 @@
                os.lssue_fee,
                os.delivery_materials_fee,
                os.packing_labor,
+               os.packaging_material_cost,
                os.unit_price,
                os.print_type,
                os.package_remark,
@@ -19,21 +21,26 @@
                os.update_user,
                os.update_time,
 
-               oi.code     orderCode,
-               oi.wln_code orderWlnCode,
-               oi.status   orderStatus,
+               oi.code              orderCode,
+               oi.wln_code          orderWlnCode,
+               oi.status            orderStatus,
+               oi.settlement_status orderSettlementStatus,
+               oi.total_amount      orderTotalAmount,
                oi.wln_create_time,
 
-               ss.code     skuSpecCode,
-               ss.name     skuSpecName,
+               ss.code              skuSpecCode,
+               ss.name              skuSpecName,
+
+               bs.name              bomSpecName,
+               bs.code              bomSpecCode,
 
-               bs.name     bomSpecName,
-               bs.code     bomSpecCode
+               d.name               departmentName
 
         from order_sku os
                  left join order_info oi on oi.id = os.order_id
                  left join sku_spec ss on os.sku_spec_id = ss.id
                  left join bom_spec bs on ss.bom_spec_id = bs.id
+                 left join department d on oi.department_id = d.id
             ${ew.customSqlSegment}
     </select>
 

+ 97 - 56
sd-starter/src/test/java/SyncBomBootTest.java

@@ -9,6 +9,7 @@ import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
 import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.fjhx.file.entity.FileInfo;
 import com.fjhx.file.service.FileInfoService;
 import com.obs.services.ObsClient;
@@ -17,6 +18,7 @@ import com.ruoyi.common.core.domain.BaseIdPo;
 import com.ruoyi.framework.mybatis.holder.LogicHolder;
 import com.sd.SdApplication;
 import com.sd.business.entity.bom.po.Bom;
+import com.sd.business.entity.bom.po.BomSpec;
 import com.sd.business.service.bom.BomService;
 import com.sd.business.service.bom.BomSpecService;
 import org.junit.Test;
@@ -36,11 +38,8 @@ import java.util.stream.Collectors;
 @RunWith(SpringRunner.class)
 @SpringBootTest(classes = SdApplication.class, webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
 public class SyncBomBootTest {
-
     private static final Map<String, Long> classifyIdMap = new HashMap<>();
-
-    private static String oldUrlPrefix = "http://www.printmat.cn:8181/file/";
-
+    private static final String oldUrlPrefix = "http://www.printmat.cn:8181/file/";
     static {
         classifyIdMap.put("1001", 1682221249268375554L);
         classifyIdMap.put("1002", 1682221303530086402L);
@@ -59,14 +58,6 @@ public class SyncBomBootTest {
         classifyIdMap.put("1636175375388172289", 1682221804409675778L);
     }
 
-    @Autowired
-    private BomService bomService;
-    @Autowired
-    private BomSpecService bomSpecService;
-    @Autowired
-    private DataSource dataSource;
-    @Autowired
-    private FileInfoService fileInfoService;
     @Value("${obs.ak}")
     private String ak;
     @Value("${obs.sk}")
@@ -82,35 +73,76 @@ public class SyncBomBootTest {
     @Value("${ruoyi.name}")
     private String name;
 
+    @Autowired
+    private BomService bomService;
+    @Autowired
+    private BomSpecService bomSpecService;
+    @Autowired
+    private DataSource dataSource;
+    @Autowired
+    private FileInfoService fileInfoService;
+
     @DSTransactional
     @Test
     public void test() {
         DynamicRoutingDataSource dynamicRoutingDataSource = (DynamicRoutingDataSource) dataSource;
         DataSource sdDataSource = dynamicRoutingDataSource.getDataSource("business");
-        List<Bom> bomList = saveBom(sdDataSource);
 
+        List<Bom> bomList = saveBom(sdDataSource);
+        saveBomSpec(sdDataSource, bomList);
 
         System.out.println();
     }
 
+    private void saveBomSpec(DataSource sdDataSource, List<Bom> bomList) {
+        LogicHolder.setLogicHolder(new LogicHolder());
+        List<BomSpec> list = bomSpecService.list(q -> q.isNotNull(BomSpec::getOldId));
+        List<Long> bomSpecIdList = list.stream().map(BaseIdPo::getId).collect(Collectors.toList());
+        bomSpecService.removeBatchByIds(bomSpecIdList);
+        removeFile(bomSpecIdList);
+        LogicHolder.clear();
+
+        String sql = "SELECT\n" +
+                "\tid oldId,\n" +
+                "\tbom_id oldBomId,\n" +
+                "\tmag_path mainImgUrl,\n" +
+                "\tname_chinese name,\n" +
+                "\tspec_code code,\n" +
+                "\tcolor colour,\n" +
+                "\tcost_price costPrice,\n" +
+                "\tprice internalSellingPrice,\n" +
+                "\tforeign_price externalSellingPrice,\n" +
+                "\tsafety_stock safetyStock,\n" +
+                "\tproduct_long length,\n" +
+                "\tproduct_wide width,\n" +
+                "\tproduct_high height,\n" +
+                "\tnet_weight netWeight \n" +
+                "FROM\n" +
+                "\tt_sd_bom_color";
+
+        List<Map<String, Object>> bomSpecMapList = new JdbcTemplate(sdDataSource).queryForList(sql);
+        List<BomSpec> bomSpecList = BeanUtil.copyToList(bomSpecMapList, BomSpec.class);
+
+        Map<String, Long> bomMap = bomList.stream().collect(Collectors.toMap(Bom::getOldId, BaseIdPo::getId));
+
+        for (BomSpec bomSpec : bomSpecList) {
+            long id = IdWorker.getId();
+            bomSpec.setId(id);
+            bomSpec.setBomId(bomMap.get(bomSpec.getOldBomId()));
+
+            String fileUrl = uploadFile(bomSpec.getMainImgUrl(), id);
+            bomSpec.setMainImgUrl(fileUrl);
+        }
+
+        bomSpecService.saveBatch(bomSpecList);
+    }
+
     private List<Bom> saveBom(DataSource sdDataSource) {
         LogicHolder.setLogicHolder(new LogicHolder());
         List<Bom> list = bomService.list(q -> q.isNotNull(Bom::getOldId));
         List<Long> bomIdList = list.stream().map(BaseIdPo::getId).collect(Collectors.toList());
         bomService.removeBatchByIds(bomIdList);
-
-
-        if (bomIdList.size() > 0) {
-            DynamicDataSourceContextHolder.push(BaseSourceConstant.BASE);
-            List<FileInfo> fileInfoList = fileInfoService.list(q -> q.in(FileInfo::getBusinessId, bomIdList));
-            if (fileInfoList.size() > 0) {
-                fileInfoList.forEach(item -> {
-                    getObsClient().deleteObject(bucketName, item.getFileUrl());
-                    fileInfoService.removeById(item.getId());
-                });
-            }
-            DynamicDataSourceContextHolder.poll();
-        }
+        removeFile(bomIdList);
         LogicHolder.clear();
 
         String sql = "SELECT\n" +
@@ -147,32 +179,15 @@ public class SyncBomBootTest {
             map.put("bomClassifyId", classifyIdMap.get(bomClassifyId));
 
             Object mainImgUrlObj = map.get("mainImgUrl");
-
             if (mainImgUrlObj == null) {
                 continue;
             }
-
             String mainImgUrl = mainImgUrlObj.toString();
             if (StrUtil.isBlank(mainImgUrl)) {
                 continue;
             }
-
-            String objectKey = getFileName(mainImgUrl);
-
-            byte[] bytes = HttpUtil.downloadBytes(oldUrlPrefix + mainImgUrl);
-            InputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
-            getObsClient().putObject(bucketName, objectKey, byteArrayInputStream);
-
-            // 保存文件
-            FileInfo fileInfo = new FileInfo();
-            fileInfo.setFileUrl(objectKey);
-            fileInfo.setFileName(FileUtil.getName(mainImgUrl));
-            fileInfo.setBusinessId(id);
-            fileInfo.setBusinessType(0);
-            fileInfoService.save(fileInfo);
-
-            map.put("mainImgUrl", url + objectKey);
-
+            String fileUrl = uploadFile(mainImgUrl, id);
+            map.put("mainImgUrl", fileUrl);
         }
 
         List<Bom> bomList = BeanUtil.copyToList(bomMapList, Bom.class);
@@ -181,27 +196,53 @@ public class SyncBomBootTest {
         return bomList;
     }
 
-    private String getFileName(String fileUrl) {
+    private String uploadFile(String fileUrl, Long businessId) {
+        if (StrUtil.isBlank(fileUrl)) {
+            return StringPool.EMPTY;
+        }
 
-        String fileName = FileUtil.getName(fileUrl);
+        String objectKey = getFileName(fileUrl);
+        byte[] bytes = HttpUtil.downloadBytes(oldUrlPrefix + fileUrl);
+        InputStream inputStream = new ByteArrayInputStream(bytes);
+        getObsClient().putObject(bucketName, objectKey, inputStream);
+
+        FileInfo fileInfo = new FileInfo();
+        fileInfo.setFileUrl(objectKey);
+        fileInfo.setFileName(FileUtil.getName(fileUrl));
+        fileInfo.setBusinessId(businessId);
+        fileInfo.setBusinessType(0);
+        fileInfoService.save(fileInfo);
+        return url + objectKey;
+    }
 
-        // 文件后缀名
-        String suffix = FileUtil.getSuffix(fileName);
+    private void removeFile(List<Long> businessIdList) {
+        if (ObjectUtil.isEmpty(businessIdList)) {
+            return;
+        }
+        DynamicDataSourceContextHolder.push(BaseSourceConstant.BASE);
+        List<FileInfo> fileInfoList = fileInfoService.list(q -> q.in(FileInfo::getBusinessId, businessIdList));
+        if (fileInfoList.size() == 0) {
+            DynamicDataSourceContextHolder.poll();
+            return;
+        }
+        fileInfoList.forEach(item -> {
+            getObsClient().deleteObject(bucketName, item.getFileUrl());
+            fileInfoService.removeById(item.getId());
+        });
+        DynamicDataSourceContextHolder.poll();
+    }
 
-        // 文件路径
-        String objectKey = new StringJoiner("/")
+    private String getFileName(String fileUrl) {
+        String fileName = FileUtil.getName(fileUrl);
+        String suffix = FileUtil.getSuffix(fileName);
+        return new StringJoiner("/")
                 .add(name)
                 .add(active)
                 .add(DateUtil.format(new Date(), "yyyy/MM/dd"))
                 .add(IdUtil.fastSimpleUUID() + (ObjectUtil.isEmpty(suffix) ? "" : "." + suffix))
                 .toString();
-
-        return objectKey;
     }
 
-    /**
-     * 获取oss链接客户端
-     */
     private ObsClient getObsClient() {
         return new ObsClient(ak, sk, endPoint);
     }

+ 54 - 27
sd-wln/src/main/java/com/sd/wln/service/impl/WlnOrderServiceImpl.java

@@ -286,6 +286,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
         orderInfo.setRemark(wlnOrder.getString("remark"));
         orderInfo.setTaxRate(new BigDecimal("10.00"));
         orderInfo.setTag("0");
+        orderInfo.setSettlementStatus(1);
 
         StringBuilder builder = new StringBuilder();
         // 订单来源平台
@@ -332,27 +333,36 @@ public class WlnOrderServiceImpl implements WlnOrderService {
      * 创建订单包材
      */
     private List<OrderSkuBom> createOrderSkuBoom(OrderInfo orderInfo, OrderSku orderSku) {
+
         List<SkuSpecLink> list = skuSpecLinkService.list(q -> q
                 .eq(SkuSpecLink::getSkuSpecId, orderSku.getSkuSpecId())
                 .eq(SkuSpecLink::getType, 1)
                 .eq(SkuSpecLink::getDepartmentId, orderInfo.getDepartmentId())
         );
 
+        if (list.size() == 0) {
+            return Collections.emptyList();
+        }
+
         // 根据sku规格id获取bomId和bom规格id
-        Map<Long, BomBo> bomBoMap = skuSpecService.getBomBoByIdList(
-                list.stream().map(SkuSpecLink::getSkuSpecId).collect(Collectors.toList()));
+        List<Long> skuSpecIdList = list.stream().map(SkuSpecLink::getSkuSpecId).collect(Collectors.toList());
+        Map<Long, BomBo> bomBoMap = skuSpecService.getBomBySkuSpecIdList(skuSpecIdList);
 
         return list.stream().map(item -> {
-            BomBo bomBo = bomBoMap.get(item.getBomSpecId());
-
             OrderSkuBom orderSkuBom = new OrderSkuBom();
             orderSkuBom.setId(IdWorker.getId());
             orderSkuBom.setOrderId(orderInfo.getId());
             orderSkuBom.setOrderSkuId(orderSku.getId());
             orderSkuBom.setBomSpecId(item.getBomSpecId());
             orderSkuBom.setQuantity(item.getQuantity());
-            orderSkuBom.setUnitPrice(bomBo == null ? BigDecimal.ZERO :
-                    ObjectUtil.defaultIfNull(bomBo.getInternalSellingPrice(), BigDecimal.ZERO));
+
+            BomBo bomBo = bomBoMap.get(item.getBomSpecId());
+            if (bomBo == null) {
+                orderSkuBom.setUnitPrice(BigDecimal.ZERO);
+            } else {
+                orderSkuBom.setUnitPrice(ObjectUtil.defaultIfNull(bomBo.getInternalSellingPrice(), BigDecimal.ZERO));
+            }
+
             return orderSkuBom;
         }).collect(Collectors.toList());
     }
@@ -378,11 +388,13 @@ public class WlnOrderServiceImpl implements WlnOrderService {
                 .collect(Collectors.toMap(BaseIdPo::getId, Department::getPriceBillingStandardId));
 
         // 加工计费标准id 报价规则列表 map
-        Map<Long, List<PriceBillingStandardDetail>> priceBillingStandardMap = priceBillingStandardDetailService.list()
-                .stream().collect(Collectors.groupingBy(PriceBillingStandardDetail::getPriceBillingStandardId));
+        Map<Long, List<PriceBillingStandardDetail>> priceBillingStandardMap =
+                priceBillingStandardDetailService.list().stream()
+                        .filter(item -> ObjectUtil.isNotNull(item.getPriceBillingStandardId()))
+                        .collect(Collectors.groupingBy(PriceBillingStandardDetail::getPriceBillingStandardId));
 
         // 根据sku规格id获取bomId和bom规格id
-        Map<Long, BomBo> bomBoMap = skuSpecService.getBomBoByIdList(
+        Map<Long, BomBo> bomBoMap = skuSpecService.getBomBySkuSpecIdList(
                 orderSkuList.stream().map(OrderSku::getSkuSpecId).collect(Collectors.toList()));
 
         // 订单明细
@@ -406,7 +418,10 @@ public class WlnOrderServiceImpl implements WlnOrderService {
             for (OrderSku orderSku : itemOrderSkuList) {
 
                 // 赋值单价
-                assignedUnitPrice(bomBoMap, orderSku);
+                assignedUnitPrice(orderSku, bomBoMap);
+
+                // 赋值包材费
+                assignedPackagingMaterialCost(orderSku, saveOrderSkuBomList);
 
                 // 赋值其他价格
                 assignedOtherPrice(orderSku, orderInfo.getDepartmentId(),
@@ -422,7 +437,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
     /**
      * 赋值单价
      */
-    private void assignedUnitPrice(Map<Long, BomBo> bomBoMap, OrderSku orderSku) {
+    private void assignedUnitPrice(OrderSku orderSku, Map<Long, BomBo> bomBoMap) {
         BomBo bomBo = bomBoMap.get(orderSku.getSkuSpecId());
         if (bomBo != null) {
             orderSku.setUnitPrice(ObjectUtil.defaultIfNull(bomBo.getInternalSellingPrice(), BigDecimal.ZERO));
@@ -432,6 +447,18 @@ public class WlnOrderServiceImpl implements WlnOrderService {
     }
 
     /**
+     * 赋值包材费
+     */
+    private void assignedPackagingMaterialCost(OrderSku orderSku, List<OrderSkuBom> saveOrderSkuBomList) {
+        BigDecimal packagingMaterialCost = saveOrderSkuBomList.stream()
+                .filter(item -> Objects.equals(item.getOrderSkuId(), orderSku.getId()))
+                .map(item -> item.getUnitPrice().multiply(item.getQuantity()))
+                .reduce(BigDecimal.ZERO, BigDecimal::add);
+
+        orderSku.setPackagingMaterialCost(packagingMaterialCost);
+    }
+
+    /**
      * 赋值其他价格
      */
     private void assignedOtherPrice(OrderSku orderSku,
@@ -460,7 +487,7 @@ public class WlnOrderServiceImpl implements WlnOrderService {
         for (PriceBillingStandardDetail priceBillingStandardDetail : priceBillingStandardDetailList) {
 
             String chargeItem = priceBillingStandardDetail.getChargeItem();
-            BigDecimal chargePrice = priceBillingStandardDetail.getChargePrice();
+            BigDecimal chargePrice = ObjectUtil.defaultIfNull(priceBillingStandardDetail.getChargePrice(), BigDecimal.ZERO);
 
             switch (chargeItem) {
                 case "3":
@@ -488,28 +515,28 @@ public class WlnOrderServiceImpl implements WlnOrderService {
      * 添加订单价格
      */
     private void addOrderInfoPrice(OrderInfo orderInfo, OrderSku orderSku, List<OrderSkuBom> saveOrderSkuBomList) {
-        BigDecimal productTotalAmount = orderSku.getQuantity().multiply(orderSku.getUnitPrice());
-        BigDecimal customProcessingFee = orderSku.getQuantity().multiply(orderSku.getCustomProcessingFee());
-        BigDecimal lssueFee = orderSku.getQuantity().multiply(orderSku.getLssueFee());
-        BigDecimal deliveryMaterialsFee = orderSku.getQuantity().multiply(orderSku.getDeliveryMaterialsFee());
-        BigDecimal packingLabor = orderSku.getQuantity().multiply(orderSku.getPackingLabor());
-        BigDecimal totalAmount = productTotalAmount.add(customProcessingFee).add(lssueFee).add(deliveryMaterialsFee).add(packingLabor);
-
-        BigDecimal packagingMaterialCost = saveOrderSkuBomList.stream()
-                .filter(item -> Objects.equals(item.getOrderId(), orderInfo.getId()))
-                .filter(item -> Objects.equals(item.getOrderSkuId(), orderSku.getId()))
-                .map(item -> item.getUnitPrice().multiply(item.getQuantity()))
-                .reduce(BigDecimal.ZERO, BigDecimal::add)
-                .multiply(orderSku.getQuantity());
+        BigDecimal quantity = orderSku.getQuantity();
+
+        BigDecimal productTotalAmount = quantity.multiply(orderSku.getUnitPrice());
+        BigDecimal customProcessingFee = quantity.multiply(orderSku.getCustomProcessingFee());
+        BigDecimal lssueFee = quantity.multiply(orderSku.getLssueFee());
+        BigDecimal deliveryMaterialsFee = quantity.multiply(orderSku.getDeliveryMaterialsFee());
+        BigDecimal packingLabor = quantity.multiply(orderSku.getPackingLabor());
+        BigDecimal packagingMaterialCost = quantity.multiply(orderSku.getPackagingMaterialCost());
+        BigDecimal totalAmount = productTotalAmount
+                .add(customProcessingFee)
+                .add(lssueFee)
+                .add(deliveryMaterialsFee)
+                .add(packingLabor)
+                .add(packagingMaterialCost);
 
         orderInfo.setProductTotalAmount(orderInfo.getProductTotalAmount().add(productTotalAmount));
         orderInfo.setCustomProcessingFee(orderInfo.getCustomProcessingFee().add(customProcessingFee));
         orderInfo.setLssueFee(orderInfo.getLssueFee().add(lssueFee));
         orderInfo.setDeliveryMaterialsFee(orderInfo.getDeliveryMaterialsFee().add(deliveryMaterialsFee));
         orderInfo.setPackingLabor(orderInfo.getPackingLabor().add(packingLabor));
-        orderInfo.setPackagingMaterialCost(packagingMaterialCost);
+        orderInfo.setPackagingMaterialCost(orderInfo.getPackagingMaterialCost().add(packagingMaterialCost));
         orderInfo.setTotalAmount(orderInfo.getTotalAmount().add(totalAmount));
-
     }
 
 }