Commit 946c90ae0c1843cabb121e80727d41b185610b1a

Authored by 房远帅
1 parent 20421a6c

1:合同锁规修改;2:报表导出优化

@@ -97,8 +97,8 @@ public class OrderDetailReportController extends DefaultBaseController { @@ -97,8 +97,8 @@ public class OrderDetailReportController extends DefaultBaseController {
97 */ 97 */
98 @ApiOperation("订单明细导出") 98 @ApiOperation("订单明细导出")
99 @HasPermission({"statistical-report:order-detail:export"}) 99 @HasPermission({"statistical-report:order-detail:export"})
100 - @GetMapping("/export")  
101 - public InvokeResult<Void> export(@Valid QueryOrderDetailReportVo vo) { 100 + @PostMapping("/export")
  101 + public InvokeResult<Void> export(@Valid @RequestBody QueryOrderDetailReportVo vo) {
102 vo.setExportType(ExportType.ORDER_DETAIL_REPORT.getCode()); 102 vo.setExportType(ExportType.ORDER_DETAIL_REPORT.getCode());
103 ExportTaskUtil.exportTask("订单明细报表", OrderDetailReportExportTaskWorker.class, vo); 103 ExportTaskUtil.exportTask("订单明细报表", OrderDetailReportExportTaskWorker.class, vo);
104 return InvokeResultBuilder.success(); 104 return InvokeResultBuilder.success();
@@ -85,8 +85,8 @@ public class ShipmentDetailStatisticsController extends DefaultBaseController { @@ -85,8 +85,8 @@ public class ShipmentDetailStatisticsController extends DefaultBaseController {
85 */ 85 */
86 @ApiOperation("发货明细导出") 86 @ApiOperation("发货明细导出")
87 @HasPermission({"statistical-report:delivery-detail:export"}) 87 @HasPermission({"statistical-report:delivery-detail:export"})
88 - @GetMapping("/export")  
89 - public InvokeResult<Void> export(@Valid QueryShipmentDetailStatisticsVo vo) { 88 + @PostMapping("/export")
  89 + public InvokeResult<Void> export(@Valid @RequestBody QueryShipmentDetailStatisticsVo vo) {
90 vo.setExportType(ExportType.SHIPMENT_DETAIL_REPORT.getCode()); 90 vo.setExportType(ExportType.SHIPMENT_DETAIL_REPORT.getCode());
91 ExportTaskUtil.exportTask("发货明细报表", ShipmentDetailReportExportTaskWorker.class, vo); 91 ExportTaskUtil.exportTask("发货明细报表", ShipmentDetailReportExportTaskWorker.class, vo);
92 return InvokeResultBuilder.success(); 92 return InvokeResultBuilder.success();
@@ -1143,25 +1143,35 @@ public class ContractDistributorStandardServiceImpl extends @@ -1143,25 +1143,35 @@ public class ContractDistributorStandardServiceImpl extends
1143 // data.setStandardizedAt(LocalDateTime.now()); 1143 // data.setStandardizedAt(LocalDateTime.now());
1144 getBaseMapper().insert(data); 1144 getBaseMapper().insert(data);
1145 1145
1146 - Wrapper<ContractDistributorLine> lineWrapper = Wrappers.lambdaQuery(ContractDistributorLine.class)  
1147 - .eq(ContractDistributorLine::getContractId, vo.getId())  
1148 - .orderByAsc(ContractDistributorLine::getShowOrder);  
1149 - List<ContractDistributorLine> oldContractDistributorLineList = contractDistributorLineService.list(lineWrapper);  
1150 - Map<String, ContractDistributorLine> contractDistributorLineMap = CollectionUtils.emptyIfNull(oldContractDistributorLineList)  
1151 - .stream().collect(Collectors.toMap(ContractDistributorLine::getId, Function.identity()));  
1152 -  
1153 for (UpdateContractDistributorLineVo lineVo : lineVoList) { 1146 for (UpdateContractDistributorLineVo lineVo : lineVoList) {
1154 - ContractDistributorLine contractDistributorLine = contractDistributorLineMap.remove(lineVo.getId());  
1155 - if (contractDistributorLine == null) {  
1156 - throw new DefaultClientException("合同行数据不存在!");  
1157 - } 1147 + ContractDistributorLine contractDistributorLine = new ContractDistributorLine();
1158 1148
1159 contractDistributorLine.setId(IdUtil.getUUID()); 1149 contractDistributorLine.setId(IdUtil.getUUID());
1160 contractDistributorLine.setContractId(data.getId()); 1150 contractDistributorLine.setContractId(data.getId());
  1151 + contractDistributorLine.setIndustry(lineVo.getIndustry());
  1152 + contractDistributorLine.setQuality(lineVo.getQuality());
  1153 + contractDistributorLine.setBrand(lineVo.getBrand());
  1154 + contractDistributorLine.setThickness(lineVo.getThickness());
  1155 + contractDistributorLine.setWidth(lineVo.getWidth());
  1156 + contractDistributorLine.setLength(lineVo.getLength());
  1157 + contractDistributorLine.setStatus(lineVo.getStatus());
1161 contractDistributorLine.setQuantity(lineVo.getQuantity()); 1158 contractDistributorLine.setQuantity(lineVo.getQuantity());
  1159 + contractDistributorLine.setProcessingFee(lineVo.getProcessingFee());
1162 contractDistributorLine.setUnitPrice(lineVo.getUnitPrice()); 1160 contractDistributorLine.setUnitPrice(lineVo.getUnitPrice());
1163 contractDistributorLine.setAmountExcludingTax(lineVo.getAmountExcludingTax()); 1161 contractDistributorLine.setAmountExcludingTax(lineVo.getAmountExcludingTax());
1164 contractDistributorLine.setTotalAmount(lineVo.getTotalAmount()); 1162 contractDistributorLine.setTotalAmount(lineVo.getTotalAmount());
  1163 + contractDistributorLine.setDeliveryDate(lineVo.getDeliveryDate());
  1164 + contractDistributorLine.setShowOrder(lineVo.getShowOrder());
  1165 + contractDistributorLine.setItemId(lineVo.getItemId());
  1166 + contractDistributorLine.setSampleOrder(lineVo.getSampleOrder());
  1167 + contractDistributorLine.setProductId(lineVo.getProductId());
  1168 + contractDistributorLine.setThicknessTolPos(lineVo.getThicknessTolPos());
  1169 + contractDistributorLine.setThicknessTolNeg(lineVo.getThicknessTolNeg());
  1170 + contractDistributorLine.setWidthTolPos(lineVo.getWidthTolPos());
  1171 + contractDistributorLine.setWidthTolNeg(lineVo.getWidthTolNeg());
  1172 + contractDistributorLine.setLengthTolPos(lineVo.getLengthTolPos());
  1173 + contractDistributorLine.setLengthTolNeg(lineVo.getLengthTolNeg());
  1174 + contractDistributorLine.setMaterialCode(lineVo.getMaterialCode());
1165 contractDistributorLineService.getBaseMapper().insert(contractDistributorLine); 1175 contractDistributorLineService.getBaseMapper().insert(contractDistributorLine);
1166 } 1176 }
1167 1177
@@ -5,12 +5,20 @@ import com.lframework.starter.web.core.vo.PageVo; @@ -5,12 +5,20 @@ import com.lframework.starter.web.core.vo.PageVo;
5 import com.lframework.starter.web.core.vo.BaseVo; 5 import com.lframework.starter.web.core.vo.BaseVo;
6 import io.swagger.annotations.ApiModelProperty; 6 import io.swagger.annotations.ApiModelProperty;
7 import java.io.Serializable; 7 import java.io.Serializable;
  8 +import java.util.List;
8 9
9 @Data 10 @Data
10 public class QueryOrderDetailReportVo extends PageVo implements BaseVo, Serializable { 11 public class QueryOrderDetailReportVo extends PageVo implements BaseVo, Serializable {
11 12
12 private static final long serialVersionUID = 1L; 13 private static final long serialVersionUID = 1L;
13 14
  15 +
  16 + /**
  17 + * 发货明细ID集合
  18 + */
  19 + @ApiModelProperty("订单明细ID集合")
  20 + private List<String> ids;
  21 +
14 /** 22 /**
15 * 订货单物料行ID 23 * 订货单物料行ID
16 */ 24 */
@@ -199,6 +199,12 @@ @@ -199,6 +199,12 @@
199 FROM order_detail_report tb 199 FROM order_detail_report tb
200 LEFT JOIN base_data_workshop ws ON ws.id = tb.workshop_id 200 LEFT JOIN base_data_workshop ws ON ws.id = tb.workshop_id
201 <where> 201 <where>
  202 + <if test="vo.ids != null and !vo.ids.isEmpty()">
  203 + AND tb.id IN
  204 + <foreach collection="vo.ids" item="id" open="(" separator="," close=")">
  205 + #{id}
  206 + </foreach>
  207 + </if>
202 <if test="vo.purchaseOrderLineId != null and vo.purchaseOrderLineId != ''"> 208 <if test="vo.purchaseOrderLineId != null and vo.purchaseOrderLineId != ''">
203 AND tb.purchase_order_line_id = #{vo.purchaseOrderLineId} 209 AND tb.purchase_order_line_id = #{vo.purchaseOrderLineId}
204 </if> 210 </if>
@@ -101,6 +101,12 @@ @@ -101,6 +101,12 @@
101 <select id="query" resultMap="ShipmentDetailStatistics"> 101 <select id="query" resultMap="ShipmentDetailStatistics">
102 <include refid="ShipmentDetailStatistics_sql"/> 102 <include refid="ShipmentDetailStatistics_sql"/>
103 <where> 103 <where>
  104 + <if test="vo.ids != null and !vo.ids.isEmpty()">
  105 + AND tb.id IN
  106 + <foreach collection="vo.ids" item="id" open="(" separator="," close=")">
  107 + #{id}
  108 + </foreach>
  109 + </if>
104 <if test="vo.workshopName != null and vo.workshopName != ''"> 110 <if test="vo.workshopName != null and vo.workshopName != ''">
105 AND tb.workshop_name LIKE CONCAT('%', #{vo.workshopName}, '%') 111 AND tb.workshop_name LIKE CONCAT('%', #{vo.workshopName}, '%')
106 </if> 112 </if>