diff --git a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/domain/BmsCustomer.java b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/domain/BmsCustomer.java index e78df049..1d67cbb4 100644 --- a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/domain/BmsCustomer.java +++ b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/domain/BmsCustomer.java @@ -47,9 +47,9 @@ public class BmsCustomer extends BaseEntity @Excel(name = "业务类型", readConverterExp = "0=直客,1=同行,2=集运") private String customerType; - /** 区域类型(字典 data_area_type) */ - @Excel(name = "区域类型", dictType = "data_area_type") - private String areaType; + /** 客户区域(字典 customer_area) */ + @Excel(name = "客户区域", dictType = "customer_area") + private String customerArea; /** 启用状态(0正常 1停用) */ @Excel(name = "启用状态", readConverterExp = "0=正常,1=停用") diff --git a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/service/impl/BmsCustomerLogServiceImpl.java b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/service/impl/BmsCustomerLogServiceImpl.java index 43bd4133..fbc69aae 100644 --- a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/service/impl/BmsCustomerLogServiceImpl.java +++ b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/service/impl/BmsCustomerLogServiceImpl.java @@ -45,10 +45,10 @@ public class BmsCustomerLogServiceImpl implements IBmsCustomerLogService private static final ThreadLocal DATE_FMT = ThreadLocal.withInitial(() -> new SimpleDateFormat("yyyy-MM-dd")); - /** 区域类型走字典 data_area_type;缓存未命中时保留原编码。 */ - private static String areaTypeLabel(String value) + /** 客户区域走字典 customer_area;缓存未命中时保留原编码。 */ + private static String customerAreaLabel(String value) { - String label = DictUtils.getDictLabel("data_area_type", value); + String label = DictUtils.getDictLabel("customer_area", value); return StringUtils.isEmpty(label) ? value : label; } @@ -77,7 +77,7 @@ public class BmsCustomerLogServiceImpl implements IBmsCustomerLogService /** * 需要记录日志的主表字段(顺序即展示顺序)。 * requireNonBlank 为 true 的字段对应 update SQL 的 <if test="x!=null and x!=''">, - * 其余动态字段仅在新值非 null 时落库;业务员/结算员/客服、区域类型为无条件写入。 + * 其余动态字段仅在新值非 null 时落库;业务员/结算员/客服、客户区域为无条件写入。 */ private static final List FIELD_DEFS = List.of( new FieldDef("customerCode", "客户编码", BmsCustomer::getCustomerCode, true, Function.identity()), @@ -85,7 +85,7 @@ public class BmsCustomerLogServiceImpl implements IBmsCustomerLogService new FieldDef("customerCodeDw", "对外代码", BmsCustomer::getCustomerCodeDw, false, Function.identity()), new FieldDef("creditCode", "统一社会信用代码", BmsCustomer::getCreditCode, false, Function.identity()), new FieldDef("customerType", "业务类型", BmsCustomer::getCustomerType, false, CUSTOMER_TYPE_MAP::get), - new FieldDef("areaType", "区域类型", BmsCustomer::getAreaType, false, BmsCustomerLogServiceImpl::areaTypeLabel), + new FieldDef("customerArea", "客户区域", BmsCustomer::getCustomerArea, false, BmsCustomerLogServiceImpl::customerAreaLabel), new FieldDef("isEnable", "启用状态", BmsCustomer::getIsEnable, false, ENABLE_MAP::get), new FieldDef("salesUserId", "业务员", c -> userDisplay(c.getSalesUserId(), c.getSalesUser()), false, Function.identity()), new FieldDef("ed", "资金额度(元)", BmsCustomer::getEd, false, BmsCustomerLogServiceImpl::numText), @@ -208,8 +208,8 @@ public class BmsCustomerLogServiceImpl implements IBmsCustomerLogService { // 与 update SQL 的动态条件保持一致:未提交(null/空串)的字段本次不落库,不参与比对 Object raw = def.rawGetter.apply(newCustomer); - // 合同起止、区域类型允许清空;其余动态字段未提交时不落库,也不记日志 - if (raw == null && !isContractDateField(def.field) && !"areaType".equals(def.field)) + // 合同起止、客户区域允许清空;其余动态字段未提交时不落库,也不记日志 + if (raw == null && !isContractDateField(def.field) && !"customerArea".equals(def.field)) { continue; } diff --git a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/sync/CustomerSyncService.java b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/sync/CustomerSyncService.java index 9b45cb26..ccce88fd 100644 --- a/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/sync/CustomerSyncService.java +++ b/bms-back/bms-system/src/main/java/com/bms/customer/customerinfo/sync/CustomerSyncService.java @@ -60,6 +60,7 @@ public class CustomerSyncService private static final int LEN_CODE = 50; private static final int LEN_NAME = 100; private static final int LEN_CODE_DW = 50; + private static final int LEN_CUSTOMER_AREA = 32; private static final int LEN_USER = 50; private static final int LEN_REMARK = 500; /** 告警明细最多打印条数 */ @@ -178,6 +179,7 @@ public class CustomerSyncService c.setDelFlag("0"); c.setCustomerCodeDw(truncate(getStr(row, "CUSTOMER_OUTER_CODE"), LEN_CODE_DW, code, "customer_code_dw", warnings)); + c.setCustomerArea(truncate(getStr(row, "CUSTOMER_AREA"), LEN_CUSTOMER_AREA, code, "customer_area", warnings)); String sourceSalesCode = clean(getStr(row, "BELONG_SALER")); c.setSourceSalesCode(sourceSalesCode); c.setSalesUserId(resolveSalesUserId(sourceSalesCode, userIdsByLogin, diff --git a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportProductRow.java b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportProductRow.java index 2791b7b2..ff585000 100644 --- a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportProductRow.java +++ b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportProductRow.java @@ -43,6 +43,4 @@ public class PrcProfitReportProductRow implements Serializable @Excel(name = "未计算提成订单数", width = 20) private Long commissionMissingOrderCount; */ - @Excel(name = "产品价或价格缺失订单数", width = 22) - private Long incompleteOrderCount; } diff --git a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportQuery.java b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportQuery.java index a7d00e2d..8a9b4a09 100644 --- a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportQuery.java +++ b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportQuery.java @@ -35,6 +35,6 @@ public class PrcProfitReportQuery extends BaseEntity private String arBillStatus; /** 是否按产品维度分组值下钻订单明细,允许分组字段为空。 */ private Boolean productDrilldown; - /** 订单明细弹窗的筛选类型:ALL、INCOMPLETE;COMMISSION_MISSING 暂停使用。 */ + /** 仅用于拒绝已暂停的提成未计算订单下钻请求。 */ private String detailType; } diff --git a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportSummary.java b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportSummary.java index b4428398..e1009433 100644 --- a/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportSummary.java +++ b/bms-back/bms-system/src/main/java/com/bms/price/domain/vo/PrcProfitReportSummary.java @@ -11,7 +11,6 @@ public class PrcProfitReportSummary implements Serializable private static final long serialVersionUID = 1L; private Long orderCount; - private Long incompleteOrderCount; private String currency; private BigDecimal costAmount; private BigDecimal redlineAmount; diff --git a/bms-back/bms-system/src/main/resources/mapper/customer/BmsCustomerMapper.xml b/bms-back/bms-system/src/main/resources/mapper/customer/BmsCustomerMapper.xml index fbbf8b95..8f35acbb 100644 --- a/bms-back/bms-system/src/main/resources/mapper/customer/BmsCustomerMapper.xml +++ b/bms-back/bms-system/src/main/resources/mapper/customer/BmsCustomerMapper.xml @@ -11,7 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -45,7 +45,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select c.customer_id, c.customer_code, c.customer_name, c.customer_code_dw, c.credit_code, c.customer_type, c.area_type, + select c.customer_id, c.customer_code, c.customer_name, c.customer_code_dw, c.credit_code, c.customer_type, c.customer_area, c.is_enable, case when su.user_id is not null then cast(su.user_id as char) else null end as sales_user_id, su.nick_name as sales_user, c.ed, c.zq, c.settlement_user_id, c.settlement_user, @@ -92,7 +92,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and c.credit_code = #{creditCode} and c.customer_type = #{customerType} - and c.area_type = #{areaType} + and c.customer_area = #{customerArea} and c.is_enable = #{isEnable} and c.sales_user_id = #{salesUserId} and su.nick_name = #{salesUser} @@ -317,7 +317,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" customer_code_dw, credit_code, customer_type, - area_type, + customer_area, is_enable, sales_user_id, sales_user, @@ -350,7 +350,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{customerCodeDw}, #{creditCode}, #{customerType}, - #{areaType}, + #{customerArea}, #{isEnable}, #{salesUserId}, #{salesUser}, @@ -387,7 +387,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" customer_code_dw = #{customerCodeDw}, credit_code = #{creditCode}, customer_type = #{customerType}, - area_type = #{areaType}, + customer_area = #{customerArea}, is_enable = #{isEnable}, sales_user_id = #{salesUserId}, sales_user = #{salesUser}, diff --git a/bms-back/bms-system/src/main/resources/mapper/customer/CustomerSyncMapper.xml b/bms-back/bms-system/src/main/resources/mapper/customer/CustomerSyncMapper.xml index 6bd7222d..44913610 100644 --- a/bms-back/bms-system/src/main/resources/mapper/customer/CustomerSyncMapper.xml +++ b/bms-back/bms-system/src/main/resources/mapper/customer/CustomerSyncMapper.xml @@ -30,6 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" del_flag, create_by, sales_user_id, source_sales_code , customer_code_dw , customer_type + , customer_area , sales_user , settlement_user , service_user @@ -46,6 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" '0', #{createBy}, #{salesUserId}, #{sourceSalesCode} , #{customerCodeDw} , #{customerType} + , #{customerArea} , #{salesUser} , #{settlementUser} , #{serviceUser} @@ -66,6 +68,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" , customer_name = #{customerName} , customer_code_dw = #{customerCodeDw} , customer_type = #{customerType} + , customer_area = #{customerArea} , sales_user_id = #{salesUserId} , source_sales_code = #{sourceSalesCode} , sales_user = #{salesUser} diff --git a/bms-back/bms-system/src/main/resources/mapper/customer/OracleCustomerSyncMapper.xml b/bms-back/bms-system/src/main/resources/mapper/customer/OracleCustomerSyncMapper.xml index 0aad5a20..ecd510ed 100644 --- a/bms-back/bms-system/src/main/resources/mapper/customer/OracleCustomerSyncMapper.xml +++ b/bms-back/bms-system/src/main/resources/mapper/customer/OracleCustomerSyncMapper.xml @@ -10,7 +10,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" BELONG_SALER, BELONG_SALER_NAME, SETTLEMENT_MAN, SERVICE_MAN, REMARK, WEIGHT_LIMIT, CREDIT_LIMIT, TEMP_AMOUNT, ACCOUNT_AMOUNT, EUR_AMOUNT, - CUSTOMER_TYPE, CUSTOMER_BALANCE_MODE, BL_OPEN, + CUSTOMER_TYPE, CUSTOMER_AREA, CUSTOMER_BALANCE_MODE, BL_OPEN, CREATE_DATE, GMT_CREATE FROM WEISHI_USER.TAB_CUSTOMER diff --git a/bms-back/bms-system/src/main/resources/mapper/price/PrcProfitReportMapper.xml b/bms-back/bms-system/src/main/resources/mapper/price/PrcProfitReportMapper.xml index 6d363433..3320fc3d 100644 --- a/bms-back/bms-system/src/main/resources/mapper/price/PrcProfitReportMapper.xml +++ b/bms-back/bms-system/src/main/resources/mapper/price/PrcProfitReportMapper.xml @@ -98,12 +98,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" --> - - @@ -193,16 +191,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - - - - and (i.product_amount is null or i.redline_amount is null or i.sales_amount is null) - - @@ -271,15 +259,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" then i.sales_amount - i.product_amount else null end) * 100 / sum(case when i.product_amount is not null and i.sales_amount is not null then i.sales_amount else null end), 4) - end as sales_gross_margin_rate, + end as sales_gross_margin_rate - sum(case when i.product_amount is null or i.redline_amount is null or i.sales_amount is null - then 1 else 0 end) as incomplete_order_count group by p.product_code, p.product_name, p.country_code, p.country_name, i.currency order by p.product_code, p.country_code, i.currency @@ -287,8 +273,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"