Showing
5 changed files
with
147 additions
and
75 deletions
| @@ -4,13 +4,19 @@ import com.fasterxml.jackson.annotation.JsonFormat; | @@ -4,13 +4,19 @@ import com.fasterxml.jackson.annotation.JsonFormat; | ||
| 4 | import java.math.BigDecimal; | 4 | import java.math.BigDecimal; |
| 5 | import com.lframework.starter.common.constants.StringPool; | 5 | import com.lframework.starter.common.constants.StringPool; |
| 6 | import com.lframework.starter.web.core.bo.BaseBo; | 6 | import com.lframework.starter.web.core.bo.BaseBo; |
| 7 | +import com.lframework.starter.web.core.utils.ApplicationUtil; | ||
| 8 | +import com.lframework.starter.web.inner.entity.SysDataDicItem; | ||
| 9 | +import com.lframework.starter.web.inner.service.system.SysDataDicItemService; | ||
| 7 | import java.time.LocalDate; | 10 | import java.time.LocalDate; |
| 8 | import java.time.LocalDateTime; | 11 | import java.time.LocalDateTime; |
| 12 | +import java.util.Map; | ||
| 13 | +import java.util.concurrent.ConcurrentHashMap; | ||
| 9 | 14 | ||
| 10 | import com.lframework.xingyun.sc.entity.OrderDetailReport; | 15 | import com.lframework.xingyun.sc.entity.OrderDetailReport; |
| 11 | import io.swagger.annotations.ApiModelProperty; | 16 | import io.swagger.annotations.ApiModelProperty; |
| 12 | 17 | ||
| 13 | import lombok.Data; | 18 | import lombok.Data; |
| 19 | +import org.apache.commons.lang3.StringUtils; | ||
| 14 | 20 | ||
| 15 | /** | 21 | /** |
| 16 | * <p> | 22 | * <p> |
| @@ -20,6 +26,10 @@ import lombok.Data; | @@ -20,6 +26,10 @@ import lombok.Data; | ||
| 20 | */ | 26 | */ |
| 21 | @Data | 27 | @Data |
| 22 | public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | 28 | public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { |
| 29 | + private static final String DIC_EXECUTION_STANDARD = "APPLICABLE_STANDARD"; | ||
| 30 | + private static final String DIC_CONTRACT_PRODUCT = "CONTRACT_PRODUCT"; | ||
| 31 | + private static final String DIC_SPECIAL_REQUIREMENTS = "CONDITIONS_REQUIRED"; | ||
| 32 | + private static final Map<String, String> DIC_NAME_CACHE = new ConcurrentHashMap<>(); | ||
| 23 | 33 | ||
| 24 | /** | 34 | /** |
| 25 | * ID | 35 | * ID |
| @@ -64,6 +74,9 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | @@ -64,6 +74,9 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | ||
| 64 | @ApiModelProperty("科办") | 74 | @ApiModelProperty("科办") |
| 65 | private String deptName; | 75 | private String deptName; |
| 66 | 76 | ||
| 77 | + @ApiModelProperty("办事处编码") | ||
| 78 | + private String deptCode; | ||
| 79 | + | ||
| 67 | /** | 80 | /** |
| 68 | * 区域 | 81 | * 区域 |
| 69 | */ | 82 | */ |
| @@ -290,12 +303,6 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | @@ -290,12 +303,6 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | ||
| 290 | @ApiModelProperty("工艺要求") | 303 | @ApiModelProperty("工艺要求") |
| 291 | private String productionProcess; | 304 | private String productionProcess; |
| 292 | 305 | ||
| 293 | - @ApiModelProperty("办事处代码") | ||
| 294 | - private String officeCode; | ||
| 295 | - | ||
| 296 | - @ApiModelProperty("办事处") | ||
| 297 | - private String officeName; | ||
| 298 | - | ||
| 299 | @ApiModelProperty("客户简称") | 306 | @ApiModelProperty("客户简称") |
| 300 | private String customerShortName; | 307 | private String customerShortName; |
| 301 | 308 | ||
| @@ -305,12 +312,18 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | @@ -305,12 +312,18 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | ||
| 305 | @ApiModelProperty("执行标准") | 312 | @ApiModelProperty("执行标准") |
| 306 | private String executionStandard; | 313 | private String executionStandard; |
| 307 | 314 | ||
| 315 | + @ApiModelProperty("执行标准备注") | ||
| 316 | + private String executionStandardRemarks; | ||
| 317 | + | ||
| 308 | @ApiModelProperty("结构报表用(产品名称)") | 318 | @ApiModelProperty("结构报表用(产品名称)") |
| 309 | private String structureReportUsed; | 319 | private String structureReportUsed; |
| 310 | 320 | ||
| 311 | @ApiModelProperty("合同类型编码") | 321 | @ApiModelProperty("合同类型编码") |
| 312 | private String contractTypeCode; | 322 | private String contractTypeCode; |
| 313 | 323 | ||
| 324 | + @ApiModelProperty("合同类型(经销标准、经销库存、经销未锁规、外贸标准、外贸库存、外贸未锁规、加工标准)") | ||
| 325 | + private String contractTypeName; | ||
| 326 | + | ||
| 314 | @ApiModelProperty("特别注重要求") | 327 | @ApiModelProperty("特别注重要求") |
| 315 | private String specialRequirements; | 328 | private String specialRequirements; |
| 316 | 329 | ||
| @@ -333,6 +346,92 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | @@ -333,6 +346,92 @@ public class QueryOrderDetailReportBo extends BaseBo<OrderDetailReport> { | ||
| 333 | 346 | ||
| 334 | @Override | 347 | @Override |
| 335 | protected void afterInit(OrderDetailReport dto) { | 348 | protected void afterInit(OrderDetailReport dto) { |
| 349 | + this.executionStandard = getDicItemNameOrOriginal(DIC_EXECUTION_STANDARD, this.executionStandard); | ||
| 350 | + if ("其它".equals(this.executionStandard) && StringUtils.isNotBlank(this.executionStandardRemarks)) { | ||
| 351 | + this.executionStandard = this.executionStandardRemarks; | ||
| 352 | + } | ||
| 353 | + this.structureReportUsed = getDicItemNameOrOriginal(DIC_CONTRACT_PRODUCT, this.structureReportUsed); | ||
| 354 | + this.specialRequirements = getDicItemNameOrOriginal(DIC_SPECIAL_REQUIREMENTS, this.specialRequirements); | ||
| 355 | + this.deptCode = convertDeptNameToDeptCode(this.deptName); | ||
| 356 | + this.contractTypeName = handleContractType(this.contractTypeCode); | ||
| 357 | + } | ||
| 358 | + | ||
| 359 | + private static String getDicItemNameOrOriginal(String dicCode, String itemCode) { | ||
| 360 | + if (StringUtils.isBlank(dicCode) || StringUtils.isBlank(itemCode)) { | ||
| 361 | + return itemCode; | ||
| 362 | + } | ||
| 363 | + String cacheKey = dicCode + "|" + itemCode; | ||
| 364 | + String cached = DIC_NAME_CACHE.get(cacheKey); | ||
| 365 | + if (cached != null) { | ||
| 366 | + return cached; | ||
| 367 | + } | ||
| 368 | + SysDataDicItemService sysDataDicItemService = ApplicationUtil.getBean(SysDataDicItemService.class); | ||
| 369 | + SysDataDicItem dicItem = sysDataDicItemService.findByCode(dicCode, itemCode); | ||
| 370 | + String name = dicItem == null ? itemCode : dicItem.getName(); | ||
| 371 | + if (StringUtils.isBlank(name)) { | ||
| 372 | + name = itemCode; | ||
| 373 | + } | ||
| 374 | + DIC_NAME_CACHE.put(cacheKey, name); | ||
| 375 | + return name; | ||
| 376 | + } | ||
| 377 | + | ||
| 378 | + private static String convertDeptNameToDeptCode(String deptName) { | ||
| 379 | + if (StringUtils.isBlank(deptName)) { | ||
| 380 | + return null; | ||
| 381 | + } | ||
| 382 | + String name = deptName.trim(); | ||
| 383 | + if (name.contains("北方")) { | ||
| 384 | + return "BF"; | ||
| 385 | + } | ||
| 386 | + if (name.contains("常州")) { | ||
| 387 | + return "CZ"; | ||
| 388 | + } | ||
| 389 | + if (name.contains("东莞")) { | ||
| 390 | + return "DG"; | ||
| 391 | + } | ||
| 392 | + if (name.contains("佛山")) { | ||
| 393 | + return "FS"; | ||
| 394 | + } | ||
| 395 | + if (name.contains("宁波")) { | ||
| 396 | + return "NB"; | ||
| 397 | + } | ||
| 398 | + if (name.contains("苏州")) { | ||
| 399 | + return "SZ"; | ||
| 400 | + } | ||
| 401 | + if (name.contains("温州")) { | ||
| 402 | + return "WZ"; | ||
| 403 | + } | ||
| 404 | + if (name.contains("紫铜")) { | ||
| 405 | + return "ZT"; | ||
| 406 | + } | ||
| 407 | + if (name.contains("外贸")) { | ||
| 408 | + return "WM"; | ||
| 409 | + } | ||
| 410 | + return null; | ||
| 411 | + } | ||
| 336 | 412 | ||
| 413 | + private static String handleContractType(String contractType) { | ||
| 414 | + if ("DISTRIB_STD".equals(contractType)) { | ||
| 415 | + return "经销标准"; | ||
| 416 | + } | ||
| 417 | + if ("DIST_STOCK_CONTRACT".equals(contractType)) { | ||
| 418 | + return "经销库存"; | ||
| 419 | + } | ||
| 420 | + if ("DRAFT_DIST_AGMT".equals(contractType)) { | ||
| 421 | + return "经销未锁规"; | ||
| 422 | + } | ||
| 423 | + if ("INTL_STD_CONTRACT".equals(contractType)) { | ||
| 424 | + return "外贸标准"; | ||
| 425 | + } | ||
| 426 | + if ("INTL_INVENTORY_AGMT".equals(contractType)) { | ||
| 427 | + return "外贸库存"; | ||
| 428 | + } | ||
| 429 | + if ("INTL_OPEN_SPEC_AGMT".equals(contractType)) { | ||
| 430 | + return "外贸未锁规"; | ||
| 431 | + } | ||
| 432 | + if ("PROCESS_STD_AGMT".equals(contractType)) { | ||
| 433 | + return "加工标准"; | ||
| 434 | + } | ||
| 435 | + return null; | ||
| 337 | } | 436 | } |
| 338 | } | 437 | } |
| @@ -65,22 +65,30 @@ public class OrderDetailReportController extends DefaultBaseController { | @@ -65,22 +65,30 @@ public class OrderDetailReportController extends DefaultBaseController { | ||
| 65 | } | 65 | } |
| 66 | 66 | ||
| 67 | /** | 67 | /** |
| 68 | - * 库存合同未锁价订单明细查询 | 68 | + * 库存入库订单明查询 |
| 69 | */ | 69 | */ |
| 70 | - @ApiOperation("库存合同未锁价订单明细查询") | ||
| 71 | - @HasPermission({"statistical-report:order-detail:query","statistical-report:quality-order-detail:query"}) | 70 | + @ApiOperation("库存入库订单明查询") |
| 71 | + @HasPermission({"statistical-report:stock-order-detail:query"}) | ||
| 72 | @GetMapping("/inventoryUnlocked/query") | 72 | @GetMapping("/inventoryUnlocked/query") |
| 73 | public InvokeResult<PageResult<QueryOrderDetailReportBo>> inventoryUnlockedQuery(@Valid QueryOrderDetailReportVo vo) { | 73 | public InvokeResult<PageResult<QueryOrderDetailReportBo>> inventoryUnlockedQuery(@Valid QueryOrderDetailReportVo vo) { |
| 74 | vo.setInventoryUnlockedOnly(Boolean.TRUE); | 74 | vo.setInventoryUnlockedOnly(Boolean.TRUE); |
| 75 | vo.setExcludeInventoryUnlocked(null); | 75 | vo.setExcludeInventoryUnlocked(null); |
| 76 | - return query(vo); | 76 | + PageResult<OrderDetailReport> pageResult = orderDetailReportService.query(getPageIndex(vo), getPageSize(vo), vo); |
| 77 | + List<OrderDetailReport> datas = pageResult.getDatas(); | ||
| 78 | + List<QueryOrderDetailReportBo> results = null; | ||
| 79 | + | ||
| 80 | + if (!CollectionUtil.isEmpty(datas)) { | ||
| 81 | + results = datas.stream().map(QueryOrderDetailReportBo::new).collect(Collectors.toList()); | ||
| 82 | + } | ||
| 83 | + | ||
| 84 | + return InvokeResultBuilder.success(PageResultUtil.rebuild(pageResult, results)); | ||
| 77 | } | 85 | } |
| 78 | 86 | ||
| 79 | /** | 87 | /** |
| 80 | - * 库存入库订单明细查询 | 88 | + * 入库订单明细查询 |
| 81 | */ | 89 | */ |
| 82 | - @ApiOperation("库存入库订单明细查询") | ||
| 83 | - @HasPermission({"statistical-report:order-detail:query","statistical-report:quality-order-detail:query"}) | 90 | + @ApiOperation("入库订单明细查询") |
| 91 | + @HasPermission({"statistical-report:warehousing-order-detail:query"}) | ||
| 84 | @GetMapping("/stockIn/query") | 92 | @GetMapping("/stockIn/query") |
| 85 | public InvokeResult<PageResult<QueryOrderDetailReportBo>> stockInQuery(@Valid QueryOrderDetailReportVo vo) { | 93 | public InvokeResult<PageResult<QueryOrderDetailReportBo>> stockInQuery(@Valid QueryOrderDetailReportVo vo) { |
| 86 | vo.setExcludeInventoryUnlocked(Boolean.TRUE); | 94 | vo.setExcludeInventoryUnlocked(Boolean.TRUE); |
| @@ -136,7 +144,7 @@ public class OrderDetailReportController extends DefaultBaseController { | @@ -136,7 +144,7 @@ public class OrderDetailReportController extends DefaultBaseController { | ||
| 136 | * 库存入库订单明细导出 | 144 | * 库存入库订单明细导出 |
| 137 | */ | 145 | */ |
| 138 | @ApiOperation("库存入库订单明细导出") | 146 | @ApiOperation("库存入库订单明细导出") |
| 139 | - @HasPermission({"statistical-report:order-detail:export"}) | 147 | + @HasPermission({"statistical-report:stock-order-detail:export"}) |
| 140 | @PostMapping("/inventoryUnlocked/export") | 148 | @PostMapping("/inventoryUnlocked/export") |
| 141 | public InvokeResult<Void> inventoryUnlockedExport(@Valid @RequestBody QueryOrderDetailReportVo vo) { | 149 | public InvokeResult<Void> inventoryUnlockedExport(@Valid @RequestBody QueryOrderDetailReportVo vo) { |
| 142 | vo.setInventoryUnlockedOnly(Boolean.TRUE); | 150 | vo.setInventoryUnlockedOnly(Boolean.TRUE); |
| @@ -150,7 +158,7 @@ public class OrderDetailReportController extends DefaultBaseController { | @@ -150,7 +158,7 @@ public class OrderDetailReportController extends DefaultBaseController { | ||
| 150 | * 入库订单明细导出 | 158 | * 入库订单明细导出 |
| 151 | */ | 159 | */ |
| 152 | @ApiOperation("入库订单明细导出") | 160 | @ApiOperation("入库订单明细导出") |
| 153 | - @HasPermission({"statistical-report:order-detail:export"}) | 161 | + @HasPermission({"statistical-report:warehousing-order-detail:export"}) |
| 154 | @PostMapping("/stockIn/export") | 162 | @PostMapping("/stockIn/export") |
| 155 | public InvokeResult<Void> stockInExport(@Valid @RequestBody QueryOrderDetailReportVo vo) { | 163 | public InvokeResult<Void> stockInExport(@Valid @RequestBody QueryOrderDetailReportVo vo) { |
| 156 | vo.setExcludeInventoryUnlocked(Boolean.TRUE); | 164 | vo.setExcludeInventoryUnlocked(Boolean.TRUE); |
| @@ -311,7 +311,13 @@ public class OrderDetailReport extends BaseEntity implements BaseDto { | @@ -311,7 +311,13 @@ public class OrderDetailReport extends BaseEntity implements BaseDto { | ||
| 311 | private String executionStandard; | 311 | private String executionStandard; |
| 312 | 312 | ||
| 313 | /** | 313 | /** |
| 314 | - * 结构报表用(合同物料行产品ID) | 314 | + * 执行标准备注(当执行标准为“其它”时使用) |
| 315 | + */ | ||
| 316 | + @TableField(exist = false) | ||
| 317 | + private String executionStandardRemarks; | ||
| 318 | + | ||
| 319 | + /** | ||
| 320 | + * 结构报表用(合同物料行产品) | ||
| 315 | */ | 321 | */ |
| 316 | @TableField(exist = false) | 322 | @TableField(exist = false) |
| 317 | private String structureReportUsed; | 323 | private String structureReportUsed; |
| @@ -53,7 +53,7 @@ public class StockInOrderDetailReportExportTaskWorker implements | @@ -53,7 +53,7 @@ public class StockInOrderDetailReportExportTaskWorker implements | ||
| 53 | 53 | ||
| 54 | StockInOrderDetailReportModel model = new StockInOrderDetailReportModel(); | 54 | StockInOrderDetailReportModel model = new StockInOrderDetailReportModel(); |
| 55 | model.setOrderNo(data.getOrderNo()); | 55 | model.setOrderNo(data.getOrderNo()); |
| 56 | - model.setDeptCode(convertDeptNameToDeptCode(data.getDeptName())); | 56 | + model.setDeptCode(data.getDeptCode()); |
| 57 | model.setCustomerShortName(data.getCustomerShortName()); | 57 | model.setCustomerShortName(data.getCustomerShortName()); |
| 58 | model.setOrderDate(toDate(data.getOrderDate())); | 58 | model.setOrderDate(toDate(data.getOrderDate())); |
| 59 | model.setWorkshopName(data.getWorkshopName()); | 59 | model.setWorkshopName(data.getWorkshopName()); |
| @@ -77,7 +77,7 @@ public class StockInOrderDetailReportExportTaskWorker implements | @@ -77,7 +77,7 @@ public class StockInOrderDetailReportExportTaskWorker implements | ||
| 77 | model.setExecutionStandard(data.getExecutionStandard()); | 77 | model.setExecutionStandard(data.getExecutionStandard()); |
| 78 | model.setSalesPrice(toBigDecimalOrZero(data.getSalesPrice())); | 78 | model.setSalesPrice(toBigDecimalOrZero(data.getSalesPrice())); |
| 79 | model.setPriceListNo(data.getPriceListNo()); | 79 | model.setPriceListNo(data.getPriceListNo()); |
| 80 | - model.setPackagingFee(toBigDecimalOrZero(data.getPackagingFee())); | 80 | + model.setPackagingFee(stringToBigDecimal(data.getPackagingFee())); |
| 81 | model.setSettlementTerms(data.getSettlementTerms()); | 81 | model.setSettlementTerms(data.getSettlementTerms()); |
| 82 | model.setPieceWeightHeader(data.getPieceWeightHeader()); | 82 | model.setPieceWeightHeader(data.getPieceWeightHeader()); |
| 83 | model.setSurface(data.getSurface()); | 83 | model.setSurface(data.getSurface()); |
| @@ -87,13 +87,13 @@ public class StockInOrderDetailReportExportTaskWorker implements | @@ -87,13 +87,13 @@ public class StockInOrderDetailReportExportTaskWorker implements | ||
| 87 | model.setSpecialRequirements(data.getSpecialRequirements()); | 87 | model.setSpecialRequirements(data.getSpecialRequirements()); |
| 88 | model.setRemarks(data.getRemarks()); | 88 | model.setRemarks(data.getRemarks()); |
| 89 | model.setSalesman(data.getContractCreateBy()); | 89 | model.setSalesman(data.getContractCreateBy()); |
| 90 | - model.setShippingCost(toBigDecimalOrZero(data.getShippingCost())); | ||
| 91 | - model.setReturnShippingCost(toBigDecimalOrZero(data.getReturnShippingCost())); | 90 | + model.setShippingCost(stringToBigDecimal(data.getShippingCost())); |
| 91 | + model.setReturnShippingCost(stringToBigDecimal(data.getReturnShippingCost())); | ||
| 92 | model.setCustomerType(data.getCustomerType()); | 92 | model.setCustomerType(data.getCustomerType()); |
| 93 | model.setQuality(data.getQuality()); | 93 | model.setQuality(data.getQuality()); |
| 94 | model.setProcessingAndDistributor(data.getContractType()); | 94 | model.setProcessingAndDistributor(data.getContractType()); |
| 95 | model.setActualCustomer(data.getOrderingUnitName()); | 95 | model.setActualCustomer(data.getOrderingUnitName()); |
| 96 | - model.setOrderType(handleContractType(data.getContractTypeCode())); | 96 | + model.setOrderType(data.getContractTypeName()); |
| 97 | model.setLeadCadmiumPpm("Pb≤ppm\n" + "Cd≤ppm"); | 97 | model.setLeadCadmiumPpm("Pb≤ppm\n" + "Cd≤ppm"); |
| 98 | model.setIronConductivity("Fe≤ppm\n" + "Co+Ni≤ppm\n" + "%IACS"); | 98 | model.setIronConductivity("Fe≤ppm\n" + "Co+Ni≤ppm\n" + "%IACS"); |
| 99 | model.setReserve1(data.getIndustry()); | 99 | model.setReserve1(data.getIndustry()); |
| @@ -124,64 +124,21 @@ public class StockInOrderDetailReportExportTaskWorker implements | @@ -124,64 +124,21 @@ public class StockInOrderDetailReportExportTaskWorker implements | ||
| 124 | } | 124 | } |
| 125 | } | 125 | } |
| 126 | 126 | ||
| 127 | - private static String handleContractType(String contractType) { | ||
| 128 | - if ("DISTRIB_STD".equals(contractType)) { | ||
| 129 | - return "经销标准"; | ||
| 130 | - } | ||
| 131 | - if ("DIST_STOCK_CONTRACT".equals(contractType)) { | ||
| 132 | - return "经销库存"; | ||
| 133 | - } | ||
| 134 | - if ("DRAFT_DIST_AGMT".equals(contractType)) { | ||
| 135 | - return "经销未锁规"; | ||
| 136 | - } | ||
| 137 | - if ("INTL_STD_CONTRACT".equals(contractType)) { | ||
| 138 | - return "外贸标准"; | ||
| 139 | - } | ||
| 140 | - if ("INTL_INVENTORY_AGMT".equals(contractType)) { | ||
| 141 | - return "外贸库存"; | ||
| 142 | - } | ||
| 143 | - if ("INTL_OPEN_SPEC_AGMT".equals(contractType)) { | ||
| 144 | - return "外贸未锁规"; | ||
| 145 | - } | ||
| 146 | - if ("PROCESS_STD_AGMT".equals(contractType)) { | ||
| 147 | - return "加工标准"; | 127 | + public static BigDecimal stringToBigDecimal(String str) { |
| 128 | + // 1. 判空处理:如果为 null 或去除空格后为空字符串,直接返回 null | ||
| 129 | + if (str == null || str.trim().isEmpty()) { | ||
| 130 | + return null; | ||
| 148 | } | 131 | } |
| 149 | - return null; | ||
| 150 | - } | ||
| 151 | 132 | ||
| 152 | - private static String convertDeptNameToDeptCode(String deptName) { | ||
| 153 | - if (StringUtils.isBlank(deptName)) { | 133 | + // 2. 尝试转换 |
| 134 | + try { | ||
| 135 | + // 建议先 trim() 去除首尾空格,避免 " 100 " 这种格式报错 | ||
| 136 | + return new BigDecimal(str.trim()); | ||
| 137 | + } catch (NumberFormatException e) { | ||
| 138 | + // 3. 如果字符串格式不合法(如 "abc"),根据业务需求处理,这里同样返回 null | ||
| 154 | return null; | 139 | return null; |
| 155 | } | 140 | } |
| 156 | - String name = deptName.trim(); | ||
| 157 | - if (name.contains("北方")) { | ||
| 158 | - return "BF"; | ||
| 159 | - } | ||
| 160 | - if (name.contains("常州")) { | ||
| 161 | - return "CZ"; | ||
| 162 | - } | ||
| 163 | - if (name.contains("东莞")) { | ||
| 164 | - return "DG"; | ||
| 165 | - } | ||
| 166 | - if (name.contains("佛山")) { | ||
| 167 | - return "FS"; | ||
| 168 | - } | ||
| 169 | - if (name.contains("宁波")) { | ||
| 170 | - return "NB"; | ||
| 171 | - } | ||
| 172 | - if (name.contains("苏州")) { | ||
| 173 | - return "SZ"; | ||
| 174 | - } | ||
| 175 | - if (name.contains("温州")) { | ||
| 176 | - return "WZ"; | ||
| 177 | - } | ||
| 178 | - if (name.contains("紫铜")) { | ||
| 179 | - return "ZT"; | ||
| 180 | - } | ||
| 181 | - if (name.contains("外贸")) { | ||
| 182 | - return "WM"; | ||
| 183 | - } | ||
| 184 | - return null; | ||
| 185 | } | 141 | } |
| 142 | + | ||
| 186 | } | 143 | } |
| 187 | 144 |
| @@ -57,6 +57,7 @@ | @@ -57,6 +57,7 @@ | ||
| 57 | <result column="customer_short_name" property="customerShortName"/> | 57 | <result column="customer_short_name" property="customerShortName"/> |
| 58 | <result column="settlement_terms" property="settlementTerms"/> | 58 | <result column="settlement_terms" property="settlementTerms"/> |
| 59 | <result column="execution_standard" property="executionStandard"/> | 59 | <result column="execution_standard" property="executionStandard"/> |
| 60 | + <result column="execution_standard_remarks" property="executionStandardRemarks"/> | ||
| 60 | <result column="structure_report_used" property="structureReportUsed"/> | 61 | <result column="structure_report_used" property="structureReportUsed"/> |
| 61 | <result column="contract_type_code" property="contractTypeCode"/> | 62 | <result column="contract_type_code" property="contractTypeCode"/> |
| 62 | <result column="special_requirements" property="specialRequirements"/> | 63 | <result column="special_requirements" property="specialRequirements"/> |
| @@ -207,6 +208,7 @@ | @@ -207,6 +208,7 @@ | ||
| 207 | cs.short_name AS customer_short_name, | 208 | cs.short_name AS customer_short_name, |
| 208 | poi.settlement_terms AS settlement_terms, | 209 | poi.settlement_terms AS settlement_terms, |
| 209 | poi.execution_standard AS execution_standard, | 210 | poi.execution_standard AS execution_standard, |
| 211 | + poi.execution_standard_remarks AS execution_standard_remarks, | ||
| 210 | CASE | 212 | CASE |
| 211 | WHEN c.type = 'PROCESS_STD_AGMT' THEN pl.product_id | 213 | WHEN c.type = 'PROCESS_STD_AGMT' THEN pl.product_id |
| 212 | ELSE cl.product_id | 214 | ELSE cl.product_id |