修改报错

This commit is contained in:
HH 2023-02-16 23:01:36 +08:00
parent bbd5e6ae5c
commit f8b88dddf1
3 changed files with 59 additions and 66 deletions

View File

@ -14,7 +14,6 @@ import com.ghy.common.utils.StringUtils;
import com.ghy.common.utils.poi.ExcelUtil;
import com.ghy.customer.domain.CustomerAddress;
import com.ghy.customer.service.CustomerAddressService;
import com.ghy.customer.service.CustomerService;
import com.ghy.goods.domain.Goods;
import com.ghy.goods.domain.GoodsImgs;
import com.ghy.goods.domain.GoodsStandard;
@ -48,15 +47,14 @@ import com.ghy.worker.domain.WorkerCertification;
import com.ghy.worker.service.IWorkerCertificationService;
import com.ghy.worker.service.WorkerService;
import com.huifu.adapay.core.exception.BaseAdaPayException;
import org.apache.commons.collections.CollectionUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@ -74,37 +72,35 @@ public class OrderMasterController extends BaseController {
private final String prefix = "order/master";
@Autowired
@Resource
private OrderMasterService orderMasterService;
@Autowired
private CustomerService customerService;
@Autowired
@Resource
private WorkerService workerService;
@Autowired
@Resource
private IWorkerCertificationService workerCertificationService;
@Autowired
@Resource
private OrderDetailService orderDetailService;
@Autowired
@Resource
private OrderGoodsService orderGoodsService;
@Autowired
@Resource
private CustomerAddressService addressService;
@Autowired
@Resource
private GoodsService goodsService;
@Autowired
@Resource
private GoodsImgsService goodsImgsService;
@Autowired
@Resource
private FinancialMasterService financialMasterService;
@Autowired
@Resource
private FinancialDetailService financialDetailService;
@Autowired
@Resource
private GoodsStandardService goodsStandardService;
@Autowired
@Resource
private OrderFineRecordService orderFineRecordService;
@Autowired
@Resource
private ISysAreaService sysAreaService;
@Autowired
@Resource
private IAfterServiceRecordService afterServiceRecordService;
@Autowired
@Resource
private FinancialChangeRecordService financialChangeRecordService;
@RequiresPermissions("order:master:view")
@ -146,7 +142,7 @@ public class OrderMasterController extends BaseController {
FinancialMaster financialMaster = financialMasterService.selectByOrderMasterId(master.getId());
BigDecimal totalPayMoney = financialMaster.getPayMoney();
BigDecimal totalChangeMoney = new BigDecimal(0);
for (OrderDetail detail: detailList) {
for (OrderDetail detail : detailList) {
// 查询子单加价记录
FinancialChangeRecord record = financialChangeRecordService.selectNotPayRecordByDetailId(detail.getId());
if (record != null) {
@ -164,7 +160,7 @@ public class OrderMasterController extends BaseController {
// 查询售后记录
List<AfterServiceRecord> afterServiceRecords = new ArrayList<>();
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
detailOrderList.stream().forEach(detail -> {
detailOrderList.forEach(detail -> {
OrderTimeoutRecord timeoutRecord = orderFineRecordService.selectByDetailIdAndStatus(detail.getId(), detail.getOrderStatus());
if (timeoutRecord != null) {
timeoutRecords.add(timeoutRecord);
@ -249,26 +245,26 @@ public class OrderMasterController extends BaseController {
OrderDetail orderDetail = new OrderDetail();
orderDetail.setCustomerId(orderMaster.getCustomerId());
orderDetail.setDeptId(orderMaster.getDeptId());
detailIds.forEach(id->{
detailIds.forEach(id -> {
orderDetailIds.append(id).append(",");
});
String ids = orderDetailIds.toString();
if(StringUtils.isNotEmpty(ids)){
orderDetail.setOrderDetailIds(ids.substring(0, ids.length()-1));
}else {
if (StringUtils.isNotEmpty(ids)) {
orderDetail.setOrderDetailIds(ids.substring(0, ids.length() - 1));
} else {
orderDetail.setOrderDetailIds("0");
}
// 所有售后的子单
List<OrderDetail> orderDetailList = orderDetailService.selectOrderDetailList(orderDetail);
StringBuilder orderMasterIds = new StringBuilder();
orderDetailList.stream().map(OrderDetail::getOrderMasterId).distinct()
.collect(Collectors.toList()).forEach(id->{
.collect(Collectors.toList()).forEach(id -> {
orderMasterIds.append(id).append(",");
});
String orderIds = orderMasterIds.toString();
if(StringUtils.isNotEmpty(orderIds)){
orderMaster.setOrderMasterIds(orderIds.substring(0, orderIds.length()-1));
}else {
if (StringUtils.isNotEmpty(orderIds)) {
orderMaster.setOrderMasterIds(orderIds.substring(0, orderIds.length() - 1));
} else {
orderMaster.setOrderMasterIds("0");
}
@ -277,7 +273,7 @@ public class OrderMasterController extends BaseController {
List<OrderMaster> list = orderMasterService.selectOrderMasterList(orderMaster);
list.forEach(master -> {
//子单
List<OrderDetail> detailList = orderDetailService.selectByOrderMasterId(master.getId());
// List<OrderDetail> detailList = orderDetailService.selectByOrderMasterId(master.getId());
// 初始化属性
OrderListResponse orderListResponse = new OrderListResponse();
@ -320,7 +316,7 @@ public class OrderMasterController extends BaseController {
// 查询是否超时
List<OrderTimeoutRecord> timeoutRecords = new ArrayList<>();
List<OrderDetail> detailOrderList = orderDetailService.selectByOrderMasterId(master.getId());
detailOrderList.stream().forEach(detail -> {
detailOrderList.forEach(detail -> {
OrderTimeoutRecord timeoutRecord = orderFineRecordService.selectByDetailIdAndStatus(detail.getId(), detail.getOrderStatus());
if (timeoutRecord != null) {
timeoutRecords.add(timeoutRecord);
@ -392,26 +388,26 @@ public class OrderMasterController extends BaseController {
OrderDetail orderDetail = new OrderDetail();
orderDetail.setCustomerId(orderMaster.getCustomerId());
orderDetail.setDeptId(orderMaster.getDeptId());
detailIds.forEach(id->{
detailIds.forEach(id -> {
orderDetailIds.append(id).append(",");
});
String ids = orderDetailIds.toString();
if(StringUtils.isNotEmpty(ids)){
orderDetail.setOrderDetailIds(ids.substring(0, ids.length()-1));
}else {
if (StringUtils.isNotEmpty(ids)) {
orderDetail.setOrderDetailIds(ids.substring(0, ids.length() - 1));
} else {
orderDetail.setOrderDetailIds("0");
}
// 所有售后的子单
List<OrderDetail> orderDetailList = orderDetailService.selectOrderDetailList(orderDetail);
StringBuilder orderMasterIds = new StringBuilder();
orderDetailList.stream().map(OrderDetail::getOrderMasterId).distinct()
.collect(Collectors.toList()).forEach(id->{
.collect(Collectors.toList()).forEach(id -> {
orderMasterIds.append(id).append(",");
});
String orderIds = orderMasterIds.toString();
if(StringUtils.isNotEmpty(orderIds)){
orderMaster.setOrderMasterIds(orderIds.substring(0, orderIds.length()-1));
}else {
if (StringUtils.isNotEmpty(orderIds)) {
orderMaster.setOrderMasterIds(orderIds.substring(0, orderIds.length() - 1));
} else {
orderMaster.setOrderMasterIds("0");
}
@ -433,7 +429,7 @@ public class OrderMasterController extends BaseController {
// 计算总额
BigDecimal totalPayMoney = financialMaster.getPayMoney();
for (OrderDetail orderDetail: orderDetailList) {
for (OrderDetail orderDetail : orderDetailList) {
List<OrderStandard> standardList = new ArrayList<>();
// 子单施工师傅信息
Worker detailWorker = workerService.selectById(orderDetail.getWorkerId());
@ -500,7 +496,7 @@ public class OrderMasterController extends BaseController {
orderStandardDetail.setServerMoney(financialMaster.getServerMoney());
AfterServiceRecord afterServiceRecord = new AfterServiceRecord();
afterServiceRecord.setOrderDetailId(orderDetail.getId());
List<AfterServiceRecord> records =afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord);
List<AfterServiceRecord> records = afterServiceRecordService.selectAfterServiceRecordList(afterServiceRecord);
orderStandardDetail.setAfterServiceRecordList(records);
orderStandardDetail.setIsOnlyServ(this.checkIsOnlyServer(orderMaster.getId(), orderDetail.getWorkerId()) ? Boolean.TRUE : Boolean.FALSE);
@ -564,7 +560,7 @@ public class OrderMasterController extends BaseController {
fdQry.setFinancialMasterId(financialMaster.getId());
List<FinancialDetail> financialDetailList = financialDetailService.selectFinancialDetailList(fdQry);
BigDecimal finalRecvMoney = BigDecimal.ZERO;
for (FinancialDetail financialDetail: financialDetailList) {
for (FinancialDetail financialDetail : financialDetailList) {
finalRecvMoney = finalRecvMoney.add(financialDetail.getPayMoney());
}
@ -623,7 +619,7 @@ public class OrderMasterController extends BaseController {
orderMasterResponseVo.setWorkerName(worker.getName());
}
// 消费者信息
CustomerAddress customerAddress = addressService.selectByCustomerAddressId(orderMaster.getAddressId());
CustomerAddress customerAddress = addressService.selectByCustomerAddressId(master.getAddressId());
orderMasterResponseVo.setCustomerName(customerAddress.getName());
orderMasterResponseVos.add(orderMasterResponseVo);
@ -757,7 +753,7 @@ public class OrderMasterController extends BaseController {
// 查询主单金额
FinancialMaster financialMaster = financialMasterService.selectByOrderMasterId(orderMasterId);
BigDecimal totalMoney = financialMaster.getPayMoney();
for (OrderDetail detail: detailList) {
for (OrderDetail detail : detailList) {
// 师傅信息
Worker worker = workerService.selectById(detail.getWorkerId());
@ -785,7 +781,7 @@ public class OrderMasterController extends BaseController {
orderStandardDetails.add(detailRes);
}
for (OrderStandardDetail orderStandardDetail: orderStandardDetails) {
for (OrderStandardDetail orderStandardDetail : orderStandardDetails) {
orderStandardDetail.setPayMoney(totalMoney);
}
@ -796,22 +792,22 @@ public class OrderMasterController extends BaseController {
}
}
private boolean checkIsOnlyServer(Long orderMasterId, Long workId){
private boolean checkIsOnlyServer(Long orderMasterId, Long workId) {
// 找出原单的数量
List<OrderGoods> orderGoodsList = orderGoodsService.selectByOrderMasterId(orderMasterId);
// 找出原单关联的细单的商品数量
List<OrderDetail> orderDetailList = orderDetailService.selectByOrderMasterId(orderMasterId);
for (OrderDetail detail : orderDetailList){
for (OrderDetail detail : orderDetailList) {
// 非一个师傅接单
if(!workId.equals(detail.getWorkerId())){
if (!workId.equals(detail.getWorkerId())) {
return false;
}
// 子单数量
List<OrderGoods> orderDetailGoodsList = orderGoodsService.selectByOrderDetailId(detail.getId());
// 计算剩余未分配的商品数量
for (OrderGoods detailGoods : orderDetailGoodsList) {
for(OrderGoods masterGoods : orderGoodsList){
if(Objects.equals(masterGoods.getGoodsStandardId(), detailGoods.getGoodsStandardId())){
for (OrderGoods masterGoods : orderGoodsList) {
if (Objects.equals(masterGoods.getGoodsStandardId(), detailGoods.getGoodsStandardId())) {
masterGoods.setGoodsNum(masterGoods.getGoodsNum() - detailGoods.getGoodsNum());
}
}

View File

@ -3,6 +3,7 @@ package com.ghy.customer.mapper;
import com.ghy.customer.domain.CustomerAddress;
import org.apache.ibatis.annotations.Param;
import javax.validation.constraints.NotNull;
import java.util.List;
public interface CustomerAddressMapper {
@ -17,7 +18,7 @@ public interface CustomerAddressMapper {
* @param ids 地址id
* @return 删除成功条数
*/
int deleteByIds(String [] ids);
int deleteByIds(String[] ids);
/**
* @param customerAddressId 地址id
@ -35,7 +36,7 @@ public interface CustomerAddressMapper {
* @param customerAddressId 地址id
* @return 地址
*/
CustomerAddress selectByCustomerAddressId(@Param("customerAddressId") Long customerAddressId);
CustomerAddress selectByCustomerAddressId(@NotNull @Param("customerAddressId") Long customerAddressId);
/**
* @param customerAddress 地址信息

View File

@ -59,11 +59,7 @@
<select id="selectByCustomerAddressId" resultMap="CustomerAddressResult">
<include refid="selectCustomerAddress"/>
<where>
<if test="customerAddressId != null and customerAddressId != 0">
AND customer_address_id = #{customerAddressId}
</if>
</where>
WHERE customer_address_id = #{customerAddressId}
</select>
<insert id="insertCustomerAddress" parameterType="com.ghy.customer.domain.CustomerAddress" useGeneratedKeys="true" keyProperty="customerAddressId">