Ver código fonte

工单添加产品要求单

yzc 1 ano atrás
pai
commit
ce03e604e5

+ 37 - 0
hx-mes/src/main/java/com/fjhx/mes/entity/work/vo/WorkOrderVo.java

@@ -79,4 +79,41 @@ public class WorkOrderVo extends WorkOrder {
      */
     private String contractProductRemark;
 
+    /**
+     * 合同创建人
+     */
+    private Long contractCreateUser;
+    /**
+     * 合同创建人
+     */
+    private String contractCreateUserName;
+    /**
+     * 合同交货时间
+     */
+    private Date contractDeliveryDate;
+
+    /**
+     * 客户id
+     */
+    private Long customerId;
+    private String customerName;
+
+    /**
+     * 客户国家名称
+     */
+    private String buyCountryName;
+    /**
+     * 客户省名称
+     */
+    private String buyProvinceName;
+    /**
+     * 客户市名称
+     */
+    private String buyCityName;
+
+    /**
+     * 客户详细地址
+     */
+    private String buyAddress;
+
 }

+ 26 - 0
hx-mes/src/main/java/com/fjhx/mes/service/work/impl/WorkOrderServiceImpl.java

@@ -7,11 +7,15 @@ import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.area.utils.CustomizeAreaUtil;
 import com.fjhx.common.constant.SourceConstant;
 import com.fjhx.common.enums.PushBusinessTypeEnum;
 import com.fjhx.common.utils.Assert;
+import com.fjhx.customer.entity.customer.po.Customer;
+import com.fjhx.customer.service.customer.CustomerService;
 import com.fjhx.file.utils.ObsFileUtil;
 import com.fjhx.item.entity.product.po.ProductInfo;
+import com.fjhx.item.entity.product.vo.ProductInfoVo;
 import com.fjhx.item.service.product.ProductInfoService;
 import com.fjhx.mes.entity.bom.po.BomDetail;
 import com.fjhx.mes.entity.bom.po.BomInfo;
@@ -53,6 +57,7 @@ import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.wrapper.IWrapper;
 import com.ruoyi.common.utils.wrapper.SqlField;
 import com.ruoyi.system.service.ISysUserService;
+import com.ruoyi.system.utils.UserUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -104,6 +109,8 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
     private StockWaitDetailsService stockWaitDetailsService;
     @Autowired
     private WorkOrderBomService workOrderBomService;
+    @Autowired
+    private CustomerService customerService;
 
     @Override
     public Page<WorkOrderVo> getPage(WorkOrderSelectDto dto) {
@@ -168,6 +175,25 @@ public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder
         BigDecimal availableStockQuantity = stockService.getAvailableStockQuantity(result.getProductId());
         result.setAvailableStockQuantity(availableStockQuantity);
 
+        //赋值创建人名称
+        UserUtil.assignmentNickName(Collections.singletonList(result), WorkOrderVo::getContractCreateUser, WorkOrderVo::setContractCreateUserName);
+
+        //赋值买方信息
+        Customer customer = customerService.getById(result.getCustomerId());
+        if(ObjectUtil.isNotEmpty(customer)) {
+            //赋值客户国省市名称
+            Map<Long, String> areaMapByIds = CustomizeAreaUtil.getAreaMapByIds(Arrays.asList(
+                    customer.getCountryId(),
+                    customer.getProvinceId(),
+                    customer.getCityId())
+            );
+            result.setCustomerName(customer.getName());
+            result.setBuyCountryName(areaMapByIds.get(customer.getCountryId()));
+            result.setBuyProvinceName(areaMapByIds.get(customer.getProvinceId()));
+            result.setBuyCityName(areaMapByIds.get(customer.getCityId()));
+            result.setBuyAddress(customer.getAddress());
+        }
+
         return result;
     }
 

+ 7 - 2
hx-mes/src/main/resources/mapper/work/WorkOrderMapper.xml

@@ -70,10 +70,15 @@
             wo.stock_wait_quantity,
             wo.contract_details_id,
             wo.research_status,
-            scd.product_remark AS contractProductRemark
+            scd.product_remark AS contractProductRemark,
+            sc.create_user AS contractCreateUser,
+            sc.create_time AS contractCreateTime,
+            sc.delivery_date AS contractDeliveryDate,
+            sc.customer_id
         FROM
             work_order wo
-                LEFT JOIN bytesailing_jxst.sales_contract_details scd ON wo.contract_details_id = scd.id
+                LEFT JOIN bytesailing_jxst.sales_contract_details scd ON wo.contract_details_id = scd.id and scd.del_flag = 0
+                LEFT JOIN bytesailing_jxst.sales_contract sc ON scd.sales_contract_id = sc.id and sc.del_flag = 0
             ${ew.customSqlSegment}
     </select>
 </mapper>