导入问题,外加派单可以二次派新订单

This commit is contained in:
kuang.yife 2024-01-30 17:08:51 +08:00
parent 3271cf06f3
commit d7053a4d9c
1 changed files with 74 additions and 38 deletions

View File

@ -1,5 +1,6 @@
package com.ghy.web.controller.order; package com.ghy.web.controller.order;
import cn.hutool.core.date.DateUtil;
import cn.hutool.db.sql.Order; import cn.hutool.db.sql.Order;
import com.ghy.common.adapay.model.AdapayStatusEnum; import com.ghy.common.adapay.model.AdapayStatusEnum;
import com.ghy.common.adapay.model.PayParam; import com.ghy.common.adapay.model.PayParam;
@ -175,7 +176,7 @@ public class OrderMasterController extends BaseController {
OrderMaster param = new OrderMaster(); OrderMaster param = new OrderMaster();
param.setOrderMasterIds(orderMaster.getOrderMasterIds()); param.setOrderMasterIds(orderMaster.getOrderMasterIds());
List<OrderMaster> masters = orderMasterService.selectOrderMasterList(param); List<OrderMaster> masters = orderMasterService.selectOrderMasterList(param);
long count = masters.stream().filter(x->!x.getOrderStatus().equals(OrderStatus.RECEIVE.code())|| x.getWorkerId() != null).count(); long count = masters.stream().filter(x->!x.getOrderStatus().equals(OrderStatus.RECEIVE.code())).count();
if(count > 0){ if(count > 0){
return AjaxResult.error("请选择待接单且无师傅接单订单指派"); return AjaxResult.error("请选择待接单且无师傅接单订单指派");
} }
@ -221,50 +222,82 @@ public class OrderMasterController extends BaseController {
public SysOrderAssignRequest format(SysOrderRequest orderRequest) throws Exception{ public SysOrderAssignRequest format(SysOrderRequest orderRequest) throws Exception{
SysOrderAssignRequest request = new SysOrderAssignRequest(); SysOrderAssignRequest request = new SysOrderAssignRequest();
if(StringUtils.isEmpty(orderRequest.getSeq())){
throw new Exception("导入列表中,序号不能为空!");
}
if(StringUtils.isEmpty(orderRequest.getName())){
throw new Exception(orderRequest.getSeq() + "行,导入姓名不能为空!");
}
request.setCustomerName(orderRequest.getName()); request.setCustomerName(orderRequest.getName());
if(StringUtils.isEmpty(orderRequest.getPhone())){
throw new Exception(orderRequest.getSeq() + "行,导入手机号不能为空!");
}
request.setCustomerPhone(orderRequest.getPhone()); request.setCustomerPhone(orderRequest.getPhone());
request.setServDate(orderRequest.getDate()); request.setServDate(orderRequest.getDate());
request.setServTime(orderRequest.getTime()); request.setServTime(orderRequest.getTime());
request.setGoodsBrand(orderRequest.getBrand()); request.setGoodsBrand(orderRequest.getBrand());
request.setOrderMode("02"); if(StringUtils.isEmpty(orderRequest.getMode())){
request.setPayMode("01"); throw new Exception(orderRequest.getSeq() + "行,下单模式不能为空!");
}else {
if("带价发布".equals(orderRequest.getMode())){
request.setOrderMode("02");
request.setPayMode("02");
}else if("一票价".equals(orderRequest.getMode())){
request.setOrderMode("01");
request.setPayMode("02");
}else {
throw new Exception(orderRequest.getSeq() + "行,下单模式填写错误!");
}
}
if(StringUtils.isEmpty(orderRequest.getPrice())){
throw new Exception(orderRequest.getSeq() + "行,导入价格不能为空!");
}
request.setPrice(new BigDecimal(orderRequest.getPrice())); request.setPrice(new BigDecimal(orderRequest.getPrice()));
request.setVideoUrl(orderRequest.getUrl()); request.setVideoUrl(orderRequest.getUrl());
request.setImageUrl("http://gqz.opsoul.com/default.jpeg"); request.setImageUrl("http://gqz.opsoul.com/default.jpeg");
List<SysOrderGoodsStandards> goodsStandards = new ArrayList<>(); List<SysOrderGoodsStandards> goodsStandards = new ArrayList<>();
String [] categoryNames = orderRequest.getCategory().split("-"); String [] categoryNames = orderRequest.getCategory().split("-");
if(categoryNames.length != 4){ if(categoryNames.length != 4){
throw new Exception("导入类目数据格式错误"); throw new Exception(orderRequest.getSeq() + "行,导入四级类目数据格式错误");
}else { }else {
// 第一层 if(StringUtils.isEmpty(categoryNames[0])||StringUtils.isEmpty(categoryNames[1])||StringUtils.isEmpty(categoryNames[2])){
GoodsCategory param1 = new GoodsCategory(); throw new Exception(orderRequest.getSeq() + "行,前三级类目不能为空,请参照系统填写");
param1.setGoodsCategoryName(categoryNames[0]); }
GoodsCategory category1 = goodsCategoryService.selectGoodsCategoryList(param1).get(0); try {
// 第二层 // 第一层
GoodsCategory param2 = new GoodsCategory(); GoodsCategory param1 = new GoodsCategory();
param2.setParentCategoryId(category1.getGoodsCategoryId()); param1.setGoodsCategoryName(categoryNames[0]);
param2.setGoodsCategoryName(categoryNames[1]); GoodsCategory category1 = goodsCategoryService.selectGoodsCategoryList(param1).get(0);
GoodsCategory category2 = goodsCategoryService.selectGoodsCategoryList(param2).get(0); // 第二层
// 第三层 GoodsCategory param2 = new GoodsCategory();
GoodsCategory param3 = new GoodsCategory(); param2.setParentCategoryId(category1.getGoodsCategoryId());
param3.setParentCategoryId(category2.getGoodsCategoryId()); param2.setGoodsCategoryName(categoryNames[1]);
param3.setGoodsCategoryName(categoryNames[2]); GoodsCategory category2 = goodsCategoryService.selectGoodsCategoryList(param2).get(0);
GoodsCategory category3 = goodsCategoryService.selectGoodsCategoryList(param3).get(0); // 第三层
GoodsCategory param3 = new GoodsCategory();
param3.setParentCategoryId(category2.getGoodsCategoryId());
param3.setGoodsCategoryName(categoryNames[2]);
GoodsCategory category3 = goodsCategoryService.selectGoodsCategoryList(param3).get(0);
DeptGoodsCategory deptGoodsCategory = deptGoodsCategoryService.selectOneByGoodsCategoryId(category3.getGoodsCategoryId()); DeptGoodsCategory deptGoodsCategory = deptGoodsCategoryService.selectOneByGoodsCategoryId(category3.getGoodsCategoryId());
request.setCategoryId3(deptGoodsCategory.getDeptGoodsCategoryId()); request.setCategoryId3(deptGoodsCategory.getDeptGoodsCategoryId());
// 第四层 // 第四层
GoodsCategory param4 = new GoodsCategory(); GoodsCategory param4 = new GoodsCategory();
param4.setParentCategoryId(category3.getGoodsCategoryId()); param4.setParentCategoryId(category3.getGoodsCategoryId());
param4.setGoodsCategoryName(categoryNames[3]); param4.setGoodsCategoryName(categoryNames[3]);
GoodsCategory category4 = goodsCategoryService.selectGoodsCategoryList(param4).get(0); GoodsCategory category4 = goodsCategoryService.selectGoodsCategoryList(param4).get(0);
SysOrderGoodsStandards standards = new SysOrderGoodsStandards();
DeptGoodsCategory deptGoodsCategory2 = deptGoodsCategoryService.selectOneByGoodsCategoryId(category4.getGoodsCategoryId());
standards.setDeptCategoryId(deptGoodsCategory2.getDeptGoodsCategoryId());
standards.setGoodsStandardNum(Integer.parseInt(orderRequest.getNum()));
goodsStandards.add(standards);
}catch (Exception e){
throw new Exception(orderRequest.getSeq() + "行,前三级类目有错误,请参照系统填写");
}
SysOrderGoodsStandards standards = new SysOrderGoodsStandards();
DeptGoodsCategory deptGoodsCategory2 = deptGoodsCategoryService.selectOneByGoodsCategoryId(category4.getGoodsCategoryId());
standards.setDeptCategoryId(deptGoodsCategory2.getDeptGoodsCategoryId());
standards.setGoodsStandardNum(Integer.parseInt(orderRequest.getNum()));
goodsStandards.add(standards);
} }
request.setOrderGoodsStandards(goodsStandards); request.setOrderGoodsStandards(goodsStandards);
String [] addressName = orderRequest.getAddress().split("-"); String [] addressName = orderRequest.getAddress().split("-");
@ -407,15 +440,18 @@ public class OrderMasterController extends BaseController {
if(StringUtils.isEmpty(request.getServDate())){ if(StringUtils.isEmpty(request.getServDate())){
Calendar calendar = Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, 1); calendar.add(Calendar.DATE, 1);
// request.setServDate(); String dateStr = DateUtil.format(calendar.getTime(), "yyyy-MM-dd");
} orderMaster.setExpectTimeStart(DateUtil.parse(dateStr+" 08:00", "yyyy-MM-dd HH:mm"));
// 服务时间 orderMaster.setExpectTimeEnd(DateUtil.parse(dateStr+" 10:00", "yyyy-MM-dd HH:mm"));
String[] split = request.getServTime().split("-"); }else {
try { // 服务时间
orderMaster.setExpectTimeStart(org.apache.commons.lang3.time.DateUtils.parseDate(request.getServDate() + " " + split[0], "yyyy-MM-dd hh:mm")); String[] split = request.getServTime().split("-");
orderMaster.setExpectTimeEnd(org.apache.commons.lang3.time.DateUtils.parseDate(request.getServDate() + " " + split[1], "yyyy-MM-dd hh:mm")); try {
} catch (Exception e) { orderMaster.setExpectTimeStart(org.apache.commons.lang3.time.DateUtils.parseDate(request.getServDate() + " " + split[0], "yyyy-MM-dd hh:mm"));
orderMaster.setExpectTimeEnd(org.apache.commons.lang3.time.DateUtils.parseDate(request.getServDate() + " " + split[1], "yyyy-MM-dd hh:mm"));
} catch (Exception e) {
}
} }
orderMasterService.insertOrderMaster(orderMaster); orderMasterService.insertOrderMaster(orderMaster);
Assert.notNull(orderMaster.getId(), "OrderMaster.id is null!"); Assert.notNull(orderMaster.getId(), "OrderMaster.id is null!");