diff --git a/ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesWarehouseOutServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesWarehouseOutServiceImpl.java index cf8cdac4..139a2ab5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesWarehouseOutServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/aftersales/service/impl/AftersalesWarehouseOutServiceImpl.java @@ -16,6 +16,7 @@ import com.ruoyi.common.utils.StringUtils; import com.ruoyi.system.domain.SysSalesOrder; import com.ruoyi.system.domain.SysSalesOrderChild; import com.ruoyi.system.domain.SysSalesShippingInform; +import com.ruoyi.system.domain.SysSalesShippingInformDetail; import com.ruoyi.system.mapper.SysSalesOrderChildMapper; import com.ruoyi.system.mapper.SysSalesOrderMapper; import com.ruoyi.system.mapper.SysSalesShippingInformMapper; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/quality/service/impl/QualityOrderReportServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/quality/service/impl/QualityOrderReportServiceImpl.java index 5c49c6ee..ffae4fbb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/quality/service/impl/QualityOrderReportServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/quality/service/impl/QualityOrderReportServiceImpl.java @@ -162,7 +162,11 @@ public class QualityOrderReportServiceImpl implements IQualityOrderReportService // } //计算不良数量的合计值 - int processBadNumTotal = unqualifiedDataList.stream().mapToInt(QualityOrderReportUnqualified::getProcessBadNum).sum(); + + int processBadNumTotal = 0; + if (!CollectionUtils.isEmpty(unqualifiedDataList)){ + processBadNumTotal = unqualifiedDataList.stream().mapToInt(QualityOrderReportUnqualified::getProcessBadNum).sum(); + } //后续处理本次到货数 // if (processBadNumTotal>thisArrivedNum){ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSalesShippingInformController.java b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSalesShippingInformController.java index 66f82046..80797f99 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSalesShippingInformController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSalesShippingInformController.java @@ -220,6 +220,31 @@ public class SysSalesShippingInformController extends BaseController + + /** + * 详情 + */ + @GetMapping("/customerCheckGoodsDetail/{shippingInformId}") + public String customerCheckGoodsDetail(@PathVariable("shippingInformId") Long shippingInformId, ModelMap mmap) + { + SysSalesShippingInform sysSalesShippingInform = sysSalesShippingInformService.selectSysSalesShippingInformById(shippingInformId); + mmap.put("sysSalesShippingInform", sysSalesShippingInform); + return prefix + "/customerCheckGoodsDetail"; + } + + /** + * 修改保存详情 + */ + @RequiresPermissions("system:salesShippingInform:customerCheckGoodsDetail") + @Log(title = "销售取消发货", businessType = BusinessType.UPDATE) + @PostMapping("/customerCheckGoodsDetail") + @ResponseBody + public AjaxResult customerCheckGoodsDetailSave(@RequestBody SysSalesShippingInform sysSalesShippingInform) + { + return toAjax(sysSalesShippingInformService.updateCustomerCheckGoodsDetail(sysSalesShippingInform)); + } + + /** * 客户验收 物料信息信息 */ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java index c31a1a5f..ac8f7703 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysMakeOrderMapper.java @@ -119,4 +119,9 @@ public interface SysMakeOrderMapper * 根据入库单号查询生产单号 * */ String selectMakeByWarehouseStorageCode(String warehouseStorageCode); + + /* + * 根据销售单号查询生产订单 + * */ + SysMakeOrder selectMakeOrderBySaleNo(String salesOrderCode); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSalesShippingInformDetailMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSalesShippingInformDetailMapper.java index 0bdcba7e..1fafefc5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSalesShippingInformDetailMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSalesShippingInformDetailMapper.java @@ -43,6 +43,17 @@ public interface SysSalesShippingInformDetailMapper */ public int updateSysSalesShippingInformDetail(SysSalesShippingInformDetail sysSalesShippingInformDetail); + + + /** + * 修改销售出货通知详情 + * + * @param sysSalesShippingInformDetail 销售出货通知详情 + * @return 结果 + */ + public int updateSysSalesShippingInformDetailByCodeAndNo(SysSalesShippingInformDetail sysSalesShippingInformDetail); + + /** * 删除销售出货通知详情 * diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSalesShippingInformService.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSalesShippingInformService.java index 01fb4f01..634d508c 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSalesShippingInformService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSalesShippingInformService.java @@ -101,4 +101,9 @@ public interface ISysSalesShippingInformService * 客户验收查询物料相关数据 * */ List getMaterialListByOutOrderCode(SysSalesShippingInform sysSalesShippingInform); + + /** + * 客户验收详情 + * */ + int updateCustomerCheckGoodsDetail(SysSalesShippingInform sysSalesShippingInform); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java index a5a7eb57..ac717d43 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSalesShippingInformServiceImpl.java @@ -189,6 +189,11 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor sysSalesShippingInform.setMaterialSum(Math.toIntExact(sysSalesOrderVo.getMaterialSum())); //更新数量合计 sysSalesShippingInform.setEnterpriseSum(Math.toIntExact(sysSalesOrderVo.getEnterpriseSum())); + sysSalesShippingInform.setCustomerContact(sysSalesOrderVo.getCustomerDelivery()); + sysSalesShippingInform.setContactNumber(sysSalesOrderVo.getDeliveryPhone()); + sysSalesShippingInform.setCustomerContactAddress(sysSalesOrderVo.getDeliveryAddress()); + + //更新销售出库详情数据 List sysSalesOrderChildList = sysSalesOrder.getSysSalesOrderChildList(); @@ -204,6 +209,7 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor sysSalesShippingInformDetail.setMaterialProcessMethod(sysSalesOrderChild.getProcessMethod()); sysSalesShippingInformDetail.setMakeNum(sysSalesOrderChild.getMaterialNum()); sysSalesShippingInformDetail.setHasOutOrderNum(sysSalesOrderChild.getOutBoundQuantity()); + sysSalesShippingInformDetail.setThisShippingNum(sysSalesOrderChild.getApplyShippingNum()); sysSalesShippingInformDetail.setCreateBy(loginName); sysSalesShippingInformDetail.setCreateTime(new Date()); shippingInformDetailMapper.insertSysSalesShippingInformDetail(sysSalesShippingInformDetail); @@ -236,10 +242,11 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor warehouseOutOrder.setUpdateTime(new Date()); //更新销售订单的出货状态 +// SysSalesShippingInform tempShippingInform = sysSalesShippingInformMapper.selectSysSalesShippingInformByCode(outOrderCode); SysSalesOrder sysSalesOrder = new SysSalesOrder(); sysSalesOrder.setUpdateBy(loginName); sysSalesOrder.setUpdateTime(new Date()); - sysSalesOrder.setSalesOrderCode(sysSalesShippingInform.getSalesOrderCode()); + sysSalesOrder.setSalesOrderCode(warehouseOutOrder.getSalesOrderCode()); //暂收设置为全部出货 sysSalesOrder.setDeliveryStatus("6"); int updateSysSalesOrderResult = sysSalesOrderMapper.updateSysSalesOrderBySalesOrderCode(sysSalesOrder); @@ -295,7 +302,7 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor } } //设置出货状态为全部验收 - sysSalesShippingInform.setWarehouseOutStatus("11"); + sysSalesShippingInform.setWarehouseOutStatus("12"); //更新出库状态 WarehouseOutOrder warehouseOutOrder = new WarehouseOutOrder(); @@ -304,7 +311,7 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor warehouseOutOrder.setUpdateBy(loginName); //设置为全部验收 warehouseOutOrder.setWarehouseOutStatus("12"); - int updateWarehouseOutOrdeResult = warehouseOutOrderMapper.updateWarehouseOutOrder(warehouseOutOrder); + int updateWarehouseOutOrdeResult = warehouseOutOrderMapper.updateWarehouseOutOrderByCode(warehouseOutOrder); if (updateWarehouseOutOrdeResult <= 0){ throw new BusinessException("更新出库单数据失败"); } @@ -338,4 +345,13 @@ public class SysSalesShippingInformServiceImpl implements ISysSalesShippingInfor List list = shippingInformDetailMapper.selectSysSalesShippingInformDetailByCode(outOrderCode); return list; } + + /** + * 客户验收详情 + * */ + @Override + public int updateCustomerCheckGoodsDetail(SysSalesShippingInform sysSalesShippingInform) { + + return 1; + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderMapper.java index 99ed744c..df447fae 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/mapper/WarehouseOutOrderMapper.java @@ -52,6 +52,15 @@ public interface WarehouseOutOrderMapper */ public int updateWarehouseOutOrder(WarehouseOutOrder warehouseOutOrder); + /** + * 修改仓库出库单 + * + * @param warehouseOutOrder 仓库出库单 + * @return 结果 + */ + public int updateWarehouseOutOrderByCode(WarehouseOutOrder warehouseOutOrder); + + /** * 删除仓库出库单 * diff --git a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java index b41417da..98b20d90 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/warehouse/service/impl/WarehouseOutOrderServiceImpl.java @@ -62,6 +62,9 @@ public class WarehouseOutOrderServiceImpl implements IWarehouseOutOrderService private SysSalesShippingInformMapper shippingInformMapper; + @Autowired + private SysSalesShippingInformDetailMapper shippingInformDetailMapper; + /** * 查询仓库出库单 * @@ -232,8 +235,20 @@ public class WarehouseOutOrderServiceImpl implements IWarehouseOutOrderService sysSalesOrderChild.setQuoteId(warehouseOutOrder.getSalesOrderCode()); sysSalesOrderChild.setMaterialCode(warehouseOutOrderDetail.getMaterialNo()); sysSalesOrderChild.setOutBoundQuantity(warehouseOutOrderDetail.getActualOutOrderSum()); + sysSalesOrderChild.setUpdateBy(loginName); + sysSalesOrderChild.setUpdateTime(new Date()); int updateSalesOrderChildResult = salesOrderChildMapper.updateSysSalesOrderChildByCodeAndQuoteId(sysSalesOrderChild); if (updateSalesOrderChildResult <= 0){ + throw new BusinessException("更新销售订单子表数据失败"); + } + SysSalesShippingInformDetail sysSalesShippingInformDetail = new SysSalesShippingInformDetail(); + sysSalesShippingInformDetail.setHasOutOrderNum(warehouseOutOrderDetail.getActualOutOrderSum()); + sysSalesShippingInformDetail.setUpdateBy(loginName); + sysSalesShippingInformDetail.setUpdateTime(new Date()); + sysSalesShippingInformDetail.setOutOrderCode(warehouseOutOrder.getOutOrderCode()); + sysSalesShippingInformDetail.setMaterialNo(warehouseOutOrderDetail.getMaterialNo()); + int updateShippingInformDetailResult = shippingInformDetailMapper.updateSysSalesShippingInformDetailByCodeAndNo(sysSalesShippingInformDetail); + if (updateShippingInformDetailResult <= 0){ throw new BusinessException("更新销售出库详情数据失败"); } warehouseOutOrderDetail.setUpdateBy(loginName); @@ -579,6 +594,18 @@ public class WarehouseOutOrderServiceImpl implements IWarehouseOutOrderService WarehouseOutOrder warehouseOutOrder = new WarehouseOutOrder(); warehouseOutOrder.setOutOrderCode(outOrderCode); + //添加生产单号 + SysMakeOrder makeOrder = sysMakeOrderMapper.selectMakeOrderBySaleNo(salesOrderCode); + if (makeOrder == null){ + log.warn("生产订单编号为空:{}",makeOrder.getMakeNo()); + } + + + warehouseOutOrder.setDeliveryName(sysSalesOrderVo.getCustomerDelivery()); + warehouseOutOrder.setDeliveryNumber(sysSalesOrderVo.getDeliveryPhone()); + warehouseOutOrder.setDeliveryAddress(sysSalesOrderVo.getDeliveryAddress()); + + warehouseOutOrder.setMakeNo(makeOrder.getMakeNo()); //出库状态为 待仓库准备物料 warehouseOutOrder.setWarehouseOutStatus("0"); warehouseOutOrder.setRelatedOrderCode(salesOrderCode); @@ -587,10 +614,17 @@ public class WarehouseOutOrderServiceImpl implements IWarehouseOutOrderService warehouseOutOrder.setWarehouseOrderType("0"); //出库类型设置为 销售出库 warehouseOutOrder.setWarehouseOutType("0"); + + //物料合计 + warehouseOutOrder.setMaterialSum(Math.toIntExact(sysSalesOrderVo.getMaterialSum())); + //数量合计 + warehouseOutOrder.setEnterpriseSum(Math.toIntExact(sysSalesOrderVo.getEnterpriseSum())); + + warehouseOutOrder.setBusinessName(sysSalesOrderVo.getBusinessMembers()); warehouseOutOrder.setCustomerId(sysSalesOrderVo.getEnterpriseCode()); warehouseOutOrder.setCustomerName(sysSalesOrderVo.getEnterpriseName()); - warehouseOutOrder.setApplyName(sysSalesOrderVo.getApplyUserName()); + warehouseOutOrder.setApplyName(sysSalesOrderVo.getApplyUser()); warehouseOutOrder.setDeliveryCondition(sysSalesOrderVo.getDeliveryConditions()); warehouseOutOrder.setCreateTime(new Date()); warehouseOutOrder.setCreateBy(ShiroUtils.getLoginName()); diff --git a/ruoyi-admin/src/main/resources/mapper/system/SysMakeOrderMapper.xml b/ruoyi-admin/src/main/resources/mapper/system/SysMakeOrderMapper.xml index 3a86a777..e0673d57 100644 --- a/ruoyi-admin/src/main/resources/mapper/system/SysMakeOrderMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/system/SysMakeOrderMapper.xml @@ -270,6 +270,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + +
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+
+ + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+ + + +
+
+
+
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/salesShippingInform.html b/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/salesShippingInform.html index 173fa6e4..9b7c6803 100644 --- a/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/salesShippingInform.html +++ b/ruoyi-admin/src/main/resources/templates/system/salesShippingInform/salesShippingInform.html @@ -71,8 +71,8 @@ var cancelFlag = [[${@permission.hasPermi('system:salesShippingInform:cancel')}]]; var restoreFlag = [[${@permission.hasPermi('system:salesShippingInform:restore')}]]; var confirmShippingFlag = [[${@permission.hasPermi('system:salesShippingInform:confirmShipping')}]]; - - + var customerCheckGoodsFlag = [[${@permission.hasPermi('system:salesShippingInform:customerCheckGoods')}]]; + var customerCheckGoodsDetailFlag = [[${@permission.hasPermi('system:salesShippingInform:customerCheckGoodsDetail')}]]; @@ -222,12 +222,12 @@ align: 'center', formatter: function(value, row, index) { var actions = []; - actions.push('编辑 '); + actions.push('详情 '); if(row.warehouseOutStatus == '2'){ actions.push('确认发货 '); } if(row.warehouseOutStatus == '10' || row.warehouseOutStatus == '11'){ - actions.push('确认验收 '); + actions.push('确认验收 '); } return actions.join(''); @@ -248,6 +248,12 @@ var url = prefix +'/customerCheckGoods/' + shippingInformId; $.modal.open("客户验收",url); } + + //详情 + function customerCheckGoodsDetail(shippingInformId){ + var url = prefix +'/customerCheckGoodsDetail/' + shippingInformId; + $.modal.open("详情",url); + } \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/warehouse/warehouseOutOrder/prepareMaterial.html b/ruoyi-admin/src/main/resources/templates/warehouse/warehouseOutOrder/prepareMaterial.html index 367571f2..e4d267b2 100644 --- a/ruoyi-admin/src/main/resources/templates/warehouse/warehouseOutOrder/prepareMaterial.html +++ b/ruoyi-admin/src/main/resources/templates/warehouse/warehouseOutOrder/prepareMaterial.html @@ -11,7 +11,7 @@
- +
@@ -25,49 +25,49 @@
- +
- +
- +
- +
- +
- +
- +
- +