Commit 89290939f7a3cd625b805dc2af749265f32e4cb9

Authored by 房远帅
1 parent 99109b36

采购计划:记录节点审核人

... ... @@ -1928,7 +1928,7 @@ CREATE TABLE `procurement_plan`
1928 1928 `approval_status` varchar(50) DEFAULT NULL COMMENT '审核状态',
1929 1929 `process_status` varchar(50) DEFAULT NULL COMMENT '流程状态',
1930 1930 `process_node` varchar(50) DEFAULT NULL COMMENT '流程节点',
1931   - `frozen` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否冻结 0否 1是',
  1931 + `frozen` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否冻结 0否 1是',
1932 1932 `plan_type` varchar(50) DEFAULT NULL COMMENT '计划类型: 补、变、补 变',
1933 1933 `workshop_id` varchar(50) DEFAULT NULL COMMENT '分厂ID',
1934 1934 `salesman_quotation_id` varchar(32) DEFAULT NULL COMMENT '关联业务员报价单ID',
... ... @@ -1936,7 +1936,12 @@ CREATE TABLE `procurement_plan`
1936 1936 `attachment_file_names` text DEFAULT NULL COMMENT '附件文件名称集合',
1937 1937 `change_status` varchar(50) DEFAULT NULL COMMENT '变更状态 CHANGING 变更中 CHANGED 变更完成',
1938 1938 `replenishment_status` varchar(50) DEFAULT NULL COMMENT '补单状态 REPLENISHING 补单中 REPLENISHED 补单完成',
1939   - `deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0否 1是',
  1939 + `deleted` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除 0否 1是',
  1940 + `general_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '总经理',
  1941 + `marketing_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '营销中心主管',
  1942 + `supply_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '供应部主管',
  1943 + `management_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '供应管理科主管',
  1944 + `purchase_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '采购处主管',
1940 1945 `create_by_id` varchar(32) DEFAULT NULL COMMENT '创建人ID',
1941 1946 `create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
1942 1947 `update_by_id` varchar(32) DEFAULT NULL COMMENT '更新人ID',
... ... @@ -2044,70 +2049,75 @@ CREATE TABLE `procurement_buyout_apply_line`
2044 2049
2045 2050 CREATE TABLE `procurement_plan_change`
2046 2051 (
2047   - `id` varchar(32) NOT NULL COMMENT 'ID',
2048   - `procurement_plan_id` varchar(32) NOT NULL COMMENT '原采购计划ID',
2049   - `parent_id` varchar(32) DEFAULT NULL COMMENT '父ID,拆分使用',
2050   - `code` varchar(20) NOT NULL COMMENT '变更单编号',
2051   - `company_short_id` varchar(32) DEFAULT NULL COMMENT '公司简称ID',
2052   - `supplier_id` varchar(32) NOT NULL COMMENT '供应商ID',
2053   - `purchase_department` varchar(32) NOT NULL COMMENT '采购处',
2054   - `region` varchar(32) NOT NULL COMMENT '区域',
2055   - `date` date NOT NULL COMMENT '日期',
2056   - `validity_period` varchar(200) NOT NULL COMMENT '报价时效',
2057   - `quoter_id` varchar(32) NOT NULL COMMENT '报价人ID',
2058   - `quoter_name` varchar(64) NOT NULL COMMENT '报价人',
2059   - `long_term_operation` bool NOT NULL COMMENT '是否长单操作',
2060   - `terminal_customer` bool NOT NULL COMMENT '是否终端客户',
2061   - `priced` bool NOT NULL COMMENT '是否未点价',
2062   - `pricing_deadline` date DEFAULT NULL COMMENT '点价截止日期',
2063   - `temporary_price` bool DEFAULT NULL COMMENT '是否暂定价',
2064   - `other_expense_settlement` bool NOT NULL COMMENT '其他费用凭票到厂另行结算',
2065   - `delivery_mode` varchar(50) NOT NULL COMMENT '交提货方式',
2066   - `commodity_buyout` bool NOT NULL COMMENT '是否通货买断',
2067   - `quality_buyout` bool NOT NULL COMMENT '是否质量买断',
2068   - `quantity_buyout` bool NOT NULL COMMENT '是否数量买断',
2069   - `door_delivery` bool NOT NULL COMMENT '是否送货上门',
2070   - `shipping_cost` decimal(18, 5) DEFAULT NULL COMMENT '另付运费',
2071   - `loading_fee` decimal(18, 5) DEFAULT NULL COMMENT '装车费',
2072   - `invoice_product_name` varchar(200) NOT NULL COMMENT '开票品名',
2073   - `delivery_date` date NOT NULL COMMENT '交货日期',
2074   - `settlement_method` varchar(200) NOT NULL COMMENT '结算方式',
2075   - `settlement_ratio` decimal(10, 5) NOT NULL COMMENT '结算比例(%)',
2076   - `price_id` varchar(32) NOT NULL COMMENT '价格表ID',
2077   - `coordination_reason` varchar(200) NOT NULL COMMENT '协调事由',
2078   - `invoice_type_status` varchar(50) NOT NULL COMMENT '票类状况',
2079   - `total_quantity` decimal(18, 5) NOT NULL COMMENT '合计数量',
2080   - `remark` varchar(1000) DEFAULT NULL COMMENT '备注',
2081   - `material_condition_enabled` bool NOT NULL DEFAULT FALSE COMMENT '是否启用料质状况',
2082   - `material_condition_copper_rice` varchar(500) DEFAULT NULL COMMENT '铜米',
2083   - `material_condition_bright_copper` varchar(500) DEFAULT NULL COMMENT '光亮铜',
2084   - `material_condition_first_class` varchar(500) DEFAULT NULL COMMENT '一特',
2085   - `material_condition_second_class` varchar(500) DEFAULT NULL COMMENT '二特',
2086   - `material_condition_tin_coated` varchar(500) DEFAULT NULL COMMENT '镀锡紫',
2087   - `material_condition_scrap` varchar(500) DEFAULT NULL COMMENT '角料',
2088   - `material_condition_white_yellow` varchar(500) DEFAULT NULL COMMENT '镀白黄',
2089   - `material_condition_phosphor_copper` varchar(500) DEFAULT NULL COMMENT '磷铜',
2090   - `workshop_id` varchar(50) DEFAULT NULL COMMENT '分厂ID',
2091   - `change_reason` varchar(1000) NOT NULL COMMENT '变更事由',
2092   - `approval_status` varchar(50) DEFAULT NULL COMMENT '审核状态(预留)',
2093   - `process_status` varchar(50) DEFAULT NULL COMMENT '流程状态(预留)',
2094   - `process_node` varchar(50) DEFAULT NULL COMMENT '流程节点(预留)',
2095   - `create_by_id` varchar(32) DEFAULT NULL COMMENT '创建人ID',
2096   - `create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
2097   - `update_by_id` varchar(32) DEFAULT NULL COMMENT '更新人ID',
2098   - `update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
2099   - `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
2100   - `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  2052 + `id` varchar(32) NOT NULL COMMENT 'ID',
  2053 + `procurement_plan_id` varchar(32) NOT NULL COMMENT '原采购计划ID',
  2054 + `parent_id` varchar(32) DEFAULT NULL COMMENT '父ID,拆分使用',
  2055 + `code` varchar(20) NOT NULL COMMENT '变更单编号',
  2056 + `company_short_id` varchar(32) DEFAULT NULL COMMENT '公司简称ID',
  2057 + `supplier_id` varchar(32) NOT NULL COMMENT '供应商ID',
  2058 + `purchase_department` varchar(32) NOT NULL COMMENT '采购处',
  2059 + `region` varchar(32) NOT NULL COMMENT '区域',
  2060 + `date` date NOT NULL COMMENT '日期',
  2061 + `validity_period` varchar(200) NOT NULL COMMENT '报价时效',
  2062 + `quoter_id` varchar(32) NOT NULL COMMENT '报价人ID',
  2063 + `quoter_name` varchar(64) NOT NULL COMMENT '报价人',
  2064 + `long_term_operation` bool NOT NULL COMMENT '是否长单操作',
  2065 + `terminal_customer` bool NOT NULL COMMENT '是否终端客户',
  2066 + `priced` bool NOT NULL COMMENT '是否未点价',
  2067 + `pricing_deadline` date DEFAULT NULL COMMENT '点价截止日期',
  2068 + `temporary_price` bool DEFAULT NULL COMMENT '是否暂定价',
  2069 + `other_expense_settlement` bool NOT NULL COMMENT '其他费用凭票到厂另行结算',
  2070 + `delivery_mode` varchar(50) NOT NULL COMMENT '交提货方式',
  2071 + `commodity_buyout` bool NOT NULL COMMENT '是否通货买断',
  2072 + `quality_buyout` bool NOT NULL COMMENT '是否质量买断',
  2073 + `quantity_buyout` bool NOT NULL COMMENT '是否数量买断',
  2074 + `door_delivery` bool NOT NULL COMMENT '是否送货上门',
  2075 + `shipping_cost` decimal(18, 5) DEFAULT NULL COMMENT '另付运费',
  2076 + `loading_fee` decimal(18, 5) DEFAULT NULL COMMENT '装车费',
  2077 + `invoice_product_name` varchar(200) NOT NULL COMMENT '开票品名',
  2078 + `delivery_date` date NOT NULL COMMENT '交货日期',
  2079 + `settlement_method` varchar(200) NOT NULL COMMENT '结算方式',
  2080 + `settlement_ratio` decimal(10, 5) NOT NULL COMMENT '结算比例(%)',
  2081 + `price_id` varchar(32) NOT NULL COMMENT '价格表ID',
  2082 + `coordination_reason` varchar(200) NOT NULL COMMENT '协调事由',
  2083 + `invoice_type_status` varchar(50) NOT NULL COMMENT '票类状况',
  2084 + `total_quantity` decimal(18, 5) NOT NULL COMMENT '合计数量',
  2085 + `remark` varchar(1000) DEFAULT NULL COMMENT '备注',
  2086 + `material_condition_enabled` bool NOT NULL DEFAULT FALSE COMMENT '是否启用料质状况',
  2087 + `material_condition_copper_rice` varchar(500) DEFAULT NULL COMMENT '铜米',
  2088 + `material_condition_bright_copper` varchar(500) DEFAULT NULL COMMENT '光亮铜',
  2089 + `material_condition_first_class` varchar(500) DEFAULT NULL COMMENT '一特',
  2090 + `material_condition_second_class` varchar(500) DEFAULT NULL COMMENT '二特',
  2091 + `material_condition_tin_coated` varchar(500) DEFAULT NULL COMMENT '镀锡紫',
  2092 + `material_condition_scrap` varchar(500) DEFAULT NULL COMMENT '角料',
  2093 + `material_condition_white_yellow` varchar(500) DEFAULT NULL COMMENT '镀白黄',
  2094 + `material_condition_phosphor_copper` varchar(500) DEFAULT NULL COMMENT '磷铜',
  2095 + `workshop_id` varchar(50) DEFAULT NULL COMMENT '分厂ID',
  2096 + `change_reason` varchar(1000) NOT NULL COMMENT '变更事由',
  2097 + `approval_status` varchar(50) DEFAULT NULL COMMENT '审核状态(预留)',
  2098 + `process_status` varchar(50) DEFAULT NULL COMMENT '流程状态(预留)',
  2099 + `process_node` varchar(50) DEFAULT NULL COMMENT '流程节点(预留)',
  2100 + `general_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '总经理',
  2101 + `marketing_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '营销中心主管',
  2102 + `supply_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '供应部主管',
  2103 + `management_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '供应管理科主管',
  2104 + `purchase_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '采购处主管',
  2105 + `create_by_id` varchar(32) DEFAULT NULL COMMENT '创建人ID',
  2106 + `create_by` varchar(64) DEFAULT NULL COMMENT '创建人',
  2107 + `update_by_id` varchar(32) DEFAULT NULL COMMENT '更新人ID',
  2108 + `update_by` varchar(64) DEFAULT NULL COMMENT '更新人',
  2109 + `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  2110 + `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
2101 2111 PRIMARY KEY (`id`),
2102 2112 UNIQUE KEY `uk_ppc_code` (`code`),
2103   - KEY `idx_ppc_procurement_plan_id` (`procurement_plan_id`),
2104   - KEY `idx_ppc_company_short_id` (`company_short_id`),
2105   - KEY `idx_ppc_supplier_id` (`supplier_id`),
2106   - KEY `idx_ppc_date` (`date`),
2107   - KEY `idx_ppc_create_time` (`create_time`),
2108   - KEY `idx_ppc_process_status` (`process_status`),
2109   - KEY `idx_ppc_approval_status` (`approval_status`),
2110   - KEY `idx_ppc_workshop_id` (`workshop_id`)
  2113 + KEY `idx_ppc_procurement_plan_id` (`procurement_plan_id`),
  2114 + KEY `idx_ppc_company_short_id` (`company_short_id`),
  2115 + KEY `idx_ppc_supplier_id` (`supplier_id`),
  2116 + KEY `idx_ppc_date` (`date`),
  2117 + KEY `idx_ppc_create_time` (`create_time`),
  2118 + KEY `idx_ppc_process_status` (`process_status`),
  2119 + KEY `idx_ppc_approval_status` (`approval_status`),
  2120 + KEY `idx_ppc_workshop_id` (`workshop_id`)
2111 2121 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='采购计划变更单主表';
2112 2122
2113 2123 CREATE TABLE `procurement_plan_change_line`
... ... @@ -2184,7 +2194,13 @@ CREATE TABLE `procurement_plan_replenish`
2184 2194 `material_condition_phosphor_copper` VARCHAR(500) DEFAULT NULL COMMENT '料质状况-磷铜',
2185 2195 `approval_status` VARCHAR(32) DEFAULT NULL COMMENT '审核状态',
2186 2196 `process_node` VARCHAR(32) DEFAULT NULL COMMENT '流程节点',
2187   - `workshop_id` VARCHAR(32) DEFAULT NULL COMMENT '流程节点',
  2197 + `workshop_id` VARCHAR(32) DEFAULT NULL COMMENT '分厂ID',
  2198 + `process_node` varchar(50) DEFAULT NULL COMMENT '流程节点(预留)',
  2199 + `general_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '总经理',
  2200 + `marketing_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '营销中心主管',
  2201 + `supply_manager_name` VARCHAR(50) DEFAULT NULL COMMENT '供应部主管',
  2202 + `management_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '供应管理科主管',
  2203 + `purchase_dept_name` VARCHAR(50) DEFAULT NULL COMMENT '采购处主管',
2188 2204 `create_by_id` VARCHAR(32) NOT NULL COMMENT '创建人ID',
2189 2205 `create_by` VARCHAR(64) NOT NULL COMMENT '创建人(仅展示字段)',
2190 2206 `create_time` DATETIME NOT NULL COMMENT '创建时间',
... ...
... ... @@ -400,6 +400,36 @@ public class GetProcurementPlanBo extends BaseBo<ProcurementPlan> {
400 400 private Boolean deleted;
401 401
402 402 /**
  403 + * 总经理审核人(name)
  404 + */
  405 + @ApiModelProperty("总经理审核人")
  406 + private String generalManagerName;
  407 +
  408 + /**
  409 + * 营销分管审核人(name)
  410 + */
  411 + @ApiModelProperty("营销分管审核人")
  412 + private String marketingManagerName;
  413 +
  414 + /**
  415 + * 供应部经理审核人(name)
  416 + */
  417 + @ApiModelProperty("供应部经理审核人")
  418 + private String supplyManagerName;
  419 +
  420 + /**
  421 + * 管理科审核人(name)
  422 + */
  423 + @ApiModelProperty("管理科审核人")
  424 + private String managementDeptName;
  425 +
  426 + /**
  427 + * 采购处审核人(name)
  428 + */
  429 + @ApiModelProperty("采购处审核人")
  430 + private String purchaseDeptName;
  431 +
  432 + /**
403 433 * 创建人ID
404 434 */
405 435 @ApiModelProperty("创建人ID")
... ...
... ... @@ -351,6 +351,36 @@ public class GetProcurementPlanChangeBo extends BaseBo<ProcurementPlanChange> {
351 351 private Boolean showExamineDetail;
352 352
353 353 /**
  354 + * 总经理审核人(name)
  355 + */
  356 + @ApiModelProperty("总经理审核人")
  357 + private String generalManagerName;
  358 +
  359 + /**
  360 + * 营销分管审核人(name)
  361 + */
  362 + @ApiModelProperty("营销分管审核人")
  363 + private String marketingManagerName;
  364 +
  365 + /**
  366 + * 供应部经理审核人(name)
  367 + */
  368 + @ApiModelProperty("供应部经理审核人")
  369 + private String supplyManagerName;
  370 +
  371 + /**
  372 + * 管理科审核人(name)
  373 + */
  374 + @ApiModelProperty("管理科审核人")
  375 + private String managementDeptName;
  376 +
  377 + /**
  378 + * 采购处审核人(name)
  379 + */
  380 + @ApiModelProperty("采购处审核人")
  381 + private String purchaseDeptName;
  382 +
  383 + /**
354 384 * 创建人ID
355 385 */
356 386 @ApiModelProperty("创建人ID")
... ...
... ... @@ -352,6 +352,36 @@ public class GetProcurementPlanReplenishBo extends BaseBo<ProcurementPlanRepleni
352 352 private Boolean showExamineDetail;
353 353
354 354 /**
  355 + * 总经理审核人(name)
  356 + */
  357 + @ApiModelProperty("总经理审核人")
  358 + private String generalManagerName;
  359 +
  360 + /**
  361 + * 营销分管审核人(name)
  362 + */
  363 + @ApiModelProperty("营销分管审核人")
  364 + private String marketingManagerName;
  365 +
  366 + /**
  367 + * 供应部经理审核人(name)
  368 + */
  369 + @ApiModelProperty("供应部经理审核人")
  370 + private String supplyManagerName;
  371 +
  372 + /**
  373 + * 管理科审核人(name)
  374 + */
  375 + @ApiModelProperty("管理科审核人")
  376 + private String managementDeptName;
  377 +
  378 + /**
  379 + * 采购处审核人(name)
  380 + */
  381 + @ApiModelProperty("采购处审核人")
  382 + private String purchaseDeptName;
  383 +
  384 + /**
355 385 * 创建人ID
356 386 */
357 387 @ApiModelProperty("创建人ID")
... ...
... ... @@ -330,6 +330,31 @@ public class ProcurementPlan extends BaseEntity implements BaseDto {
330 330 private Boolean deleted;
331 331
332 332 /**
  333 + * 总经理
  334 + */
  335 + private String generalManagerName;
  336 +
  337 + /**
  338 + * 营销中心主管
  339 + */
  340 + private String marketingManagerName;
  341 +
  342 + /**
  343 + * 供应部主管
  344 + */
  345 + private String supplyManagerName;
  346 +
  347 + /**
  348 + * 供应管理科主管
  349 + */
  350 + private String managementDeptName;
  351 +
  352 + /**
  353 + * 采购处主管
  354 + */
  355 + private String purchaseDeptName;
  356 +
  357 + /**
333 358 * 是否展示审核按钮(非持久化字段)
334 359 */
335 360 @TableField(exist = false)
... ...
... ... @@ -284,6 +284,31 @@ public class ProcurementPlanChange extends BaseEntity implements BaseDto {
284 284 */
285 285 private String workshopId;
286 286
  287 + /**
  288 + * 总经理
  289 + */
  290 + private String generalManagerName;
  291 +
  292 + /**
  293 + * 营销中心主管
  294 + */
  295 + private String marketingManagerName;
  296 +
  297 + /**
  298 + * 供应部主管
  299 + */
  300 + private String supplyManagerName;
  301 +
  302 + /**
  303 + * 供应管理科主管
  304 + */
  305 + private String managementDeptName;
  306 +
  307 + /**
  308 + * 采购处主管
  309 + */
  310 + private String purchaseDeptName;
  311 +
287 312 @TableField(exist = false)
288 313 private String roleCode;
289 314
... ...
... ... @@ -128,6 +128,31 @@ public class ProcurementPlanReplenish extends BaseEntity implements BaseDto {
128 128 private String workshopId;
129 129
130 130 /**
  131 + * 总经理审核人(name)
  132 + */
  133 + private String generalManagerName;
  134 +
  135 + /**
  136 + * 营销分管审核人(name)
  137 + */
  138 + private String marketingManagerName;
  139 +
  140 + /**
  141 + * 供应部经理审核人(name)
  142 + */
  143 + private String supplyManagerName;
  144 +
  145 + /**
  146 + * 管理科审核人(name)
  147 + */
  148 + private String managementDeptName;
  149 +
  150 + /**
  151 + * 采购处审核人(name)
  152 + */
  153 + private String purchaseDeptName;
  154 +
  155 + /**
131 156 * 是否展示审核按钮(非持久化字段)
132 157 */
133 158 @TableField(exist = false)
... ...
... ... @@ -334,6 +334,7 @@ public class ProcurementPlanChangeServiceImpl extends
334 334 throw new DefaultClientException("采购计划变更单不存在!");
335 335 }
336 336 String processNode = null;
  337 + String purchaseDeptName = null;
337 338 String node = entity.getProcessNode();
338 339 if ("YWY".equals(node)) {
339 340 processNode = "QYJL";
... ... @@ -341,10 +342,12 @@ public class ProcurementPlanChangeServiceImpl extends
341 342 processNode = "CGCZG";
342 343 } else if ("CGCZG".equals(node)) {
343 344 processNode = "GYGLKJHGLY";
  345 + purchaseDeptName = SecurityUtil.getCurrentUser().getName();
344 346 }
345 347 LambdaUpdateWrapper<ProcurementPlanChange> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlanChange.class)
346 348 .set(ProcurementPlanChange::getApprovalStatus, "AUDIT")
347 349 .set(ProcurementPlanChange::getProcessNode, processNode)
  350 + .set(ProcurementPlanChange::getPurchaseDeptName, purchaseDeptName)
348 351 .eq(ProcurementPlanChange::getId, id);
349 352 getBaseMapper().update(updateWrapper);
350 353 ProcurementPlanChange procurementPlanChange = this.getBaseMapper().findById(id);
... ... @@ -422,6 +425,7 @@ public class ProcurementPlanChangeServiceImpl extends
422 425 LambdaUpdateWrapper<ProcurementPlanChange> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlanChange.class)
423 426 .set(ProcurementPlanChange::getApprovalStatus, approvalStatus)
424 427 .set(ProcurementPlanChange::getProcessNode, null)
  428 + .set(ProcurementPlanChange::getMarketingManagerName, SecurityUtil.getCurrentUser().getName())
425 429 .eq(ProcurementPlanChange::getId, id);
426 430 getBaseMapper().update(updateWrapper);
427 431
... ... @@ -523,7 +527,7 @@ public class ProcurementPlanChangeServiceImpl extends
523 527 }
524 528 nextSuffix = maxSuf + 1;
525 529 }
526   -
  530 + ProcurementPlanChange procurementPlanChange = this.getById(id);
527 531 // 按分厂分组明细
528 532 if (CollectionUtil.isNotEmpty(changeLines)) {
529 533 // workshopId -> workshop code
... ... @@ -572,6 +576,10 @@ public class ProcurementPlanChangeServiceImpl extends
572 576 subVo.setProcessNode(null);
573 577 subVo.setWorkshopId(CollectionUtil.isNotEmpty(wLines) ? wLines.get(0).getWorkshopId() : null);
574 578 subVo.setPlanType("变");
  579 + subVo.setPurchaseDeptName(procurementPlanChange.getPurchaseDeptName());
  580 + subVo.setManagementDeptName(procurementPlanChange.getManagementDeptName());
  581 + subVo.setSupplyManagerName(procurementPlanChange.getSupplyManagerName());
  582 + subVo.setMarketingManagerName(procurementPlanChange.getMarketingManagerName());
575 583
576 584 List<ProcurementPlanLineVo> subLineVos = new ArrayList<>();
577 585 for (ProcurementPlanChangeLine cl : wLines) {
... ... @@ -598,6 +606,10 @@ public class ProcurementPlanChangeServiceImpl extends
598 606 .set(ProcurementPlan::getProcessStatus, "COMPLETED")
599 607 .set(ProcurementPlan::getProcessNode, null)
600 608 .set(ProcurementPlan::getPlanType, planType)
  609 + .set(ProcurementPlan::getPurchaseDeptName, procurementPlanChange.getPurchaseDeptName())
  610 + .set(ProcurementPlan::getManagementDeptName, procurementPlanChange.getManagementDeptName())
  611 + .set(ProcurementPlan::getSupplyManagerName, procurementPlanChange.getSupplyManagerName())
  612 + .set(ProcurementPlan::getMarketingManagerName, procurementPlanChange.getMarketingManagerName())
601 613 .eq(ProcurementPlan::getId, planId));
602 614
603 615 //todo 废弃原合同;生成新合同
... ... @@ -618,6 +630,10 @@ public class ProcurementPlanChangeServiceImpl extends
618 630 LambdaUpdateWrapper<ProcurementPlanChange> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlanChange.class)
619 631 .set(ProcurementPlanChange::getApprovalStatus, approvalStatus)
620 632 .set(ProcurementPlanChange::getProcessNode, processNode)
  633 + .set(ProcurementPlanChange::getPurchaseDeptName, null)
  634 + .set(ProcurementPlanChange::getManagementDeptName, null)
  635 + .set(ProcurementPlanChange::getSupplyManagerName, null)
  636 + .set(ProcurementPlanChange::getMarketingManagerName, null)
621 637 .eq(ProcurementPlanChange::getId, id);
622 638 getBaseMapper().update(updateWrapper);
623 639 }
... ... @@ -667,6 +683,9 @@ public class ProcurementPlanChangeServiceImpl extends
667 683 }
668 684 LambdaUpdateWrapper<ProcurementPlanChange> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlanChange.class)
669 685 .set(ProcurementPlanChange::getProcessNode, processNode)
  686 + .set("plan_change_qyjl".equals(nodeCode), ProcurementPlanChange::getPurchaseDeptName, SecurityUtil.getCurrentUser().getName())
  687 + .set("plan_change_gyglkzg".equals(nodeCode), ProcurementPlanChange::getManagementDeptName, SecurityUtil.getCurrentUser().getName())
  688 + .set("plan_change_gybzg".equals(nodeCode), ProcurementPlanChange::getSupplyManagerName, SecurityUtil.getCurrentUser().getName())
670 689 .eq(ProcurementPlanChange::getId, vo.getId());
671 690 getBaseMapper().update(updateWrapper);
672 691 }
... ...
... ... @@ -26,11 +26,14 @@ import com.lframework.starter.web.core.utils.PageHelperUtil;
26 26 import com.lframework.starter.web.inner.components.oplog.OtherOpLogType;
27 27 import com.lframework.starter.web.core.components.resp.PageResult;
28 28 import com.lframework.starter.web.core.utils.PageResultUtil;
  29 +import com.lframework.starter.web.inner.entity.SysRole;
  30 +import com.lframework.starter.web.inner.service.system.SysRoleService;
29 31 import com.lframework.xingyun.basedata.entity.Workshop;
30 32 import com.lframework.xingyun.basedata.service.workshop.WorkshopService;
31 33 import com.lframework.xingyun.sc.bo.procurement.GetProcurementPlanBo;
32 34 import com.lframework.xingyun.sc.enums.CustomerDevelopStatus;
33 35 import com.lframework.xingyun.sc.procurement.entity.ProcurementPlan;
  36 +import com.lframework.xingyun.sc.procurement.entity.ProcurementPlanChange;
34 37 import com.lframework.xingyun.sc.procurement.entity.ProcurementPlanLine;
35 38 import com.lframework.xingyun.sc.procurement.mappers.plan.ProcurementPlanMapper;
36 39 import com.lframework.xingyun.sc.procurement.service.buyout.ProcurementBuyoutApplyService;
... ... @@ -72,6 +75,8 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
72 75 private ProcurementBuyoutApplyService procurementBuyoutApplyService;
73 76 @Resource
74 77 private FlowTaskWrapperMapper flowTaskWrapperMapper;
  78 + @Resource
  79 + private SysRoleService sysRoleService;
75 80
76 81 @Override
77 82 public PageResult<ProcurementPlan> query(Integer pageIndex, Integer pageSize,
... ... @@ -172,6 +177,17 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
172 177 }
173 178 plan.setTotalQuantity(totalQuantity);
174 179
  180 + String currentUserId = SecurityUtil.getCurrentUser().getId();
  181 + List<SysRole> roles = sysRoleService.getByUserId(currentUserId);
  182 + List<String> roleCodes = CollectionUtil.isEmpty(roles) ? new java.util.ArrayList<>()
  183 + : roles.stream().map(SysRole::getCode).collect(Collectors.toList());
  184 +
  185 + if (roleCodes.contains("ltcgczg") || roleCodes.contains("ztcgczg")
  186 + || roleCodes.contains("htcgeczg") || roleCodes.contains("htcgyczg")) {
  187 + plan.setPurchaseDeptName(SecurityUtil.getCurrentUser().getName());
  188 + } else if (roleCodes.contains("qyjl") || roleCodes.contains("nmcgkywy")) {
  189 + //todo 查找报价的 采购处主管审核人
  190 + }
175 191 getBaseMapper().insert(plan);
176 192
177 193 if (!CollectionUtil.isEmpty(vo.getProcurementPlanLineList())) {
... ... @@ -441,6 +457,7 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
441 457 .set(ProcurementPlan::getApprovalStatus, "AUDIT")
442 458 .set(ProcurementPlan::getProcessStatus, "AUDIT")
443 459 .set(ProcurementPlan::getProcessNode, "GYBZG")
  460 + .set(ProcurementPlan::getManagementDeptName, SecurityUtil.getCurrentUser().getName())
444 461 .eq(ProcurementPlan::getId, id);
445 462 getBaseMapper().update(updateWrapper);
446 463
... ... @@ -457,20 +474,27 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
457 474 if (StringUtils.isBlank(id) || StringUtils.isBlank(approvalStatus)) {
458 475 throw new DefaultClientException("采购计划ID、审核状态不能为空!");
459 476 }
  477 + ProcurementPlan currentPlan = this.getById(id);
  478 + if (currentPlan == null) {
  479 + throw new DefaultClientException("采购计划不存在!");
  480 + }
460 481
461 482 Wrapper<ProcurementPlan> wrapper = Wrappers.lambdaUpdate(ProcurementPlan.class)
462 483 .set(ProcurementPlan::getApprovalStatus, approvalStatus)
463 484 .set(ProcurementPlan::getProcessStatus, approvalStatus.equals("PASS") ? "COMPLETED" : "REFUSE")
464 485 .set(ProcurementPlan::getProcessNode, approvalStatus.equals("PASS") ? null : "GYGLKZG")
  486 + .set(approvalStatus.equals("REFUSE"), ProcurementPlan::getPurchaseDeptName, null)
  487 + .set(approvalStatus.equals("REFUSE"), ProcurementPlan::getManagementDeptName, null)
  488 + .set(approvalStatus.equals("REFUSE"), ProcurementPlan::getSupplyManagerName, null)
  489 + .set(ProcurementPlan::getMarketingManagerName, approvalStatus.equals("PASS") ? SecurityUtil.getCurrentUser().getName() : null)
465 490 .eq(ProcurementPlan::getId, id);
466 491 getBaseMapper().update(wrapper);
467 492
468 493 //如果是子计划且审核通过,检查主计划下所有子计划是否都已通过
469 494 if ("PASS".equals(approvalStatus)) {
470   - ProcurementPlan currentPlan = this.getById(id);
471 495
472 496 // 判断当前计划是否为子计划(parentId不为空)
473   - if (currentPlan != null && StringUtils.isNotBlank(currentPlan.getParentId())) {
  497 + if (StringUtils.isNotBlank(currentPlan.getParentId())) {
474 498 String parentId = currentPlan.getParentId();
475 499
476 500 // 查询主计划下,除了当前子计划外,是否还有未通过(非PASS状态)的子计划
... ... @@ -501,6 +525,7 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
501 525
502 526 Wrapper<ProcurementPlan> wrapper = Wrappers.lambdaUpdate(ProcurementPlan.class)
503 527 .set(ProcurementPlan::getProcessNode, "YSFG")
  528 + .set(ProcurementPlan::getSupplyManagerName, SecurityUtil.getCurrentUser().getName())//取决于只有供应部主管一个中间审核节点
504 529 .eq(ProcurementPlan::getId, id);
505 530 getBaseMapper().update(wrapper);
506 531 }
... ... @@ -598,6 +623,10 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
598 623 LambdaUpdateWrapper<ProcurementPlan> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlan.class)
599 624 .set(ProcurementPlan::getProcessStatus, "ABORTED")
600 625 .set(ProcurementPlan::getProcessNode, null)
  626 + .set(ProcurementPlan::getPurchaseDeptName, null)
  627 + .set(ProcurementPlan::getManagementDeptName, null)
  628 + .set(ProcurementPlan::getSupplyManagerName, null)
  629 + .set(ProcurementPlan::getMarketingManagerName, null)
601 630 .eq(ProcurementPlan::getId, subPlan.getId());
602 631 getBaseMapper().update(updateWrapper);
603 632 }
... ... @@ -605,6 +634,10 @@ public class ProcurementPlanServiceImpl extends BaseMpServiceImpl<ProcurementPla
605 634 // 更新主计划状态为"已中止"
606 635 LambdaUpdateWrapper<ProcurementPlan> updateWrapper = Wrappers.lambdaUpdate(ProcurementPlan.class)
607 636 .set(ProcurementPlan::getProcessStatus, "ABORTED")
  637 + .set(ProcurementPlan::getPurchaseDeptName, null)
  638 + .set(ProcurementPlan::getManagementDeptName, null)
  639 + .set(ProcurementPlan::getSupplyManagerName, null)
  640 + .set(ProcurementPlan::getMarketingManagerName, null)
608 641 .eq(ProcurementPlan::getId, mainPlanId);
609 642 getBaseMapper().update(updateWrapper);
610 643
... ...
... ... @@ -303,6 +303,7 @@ public class ProcurementPlanReplenishServiceImpl
303 303 throw new DefaultClientException("当前用户不存在!");
304 304 }
305 305 String processNode = null;
  306 + String purchaseDeptName = null;
306 307 String node = entity.getProcessNode();
307 308 if ("YWY".equals(node)) {
308 309 processNode = "QYJL";
... ... @@ -310,6 +311,7 @@ public class ProcurementPlanReplenishServiceImpl
310 311 processNode = "CGCZG";
311 312 } else if ("CGCZG".equals(node)) {
312 313 processNode = "GYGLKJHGLY";
  314 + purchaseDeptName = SecurityUtil.getCurrentUser().getName();
313 315 }
314 316
315 317 // 更新审核状态为审核中
... ... @@ -317,6 +319,7 @@ public class ProcurementPlanReplenishServiceImpl
317 319 Wrappers.lambdaUpdate(ProcurementPlanReplenish.class)
318 320 .set(ProcurementPlanReplenish::getApprovalStatus, "AUDIT")
319 321 .set(ProcurementPlanReplenish::getProcessNode, processNode)
  322 + .set(ProcurementPlanReplenish::getPurchaseDeptName, purchaseDeptName)
320 323 .eq(ProcurementPlanReplenish::getId, id);
321 324 this.getBaseMapper().update(updateWrapper);
322 325
... ... @@ -370,6 +373,7 @@ public class ProcurementPlanReplenishServiceImpl
370 373 Wrappers.lambdaUpdate(ProcurementPlanReplenish.class)
371 374 .set(ProcurementPlanReplenish::getApprovalStatus, "PASS")
372 375 .set(ProcurementPlanReplenish::getProcessNode, null)
  376 + .set(ProcurementPlanReplenish::getMarketingManagerName, SecurityUtil.getCurrentUser().getName())
373 377 .eq(ProcurementPlanReplenish::getId, id);
374 378 this.getBaseMapper().update(updateWrapper);
375 379
... ... @@ -378,6 +382,8 @@ public class ProcurementPlanReplenishServiceImpl
378 382 .set(ProcurementPlan::getReplenishmentStatus, "REPLENISHED")
379 383 .eq(ProcurementPlan::getId, entity.getProcurementPlanId());
380 384 procurementPlanService.update(planWrapper);
  385 +
  386 + ProcurementPlanReplenish procurementPlanReplenish = this.getById(id);
381 387 //todo 生成新的合同
382 388 //生成一个补的主计划
383 389 // 归档主计划(ID新生成,保持原code以区分,添加补单标识)
... ... @@ -407,6 +413,10 @@ public class ProcurementPlanReplenishServiceImpl
407 413 archivedMain.setPlanType("补");
408 414 archivedMain.setChangeStatus(null);
409 415 archivedMain.setReplenishmentStatus(null);
  416 + archivedMain.setPurchaseDeptName(procurementPlanReplenish.getPurchaseDeptName());
  417 + archivedMain.setManagementDeptName(procurementPlanReplenish.getManagementDeptName());
  418 + archivedMain.setSupplyManagerName(procurementPlanReplenish.getSupplyManagerName());
  419 + archivedMain.setMarketingManagerName(procurementPlanReplenish.getMarketingManagerName());
410 420 procurementPlanService.save(archivedMain);
411 421
412 422 //生成买断操作申请单
... ... @@ -474,6 +484,10 @@ public class ProcurementPlanReplenishServiceImpl
474 484 subVo.setApprovalStatus(null);
475 485 subVo.setFrozen(Boolean.FALSE);
476 486 archivedMain.setPlanType("补");
  487 + subVo.setPurchaseDeptName(procurementPlanReplenish.getPurchaseDeptName());
  488 + subVo.setManagementDeptName(procurementPlanReplenish.getManagementDeptName());
  489 + subVo.setSupplyManagerName(procurementPlanReplenish.getSupplyManagerName());
  490 + subVo.setMarketingManagerName(procurementPlanReplenish.getMarketingManagerName());
477 491 // 子计划的分厂就是当前组的明细分厂(同组内 workshopId 一样),直接赋值
478 492 subVo.setWorkshopId(CollectionUtil.isNotEmpty(factoryLines) ? factoryLines.get(0).getWorkshopId() : null);
479 493
... ... @@ -507,6 +521,10 @@ public class ProcurementPlanReplenishServiceImpl
507 521 Wrappers.lambdaUpdate(ProcurementPlanReplenish.class)
508 522 .set(ProcurementPlanReplenish::getApprovalStatus, "REFUSE")
509 523 .set(ProcurementPlanReplenish::getProcessNode, processNode)
  524 + .set(ProcurementPlanReplenish::getPurchaseDeptName, null)
  525 + .set(ProcurementPlanReplenish::getManagementDeptName, null)
  526 + .set(ProcurementPlanReplenish::getSupplyManagerName, null)
  527 + .set(ProcurementPlanReplenish::getMarketingManagerName, null)
510 528 .eq(ProcurementPlanReplenish::getId, id);
511 529 this.getBaseMapper().update(updateWrapper);
512 530 }
... ... @@ -571,6 +589,9 @@ public class ProcurementPlanReplenishServiceImpl
571 589 LambdaUpdateWrapper<ProcurementPlanReplenish> updateWrapper =
572 590 Wrappers.lambdaUpdate(ProcurementPlanReplenish.class)
573 591 .set(ProcurementPlanReplenish::getProcessNode, processNode)
  592 + .set("plan_change_qyjl".equals(nodeCode), ProcurementPlanReplenish::getPurchaseDeptName, SecurityUtil.getCurrentUser().getName())
  593 + .set("plan_change_gyglkzg".equals(nodeCode), ProcurementPlanReplenish::getManagementDeptName, SecurityUtil.getCurrentUser().getName())
  594 + .set("plan_change_gybzg".equals(nodeCode), ProcurementPlanReplenish::getSupplyManagerName, SecurityUtil.getCurrentUser().getName())
574 595 .eq(ProcurementPlanReplenish::getId, bizId);
575 596 this.getBaseMapper().update(updateWrapper);
576 597 }
... ...
... ... @@ -334,6 +334,36 @@ public class CreateProcurementPlanVo implements BaseVo, Serializable {
334 334 private String salesmanQuotationId;
335 335
336 336 /**
  337 + * 总经理
  338 + */
  339 + @ApiModelProperty("总经理")
  340 + private String generalManagerName;
  341 +
  342 + /**
  343 + * 营销中心主管
  344 + */
  345 + @ApiModelProperty("营销中心主管")
  346 + private String marketingManagerName;
  347 +
  348 + /**
  349 + * 供应部主管
  350 + */
  351 + @ApiModelProperty("供应部主管")
  352 + private String supplyManagerName;
  353 +
  354 + /**
  355 + * 供应管理科主管
  356 + */
  357 + @ApiModelProperty("供应管理科主管")
  358 + private String managementDeptName;
  359 +
  360 + /**
  361 + * 采购处主管
  362 + */
  363 + @ApiModelProperty("采购处主管")
  364 + private String purchaseDeptName;
  365 +
  366 + /**
337 367 * 明细信息
338 368 */
339 369 @ApiModelProperty(value = "明细信息", required = true)
... ...
... ... @@ -56,6 +56,11 @@
56 56 <result column="process_status" property="processStatus"/>
57 57 <result column="process_node" property="processNode"/>
58 58 <result column="workshop_id" property="workshopId"/>
  59 + <result column="general_manager_name" property="generalManagerName"/>
  60 + <result column="marketing_manager_name" property="marketingManagerName"/>
  61 + <result column="supply_manager_name" property="supplyManagerName"/>
  62 + <result column="management_dept_name" property="managementDeptName"/>
  63 + <result column="purchase_dept_name" property="purchaseDeptName"/>
59 64 <result column="create_by_id" property="createById"/>
60 65 <result column="create_by" property="createBy"/>
61 66 <result column="update_by_id" property="updateById"/>
... ... @@ -119,6 +124,11 @@
119 124 ppc.process_status,
120 125 ppc.process_node,
121 126 ppc.workshop_id,
  127 + ppc.general_manager_name,
  128 + ppc.marketing_manager_name,
  129 + ppc.supply_manager_name,
  130 + ppc.management_dept_name,
  131 + ppc.purchase_dept_name,
122 132 ppc.create_by_id,
123 133 ppc.create_by,
124 134 ppc.update_by_id,
... ...
... ... @@ -64,6 +64,11 @@
64 64 <result column="attachment_file_ids" property="attachmentFileIds"/>
65 65 <result column="attachment_file_names" property="attachmentFileNames"/>
66 66 <result column="deleted" property="deleted"/>
  67 + <result column="general_manager_name" property="generalManagerName"/>
  68 + <result column="marketing_manager_name" property="marketingManagerName"/>
  69 + <result column="supply_manager_name" property="supplyManagerName"/>
  70 + <result column="management_dept_name" property="managementDeptName"/>
  71 + <result column="purchase_dept_name" property="purchaseDeptName"/>
67 72 <result column="create_by_id" property="createById"/>
68 73 <result column="create_by" property="createBy"/>
69 74 <result column="update_by_id" property="updateById"/>
... ... @@ -135,6 +140,11 @@
135 140 pp.attachment_file_ids,
136 141 pp.attachment_file_names,
137 142 pp.deleted,
  143 + pp.general_manager_name,
  144 + pp.marketing_manager_name,
  145 + pp.supply_manager_name,
  146 + pp.management_dept_name,
  147 + pp.purchase_dept_name,
138 148 pp.create_by_id,
139 149 pp.create_by,
140 150 pp.update_by_id,
... ...
... ... @@ -56,6 +56,11 @@
56 56 <result column="process_node" property="processNode"/>
57 57 <result column="workshop_id" property="workshopId"/>
58 58 <result column="workshop_name" property="workshopName"/>
  59 + <result column="general_manager_name" property="generalManagerName"/>
  60 + <result column="marketing_manager_name" property="marketingManagerName"/>
  61 + <result column="supply_manager_name" property="supplyManagerName"/>
  62 + <result column="management_dept_name" property="managementDeptName"/>
  63 + <result column="purchase_dept_name" property="purchaseDeptName"/>
59 64 <result column="create_by_id" property="createById"/>
60 65 <result column="create_by" property="createBy"/>
61 66 <result column="update_by_id" property="updateById"/>
... ... @@ -119,6 +124,11 @@
119 124 ppr.process_node,
120 125 ppr.workshop_id,
121 126 ws.name AS workshop_name,
  127 + ppr.general_manager_name,
  128 + ppr.marketing_manager_name,
  129 + ppr.supply_manager_name,
  130 + ppr.management_dept_name,
  131 + ppr.purchase_dept_name,
122 132 ppr.create_by_id,
123 133 ppr.create_by,
124 134 ppr.update_by_id,
... ...