Commit ed47a6c48d100bff31ea20c7157f97466b3a7ce8

Authored by 房远帅
1 parent b59694ad

1:订货单加一个完成日期(订货单审核通过时间) 2:发货计划表明细表按照办事处排序 3:业务员报价 协调事由 票类状况 变为可编辑

@@ -323,6 +323,9 @@ CREATE TABLE IF NOT EXISTS `purchase_order_info` @@ -323,6 +323,9 @@ CREATE TABLE IF NOT EXISTS `purchase_order_info`
323 KEY `idx_order_date` (`order_date`) 323 KEY `idx_order_date` (`order_date`)
324 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='订货单表'; 324 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='订货单表';
325 325
  326 +ALTER TABLE `purchase_order_info`
  327 + ADD COLUMN `finish_date` datetime DEFAULT NULL COMMENT '完成日期(审核通过时间)';
  328 +
326 -- 订货单表物料行 329 -- 订货单表物料行
327 DROP TABLE IF EXISTS `tbl_purchase_order_line`; 330 DROP TABLE IF EXISTS `tbl_purchase_order_line`;
328 CREATE TABLE IF NOT EXISTS `tbl_purchase_order_line` 331 CREATE TABLE IF NOT EXISTS `tbl_purchase_order_line`
@@ -275,6 +275,13 @@ public class GetPurchaseOrderInfoBo extends BaseBo<PurchaseOrderInfo> { @@ -275,6 +275,13 @@ public class GetPurchaseOrderInfoBo extends BaseBo<PurchaseOrderInfo> {
275 private String specChangeStatus; 275 private String specChangeStatus;
276 276
277 /** 277 /**
  278 + * 完成日期(审核通过时间,精确到时分秒)
  279 + */
  280 + @ApiModelProperty("完成日期")
  281 + @JsonFormat(pattern = StringPool.DATE_TIME_PATTERN)
  282 + private LocalDateTime finishDate;
  283 +
  284 + /**
278 * 订货单类型(生产:PRODUCTION 无需生产:NO_PRODUCTION) 285 * 订货单类型(生产:PRODUCTION 无需生产:NO_PRODUCTION)
279 */ 286 */
280 @ApiModelProperty("订货单类型") 287 @ApiModelProperty("订货单类型")
@@ -256,6 +256,11 @@ public class PurchaseOrderInfo extends BaseEntity implements BaseDto { @@ -256,6 +256,11 @@ public class PurchaseOrderInfo extends BaseEntity implements BaseDto {
256 private String specChangeStatus; 256 private String specChangeStatus;
257 257
258 /** 258 /**
  259 + * 完成日期(审核通过时间,精确到时分秒)
  260 + */
  261 + private LocalDateTime finishDate;
  262 +
  263 + /**
259 * 订货单类型(生产:PRODUCTION 无需生产:NO_PRODUCTION) 264 * 订货单类型(生产:PRODUCTION 无需生产:NO_PRODUCTION)
260 */ 265 */
261 private String type; 266 private String type;
@@ -51,6 +51,7 @@ import org.springframework.stereotype.Service; @@ -51,6 +51,7 @@ import org.springframework.stereotype.Service;
51 import javax.annotation.Resource; 51 import javax.annotation.Resource;
52 import java.math.BigDecimal; 52 import java.math.BigDecimal;
53 import java.math.RoundingMode; 53 import java.math.RoundingMode;
  54 +import java.time.LocalDateTime;
54 import java.util.*; 55 import java.util.*;
55 import java.util.function.Function; 56 import java.util.function.Function;
56 import java.util.stream.Collectors; 57 import java.util.stream.Collectors;
@@ -605,7 +606,8 @@ public class PurchaseOrderInfoServiceImpl extends BaseMpServiceImpl<PurchaseOrde @@ -605,7 +606,8 @@ public class PurchaseOrderInfoServiceImpl extends BaseMpServiceImpl<PurchaseOrde
605 if ("PASS".equals(status)) { 606 if ("PASS".equals(status)) {
606 LambdaUpdateWrapper<PurchaseOrderInfo> updateWrapper = Wrappers.lambdaUpdate(PurchaseOrderInfo.class) 607 LambdaUpdateWrapper<PurchaseOrderInfo> updateWrapper = Wrappers.lambdaUpdate(PurchaseOrderInfo.class)
607 .set(PurchaseOrderInfo::getExamineStatus, status) 608 .set(PurchaseOrderInfo::getExamineStatus, status)
608 - .set(PurchaseOrderInfo::getStatus, "ISSUED")//已下发 609 + .set(PurchaseOrderInfo::getStatus, "ISSUED")
  610 + .set(PurchaseOrderInfo::getFinishDate, LocalDateTime.now())
609 .eq(PurchaseOrderInfo::getId, id); 611 .eq(PurchaseOrderInfo::getId, id);
610 getBaseMapper().update(updateWrapper); 612 getBaseMapper().update(updateWrapper);
611 } else if ("WAIT".equals(status)) { 613 } else if ("WAIT".equals(status)) {
@@ -99,16 +99,6 @@ public class SalesmanQuotationServiceImpl @@ -99,16 +99,6 @@ public class SalesmanQuotationServiceImpl
99 private static final String CODE_PREFIX = "BJ"; 99 private static final String CODE_PREFIX = "BJ";
100 100
101 /** 101 /**
102 - * 默认协调事由  
103 - */  
104 - private static final String DEFAULT_COORDINATION_REASON = "受市场影响,申请协调";  
105 -  
106 - /**  
107 - * 默认票类状况  
108 - */  
109 - private static final String DEFAULT_INVOICE_TYPE_STATUS = "增票";  
110 -  
111 - /**  
112 * 分页查询 102 * 分页查询
113 * 103 *
114 * @param pageIndex 页码 104 * @param pageIndex 页码
@@ -388,8 +378,8 @@ public class SalesmanQuotationServiceImpl @@ -388,8 +378,8 @@ public class SalesmanQuotationServiceImpl
388 data.setDeliveryDate(vo.getDeliveryDate()); 378 data.setDeliveryDate(vo.getDeliveryDate());
389 data.setSettlementMethod(vo.getSettlementMethod()); 379 data.setSettlementMethod(vo.getSettlementMethod());
390 data.setSettlementRatio(vo.getSettlementRatio()); 380 data.setSettlementRatio(vo.getSettlementRatio());
391 - data.setCoordinationReason(DEFAULT_COORDINATION_REASON);  
392 - data.setInvoiceTypeStatus(DEFAULT_INVOICE_TYPE_STATUS); 381 + data.setCoordinationReason(vo.getCoordinationReason());
  382 + data.setInvoiceTypeStatus(vo.getInvoiceTypeStatus());
393 data.setMaterialConditionEnabled(vo.getMaterialConditionEnabled()); 383 data.setMaterialConditionEnabled(vo.getMaterialConditionEnabled());
394 data.setMaterialConditionCopperRice(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionCopperRice())); 384 data.setMaterialConditionCopperRice(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionCopperRice()));
395 data.setMaterialConditionBrightCopper(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionBrightCopper())); 385 data.setMaterialConditionBrightCopper(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionBrightCopper()));
@@ -433,8 +423,8 @@ public class SalesmanQuotationServiceImpl @@ -433,8 +423,8 @@ public class SalesmanQuotationServiceImpl
433 data.setDeliveryDate(vo.getDeliveryDate()); 423 data.setDeliveryDate(vo.getDeliveryDate());
434 data.setSettlementMethod(vo.getSettlementMethod()); 424 data.setSettlementMethod(vo.getSettlementMethod());
435 data.setSettlementRatio(vo.getSettlementRatio()); 425 data.setSettlementRatio(vo.getSettlementRatio());
436 - data.setCoordinationReason(DEFAULT_COORDINATION_REASON);  
437 - data.setInvoiceTypeStatus(DEFAULT_INVOICE_TYPE_STATUS); 426 + data.setCoordinationReason(vo.getCoordinationReason());
  427 + data.setInvoiceTypeStatus(vo.getInvoiceTypeStatus());
438 data.setMaterialConditionEnabled(vo.getMaterialConditionEnabled()); 428 data.setMaterialConditionEnabled(vo.getMaterialConditionEnabled());
439 data.setMaterialConditionCopperRice(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionCopperRice())); 429 data.setMaterialConditionCopperRice(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionCopperRice()));
440 data.setMaterialConditionBrightCopper(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionBrightCopper())); 430 data.setMaterialConditionBrightCopper(normalizeMaterialText(vo.getMaterialConditionEnabled(), vo.getMaterialConditionBrightCopper()));
@@ -160,6 +160,20 @@ public class CreateSalesmanQuotationVo implements BaseVo, Serializable { @@ -160,6 +160,20 @@ public class CreateSalesmanQuotationVo implements BaseVo, Serializable {
160 private BigDecimal settlementRatio; 160 private BigDecimal settlementRatio;
161 161
162 /** 162 /**
  163 + * 协调事由
  164 + */
  165 + @ApiModelProperty(value = "协调事由", required = true)
  166 + @NotNull(message = "协调事由不能为空!")
  167 + private String coordinationReason;
  168 +
  169 + /**
  170 + * 票类状况
  171 + */
  172 + @ApiModelProperty(value = "票类状况", required = true)
  173 + @NotNull(message = "票类状况不能为空!")
  174 + private String invoiceTypeStatus;
  175 +
  176 + /**
163 * 是否启用料质状况 177 * 是否启用料质状况
164 */ 178 */
165 @ApiModelProperty(value = "是否启用料质状况", required = true) 179 @ApiModelProperty(value = "是否启用料质状况", required = true)
@@ -159,6 +159,20 @@ public class UpdateSalesmanQuotationVo implements BaseVo, Serializable { @@ -159,6 +159,20 @@ public class UpdateSalesmanQuotationVo implements BaseVo, Serializable {
159 private BigDecimal settlementRatio; 159 private BigDecimal settlementRatio;
160 160
161 /** 161 /**
  162 + * 协调事由
  163 + */
  164 + @ApiModelProperty(value = "协调事由", required = true)
  165 + @NotNull(message = "协调事由不能为空!")
  166 + private String coordinationReason;
  167 +
  168 + /**
  169 + * 票类状况
  170 + */
  171 + @ApiModelProperty(value = "票类状况", required = true)
  172 + @NotNull(message = "票类状况不能为空!")
  173 + private String invoiceTypeStatus;
  174 +
  175 + /**
162 * 是否启用料质状况 176 * 是否启用料质状况
163 */ 177 */
164 @ApiModelProperty(value = "是否启用料质状况", required = true) 178 @ApiModelProperty(value = "是否启用料质状况", required = true)
@@ -181,4 +181,16 @@ public class QueryPurchaseOrderInfoVo extends PageVo implements BaseVo, Serializ @@ -181,4 +181,16 @@ public class QueryPurchaseOrderInfoVo extends PageVo implements BaseVo, Serializ
181 */ 181 */
182 @ApiModelProperty("合同类型") 182 @ApiModelProperty("合同类型")
183 private String contractType; 183 private String contractType;
  184 +
  185 + /**
  186 + * 完成开始日期(审核通过时间)
  187 + */
  188 + @ApiModelProperty("完成开始日期")
  189 + private String finishDateStart;
  190 +
  191 + /**
  192 + * 完成结束日期(审核通过时间)
  193 + */
  194 + @ApiModelProperty("完成结束日期")
  195 + private String finishDateEnd;
184 } 196 }
@@ -30,6 +30,7 @@ @@ -30,6 +30,7 @@
30 <result column="examine_status" property="examineStatus"/> 30 <result column="examine_status" property="examineStatus"/>
31 <result column="revoke_status" property="revokeStatus"/> 31 <result column="revoke_status" property="revokeStatus"/>
32 <result column="spec_change_status" property="specChangeStatus"/> 32 <result column="spec_change_status" property="specChangeStatus"/>
  33 + <result column="finish_date" property="finishDate"/>
33 <result column="production_process" property="productionProcess"/> 34 <result column="production_process" property="productionProcess"/>
34 <result column="dept_id" property="deptId"/> 35 <result column="dept_id" property="deptId"/>
35 <result column="dept_name" property="deptName"/> 36 <result column="dept_name" property="deptName"/>
@@ -90,6 +91,7 @@ @@ -90,6 +91,7 @@
90 tb.examine_status, 91 tb.examine_status,
91 tb.revoke_status, 92 tb.revoke_status,
92 tb.spec_change_status, 93 tb.spec_change_status,
  94 + tb.finish_date,
93 tb.production_process, 95 tb.production_process,
94 tb.dept_id, 96 tb.dept_id,
95 sd.name AS dept_name, 97 sd.name AS dept_name,
@@ -217,6 +219,14 @@ @@ -217,6 +219,14 @@
217 <if test="vo.contractType != null and vo.contractType != ''"> 219 <if test="vo.contractType != null and vo.contractType != ''">
218 AND cds.type = #{vo.contractType} 220 AND cds.type = #{vo.contractType}
219 </if> 221 </if>
  222 + <if test="vo.finishDateStart != null">
  223 + AND tb.finish_date >= #{vo.finishDateStart}
  224 + </if>
  225 + <if test="vo.finishDateEnd != null">
  226 + <![CDATA[
  227 + AND tb.finish_date < DATE_ADD(#{vo.finishDateEnd}, INTERVAL 1 DAY)
  228 + ]]>
  229 + </if>
220 </where> 230 </where>
221 ORDER BY tb.create_time DESC 231 ORDER BY tb.create_time DESC
222 </select> 232 </select>
@@ -284,6 +294,14 @@ @@ -284,6 +294,14 @@
284 AND 1 = 0 <!-- 确保查询不到任何数据 --> 294 AND 1 = 0 <!-- 确保查询不到任何数据 -->
285 </otherwise> 295 </otherwise>
286 </choose> 296 </choose>
  297 + <if test="vo.finishDateStart != null">
  298 + AND tb.finish_date >= #{vo.finishDateStart}
  299 + </if>
  300 + <if test="vo.finishDateEnd != null">
  301 + <![CDATA[
  302 + AND tb.finish_date < DATE_ADD(#{vo.finishDateEnd}, INTERVAL 1 DAY)
  303 + ]]>
  304 + </if>
287 </where> 305 </where>
288 ORDER BY tb.update_time DESC 306 ORDER BY tb.update_time DESC
289 </select> 307 </select>
@@ -85,6 +85,7 @@ @@ -85,6 +85,7 @@
85 LEFT JOIN tbl_purchase_order_line ol ON tb.order_spec_id = ol.id 85 LEFT JOIN tbl_purchase_order_line ol ON tb.order_spec_id = ol.id
86 LEFT JOIN tbl_contract_distributor_standard s on s.id = o.contract_id 86 LEFT JOIN tbl_contract_distributor_standard s on s.id = o.contract_id
87 LEFT JOIN base_data_workshop ws on ws.id = o.workshop_id 87 LEFT JOIN base_data_workshop ws on ws.id = o.workshop_id
  88 + LEFT JOIN sys_dept d on d.id = o.dept_id
88 </sql> 89 </sql>
89 90
90 <select id="query" resultMap="ShipmentsPlanDetail"> 91 <select id="query" resultMap="ShipmentsPlanDetail">
@@ -126,7 +127,20 @@ @@ -126,7 +127,20 @@
126 </choose> 127 </choose>
127 </if> 128 </if>
128 </where> 129 </where>
129 - ORDER BY tb.create_time desc 130 + ORDER BY
  131 + CASE
  132 + WHEN d.code = 'NB' THEN 1
  133 + WHEN d.code = 'WZ' THEN 2
  134 + WHEN d.code = 'DG' THEN 3
  135 + WHEN d.code = 'FS' THEN 4
  136 + WHEN d.code = 'SZ' THEN 5
  137 + WHEN d.code = 'CZ' THEN 6
  138 + WHEN d.code = 'BF' THEN 7
  139 + WHEN d.code = 'ZT' THEN 8
  140 + WHEN d.code = 'WM' THEN 9
  141 + ELSE 10
  142 + END ASC,
  143 + tb.create_time desc
130 </select> 144 </select>
131 145
132 <insert id="batchAdd"> 146 <insert id="batchAdd">