外协结算

liweidong
maxiangong 3 weeks ago
parent b0be5cbf10
commit c766d48ed0
  1. 4
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/oem/pojo/request/PriceSheetQuery.java
  2. 4
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataOemClient.java
  3. 2
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataOemClientFallback.java
  4. 6
      blade-service/blade-desk/src/main/java/org/springblade/desk/oem/controller/OemOrderController.java
  5. 17
      blade-service/blade-desk/src/main/java/org/springblade/desk/oem/service/impl/OemStatementServiceImpl.java
  6. 3
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/feign/ErpDataOemClientImpl.java
  7. 4
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpDataOemMapper.xml

@ -2,6 +2,7 @@ package org.springblade.desk.oem.pojo.request;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import org.springblade.core.mp.support.Query;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDate; import java.time.LocalDate;
@ -69,4 +70,7 @@ public class PriceSheetQuery {
@Schema(description = "价格类型") @Schema(description = "价格类型")
private String pricetype; private String pricetype;
@Schema(description = "查询条件")
private Query query;
} }

@ -44,10 +44,10 @@ public interface IErpDataOemClient {
/** /**
* 报价单查询 * 报价单查询
* *
* @param query * @param priceSheetQuery
*/ */
@GetMapping(PRICE_SHEET_DATA) @GetMapping(PRICE_SHEET_DATA)
R<Page<PriceSheetVO>> priceSheetData(@SpringQueryMap PriceSheetQuery priceSheetQuery, @SpringQueryMap Query query); R<Page<PriceSheetVO>> priceSheetData(@SpringQueryMap PriceSheetQuery priceSheetQuery);
/** /**
* 协作外协订单接收 * 协作外协订单接收

@ -22,7 +22,7 @@ public class IErpDataOemClientFallback implements IErpDataOemClient {
} }
@Override @Override
public R<Page<PriceSheetVO>> priceSheetData(PriceSheetQuery priceSheetQuery, Query query) { public R<Page<PriceSheetVO>> priceSheetData(PriceSheetQuery priceSheetQuery) {
return R.fail("查询报价单 失败"); return R.fail("查询报价单 失败");
} }

@ -184,7 +184,8 @@ public class OemOrderController extends BladeController {
@ApiOperationSupport(order = 9) @ApiOperationSupport(order = 9)
@Operation(summary = "报价单分页", description = "传入mesOemStatement") @Operation(summary = "报价单分页", description = "传入mesOemStatement")
public R<IPage<PriceSheetVO>> priceSheetData(PriceSheetQuery priceSheetQuery, Query query) { public R<IPage<PriceSheetVO>> priceSheetData(PriceSheetQuery priceSheetQuery, Query query) {
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(priceSheetQuery, query); priceSheetQuery.setQuery(query);
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(priceSheetQuery);
Page<PriceSheetVO> data = pageR.getData(); Page<PriceSheetVO> data = pageR.getData();
Page<PriceSheetVO> pages = new Page<>(); Page<PriceSheetVO> pages = new Page<>();
// 复制分页属性 // 复制分页属性
@ -250,7 +251,8 @@ public class OemOrderController extends BladeController {
@Operation(summary = "报价单导出数据", description = "") @Operation(summary = "报价单导出数据", description = "")
public void exportPriceSheetData(PriceSheetQuery priceSheetQuery, Query query, HttpServletResponse response) { public void exportPriceSheetData(PriceSheetQuery priceSheetQuery, Query query, HttpServletResponse response) {
query.setSize(99999); query.setSize(99999);
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(priceSheetQuery, query); priceSheetQuery.setQuery(query);
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(priceSheetQuery);
Page<PriceSheetVO> data = pageR.getData(); Page<PriceSheetVO> data = pageR.getData();
List<PriceSheetVO> list = data.getRecords(); List<PriceSheetVO> list = data.getRecords();
List<PriceSheetExcel> excels = new ArrayList<>(); List<PriceSheetExcel> excels = new ArrayList<>();

@ -654,10 +654,10 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
query.setOcName(oemName); query.setOcName(oemName);
query.setInDateStart(putStoreDate); query.setInDateStart(putStoreDate);
query.setInDateEnd(putStoreDate); query.setInDateEnd(putStoreDate);
query.setQuery(new Query() {{
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query, new Query() {{
setSize(99999); setSize(99999);
}}); }});
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query);
if (pageR != null && pageR.getData() != null) { if (pageR != null && pageR.getData() != null) {
return pageR.getData().getRecords(); return pageR.getData().getRecords();
@ -675,9 +675,10 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
private List<PriceSheetVO> getPriceSheets(String oemName) { private List<PriceSheetVO> getPriceSheets(String oemName) {
PriceSheetQuery query = new PriceSheetQuery(); PriceSheetQuery query = new PriceSheetQuery();
query.setOcName(oemName); query.setOcName(oemName);
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query, new Query() {{ query.setQuery(new Query() {{
setSize(99999); setSize(99999);
}}); }});
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query);
if (pageR != null && pageR.getData() != null) { if (pageR != null && pageR.getData() != null) {
return pageR.getData().getRecords(); return pageR.getData().getRecords();
@ -1508,7 +1509,7 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
}); });
} else { } else {
//工序分组Map<工序, 报价列表> //工序分组Map<工序, 报价列表>
Map<String, List<PriceSheetVO>> priceSheetMap = priceSheetAllList.stream().collect(Collectors.groupingBy(PriceSheetVO::getGxinfo, () -> new TreeMap<>(Collections.reverseOrder()), // 按键的倒序排序 Map<String, List<PriceSheetVO>> priceSheetMap = priceSheetAllList.stream().filter(item -> item.getGxinfo() != null).collect(Collectors.groupingBy(PriceSheetVO::getGxinfo, () -> new TreeMap<>(Collections.reverseOrder()), // 按键的倒序排序
Collectors.collectingAndThen(Collectors.toList(), list -> { Collectors.collectingAndThen(Collectors.toList(), list -> {
// 对每个分组内的列表按生效日期倒序排序 // 对每个分组内的列表按生效日期倒序排序
return list.stream().sorted(Comparator.comparing(PriceSheetVO::getStartdat).reversed()).collect(Collectors.toList()); return list.stream().sorted(Comparator.comparing(PriceSheetVO::getStartdat).reversed()).collect(Collectors.toList());
@ -1573,9 +1574,10 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
if (minPutStoreTime != null) { if (minPutStoreTime != null) {
query.setInDateEnd(minPutStoreTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()); query.setInDateEnd(minPutStoreTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate());
} }
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query, new Query() {{ query.setQuery(new Query() {{
setSize(99999); setSize(99999);
}}); }});
R<Page<PriceSheetVO>> pageR = erpDataOemClient.priceSheetData(query);
if (pageR != null && pageR.getData() != null) { if (pageR != null && pageR.getData() != null) {
return pageR.getData().getRecords(); return pageR.getData().getRecords();
@ -1715,11 +1717,12 @@ public class OemStatementServiceImpl extends BaseServiceImpl<OemStatementMapper,
if (startTime == null || validTime == null || putStoreTime == null) { if (startTime == null || validTime == null || putStoreTime == null) {
return false; return false;
} }
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd"); DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
DateTimeFormatter fmt1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
try { try {
LocalDate startDate = LocalDate.parse(startTime, fmt); LocalDate startDate = LocalDate.parse(startTime, fmt);
LocalDate validDate = LocalDate.parse(validTime, fmt); LocalDate validDate = LocalDate.parse(validTime, fmt);
LocalDate putStoreDate = LocalDate.parse(putStoreTime, fmt); LocalDate putStoreDate = LocalDate.parse(putStoreTime, fmt1);
if (preFlag) { if (preFlag) {
return !putStoreDate.isBefore(startDate); return !putStoreDate.isBefore(startDate);
} else { } else {

@ -43,7 +43,8 @@ public class ErpDataOemClientImpl implements IErpDataOemClient {
@Override @Override
@GetMapping(PRICE_SHEET_DATA) @GetMapping(PRICE_SHEET_DATA)
public R<Page<PriceSheetVO>> priceSheetData(@SpringQueryMap PriceSheetQuery priceSheetQuery, @SpringQueryMap Query query) { public R<Page<PriceSheetVO>> priceSheetData(@SpringQueryMap PriceSheetQuery priceSheetQuery) {
Query query = priceSheetQuery.getQuery();
IPage<PriceSheetVO> iPages = erpDataOemService.priceSheetData(Condition.getPage(query), priceSheetQuery); IPage<PriceSheetVO> iPages = erpDataOemService.priceSheetData(Condition.getPage(query), priceSheetQuery);
Page<PriceSheetVO> pages = new Page<>(); Page<PriceSheetVO> pages = new Page<>();

@ -31,10 +31,10 @@
AND a.remark LIKE concat(concat('%', #{query.memo}),'%') AND a.remark LIKE concat(concat('%', #{query.memo}),'%')
</if> </if>
<if test="query.inDateStart != null and query.inDateStart != ''"> <if test="query.inDateStart != null and query.inDateStart != ''">
AND to_date(${query.inDateStart},'YYYY-MM-DD'), <![CDATA[ >= ]]> a.startdat AND #{query.inDateStart} <![CDATA[ >= ]]> a.startdat
</if> </if>
<if test="query.inDateEnd != null and query.inDateEnd != ''"> <if test="query.inDateEnd != null and query.inDateEnd != ''">
AND to_date(${query.inDateEnd},'YYYY-MM-DD'), <![CDATA[ <= ]]> a.validdat AND #{query.inDateEnd} <![CDATA[ <= ]]> a.validdat
</if> </if>
<if test="query.validflags != null and query.validflags != ''"> <if test="query.validflags != null and query.validflags != ''">
AND a.validflag IN AND a.validflag IN

Loading…
Cancel
Save