Explorar el Código

feat(harrison): 物流类型打印模板业务类型中英文对照

物流服务发票模板(HARRISON 海运-物流服务.xlsx) PARTICULARS 列填充时
将业务类型由中文映射为英文(内陆运输->TRANSPORTATION 等), 未命中映射保持原值

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
malk hace 1 mes
padre
commit
fa43e2dce6

+ 15 - 0
mjava-harrison/src/main/java/com/malk/suodisi/controller/HLController.java

@@ -40,6 +40,19 @@ public class HLController {
     @Autowired
     private DDConf ddConf;
 
+    // prd: 物流类型打印模板 业务类型 中文->英文 对照
+    private static final Map<String, String> PART_EN = new HashMap<>();
+
+    static {
+        PART_EN.put("内陆运输", "TRANSPORTATION");
+        PART_EN.put("THC", "TERMINAL HANDLING CHARGES");
+        PART_EN.put("港口货代", "TNPA CARGO DUES");
+        PART_EN.put("海运", "OCEAN FREIGHT");
+        PART_EN.put("检测", "SAMPLING AND ANALYSIS");
+        PART_EN.put("单证", "DOCUMENTATION FEE");
+        PART_EN.put("保险", "OCEAN INSURANCE");
+    }
+
     @PostMapping("/invoice")
     McR HL_invoice(@RequestBody Map data, HttpServletResponse response, HttpServletRequest request) {
 
@@ -74,6 +87,8 @@ public class HLController {
             Map row = UtilMap.map("part, num, price, amount, rate",
                     "selectField_mgugk66v, numberField_mgvqvr58, numberField_l5ryl6qe, numberField_l5m487p0, numberField_mgugk673",
                     item);
+            String part = UtilMap.getString(item, "selectField_mgugk66v");
+            row.put("part", PART_EN.getOrDefault(part, part)); // prd: 物流类型模板展示英文业务类型, 命中映射才替换
             row.put("quantity", UtilMap.getFloat(item, "numberField_mgvqvr58") + "MT");
             row.put("exchange", UtilNumber.formatPrecisionString(UtilMap.getFloat(item, "numberField_l5ryl6qe") * UtilMap.getFloat(item, "numberField_mgugk673")));
             row.put("empty", ""); // ppExt: 添加了子表, 若模板未用到会异常, 添加标注