超市排序处理,售后更新处理,售后记录显示

This commit is contained in:
cb 2025-10-17 11:49:29 +08:00
parent 72748b7113
commit e0060c0432
3 changed files with 102 additions and 14 deletions

View File

@ -23,9 +23,11 @@ import com.ghy.order.service.*;
import com.ghy.payment.domain.FinancialChangeRecord; import com.ghy.payment.domain.FinancialChangeRecord;
import com.ghy.payment.domain.FinancialDetail; import com.ghy.payment.domain.FinancialDetail;
import com.ghy.payment.domain.FinancialMaster; import com.ghy.payment.domain.FinancialMaster;
import com.ghy.payment.domain.OrderTimeoutRecord;
import com.ghy.payment.service.FinancialChangeRecordService; import com.ghy.payment.service.FinancialChangeRecordService;
import com.ghy.payment.service.FinancialDetailService; import com.ghy.payment.service.FinancialDetailService;
import com.ghy.payment.service.FinancialMasterService; import com.ghy.payment.service.FinancialMasterService;
import com.ghy.payment.service.OrderFineRecordService;
import com.ghy.shop.domain.Shop; import com.ghy.shop.domain.Shop;
import com.ghy.shop.service.ShopService; import com.ghy.shop.service.ShopService;
import com.ghy.system.domain.SysArea; import com.ghy.system.domain.SysArea;
@ -120,6 +122,9 @@ public class OrderController extends BaseController {
@Resource @Resource
private ShopService shopService; private ShopService shopService;
@Resource
private OrderFineRecordService orderFineRecordService;
@GetMapping("/imgs") @GetMapping("/imgs")
public String orderImgs(Long orderId, ModelMap mmap) { public String orderImgs(Long orderId, ModelMap mmap) {
mmap.put("orderId", orderId); mmap.put("orderId", orderId);
@ -489,7 +494,10 @@ public class OrderController extends BaseController {
od.setExpectTimeEnd(om.getExpectTimeEnd()); od.setExpectTimeEnd(om.getExpectTimeEnd());
od.setWorkBeginTime(new Date()); od.setWorkBeginTime(new Date());
// 将主单的师傅备注复制到子单 // 将主单的师傅备注复制到子单
od.setWorkerRemark(om.getWorkerRemark()); if(request.getWorkerId().equals(om.getWorkerId())) {
od.setWorkerRemark(om.getWorkerRemark());
}
orderDetailService.insertOrderDetail(od); orderDetailService.insertOrderDetail(od);
logger.info("子订单是否创建完成{}商品详情{}分配参数详情{}", od, request.getGoodsList(), request); logger.info("子订单是否创建完成{}商品详情{}分配参数详情{}", od, request.getGoodsList(), request);
// 批量生成订单商品 // 批量生成订单商品
@ -1426,9 +1434,19 @@ public class OrderController extends BaseController {
Collections.sort(orderListResponses, new Comparator<OrderListResponse>() { Collections.sort(orderListResponses, new Comparator<OrderListResponse>() {
@Override @Override
public int compare(OrderListResponse o1, OrderListResponse o2) { public int compare(OrderListResponse o1, OrderListResponse o2) {
if (Objects.equals(orderListRequest.getOrderStatus(), 0) if (Objects.equals(orderListRequest.getOrderStatus(), 0)) {
|| Objects.equals(orderListRequest.getTimeout(), 1)) {
return o2.getCreateTime().compareTo(o1.getCreateTime()); return o2.getCreateTime().compareTo(o1.getCreateTime());
} else if (Objects.equals(orderListRequest.getTimeout(), 1)) {
// 超时订单按超时时间倒序排列如果超时时间为空则按创建时间倒序
if (o1.getTimeoutTime() != null && o2.getTimeoutTime() != null) {
return o2.getTimeoutTime().compareTo(o1.getTimeoutTime());
} else if (o1.getTimeoutTime() != null) {
return -1; // o1有超时时间o2没有o1排前面
} else if (o2.getTimeoutTime() != null) {
return 1; // o2有超时时间o1没有o2排前面
} else {
return o2.getCreateTime().compareTo(o1.getCreateTime()); // 都没有超时时间按创建时间倒序
}
} else { } else {
return o2.getUpdateTime().compareTo(o1.getUpdateTime()); return o2.getUpdateTime().compareTo(o1.getUpdateTime());
} }
@ -1616,11 +1634,14 @@ public class OrderController extends BaseController {
List<AfterServiceRecord> afterServiceRecords = new ArrayList<>(); List<AfterServiceRecord> afterServiceRecords = new ArrayList<>();
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId()); List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
detailOrderList.stream().forEach(detail -> { detailOrderList.stream().forEach(detail -> {
AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); // 只显示子单师傅ID和主单师傅ID一致的售后订单
afterServiceRecordQry.setOrderDetailId(detail.getId()); if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId())) {
List<AfterServiceRecord> records = afterServiceRecordService AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord();
.selectAfterServiceRecordList(afterServiceRecordQry); afterServiceRecordQry.setOrderDetailId(detail.getId());
afterServiceRecords.addAll(records); List<AfterServiceRecord> records = afterServiceRecordService
.selectAfterServiceRecordList(afterServiceRecordQry);
afterServiceRecords.addAll(records);
}
}); });
for (OrderGoods orderGoods : orderStandardList) { for (OrderGoods orderGoods : orderStandardList) {
@ -1954,11 +1975,14 @@ public class OrderController extends BaseController {
List<AfterServiceRecord> afterServiceRecords = new ArrayList<>(); List<AfterServiceRecord> afterServiceRecords = new ArrayList<>();
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId()); List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
detailOrderList.stream().forEach(detail -> { detailOrderList.stream().forEach(detail -> {
AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord(); // 只显示子单师傅ID和主单师傅ID一致的售后订单
afterServiceRecordQry.setOrderDetailId(detail.getId()); if (detail.getWorkerId() != null && detail.getWorkerId().equals(master.getWorkerId())) {
List<AfterServiceRecord> records = afterServiceRecordService AfterServiceRecord afterServiceRecordQry = new AfterServiceRecord();
.selectAfterServiceRecordList(afterServiceRecordQry); afterServiceRecordQry.setOrderDetailId(detail.getId());
afterServiceRecords.addAll(records); List<AfterServiceRecord> records = afterServiceRecordService
.selectAfterServiceRecordList(afterServiceRecordQry);
afterServiceRecords.addAll(records);
}
}); });
for (OrderGoods orderGoods : orderStandardList) { for (OrderGoods orderGoods : orderStandardList) {
@ -2084,7 +2108,51 @@ public class OrderController extends BaseController {
// 师傅信息 // 师傅信息
Worker worker = workerService.selectById(detail.getWorkerId()); Worker worker = workerService.selectById(detail.getWorkerId());
WorkerCertification workerRealInfo = null;
String workerName = "";
if (worker != null) {
// 师傅实名信息
workerRealInfo = workerCertificationService.selectByWorkerId(orderMaster.getWorkerId());
workerName = workerRealInfo == null ? worker.getName()
: workerRealInfo.getSurname() + workerRealInfo.getName();
}
String masterWorkerName = "";
String masterCompanyName = "";
String masterCompanyPhone="";
Worker masterWorker = workerService.selectById(orderMaster.getWorkerId());
Worker goodsWorker =new Worker();
OrderMaster goodsOrderMaster =null;
WorkerCertification goodsWorkerRealInfo = null;
// 消费者信息
// Customer customer =
// customerService.selectByCustomerId(orderMaster.getCustomerId());
// 商品规格及信息
if (orderMaster.getGoodsOrderMasterId() != null) {
// 子单商品规格及信息
goodsOrderMaster = orderMasterService.selectById(orderMaster.getGoodsOrderMasterId());
goodsWorker = workerService.selectById(goodsOrderMaster.getWorkerId());
goodsWorkerRealInfo = workerCertificationService.selectByWorkerId(goodsOrderMaster.getWorkerId());
orderListResponse.setOriginalOrderMasterCode(goodsOrderMaster.getCode());
}
if (masterWorker != null) {
// 大师傅实名信息
workerRealInfo = workerCertificationService.selectByWorkerId(orderMaster.getWorkerId());
masterWorkerName = workerRealInfo == null ? masterWorker.getName()
: workerRealInfo.getSurname() + workerRealInfo.getName();
if (orderMaster.getGoodsOrderMasterId() != null) {
workerRealInfo=goodsWorkerRealInfo;
}
masterCompanyName = workerRealInfo == null ? null : workerRealInfo.getCompanyName();
masterCompanyPhone=goodsWorker.getPhone();
}
orderListResponse.setMasterCompanyName(masterCompanyName);
orderListResponse.setMasterCompanyPhone(masterCompanyPhone);
orderListResponse.setMasterWorkerId(orderMaster.getWorkerId());
orderListResponse.setMasterWorkerName(masterWorkerName);
orderListResponse.setMasterWorkerPhone(masterWorker.getPhone());
// 消费者信息 // 消费者信息
// Customer customer = // Customer customer =
// customerService.selectByCustomerId(detail.getCustomerId()); // customerService.selectByCustomerId(detail.getCustomerId());
@ -2173,7 +2241,9 @@ public class OrderController extends BaseController {
afterServiceRecord.setOrderDetailId(detail.getId()); afterServiceRecord.setOrderDetailId(detail.getId());
List<AfterServiceRecord> afterServiceRecordList List<AfterServiceRecord> afterServiceRecordList
=afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord); =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord);
if (detail.getWorkerId()!=orderMaster.getWorkerId()) {
afterServiceRecordList=null;
}
// 编辑返回属性 // 编辑返回属性
orderListResponse.setWorkerRemark(detail.getWorkerRemark()); orderListResponse.setWorkerRemark(detail.getWorkerRemark());
orderListResponse.setGoods(goods); orderListResponse.setGoods(goods);
@ -2216,6 +2286,15 @@ public class OrderController extends BaseController {
orderListResponse.setChangeMoney(changeMoney); orderListResponse.setChangeMoney(changeMoney);
orderListResponse.setCreateTime(detail.getCreateTime()); orderListResponse.setCreateTime(detail.getCreateTime());
orderListResponse.setUpdateTime(detail.getUpdateTime()); orderListResponse.setUpdateTime(detail.getUpdateTime());
// 查询最新超时时间
OrderTimeoutRecord timeoutRecord = orderFineRecordService.selectByDetailIdAndStatus(detail.getId(), null);
List<OrderTimeoutRecord> timeoutRecords = timeoutRecord == null ? Collections.emptyList() : Collections.singletonList(timeoutRecord);
if (CollectionUtils.isNotEmpty(timeoutRecords)) {
// 按创建时间倒序排列取最新的超时记录
timeoutRecords.sort((a, b) -> b.getCreateTime().compareTo(a.getCreateTime()));
orderListResponse.setTimeoutTime(timeoutRecords.get(0).getCreateTime());
}
orderListResponse.setConsultMode(orderMaster.getConsultMode()); orderListResponse.setConsultMode(orderMaster.getConsultMode());
orderListResponse.setInsuranceId(orderMaster.getInsuranceId()); orderListResponse.setInsuranceId(orderMaster.getInsuranceId());

View File

@ -172,6 +172,12 @@ public class OrderListResponse {
*/ */
private Integer timeoutFineTimes; private Integer timeoutFineTimes;
/**
* 超时时间用于排序
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date timeoutTime;
private Integer afterTimeout; private Integer afterTimeout;
private String orderMode; private String orderMode;

View File

@ -244,6 +244,9 @@ public class AfterServiceRecordServiceImpl implements IAfterServiceRecordService
if (param.getWorkerFeedbackImages() != null) { if (param.getWorkerFeedbackImages() != null) {
afterServiceRecord.setWorkerFeedbackImages(param.getWorkerFeedbackImages()); afterServiceRecord.setWorkerFeedbackImages(param.getWorkerFeedbackImages());
} }
if (param.getAgreedRefund() != null) {
afterServiceRecord.setAgreedRefund(param.getAgreedRefund());
}
if (param.getUpdateBy() != null) { if (param.getUpdateBy() != null) {
afterServiceRecord.setUpdateBy(param.getUpdateBy()); afterServiceRecord.setUpdateBy(param.getUpdateBy());
} }