|
@@ -2,22 +2,20 @@ package org.dromara.bulk.service.impl;
|
|
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import org.dromara.bulk.domain.BulkOrderList;
|
|
|
+import org.dromara.bulk.domain.UserOrder;
|
|
|
import org.dromara.bulk.domain.UserOrderTemplate;
|
|
|
-import org.dromara.bulk.domain.bo.BulkOrderListBo;
|
|
|
import org.dromara.bulk.domain.bo.NewBulkOrderBo;
|
|
|
import org.dromara.bulk.domain.bo.OrderListBo;
|
|
|
import org.dromara.bulk.mapper.BulkOrderListMapper;
|
|
|
import org.dromara.bulk.mapper.UserOrderMapper;
|
|
|
import org.dromara.bulk.mapper.UserOrderTemplateMapper;
|
|
|
import org.dromara.bulk.service.BulkOrderManagementService;
|
|
|
-import org.dromara.commodityManagement.domain.Template;
|
|
|
import org.dromara.commodityManagement.domain.bo.TemplateBo;
|
|
|
-import org.dromara.common.core.utils.MapstructUtils;
|
|
|
import org.dromara.common.core.utils.OrderNumberGenerator;
|
|
|
-import org.dromara.common.json.utils.JsonUtils;
|
|
|
import org.dromara.productionManagement.domain.ProductionPlan;
|
|
|
import org.dromara.productionManagement.mapper.ProductionPlanMapper;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
@@ -35,25 +33,37 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
private final UserOrderTemplateMapper userOrderTemplateMapper;
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public int insertBulkOrder(NewBulkOrderBo newBulkOrderBo) {
|
|
|
- OrderNumberGenerator orderNumberGenerator = OrderNumberGenerator.getInstance();
|
|
|
- for (OrderListBo orderList : newBulkOrderBo.getOrderLists()){
|
|
|
- String sysNo = orderNumberGenerator.generateOrderNumber("SYS");
|
|
|
- String purchaseCode = orderNumberGenerator.generateOrderNumber("SC");
|
|
|
- String orderNumber = orderNumberGenerator.generateOrderNumber("DH");
|
|
|
+ try {
|
|
|
+ OrderNumberGenerator orderNumberGenerator = OrderNumberGenerator.getInstance();
|
|
|
+ for (OrderListBo orderList : newBulkOrderBo.getOrderLists()){
|
|
|
+ //生成各种单号
|
|
|
+ String sysNo = orderNumberGenerator.generateOrderNumber("SYS");
|
|
|
+ String purchaseCode = orderNumberGenerator.generateOrderNumber("SC");
|
|
|
+ String orderNumber = orderNumberGenerator.generateOrderNumber("DH");
|
|
|
|
|
|
- productionPlanMapper.insert(initProductionPlanBo(orderList, sysNo, purchaseCode, orderNumber));
|
|
|
+ bulkOrderListMapper.insert(initBulkOrderList(orderList, sysNo, purchaseCode));
|
|
|
|
|
|
- bulkOrderListMapper.insert(initBulkOrderListBo(orderList, sysNo, purchaseCode));
|
|
|
+ ProductionPlan productionPlan = initProductionPlan(newBulkOrderBo, orderList, sysNo, purchaseCode, orderNumber);
|
|
|
+ productionPlanMapper.insert(productionPlan);
|
|
|
|
|
|
- Long orderId = userOrderMapper.selectLastId();
|
|
|
- Long planId = productionPlanMapper.selectLastId();
|
|
|
+ UserOrder userOrder = initUserOrder(newBulkOrderBo, orderList, orderNumber, newBulkOrderBo.getRemark());
|
|
|
+ userOrderMapper.insert(userOrder);
|
|
|
|
|
|
- List<UserOrderTemplate> userOrderTemplate = initUserOrderTemplate(orderList, orderId, planId);
|
|
|
- userOrderTemplateMapper.insert(userOrderTemplate);
|
|
|
- }
|
|
|
+ //获取订单id和生产计划id
|
|
|
+ Long orderId = productionPlan.getId();
|
|
|
+ Long planId = userOrder.getId();
|
|
|
|
|
|
- return 0;
|
|
|
+ if (null != orderList.getTemplateList()){
|
|
|
+ userOrderTemplateMapper.insert(initUserOrderTemplate(newBulkOrderBo, orderList, orderId, planId));
|
|
|
+ System.out.println("user_order_template表新增完成");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return 1;
|
|
|
+ } catch (Exception e) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -63,7 +73,7 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
* @param purchaseCode 生产单号
|
|
|
* @return 构建完毕的BO对象
|
|
|
*/
|
|
|
- private BulkOrderList initBulkOrderListBo(OrderListBo orderList, String sysNo, String purchaseCode) {
|
|
|
+ private BulkOrderList initBulkOrderList(OrderListBo orderList, String sysNo, String purchaseCode) {
|
|
|
BulkOrderList bulkOrderList = new BulkOrderList();
|
|
|
//设置系统单号
|
|
|
bulkOrderList.setSysNo(sysNo);
|
|
@@ -80,7 +90,7 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
//设置默认单位ID
|
|
|
bulkOrderList.setDefaultUnit(5);
|
|
|
//设置大货编号
|
|
|
- bulkOrderList.setGoodsTypeExtend1Id(orderList.getDaHuoNumberBo().getName());
|
|
|
+ bulkOrderList.setGoodsTypeExtend1Id(orderList.getDaHuoNumberName());
|
|
|
//设置成衣厂
|
|
|
bulkOrderList.setGarmentFactory(orderList.getGarmentFactory());
|
|
|
//设置成衣厂联系人
|
|
@@ -101,10 +111,10 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
bulkOrderList.setBaseClothPrice(orderList.getBaseClothPrice());
|
|
|
//设置品牌组
|
|
|
bulkOrderList.setBrandGroup(orderList.getBrandGroup());
|
|
|
- //设置工艺类型并转换为JSON格式后存入
|
|
|
- bulkOrderList.setGoodsTypeExtend3Attr(JsonUtils.toJsonString(orderList.getCraft()));
|
|
|
+ //设置工艺类型
|
|
|
+ bulkOrderList.setGoodsTypeExtend3Id(orderList.getCraftId());
|
|
|
//设置花型号类型并转换为JSON格式存入
|
|
|
- bulkOrderList.setGoodsTypeExtend4Attr(JsonUtils.toJsonString(orderList.getOem()));
|
|
|
+ bulkOrderList.setGoodsTypeExtend4Id(orderList.getOemId());
|
|
|
return bulkOrderList;
|
|
|
}
|
|
|
|
|
@@ -115,7 +125,7 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
* @param purchaseCode 生产单号
|
|
|
* @return 构建完毕的生产计划BO对象
|
|
|
*/
|
|
|
- private ProductionPlan initProductionPlanBo(OrderListBo orderList, String sysNo, String purchaseCode, String orderNumber) {
|
|
|
+ private ProductionPlan initProductionPlan(NewBulkOrderBo newBulkOrderBo, OrderListBo orderList, String sysNo, String purchaseCode, String orderNumber) {
|
|
|
ProductionPlan productionPlan = new ProductionPlan();
|
|
|
//设置系统单号
|
|
|
productionPlan.setSysNo(sysNo);
|
|
@@ -124,7 +134,7 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
//设置订单单号
|
|
|
productionPlan.setOrderNum(orderNumber);
|
|
|
//设置用户id
|
|
|
- productionPlan.setUserId(orderList.getUserId());
|
|
|
+ productionPlan.setUserId(newBulkOrderBo.getUserId());
|
|
|
//设置是否烧花
|
|
|
productionPlan.setIsBurnFlowers(orderList.getIsBurnFlowers());
|
|
|
//设置是否快返
|
|
@@ -142,22 +152,22 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
//设置是否系统单
|
|
|
productionPlan.setIsSys(orderList.getIsSys());
|
|
|
//设置创建时间
|
|
|
- productionPlan.setCreateTime(orderList.getCreateTime());
|
|
|
+ productionPlan.setCreateTime(newBulkOrderBo.getCreateTime());
|
|
|
return productionPlan;
|
|
|
}
|
|
|
|
|
|
- private List<UserOrderTemplate> initUserOrderTemplate(OrderListBo orderList, Long orderId, Long planId) {
|
|
|
+ private List<UserOrderTemplate> initUserOrderTemplate(NewBulkOrderBo newBulkOrderBo, OrderListBo orderList, Long orderId, Long planId) {
|
|
|
ArrayList<UserOrderTemplate> userOrderTemplateList = new ArrayList<>();
|
|
|
for (TemplateBo templateBo : orderList.getTemplateList()) {
|
|
|
UserOrderTemplate userOrderTemplate = new UserOrderTemplate();
|
|
|
//设置用户id
|
|
|
- userOrderTemplate.setUserId(orderList.getUserId());
|
|
|
+ userOrderTemplate.setUserId(newBulkOrderBo.getUserId());
|
|
|
//设置订单id 对应fa_kuyou_user_order表id
|
|
|
userOrderTemplate.setOrderId(orderId);
|
|
|
//设置生产计划id 对应fa_kuyou_production_plan表id
|
|
|
userOrderTemplate.setPlanId(planId);
|
|
|
//设置大货编号id
|
|
|
- userOrderTemplate.setItemId(orderList.getDaHuoNumberBo().getId());
|
|
|
+ userOrderTemplate.setItemId(orderList.getDaHuoNumberId());
|
|
|
//设置份数
|
|
|
userOrderTemplate.setNumber(templateBo.getNumber());
|
|
|
//设置米数
|
|
@@ -170,4 +180,23 @@ public class BulkOrderManagementServiceImpl implements BulkOrderManagementServic
|
|
|
}
|
|
|
return userOrderTemplateList;
|
|
|
}
|
|
|
+
|
|
|
+ private UserOrder initUserOrder(NewBulkOrderBo newBulkOrderBo, OrderListBo orderList, String orderNumber, String remark) {
|
|
|
+ UserOrder userOrder = new UserOrder();
|
|
|
+ //设置用户id
|
|
|
+ userOrder.setUserId(newBulkOrderBo.getUserId());
|
|
|
+ //设置订单名称
|
|
|
+ userOrder.setName(newBulkOrderBo.getUserName());
|
|
|
+ //设置订单电话
|
|
|
+ userOrder.setPhone(newBulkOrderBo.getUserPhone());
|
|
|
+ //设置订单地址
|
|
|
+ userOrder.setAddress(orderList.getReceivingAddress());
|
|
|
+ //设置订单编号
|
|
|
+ userOrder.setOrderNumber(orderNumber);
|
|
|
+ //设置备注
|
|
|
+ userOrder.setRemark(remark);
|
|
|
+ //设置创建时间
|
|
|
+ userOrder.setCreateTime(newBulkOrderBo.getCreateTime());
|
|
|
+ return userOrder;
|
|
|
+ }
|
|
|
}
|