24282 2 anos atrás
pai
commit
d9a42d6159

+ 12 - 9
bladex-saas-project/saas-business-tradeerp/src/main/java/com/fjhx/prove/pdf/service/impl/CustomsDeclareServiceImpl.java

@@ -309,26 +309,29 @@ public class CustomsDeclareServiceImpl implements ICustomsDeclareService {
             data.put("tradeModeName", contract.getTradeModeName());
             //运费
             data.put("freightPrice", currencyType + freightPrice.toPlainString());
-            //保费
+            // 保费
             data.put("premiumPrice", currencyType + premiumPrice.toPlainString());
-            //杂费(如有请填写)
+            // 杂费(如有请填写)
             data.put("incidentalPrice", "");
-            //随附单证及编号(常见如通关单号、原进口报关单号)
+            // 随附单证及编号(常见如通关单号、原进口报关单号)
             data.put("documentsAttached", "");
-            //标记唛码及备注
+            // 标记唛码及备注
             data.put("shippingMark", billProve.getShippingMark());
-            //境内货源地
+            // 境内货源地
             data.put("cityChinese", company.getCityChinese());
-            //产品数据
+
+            // 境内货源地
+            data.put("withinChinaSource", billProve.getWithinChinaSource());
+            // 产品数据
             if (CollectionUtils.isNotEmpty(products)) {
                 Integer num = 1;
                 for (ShipmentPackingProduct product : products) {
                     JSONObject object = new JSONObject();
-                    //项号
+                    // 项号
                     object.put("num", num);
-                    //商品编号(13位)原10位海关编码+3位检验检疫附加编码
+                    // 商品编号(13位)原10位海关编码+3位检验检疫附加编码
                     object.put("customsCode", product.getCustomsCode());
-                    //商品名称
+                    // 商品名称
                     String productName = product.getProductName();
                     if (isLineFeed) {
                         if (StringUtils.isNotBlank(productName) && productName.length() > DEFAULT_SUB_LENGTH) {

+ 10 - 5
bladex-saas-project/saas-business-tradeerp/src/main/java/com/fjhx/reportform/profitbudget/controller/TErpProfitRemarkController.java

@@ -1,14 +1,15 @@
 package com.fjhx.reportform.profitbudget.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.fjhx.performance.entity.TErpProfitRemark;
 import com.fjhx.reportform.profitbudget.service.ITErpProfitRemarkService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
 import org.springblade.common.constant.ApiConstant;
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.AuthUtil;
@@ -16,8 +17,8 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.core.boot.ctrl.BladeController;
+
+import javax.validation.Valid;
 
 /**
  * 利润预算表与利润结算表的备注 控制器
@@ -67,7 +68,11 @@ public class TErpProfitRemarkController extends BladeController {
 	public R save(@Valid @RequestBody TErpProfitRemark tErpProfitRemark) {
 		tErpProfitRemark.setTenantId(AuthUtil.getTenantId());
 		tErpProfitRemark.setCreate();
-		return R.status(tErpProfitRemarkService.save(tErpProfitRemark));
+		return R.status(tErpProfitRemarkService.saveOrUpdate(tErpProfitRemark, Wrappers.<TErpProfitRemark>lambdaQuery()
+				.eq(TErpProfitRemark::getContractId, tErpProfitRemark.getContractId())
+				.eq(TErpProfitRemark::getStatus, tErpProfitRemark.getStatus())
+				.eq(TErpProfitRemark::getTenantId, AuthUtil.getTenantId())
+		));
 	}
 
 	/**

+ 2 - 1
bladex-saas-project/saas-business-tradeerp/src/main/java/com/fjhx/reportform/profitbudget/mapper/ProfitBudgetReportMapper.xml

@@ -180,7 +180,8 @@
             t1.is_complete,
             t3.real_name AS user_name,
             t4.profit_settlement_remark profitSettlementRemark,
-            t4.id remarkId
+            t4.id remarkId,
+            t4.agency_fee_customize
         FROM
             t_erp_contract t1
             LEFT JOIN blade_user t3 ON t1.create_user = t3.id

+ 66 - 0
bladex-saas-project/saas-business-tradeerp/src/main/java/com/fjhx/utils/CompanyUtil.java

@@ -0,0 +1,66 @@
+package com.fjhx.utils;
+
+
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.extra.spring.SpringUtil;
+import com.fjhx.company.entity.Company;
+import com.fjhx.company.service.ICompanyService;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.function.BiConsumer;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * t_erp_company 表工具类
+ * SELLER:
+ * 企业id、名称、中文地址、英文地址、联系人
+ */
+public class CompanyUtil {
+
+    private static ICompanyService iCompanyService = SpringUtil.getBean(ICompanyService.class);
+
+    // 查询公司信息
+    // Map<String, Company> companyMap = iCompanyService.getByIdsToMap(companyIds);
+
+    /**
+     * 赋值公司信息
+     *
+     * @param list                   需要赋值的列表
+     * @param getCompanyIdFun        获取id方法
+     * @param setCompanyAttributeFun 赋值属性方法
+     * @param <T>                    需要赋值的列表实体
+     */
+    public static <T> void setAttribute(List<T> list, Function<T, String> getCompanyIdFun, BiConsumer<T, Company> setCompanyAttributeFun) {
+        if (ObjectUtil.isEmpty(list)) {
+            return;
+        }
+
+        // 客户id列表
+        List<String> companyIdList = list.stream().map(getCompanyIdFun).filter(Objects::isNull).collect(Collectors.toList());
+        // 客户id实体map
+        Map<String, Company> idEntityMap = iCompanyService.getByIdsToMap(companyIdList);
+
+        if (ObjectUtil.isEmpty(idEntityMap)) {
+            return;
+        }
+
+        for (T t : list) {
+            String companyId = getCompanyIdFun.apply(t);
+            if (ObjectUtil.isEmpty(companyId)) {
+                return;
+            }
+
+            Company company = idEntityMap.get(companyId);
+            if (ObjectUtil.isEmpty(company)) {
+                return;
+            }
+
+            setCompanyAttributeFun.accept(t, company);
+        }
+
+    }
+
+}

+ 7 - 5
bladex-saas-project/saas-entity/src/main/java/com/fjhx/performance/entity/TErpProfitRemark.java

@@ -1,14 +1,12 @@
 package com.fjhx.performance.entity;
 
-import java.time.LocalDateTime;
-import java.io.Serializable;
-
-import lombok.Data;
-import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 import org.springblade.core.mp.base.BasicsEntity;
 
+import java.math.BigDecimal;
+
 /**
  * 利润预算表与利润结算表的备注实体类
  *
@@ -49,5 +47,9 @@ public class TErpProfitRemark extends BasicsEntity {
     @ApiModelProperty(value = "租户ID")
     private String tenantId;
 
+    /**
+     * 自定义代理费
+     */
+    private BigDecimal agencyFeeCustomize;
 
 }

+ 7 - 0
bladex-saas-project/saas-entity/src/main/java/com/fjhx/prove/entity/BillProve.java

@@ -78,6 +78,7 @@ public class BillProve extends BasicsEntity {
      * 运输方式(字典)
      */
     private String shippingType;
+
     @TableField(exist = false)
     private String shippingTypeName;
 
@@ -85,6 +86,7 @@ public class BillProve extends BasicsEntity {
      * 快递(字典)
      */
     private String expressId;
+
     @TableField(exist = false)
     private String expressName;
 
@@ -218,4 +220,9 @@ public class BillProve extends BasicsEntity {
     @TableField(exist = false)
     private List<ShipmentPackingProduct> products;
 
+    /**
+     * 境内货源地
+     */
+    private String withinChinaSource;
+
 }

+ 5 - 0
bladex-saas-project/saas-entity/src/main/java/com/fjhx/reportform/profitbudget/entity/ProfitBudgetReport.java

@@ -236,4 +236,9 @@ public class ProfitBudgetReport implements Serializable {
      * 财务标记ID
      */
     private String starMarkId;
+
+    /**
+     * 自定义代理费
+     */
+    private BigDecimal agencyFeeCustomize;
 }

+ 3 - 0
bladex-tool/blade-starter-mybatis/src/main/java/org/springblade/core/mp/base/BasicsEntity.java

@@ -1,6 +1,8 @@
 package org.springblade.core.mp.base;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import org.springblade.core.secure.utils.AuthUtil;
@@ -21,6 +23,7 @@ public abstract class BasicsEntity implements Serializable {
     /**
      * 主键id
      */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
     private String id;
 
     /**