Commit 42bb38df by 杨浩

bug修复

parent 4acff722
...@@ -18,6 +18,8 @@ public enum ErpDeliveryStatus implements ArrayValuable<String> { ...@@ -18,6 +18,8 @@ public enum ErpDeliveryStatus implements ArrayValuable<String> {
ALREADY("ALREADY", "已发货"), ALREADY("ALREADY", "已发货"),
ARRIVAL("ARRIVAL", "已到货"), ARRIVAL("ARRIVAL", "已到货"),
RECONCILIATION("RECONCILIATION", "已对账"), RECONCILIATION("RECONCILIATION", "已对账"),
CANCEL("CANCEL", "取消"),
; ;
public static final String[] ARRAYS = Arrays.stream(values()).map(ErpDeliveryStatus::getStatus).toArray(String[]::new); public static final String[] ARRAYS = Arrays.stream(values()).map(ErpDeliveryStatus::getStatus).toArray(String[]::new);
......
...@@ -103,6 +103,9 @@ public class ErpPurchaseOrderPageReqVO extends PageParam { ...@@ -103,6 +103,9 @@ public class ErpPurchaseOrderPageReqVO extends PageParam {
@Schema(description = "发货状态") @Schema(description = "发货状态")
private List<String> deliveryStatusList; private List<String> deliveryStatusList;
@Schema(description = "对应客户订单状态")
private List<String> orderStatusList;
/** /**
* 枚举 {@link ErpDeliveryStatus} * 枚举 {@link ErpDeliveryStatus}
*/ */
......
...@@ -12,7 +12,7 @@ import lombok.Data; ...@@ -12,7 +12,7 @@ import lombok.Data;
@Data @Data
public class DeliveryStatusCountRespVO { public class DeliveryStatusCountRespVO {
@Schema(description = "0-待接单 1-待配送 2-配送中") @Schema(description = "0-待接单 1-待配送 2-已完成")
private Integer type; private Integer type;
@Schema(description = "对应订单数") @Schema(description = "对应订单数")
......
...@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; ...@@ -19,6 +19,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.github.yulichang.query.MPJQueryWrapper; import com.github.yulichang.query.MPJQueryWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.math.BigDecimal;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
...@@ -143,6 +144,11 @@ public interface ErpPurchaseOrderMapper extends BaseMapperX<ErpPurchaseOrderDO> ...@@ -143,6 +144,11 @@ public interface ErpPurchaseOrderMapper extends BaseMapperX<ErpPurchaseOrderDO>
query.leftJoin(ErpSupplierDO.class, ErpSupplierDO::getId, ErpPurchaseOrderDO::getSupplierId); query.leftJoin(ErpSupplierDO.class, ErpSupplierDO::getId, ErpPurchaseOrderDO::getSupplierId);
query.like(ErpSupplierDO::getName, reqVO.getSupplierName()); query.like(ErpSupplierDO::getName, reqVO.getSupplierName());
} }
if (CommonUtil.isNotEmpty(reqVO.getOrderStatusList())) {
query.leftJoin("order_customer_order oco4 on oco4.id = t.customer_order_id");
query.in("oco4.order_status", reqVO.getOrderStatusList());
query.groupBy(ErpPurchaseReturnDO::getId);
}
return query; return query;
} }
...@@ -178,7 +184,27 @@ public interface ErpPurchaseOrderMapper extends BaseMapperX<ErpPurchaseOrderDO> ...@@ -178,7 +184,27 @@ public interface ErpPurchaseOrderMapper extends BaseMapperX<ErpPurchaseOrderDO>
} }
wrapper.orderByDesc("t.id"); wrapper.orderByDesc("t.id");
wrapper.groupBy("DATE_FORMAT( t.create_time, '%Y-%m' ), t.supplier_id"); wrapper.groupBy("DATE_FORMAT( t.create_time, '%Y-%m' ), t.supplier_id");
return this.selectJoinPage(pageReqVO, SupplierMonthOrderRespVO.class, wrapper); PageResult<SupplierMonthOrderRespVO> supplierMonthOrderRespVOPageResult = this.selectJoinPage(pageReqVO, SupplierMonthOrderRespVO.class, wrapper);
supplierMonthOrderRespVOPageResult.getList().forEach(item -> {
item.setPayablePrice(this.queryMonthPayablePrice(item.getSupplierId(), item.getMonth()));
});
return supplierMonthOrderRespVOPageResult;
}
default Integer queryMonthPayablePrice(Long supplierId, String month) {
MPJQueryWrapper<ErpPurchaseOrderDO> wrapper = new MPJQueryWrapper<>();
wrapper.select("SUM( ocoi.signed_total ) - SUM(ocoi.returns_total ) as 'payablePrice'");
wrapper.leftJoin("order_customer_order oco on t.customer_order_id = oco.id");
wrapper.leftJoin("erp_purchase_order_items epoi ON t.id = epoi.order_id");
wrapper.leftJoin("order_customer_order_item ocoi ON epoi.customer_order_item_id = ocoi.id ");
wrapper.eq("DATE_FORMAT(t.create_time, '%Y-%m') ", month);
wrapper.eq("t.supplier_id", supplierId);
wrapper.in("t.delivery_status", CommonUtil.asList(ErpDeliveryStatus.RECONCILIATION.getStatus(),
ErpDeliveryStatus.ARRIVAL.getStatus()));
wrapper.in("oco.order_status", CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
Map<String, Object> stringObjectMap = this.selectJoinMap(wrapper);
BigDecimal payablePrice = (BigDecimal) stringObjectMap.getOrDefault("payablePrice", BigDecimal.ZERO);
return payablePrice.intValue();
} }
} }
\ No newline at end of file
...@@ -548,7 +548,7 @@ public class ErpSaleOrderServiceImpl implements ErpSaleOrderService { ...@@ -548,7 +548,7 @@ public class ErpSaleOrderServiceImpl implements ErpSaleOrderService {
.set(ErpSaleOutDO::getDeliveryStaffId, deliveryStaffId) .set(ErpSaleOutDO::getDeliveryStaffId, deliveryStaffId)
.set(ErpSaleOutDO::getArrivalTime, arrivalTime) .set(ErpSaleOutDO::getArrivalTime, arrivalTime)
.set(ErpSaleOutDO::getReceiptFile, reqVO.getReceiptFile()) .set(ErpSaleOutDO::getReceiptFile, reqVO.getReceiptFile())
.eq(ErpSaleOutDO::getId, saleOrder.getId())); .eq(ErpSaleOutDO::getId, saleOut.getId()));
saleOutItemMapper.update(Wrappers.<ErpSaleOutItemDO>lambdaUpdate() saleOutItemMapper.update(Wrappers.<ErpSaleOutItemDO>lambdaUpdate()
.set(ErpSaleOutItemDO::getPickUpStatus, SaleOrderPickUpStatus.ARRIVAL.getType()) .set(ErpSaleOutItemDO::getPickUpStatus, SaleOrderPickUpStatus.ARRIVAL.getType())
.eq(ErpSaleOutItemDO::getOutId, saleOut.getId())); .eq(ErpSaleOutItemDO::getOutId, saleOut.getId()));
...@@ -692,8 +692,9 @@ public class ErpSaleOrderServiceImpl implements ErpSaleOrderService { ...@@ -692,8 +692,9 @@ public class ErpSaleOrderServiceImpl implements ErpSaleOrderService {
), userId)); ), userId));
break; break;
case 2: case 2:
count.setCount(saleOrderMapper.statusCount(CommonUtil.asList(SaleOrderPickUpStatus.ALREADY.getType(), count.setCount(saleOrderMapper.statusCount(CommonUtil.asList(SaleOrderPickUpStatus.ARRIVAL.getType(),
SaleOrderPickUpStatus.RETURNS_STAFF_ALREADY.getType()), userId)); SaleOrderPickUpStatus.SIGN.getType(),
SaleOrderPickUpStatus.RETURNS_FINISH.getType()), userId));
break; break;
default:break; default:break;
} }
......
...@@ -3,6 +3,8 @@ package cn.iocoder.foodnexus.module.operations.controller.admin.customerrequire; ...@@ -3,6 +3,8 @@ package cn.iocoder.foodnexus.module.operations.controller.admin.customerrequire;
import cn.iocoder.foodnexus.framework.common.util.CommonUtil; import cn.iocoder.foodnexus.framework.common.util.CommonUtil;
import cn.iocoder.foodnexus.framework.common.util.collection.MapUtils; import cn.iocoder.foodnexus.framework.common.util.collection.MapUtils;
import cn.iocoder.foodnexus.module.erp.api.service.ErpCustomerApi; import cn.iocoder.foodnexus.module.erp.api.service.ErpCustomerApi;
import cn.iocoder.foodnexus.module.erp.dal.dataobject.sale.ErpCustomerDO;
import cn.iocoder.foodnexus.module.erp.service.sale.ErpCustomerService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import jakarta.annotation.Resource; import jakarta.annotation.Resource;
...@@ -43,7 +45,7 @@ public class CustomerRequireController { ...@@ -43,7 +45,7 @@ public class CustomerRequireController {
private CustomerRequireService customerRequireService; private CustomerRequireService customerRequireService;
@Autowired @Autowired
private ErpCustomerApi customerApi; private ErpCustomerService customerService;
@PostMapping("/require") @PostMapping("/require")
@Operation(summary = "受理客户需求") @Operation(summary = "受理客户需求")
...@@ -78,7 +80,11 @@ public class CustomerRequireController { ...@@ -78,7 +80,11 @@ public class CustomerRequireController {
public CommonResult<CustomerRequireRespVO> getCustomerRequire(@RequestParam("id") Long id) { public CommonResult<CustomerRequireRespVO> getCustomerRequire(@RequestParam("id") Long id) {
CustomerRequireDO customerRequire = customerRequireService.getCustomerRequire(id); CustomerRequireDO customerRequire = customerRequireService.getCustomerRequire(id);
return success(BeanUtils.toBean(customerRequire, CustomerRequireRespVO.class, item -> { return success(BeanUtils.toBean(customerRequire, CustomerRequireRespVO.class, item -> {
item.setCustomerName(customerApi.queryNameStrById(item.getCustomerId())); ErpCustomerDO customer = customerService.getCustomer(item.getCustomerId());
if (CommonUtil.isNotEmpty(customer)) {
item.setCustomerName(customer.getName());
item.setCustomerMobile(customer.getMobile());
}
})); }));
} }
...@@ -87,9 +93,12 @@ public class CustomerRequireController { ...@@ -87,9 +93,12 @@ public class CustomerRequireController {
@PreAuthorize("@ss.hasPermission('oper:customer-require:query')") @PreAuthorize("@ss.hasPermission('oper:customer-require:query')")
public CommonResult<PageResult<CustomerRequireRespVO>> getCustomerRequirePage(@Valid CustomerRequirePageReqVO pageReqVO) { public CommonResult<PageResult<CustomerRequireRespVO>> getCustomerRequirePage(@Valid CustomerRequirePageReqVO pageReqVO) {
PageResult<CustomerRequireDO> pageResult = customerRequireService.getCustomerRequirePage(pageReqVO); PageResult<CustomerRequireDO> pageResult = customerRequireService.getCustomerRequirePage(pageReqVO);
Map<Long, String> customerNameMap = customerApi.queryNameMapByIds(CommonUtil.listConvertSet(pageResult.getList(), CustomerRequireDO::getCustomerId)); Map<Long, ErpCustomerDO> customerMap = customerService.getCustomerMap(CommonUtil.listConvertSet(pageResult.getList(), CustomerRequireDO::getCustomerId));
return success(BeanUtils.toBean(pageResult, CustomerRequireRespVO.class, item -> { return success(BeanUtils.toBean(pageResult, CustomerRequireRespVO.class, item -> {
MapUtils.findAndThen(customerNameMap, item.getCustomerId(), item::setCustomerName); MapUtils.findAndThen(customerMap, item.getCustomerId(), customer -> {
item.setCustomerName(customer.getName());
item.setCustomerMobile(customer.getMobile());
});
})); }));
} }
......
...@@ -23,6 +23,9 @@ public class CustomerRequireRespVO { ...@@ -23,6 +23,9 @@ public class CustomerRequireRespVO {
@Schema(description = "客户名称") @Schema(description = "客户名称")
private String customerName; private String customerName;
@Schema(description = "客户联系方式")
private String customerMobile;
@Schema(description = "需求标题", requiredMode = Schema.RequiredMode.REQUIRED) @Schema(description = "需求标题", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("需求标题") @ExcelProperty("需求标题")
private String requireTitle; private String requireTitle;
......
...@@ -17,6 +17,7 @@ import cn.iocoder.foodnexus.module.order.controller.admin.customerorder.vo.Custo ...@@ -17,6 +17,7 @@ import cn.iocoder.foodnexus.module.order.controller.admin.customerorder.vo.Custo
import cn.iocoder.foodnexus.module.order.controller.admin.customerorder.vo.CustomerOrderReconPageRespVO; import cn.iocoder.foodnexus.module.order.controller.admin.customerorder.vo.CustomerOrderReconPageRespVO;
import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorder.CustomerOrderDO; import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorder.CustomerOrderDO;
import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorderitem.CustomerOrderItemDO; import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorderitem.CustomerOrderItemDO;
import cn.iocoder.foodnexus.module.order.enums.CustomerOrderStatus;
import cn.iocoder.foodnexus.module.order.service.customerorder.CustomerOrderService; import cn.iocoder.foodnexus.module.order.service.customerorder.CustomerOrderService;
import cn.iocoder.foodnexus.module.order.service.customerorderitem.CustomerOrderItemService; import cn.iocoder.foodnexus.module.order.service.customerorderitem.CustomerOrderItemService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
...@@ -75,6 +76,7 @@ public class OperaSupplierPurchaseOrderController { ...@@ -75,6 +76,7 @@ public class OperaSupplierPurchaseOrderController {
orderPageReqVo.setSupplierName(pageReqVO.getSupplierName()); orderPageReqVo.setSupplierName(pageReqVO.getSupplierName());
orderPageReqVo.setCreateMonth(pageReqVO.getMonth()); orderPageReqVo.setCreateMonth(pageReqVO.getMonth());
orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus())); orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus()));
orderPageReqVo.setOrderStatusList(CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo); PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo);
return success(BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform)); return success(BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform));
} }
...@@ -110,6 +112,7 @@ public class OperaSupplierPurchaseOrderController { ...@@ -110,6 +112,7 @@ public class OperaSupplierPurchaseOrderController {
orderPageReqVo.setSupplierName(pageReqVO.getSupplierName()); orderPageReqVo.setSupplierName(pageReqVO.getSupplierName());
orderPageReqVo.setCreateMonth(pageReqVO.getMonth()); orderPageReqVo.setCreateMonth(pageReqVO.getMonth());
orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus())); orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus()));
orderPageReqVo.setOrderStatusList(CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo); PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo);
List<SupplierMonthOrderDetailsRespVO> list = BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform).getList(); List<SupplierMonthOrderDetailsRespVO> list = BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform).getList();
// 导出 Excel // 导出 Excel
...@@ -128,10 +131,9 @@ public class OperaSupplierPurchaseOrderController { ...@@ -128,10 +131,9 @@ public class OperaSupplierPurchaseOrderController {
purchaseOrder.setDeliveryMode(customerOrder.getDeliveryMode()); purchaseOrder.setDeliveryMode(customerOrder.getDeliveryMode());
purchaseOrder.setPlanDeliveryStartTime(customerOrder.getPlanDeliveryStartTime()); purchaseOrder.setPlanDeliveryStartTime(customerOrder.getPlanDeliveryStartTime());
purchaseOrder.setPlanDeliveryEndTime(customerOrder.getPlanDeliveryEndTime()); purchaseOrder.setPlanDeliveryEndTime(customerOrder.getPlanDeliveryEndTime());
// TODO 待定
// purchaseOrder.setPayablePrice();
purchaseOrder.setSignedTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getSignedTotal).sum()); purchaseOrder.setSignedTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getSignedTotal).sum());
purchaseOrder.setReturnsTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getReturnsTotal).sum()); purchaseOrder.setReturnsTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getReturnsTotal).sum());
purchaseOrder.setPayablePrice(CommonUtil.getEls(purchaseOrder.getSignedTotal(), 0) - CommonUtil.getEls(purchaseOrder.getReturnsTotal(), 0));
purchaseOrder.setSupplierName(customerOrderItemDOS.get(0).getSupplierName()); purchaseOrder.setSupplierName(customerOrderItemDOS.get(0).getSupplierName());
StringBuilder productNames = new StringBuilder(); StringBuilder productNames = new StringBuilder();
......
...@@ -16,6 +16,7 @@ import cn.iocoder.foodnexus.module.erp.dal.dataobject.purchase.ErpPurchaseOrderD ...@@ -16,6 +16,7 @@ import cn.iocoder.foodnexus.module.erp.dal.dataobject.purchase.ErpPurchaseOrderD
import cn.iocoder.foodnexus.module.erp.service.purchase.ErpPurchaseOrderService; import cn.iocoder.foodnexus.module.erp.service.purchase.ErpPurchaseOrderService;
import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorder.CustomerOrderDO; import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorder.CustomerOrderDO;
import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorderitem.CustomerOrderItemDO; import cn.iocoder.foodnexus.module.order.dal.dataobject.customerorderitem.CustomerOrderItemDO;
import cn.iocoder.foodnexus.module.order.enums.CustomerOrderStatus;
import cn.iocoder.foodnexus.module.order.service.customerorder.CustomerOrderService; import cn.iocoder.foodnexus.module.order.service.customerorder.CustomerOrderService;
import cn.iocoder.foodnexus.module.order.service.customerorderitem.CustomerOrderItemService; import cn.iocoder.foodnexus.module.order.service.customerorderitem.CustomerOrderItemService;
import cn.iocoder.foodnexus.module.system.annotations.AppSystemAuth; import cn.iocoder.foodnexus.module.system.annotations.AppSystemAuth;
...@@ -79,6 +80,7 @@ public class SupplierPurchaseOrderController { ...@@ -79,6 +80,7 @@ public class SupplierPurchaseOrderController {
orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId())); orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId()));
orderPageReqVo.setCreateMonth(pageReqVO.getMonth()); orderPageReqVo.setCreateMonth(pageReqVO.getMonth());
orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus())); orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus()));
orderPageReqVo.setOrderStatusList(CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo); PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo);
return success(BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform)); return success(BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform));
} }
...@@ -93,6 +95,7 @@ public class SupplierPurchaseOrderController { ...@@ -93,6 +95,7 @@ public class SupplierPurchaseOrderController {
orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId())); orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId()));
orderPageReqVo.setCreateMonth(month); orderPageReqVo.setCreateMonth(month);
orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus())); orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus()));
orderPageReqVo.setOrderStatusList(CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo); PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo);
purchaseOrderService.reconciliation(pageResult.getList(), orderPageReqVo.getSupplierId()); purchaseOrderService.reconciliation(pageResult.getList(), orderPageReqVo.getSupplierId());
return success(Boolean.TRUE); return success(Boolean.TRUE);
...@@ -104,7 +107,6 @@ public class SupplierPurchaseOrderController { ...@@ -104,7 +107,6 @@ public class SupplierPurchaseOrderController {
purchaseOrder.setDeliveryMode(customerOrder.getDeliveryMode()); purchaseOrder.setDeliveryMode(customerOrder.getDeliveryMode());
purchaseOrder.setPlanDeliveryStartTime(customerOrder.getPlanDeliveryStartTime()); purchaseOrder.setPlanDeliveryStartTime(customerOrder.getPlanDeliveryStartTime());
purchaseOrder.setPlanDeliveryEndTime(customerOrder.getPlanDeliveryEndTime()); purchaseOrder.setPlanDeliveryEndTime(customerOrder.getPlanDeliveryEndTime());
// TODO 待定
purchaseOrder.setSignedTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getSignedTotal).sum()); purchaseOrder.setSignedTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getSignedTotal).sum());
purchaseOrder.setReturnsTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getReturnsTotal).sum()); purchaseOrder.setReturnsTotal(customerOrderItemDOS.stream().mapToInt(CustomerOrderItemDO::getReturnsTotal).sum());
purchaseOrder.setPayablePrice(CommonUtil.getEls(purchaseOrder.getSignedTotal(), 0) - CommonUtil.getEls(purchaseOrder.getReturnsTotal(), 0)); purchaseOrder.setPayablePrice(CommonUtil.getEls(purchaseOrder.getSignedTotal(), 0) - CommonUtil.getEls(purchaseOrder.getReturnsTotal(), 0));
...@@ -149,6 +151,7 @@ public class SupplierPurchaseOrderController { ...@@ -149,6 +151,7 @@ public class SupplierPurchaseOrderController {
orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId())); orderPageReqVo.setSupplierId(supplierApi.querySupplierIdByUserId(getLoginUserId()));
orderPageReqVo.setCreateMonth(pageReqVO.getMonth()); orderPageReqVo.setCreateMonth(pageReqVO.getMonth());
orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus())); orderPageReqVo.setDeliveryStatusList(CommonUtil.asList(ErpDeliveryStatus.ARRIVAL.getStatus(), ErpDeliveryStatus.RECONCILIATION.getStatus()));
orderPageReqVo.setOrderStatusList(CommonUtil.asList(CustomerOrderStatus.SIGN_RECEIPT.getKey(), CustomerOrderStatus.FINISH.getKey(), CustomerOrderStatus.RETURN.getKey()));
PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo); PageResult<ErpPurchaseOrderDO> pageResult = purchaseOrderService.getPurchaseOrderPage(orderPageReqVo);
List<SupplierMonthOrderDetailsRespVO> list = BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform).getList(); List<SupplierMonthOrderDetailsRespVO> list = BeanUtils.toBean(pageResult, SupplierMonthOrderDetailsRespVO.class, this::transform).getList();
// 导出 Excel // 导出 Excel
......
...@@ -96,7 +96,7 @@ public class DeliverySaleOrderController { ...@@ -96,7 +96,7 @@ public class DeliverySaleOrderController {
public CommonResult<List<DeliveryStatusCountRespVO>> statusCount() { public CommonResult<List<DeliveryStatusCountRespVO>> statusCount() {
List<DeptSimpleRespVO> deptSimpleRespVOS = deliveryStaffCustomerService.queryDeptListByStaffId(deliveryStaffApi.queryStaffIdByUserId(getLoginUserId())); List<DeptSimpleRespVO> deptSimpleRespVOS = deliveryStaffCustomerService.queryDeptListByStaffId(deliveryStaffApi.queryStaffIdByUserId(getLoginUserId()));
Set<Long> deptIds = CommonUtil.listConvertSet(deptSimpleRespVOS, DeptSimpleRespVO::getId); Set<Long> deptIds = CommonUtil.listConvertSet(deptSimpleRespVOS, DeptSimpleRespVO::getId);
return success(saleOrderService.statusCount(getLoginUserId(), deptIds)); return success(saleOrderService.statusCount(deliveryStaffApi.queryStaffIdByUserId(getLoginUserId()), deptIds));
} }
@GetMapping("/my-page") @GetMapping("/my-page")
......
...@@ -10,12 +10,15 @@ import cn.iocoder.foodnexus.framework.security.core.util.SecurityFrameworkUtils; ...@@ -10,12 +10,15 @@ import cn.iocoder.foodnexus.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.foodnexus.module.customerpermission.core.annotation.CustomerVisible; import cn.iocoder.foodnexus.module.customerpermission.core.annotation.CustomerVisible;
import cn.iocoder.foodnexus.module.erp.api.PurchaseOrderSplitEvent; import cn.iocoder.foodnexus.module.erp.api.PurchaseOrderSplitEvent;
import cn.iocoder.foodnexus.module.erp.api.enums.ErpAuditStatus; import cn.iocoder.foodnexus.module.erp.api.enums.ErpAuditStatus;
import cn.iocoder.foodnexus.module.erp.api.enums.ErpDeliveryStatus;
import cn.iocoder.foodnexus.module.erp.api.service.ErpCustomerApi; import cn.iocoder.foodnexus.module.erp.api.service.ErpCustomerApi;
import cn.iocoder.foodnexus.module.erp.api.service.ErpSupplierApi; import cn.iocoder.foodnexus.module.erp.api.service.ErpSupplierApi;
import cn.iocoder.foodnexus.module.erp.api.service.ErpWarehouseApi; import cn.iocoder.foodnexus.module.erp.api.service.ErpWarehouseApi;
import cn.iocoder.foodnexus.module.erp.controller.admin.sale.vo.returns.ErpSaleReturnSaveReqVO; import cn.iocoder.foodnexus.module.erp.controller.admin.sale.vo.returns.ErpSaleReturnSaveReqVO;
import cn.iocoder.foodnexus.module.erp.dal.dataobject.customerwarehouse.CustomerWarehouseDO; import cn.iocoder.foodnexus.module.erp.dal.dataobject.customerwarehouse.CustomerWarehouseDO;
import cn.iocoder.foodnexus.module.erp.dal.dataobject.purchase.ErpPurchaseOrderDO;
import cn.iocoder.foodnexus.module.erp.dal.dataobject.sale.*; import cn.iocoder.foodnexus.module.erp.dal.dataobject.sale.*;
import cn.iocoder.foodnexus.module.erp.dal.mysql.purchase.ErpPurchaseOrderMapper;
import cn.iocoder.foodnexus.module.erp.dal.mysql.sale.ErpSaleOrderMapper; import cn.iocoder.foodnexus.module.erp.dal.mysql.sale.ErpSaleOrderMapper;
import cn.iocoder.foodnexus.module.erp.enums.SaleOrderPickUpStatus; import cn.iocoder.foodnexus.module.erp.enums.SaleOrderPickUpStatus;
import cn.iocoder.foodnexus.module.erp.service.customerwarehouse.CustomerWarehouseService; import cn.iocoder.foodnexus.module.erp.service.customerwarehouse.CustomerWarehouseService;
...@@ -144,6 +147,9 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO ...@@ -144,6 +147,9 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
private ErpSaleOrderMapper saleOrderMapper; private ErpSaleOrderMapper saleOrderMapper;
@Autowired @Autowired
private ErpPurchaseOrderMapper purchaseOrderMapper;
@Autowired
private ScoringWeightService scoringWeightService; private ScoringWeightService scoringWeightService;
@Autowired @Autowired
...@@ -365,6 +371,10 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO ...@@ -365,6 +371,10 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
.set(ErpSaleOrderDO::getPickUpStatus, SaleOrderPickUpStatus.CANCEL.getType()) .set(ErpSaleOrderDO::getPickUpStatus, SaleOrderPickUpStatus.CANCEL.getType())
.eq(ErpSaleOrderDO::getCustomerOrderId, customerOrder.getId())); .eq(ErpSaleOrderDO::getCustomerOrderId, customerOrder.getId()));
purchaseOrderMapper.update(Wrappers.<ErpPurchaseOrderDO>lambdaUpdate()
.set(ErpPurchaseOrderDO::getDeliveryStatus, ErpDeliveryStatus.CANCEL.getStatus())
.eq(ErpPurchaseOrderDO::getCustomerOrderId, customerOrder.getId()));
// 订单记录 // 订单记录
CustomerOrderRecordEvent event = new CustomerOrderRecordEvent(); CustomerOrderRecordEvent event = new CustomerOrderRecordEvent();
event.setOrderStatus(CustomerOrderStatus.CANCEL); event.setOrderStatus(CustomerOrderStatus.CANCEL);
...@@ -443,7 +453,7 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO ...@@ -443,7 +453,7 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
CustomerOrderRecordEvent event = new CustomerOrderRecordEvent(); CustomerOrderRecordEvent event = new CustomerOrderRecordEvent();
event.setOrderStatus(CustomerOrderStatus.SIGN_RECEIPT); event.setOrderStatus(CustomerOrderStatus.SIGN_RECEIPT);
event.setCustomerOrderId(reqVO.getId()); event.setCustomerOrderId(reqVO.getId());
event.setCopyWriter(CommonUtil.asList(saleOut.getReceiptFile())); event.setCopyWriter(CommonUtil.asList(CommonUtil.getEls(saleOut.getReceiptFile(), "")));
orderRecordApi.recordEvent(event); orderRecordApi.recordEvent(event);
} finally { } finally {
RedisUtils.unLockRds(lock); RedisUtils.unLockRds(lock);
......
...@@ -47,12 +47,12 @@ spring: ...@@ -47,12 +47,12 @@ spring:
primary: master primary: master
datasource: datasource:
master: master:
url: jdbc:mysql://127.0.0.1:3306/foodnexus?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X 连接的示例 url: jdbc:mysql://127.0.0.1:3306/foodnexus?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true&lowerCaseTableNames=1 # MySQL Connector/J 8.X 连接的示例
username: foodnexus username: foodnexus
password: X6e3ztPiWTzJpwz3 password: X6e3ztPiWTzJpwz3
slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改 slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改
lazy: true # 开启懒加载,保证启动速度 lazy: true # 开启懒加载,保证启动速度
url: jdbc:mysql://127.0.0.1:3306/foodnexus?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true # MySQL Connector/J 8.X 连接的示例 url: jdbc:mysql://127.0.0.1:3306/foodnexus?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true&lowerCaseTableNames=1 # MySQL Connector/J 8.X 连接的示例
username: foodnexus username: foodnexus
password: X6e3ztPiWTzJpwz3 password: X6e3ztPiWTzJpwz3
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment