Parcourir la source

Merge remote-tracking branch 'origin/master'

caozj il y a 1 an
Parent
commit
e235aad5fd

+ 24 - 0
hx-sale/src/main/java/com/fjhx/sale/entity/contract/vo/ContractPdfInfoVo.java

@@ -86,6 +86,25 @@ public class ContractPdfInfoVo {
      */
     private String sellDetailedAddress;
 
+    /**
+     * 卖方公司国家
+     */
+    private String sellCountryNameEn;
+
+    /**
+     * 卖方公司省
+     */
+    private String sellProvinceNameEn;
+
+    /**
+     * 卖方公司市
+     */
+    private String sellCityNameEn;
+    /**
+     * 卖方公司详细地址
+     */
+    private String sellDetailedAddressEn;
+
 
     /**
      * 买方公司ID
@@ -244,6 +263,11 @@ public class ContractPdfInfoVo {
          */
         private String packMethod;
 
+        /**
+         * 商品型号
+         */
+        private String productModel;
+
 
 
     }

+ 29 - 0
hx-sale/src/main/java/com/fjhx/sale/entity/sample/vo/SamplePdfInfoVo.java

@@ -82,6 +82,26 @@ public class SamplePdfInfoVo {
      */
     private String sellCityName;
 
+
+    /**
+     * 卖方公司国家
+     */
+    private String sellCountryNameEn;
+
+    /**
+     * 卖方公司省
+     */
+    private String sellProvinceNameEn;
+
+    /**
+     * 卖方公司市
+     */
+    private String sellCityNameEn;
+    /**
+     * 卖方公司详细地址
+     */
+    private String sellDetailedAddressEn;
+
     /**
      * 卖方公司详细地址
      */
@@ -199,6 +219,10 @@ public class SamplePdfInfoVo {
      * 创建人名称
      */
     private String createUserName;
+    /**
+     * 创建人名称英文
+     */
+    private String createUserNameEn;
 
     /**
      * 创建人邮箱
@@ -256,6 +280,11 @@ public class SamplePdfInfoVo {
         private String packMethod;
 
 
+        /**
+         * 商品型号
+         */
+        private String productModel;
+
 
     }
 

+ 28 - 1
hx-sale/src/main/java/com/fjhx/sale/flow/EhsdPurchaseFlow.java

@@ -10,6 +10,7 @@ import com.fjhx.area.utils.CustomizeAreaUtil;
 import com.fjhx.common.constant.SourceConstant;
 import com.fjhx.common.enums.CodingRuleEnum;
 import com.fjhx.common.service.coding.CodingRuleService;
+import com.fjhx.common.utils.Assert;
 import com.fjhx.file.utils.ObsFileUtil;
 import com.fjhx.flow.core.FlowDelegate;
 import com.fjhx.flow.enums.FlowStatusEnum;
@@ -18,13 +19,17 @@ import com.fjhx.purchase.entity.purchase.enums.PurchaseStatusEnum;
 import com.fjhx.purchase.entity.subscribe.enums.SubscribeDetailStatusEnum;
 import com.fjhx.purchase.entity.subscribe.po.SubscribeDetail;
 import com.fjhx.purchase.service.subscribe.SubscribeDetailService;
+import com.fjhx.sale.entity.contract.po.Contract;
 import com.fjhx.sale.entity.contract.po.ContractProduct;
 import com.fjhx.sale.entity.purchase.dto.EhsdPurchaseDto;
 import com.fjhx.sale.entity.purchase.po.*;
+import com.fjhx.sale.entity.sample.po.Sample;
 import com.fjhx.sale.entity.sample.po.SampleProduct;
 import com.fjhx.sale.service.contract.ContractProductService;
+import com.fjhx.sale.service.contract.ContractService;
 import com.fjhx.sale.service.purchase.*;
 import com.fjhx.sale.service.sample.SampleProductService;
+import com.fjhx.sale.service.sample.SampleService;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -71,6 +76,10 @@ public class EhsdPurchaseFlow extends FlowDelegate {
     private CodingRuleService codingRuleService;
     @Autowired
     private SubscribeDetailService subscribeDetailService;
+    @Autowired
+    private ContractService contractService;
+    @Autowired
+    private SampleService sampleService;
 
     @Override
     public String getFlowKey() {
@@ -92,7 +101,25 @@ public class EhsdPurchaseFlow extends FlowDelegate {
         purchase.setSellCityId(purchase.getCityId());
         purchase.setSellCountryId(purchase.getCountryId());
         purchase.setSellProvinceId(purchase.getProvinceId());
-        purchase.setCode(codingRuleService.createCode(CodingRuleEnum.EHSD_PURCHASE.getKey(), null));
+
+        //手动创建
+        if (0 == purchase.getDataResource()) {
+            purchase.setCode(codingRuleService.createCode(CodingRuleEnum.EHSD_PURCHASE.getKey(), null));
+        }
+        //合同
+        if (1 == purchase.getDataResource()) {
+            Contract contract = contractService.getById(purchase.getDataResourceId());
+            Assert.notEmpty(contract, "查询不到合同信息,无法生成编号");
+            long count = purchaseService.count(q -> q.eq(EhsdPurchase::getDataResourceId, contract.getId()));
+            purchase.setCode(contract.getCode() + "-" + (count + 1));
+        }
+        //样品单
+        if (2 == purchase.getDataResource()) {
+            Sample sample = sampleService.getById(purchase.getDataResourceId());
+            Assert.notEmpty(sample, "查询不到样品单信息,无法生成编号");
+            long count = purchaseService.count(q -> q.eq(EhsdPurchase::getDataResourceId, sample.getId()));
+            purchase.setCode(sample.getCode() + "-" + (count + 1));
+        }
 //        purchase.setCode(CodeEnum.PURCHASE.getCode());
         purchase.setStatus(PurchaseStatusEnum.UNDER_REVIEW.getKey());
         purchase.setUserName(SecurityUtils.getUsername());

+ 48 - 20
hx-sale/src/main/java/com/fjhx/sale/service/contract/impl/ContractServiceImpl.java

@@ -1258,6 +1258,24 @@ public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract>
         contractPdfInfoVo.setSellCorporationName(corporation.getName());
         contractPdfInfoVo.setSellContactName(contract.getSellContactName());
         contractPdfInfoVo.setSellContactNumber(contract.getSellContactNumber());
+
+        //赋值地址中文信息
+        List<Long> areaIdList = Arrays.asList(
+                corporation.getCountryId(),
+                corporation.getProvinceId(),
+                corporation.getCityId()
+        );
+        Map<Long, String> areaMap = CustomizeAreaUtil.getAreaMapByIds(areaIdList);
+        contractPdfInfoVo.setSellCountryName(areaMap.get(corporation.getCountryId()));
+        contractPdfInfoVo.setSellProvinceName(areaMap.get(corporation.getProvinceId()));
+        contractPdfInfoVo.setSellCityName(areaMap.get(corporation.getCityId()));
+        contractPdfInfoVo.setSellDetailedAddress(corporation.getAddress());
+
+        //赋值英文名地址信息
+        contractPdfInfoVo.setSellCountryNameEn(corporation.getCountryEnStr());
+        contractPdfInfoVo.setSellProvinceNameEn(corporation.getProvinceEnStr());
+        contractPdfInfoVo.setSellCityNameEn(corporation.getCityEnStr());
+        contractPdfInfoVo.setSellDetailedAddressEn(corporation.getAddressEn());
     }
 
     /**
@@ -1287,10 +1305,10 @@ public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract>
 
         Map<Long, String> areaMap = CustomizeAreaUtil.getAreaMapByIds(areaIdList);
 
-        contractPdfInfoVo.setSellCountryName(contract.getSellCountryName());
-        contractPdfInfoVo.setSellProvinceName(contract.getSellProvinceName());
-        contractPdfInfoVo.setSellCityName(contract.getSellCityName());
-        contractPdfInfoVo.setSellDetailedAddress(contract.getSellAddress());
+//        contractPdfInfoVo.setSellCountryName(contract.getSellCountryName());
+//        contractPdfInfoVo.setSellProvinceName(contract.getSellProvinceName());
+//        contractPdfInfoVo.setSellCityName(contract.getSellCityName());
+//        contractPdfInfoVo.setSellDetailedAddress(contract.getSellAddress());
 
         contractPdfInfoVo.setBuyCountryName(areaMap.get(contract.getBuyCountryId()));
         contractPdfInfoVo.setBuyProvinceName(areaMap.get(contract.getBuyProvinceId()));
@@ -1342,13 +1360,16 @@ public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract>
             productIndo.setAmount(item.getAmount());
             productIndo.setProductName(item.getProductName());
 
+            productIndo.setProductModel(item.getProductModel());
+
+            JSONObject ehsdJson = JSONObject.parseObject(item.getEhsdJson());
+            if (ObjectUtil.isNotEmpty(ehsdJson)) {
+                productIndo.setPackMethod(ehsdJson.getString("packMethod"));
+            }
+
             if (ObjectUtil.isNotEmpty(productInfo)) {
                 productIndo.setProductRemark(productInfo.getRemark());
                 productIndo.setProductSpec(productInfo.getSpec());
-                JSONObject ehsdJson = JSONObject.parseObject(productInfo.getEhsdJson());
-                if (ObjectUtil.isNotEmpty(ehsdJson)) {
-                    productIndo.setPackMethod(ehsdJson.getString("packMethod"));
-                }
             }
 
             return productIndo;
@@ -1364,18 +1385,25 @@ public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract>
     }
 
     private void setAccountManagement(ContractPdfInfoVo contractPdfInfoVo, Contract contract) {
-        Long shroffAccountId = contract.getShroffAccountId();
-        AccountManagement accountManagement = accountManagementService.getById(shroffAccountId);
-        if (accountManagement == null) {
-            return;
-        }
-
-        contractPdfInfoVo.setBeneficiaryName(accountManagement.getBeneficiaryName());
-        contractPdfInfoVo.setBeneficiaryBank(accountManagement.getBeneficiaryBank());
-        contractPdfInfoVo.setBeneficiaryBankAddress(accountManagement.getBeneficiaryBankAddress());
-        contractPdfInfoVo.setBeneficiaryAccountNumber(accountManagement.getBeneficiaryAccountNumber());
-        contractPdfInfoVo.setSwiftCode(accountManagement.getSwiftCode());
-        contractPdfInfoVo.setBeneficiaryAddress(accountManagement.getBeneficiaryAddress());
+//        Long shroffAccountId = contract.getShroffAccountId();
+//        AccountManagement accountManagement = accountManagementService.getById(shroffAccountId);
+//        if (accountManagement == null) {
+//            return;
+//        }
+
+//        contractPdfInfoVo.setBeneficiaryName(accountManagement.getBeneficiaryName());
+//        contractPdfInfoVo.setBeneficiaryBank(accountManagement.getBeneficiaryBank());
+//        contractPdfInfoVo.setBeneficiaryBankAddress(accountManagement.getBeneficiaryBankAddress());
+//        contractPdfInfoVo.setBeneficiaryAccountNumber(accountManagement.getBeneficiaryAccountNumber());
+//        contractPdfInfoVo.setSwiftCode(accountManagement.getSwiftCode());
+//        contractPdfInfoVo.setBeneficiaryAddress(accountManagement.getBeneficiaryAddress());
+
+        contractPdfInfoVo.setBeneficiaryName(contract.getBeneficiaryName());
+        contractPdfInfoVo.setBeneficiaryBank(contract.getBeneficiaryBank());
+        contractPdfInfoVo.setBeneficiaryBankAddress(contract.getBeneficiaryBankAddress());
+        contractPdfInfoVo.setBeneficiaryAccountNumber(contract.getBeneficiaryAccountNumber());
+        contractPdfInfoVo.setSwiftCode(contract.getSwiftCode());
+        contractPdfInfoVo.setBeneficiaryAddress(contract.getBeneficiaryAddress());
     }
 
     // 添加时间的查询条件

+ 19 - 8
hx-sale/src/main/java/com/fjhx/sale/service/purchase/impl/EhsdPurchaseServiceImpl.java

@@ -17,20 +17,14 @@ import com.fjhx.sale.entity.pack.po.PackDetailProduct;
 import com.fjhx.sale.entity.pack.vo.PackDetailProductVo;
 import com.fjhx.sale.entity.purchase.dto.EhsdPurchaseDto;
 import com.fjhx.sale.entity.purchase.dto.EhsdPurchaseSelectDto;
-import com.fjhx.sale.entity.purchase.po.EhsdPurchase;
-import com.fjhx.sale.entity.purchase.po.EhsdPurchaseArrival;
-import com.fjhx.sale.entity.purchase.po.EhsdPurchaseProduct;
-import com.fjhx.sale.entity.purchase.po.EhsdPurchaseProject;
+import com.fjhx.sale.entity.purchase.po.*;
 import com.fjhx.sale.entity.purchase.vo.EhsdPurchaseProductVo;
 import com.fjhx.sale.entity.purchase.vo.EhsdPurchaseVo;
 import com.fjhx.sale.entity.sale.vo.SaleQuotationVo;
 import com.fjhx.sale.mapper.purchase.EhsdPurchaseMapper;
 import com.fjhx.sale.service.pack.PackDetailProductService;
 import com.fjhx.sale.service.pack.PackDetailService;
-import com.fjhx.sale.service.purchase.EhsdPurchaseArrivalService;
-import com.fjhx.sale.service.purchase.EhsdPurchaseProductService;
-import com.fjhx.sale.service.purchase.EhsdPurchaseProjectService;
-import com.fjhx.sale.service.purchase.EhsdPurchaseService;
+import com.fjhx.sale.service.purchase.*;
 import com.fjhx.supply.entity.supplier.po.SupplierInfo;
 import com.fjhx.supply.service.supplier.SupplierInfoService;
 import com.ruoyi.common.utils.wrapper.IWrapper;
@@ -74,6 +68,8 @@ public class EhsdPurchaseServiceImpl extends ServiceImpl<EhsdPurchaseMapper, Ehs
     private EhsdPurchaseArrivalService ehsdPurchaseArrivalService;
     @Autowired
     private ProductInfoService productInfoService;
+    @Autowired
+    private EhsdPurchaseProductMountingsService ehsdPurchaseProductMountingsService;
 
     /**
      * 分页
@@ -144,6 +140,20 @@ public class EhsdPurchaseServiceImpl extends ServiceImpl<EhsdPurchaseMapper, Ehs
                 q.eq(EhsdPurchaseProduct::getPurchaseId, ehsdPurchase.getId())
         );
         List<EhsdPurchaseProductVo> ehsdPurchaseProductVos = BeanUtil.copyToList(ehsdPurchaseProductList, EhsdPurchaseProductVo.class);
+        //赋值产品配件信息
+        if (ObjectUtils.isNotEmpty(ehsdPurchaseProductList)) {
+            List<Long> eppIds = ehsdPurchaseProductVos.stream().map(EhsdPurchaseProductVo::getId).collect(Collectors.toList());
+            Map<Long, List<EhsdPurchaseProductMountings>> eppMap = ehsdPurchaseProductMountingsService.mapKGroup(
+                    EhsdPurchaseProductMountings::getPurchaseProductId, q -> q
+                    .in(EhsdPurchaseProductMountings::getPurchaseProductId, eppIds)
+            );
+            for (EhsdPurchaseProductVo ehsdPurchaseProductVo : ehsdPurchaseProductVos) {
+                List<EhsdPurchaseProductMountings> ehsdPurchaseProductMountings = eppMap.get(ehsdPurchaseProductVo.getId());
+                ehsdPurchaseProductVo.setPurchaseProductMountingsList(ehsdPurchaseProductMountings);
+            }
+        }
+
+        //赋值产品信息
         productInfoService.attributeAssign(ehsdPurchaseProductVos, EhsdPurchaseProductVo::getProductId, (item, product) -> {
             item.setDefinition(product.getDefinition());
         });
@@ -172,6 +182,7 @@ public class EhsdPurchaseServiceImpl extends ServiceImpl<EhsdPurchaseMapper, Ehs
             item.setProductCode(product.getCode());
         });
         result.setPurchaseArrivalList(ehsdPurchaseArrivalList);
+
         return result;
     }
 

+ 49 - 18
hx-sale/src/main/java/com/fjhx/sale/service/sample/impl/SampleServiceImpl.java

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.account.entity.account.po.AccountManagement;
 import com.fjhx.account.service.account.AccountManagementService;
+import com.fjhx.area.entity.po.CustomizeArea;
 import com.fjhx.area.utils.CustomizeAreaUtil;
 import com.fjhx.common.constant.SourceConstant;
 import com.fjhx.common.entity.contract.po.ContractTemplate;
@@ -375,6 +376,25 @@ public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> impleme
         contractPdfInfoVo.setSellCorporationName(corporation.getName());
         contractPdfInfoVo.setSellContactName(sample.getSellContactName());
         contractPdfInfoVo.setSellContactNumber(sample.getSellContactNumber());
+
+
+        //赋值地址中文信息
+        List<Long> areaIdList = Arrays.asList(
+                corporation.getCountryId(),
+                corporation.getProvinceId(),
+                corporation.getCityId()
+        );
+
+        Map<Long, String> areaMap = CustomizeAreaUtil.getAreaMapByIds(areaIdList);
+        contractPdfInfoVo.setSellCountryName(areaMap.get(corporation.getCountryId()));
+        contractPdfInfoVo.setSellProvinceName(areaMap.get(corporation.getProvinceId()));
+        contractPdfInfoVo.setSellCityName(areaMap.get(corporation.getCityId()));
+        contractPdfInfoVo.setSellDetailedAddress(corporation.getAddress());
+        //赋值英文名地址信息
+        contractPdfInfoVo.setSellCountryNameEn(corporation.getCountryEnStr());
+        contractPdfInfoVo.setSellProvinceNameEn(corporation.getProvinceEnStr());
+        contractPdfInfoVo.setSellCityNameEn(corporation.getCityEnStr());
+        contractPdfInfoVo.setSellDetailedAddressEn(corporation.getAddressEn());
     }
 
     /**
@@ -404,10 +424,11 @@ public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> impleme
 
         Map<Long, String> areaMap = CustomizeAreaUtil.getAreaMapByIds(areaIdList);
 
-        contractPdfInfoVo.setSellCountryName(sample.getSellCountryName());
-        contractPdfInfoVo.setSellProvinceName(sample.getSellProvinceName());
-        contractPdfInfoVo.setSellCityName(sample.getSellCityName());
-        contractPdfInfoVo.setSellDetailedAddress(sample.getSellAddress());
+
+//        contractPdfInfoVo.setSellCountryName(sample.getSellCountryName());
+//        contractPdfInfoVo.setSellProvinceName(sample.getSellProvinceName());
+//        contractPdfInfoVo.setSellCityName(sample.getSellCityName());
+//        contractPdfInfoVo.setSellDetailedAddress(sample.getSellAddress());
 
         contractPdfInfoVo.setBuyCountryName(areaMap.get(sample.getBuyCountryId()));
         contractPdfInfoVo.setBuyProvinceName(areaMap.get(sample.getBuyProvinceId()));
@@ -433,8 +454,10 @@ public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> impleme
         contractPdfInfoVo.setAdvanceRatio(sample.getAdvanceRatio());
 
         //赋值创建人名称
-        Map<Long, String> nickNameMapByIds = UserUtil.getNickNameMapByIds(Arrays.asList(sample.getCreateUser()));
-        contractPdfInfoVo.setCreateUserName(nickNameMapByIds.get(sample.getCreateUser()));
+        Map<Long, SysUser> nickNameMapByIds = UserUtil.getMapByIds(Arrays.asList(sample.getCreateUser()));
+        SysUser sysUser = nickNameMapByIds.get(sample.getCreateUser());
+        contractPdfInfoVo.setCreateUserName(sysUser.getNickName());//中文名
+        contractPdfInfoVo.setCreateUserName(sysUser.getNickNameEn());//英文名
         //赋值创建人邮箱地址
         List<EnterpriseMailbox> enterpriseMailboxList = enterpriseMailboxService.list(q -> q.eq(EnterpriseMailbox::getUserId, sample.getCreateUser()));
         String eMailAddress = "";
@@ -480,6 +503,7 @@ public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> impleme
             productIndo.setProductPrice(item.getPrice());
             productIndo.setAmount(item.getAmount());
             productIndo.setProductName(item.getProductName());
+            productIndo.setProductModel(item.getProductModel());
 
             if (ObjectUtil.isNotEmpty(productInfo)) {
                 productIndo.setProductRemark(productInfo.getRemark());
@@ -503,18 +527,25 @@ public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> impleme
     }
 
     private void setAccountManagement(SamplePdfInfoVo contractPdfInfoVo, Sample sample) {
-        Long shroffAccountId = sample.getShroffAccountId();
-        AccountManagement accountManagement = accountManagementService.getById(shroffAccountId);
-        if (accountManagement == null) {
-            return;
-        }
-
-        contractPdfInfoVo.setBeneficiaryName(accountManagement.getBeneficiaryName());
-        contractPdfInfoVo.setBeneficiaryBank(accountManagement.getBeneficiaryBank());
-        contractPdfInfoVo.setBeneficiaryBankAddress(accountManagement.getBeneficiaryBankAddress());
-        contractPdfInfoVo.setBeneficiaryAccountNumber(accountManagement.getBeneficiaryAccountNumber());
-        contractPdfInfoVo.setSwiftCode(accountManagement.getSwiftCode());
-        contractPdfInfoVo.setBeneficiaryAddress(accountManagement.getBeneficiaryAddress());
+//        Long shroffAccountId = sample.getShroffAccountId();
+//        AccountManagement accountManagement = accountManagementService.getById(shroffAccountId);
+//        if (accountManagement == null) {
+//            return;
+//        }
+
+//        contractPdfInfoVo.setBeneficiaryName(accountManagement.getBeneficiaryName());
+//        contractPdfInfoVo.setBeneficiaryBank(accountManagement.getBeneficiaryBank());
+//        contractPdfInfoVo.setBeneficiaryBankAddress(accountManagement.getBeneficiaryBankAddress());
+//        contractPdfInfoVo.setBeneficiaryAccountNumber(accountManagement.getBeneficiaryAccountNumber());
+//        contractPdfInfoVo.setSwiftCode(accountManagement.getSwiftCode());
+//        contractPdfInfoVo.setBeneficiaryAddress(accountManagement.getBeneficiaryAddress());
+
+        contractPdfInfoVo.setBeneficiaryName(sample.getBeneficiaryName());
+        contractPdfInfoVo.setBeneficiaryBank(sample.getBeneficiaryBank());
+        contractPdfInfoVo.setBeneficiaryBankAddress(sample.getBeneficiaryBankAddress());
+        contractPdfInfoVo.setBeneficiaryAccountNumber(sample.getBeneficiaryAccountNumber());
+        contractPdfInfoVo.setSwiftCode(sample.getSwiftCode());
+        contractPdfInfoVo.setBeneficiaryAddress(sample.getBeneficiaryAddress());
     }
 
 }