diff --git a/pom.xml b/pom.xml
index 2ee2eb4fc..e16c8c240 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,362 +22,366 @@
1.8
-
-
-
-
- com.alibaba
- fastjson
- 2.0.4
-
-
-
-
- org.apache.commons
- commons-lang3
- 3.9
-
-
-
- org.projectlombok
- lombok
- true
-
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.springframework.boot
- spring-boot-starter-tomcat
-
-
-
-
- javax.servlet
- javax.servlet-api
- 3.1.0
- provided
-
-
-
- org.springframework.boot
- spring-boot-configuration-processor
- true
-
-
-
- org.springframework.boot
- spring-boot-starter-aop
-
-
-
-
- org.springframework.boot
- spring-boot-starter-data-redis
-
-
-
-
- org.springframework.boot
- spring-boot-devtools
- true
-
-
-
-
-
- org.springframework.boot
- spring-boot-starter-jdbc
-
-
- mysql
- mysql-connector-java
- 8.0.21
- runtime
-
-
-
- com.oracle
- ojdbc14
- 10.2.0.4.0
- pom
-
-
-
-
- com.baomidou
- mybatis-plus-boot-starter
- 3.5.2
-
-
-
-
- com.github.pagehelper
- pagehelper-spring-boot-starter
- 1.4.2
-
-
-
- org.mybatis
- mybatis
-
-
- org.mybatis
- mybatis-spring
-
-
-
-
-
-
- p6spy
- p6spy
- 3.9.1
-
-
-
-
- org.projectlombok
- lombok
- true
-
-
-
-
- io.jsonwebtoken
- jjwt
- 0.9.1
-
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
- org.springframework.boot
- spring-boot-starter-tomcat
- provided
-
-
- javax.xml.bind
- jaxb-api
- 2.3.0
-
-
- com.fasterxml.jackson.core
- jackson-databind
- 2.9.2
-
-
- com.github.pagehelper
- pagehelper-spring-boot-autoconfigure
- 1.4.5
-
-
- org.springframework.boot
- spring-boot-starter-websocket
-
-
-
-
-
- org.apache.poi
- poi
- 4.0.0
-
-
-
- org.apache.poi
- poi-ooxml
- 4.0.0
-
-
-
-
- com.glxp
- tochina
- 1.0
-
-
- com.itextpdf
- itextpdf
- 5.5.13.1
-
-
- com.itextpdf
- itext-asian
- 5.2.0
-
-
-
-
- cn.hutool
- hutool-all
- 5.8.18
-
-
- com.belerweb
- pinyin4j
- 2.5.0
-
-
-
- com.google.zxing
- core
- 3.3.3
-
-
- com.google.zxing
- javase
- 3.3.3
-
-
- org.olap4j
- olap4j
- 1.2.0
-
-
-
-
-
-
-
- net.sf.barcode4j
- barcode4j
- 2.1
-
-
- org.olap4je
- olap4j
-
-
-
-
-
- net.sf.jasperreports
- jasperreports
- 6.5.1
-
-
- com.lowagie
- itext
-
-
-
-
-
- net.sf.jasperreports
- jasperreports-fonts
- 6.0.0
-
-
-
-
- com.belerweb
- pinyin4j
- 2.5.1
-
-
-
- com.itextpdf
- itext-pdfa
- 5.5.0
-
-
- org.codehaus.groovy
- groovy
- 3.0.7
-
-
- cn.lesper
- iTextAsian
- 3.0
-
-
-
- com.alibaba
- easyexcel
- 2.2.10
-
-
-
-
- hu.blackbelt.bundles.swagger-parser
- io.swagger.parser
- 1.0.47_1
-
-
-
- commons-fileupload
- commons-fileupload
- 1.3.1
-
-
-
-
-
-
-
- org.apache.xmlgraphics
- batik-bridge
- 1.11
-
-
-
- org.apache.xmlgraphics
- batik-dom
- 1.11
-
-
-
- org.eclipse.birt.runtime.3_7_1
- com.lowagie.text
- 2.1.7
-
-
- com.squareup.okhttp3
- okhttp
- 3.10.0
-
-
-
-
-
-
- cn.dev33
- sa-token-spring-boot-starter
- 1.30.0
-
-
- org.apache.commons
- commons-text
- 1.1
-
-
-
-
- org.springframework.plugin
- spring-plugin-core
- 2.0.0.RELEASE
-
-
- org.springframework.plugin
- spring-plugin-metadata
- 2.0.0.RELEASE
-
-
- com.github.xiaoymin
- knife4j-spring-boot-starter
- 2.0.9
-
-
+
+
+
+
+ com.alibaba
+ fastjson
+ 2.0.4
+
+
+
+
+ org.apache.commons
+ commons-lang3
+ 3.9
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-tomcat
+
+
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1.0
+ provided
+
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
+
+
+
+ org.springframework.boot
+ spring-boot-starter-aop
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+
+ org.springframework.boot
+ spring-boot-devtools
+ true
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+ mysql
+ mysql-connector-java
+ 8.0.21
+ runtime
+
+
+
+ com.oracle
+ ojdbc14
+ 10.2.0.4.0
+ pom
+
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ 3.5.2
+
+
+
+
+ com.github.pagehelper
+ pagehelper-spring-boot-starter
+ 1.4.2
+
+
+
+ org.mybatis
+ mybatis
+
+
+ org.mybatis
+ mybatis-spring
+
+
+
+
+
+
+ p6spy
+ p6spy
+ 3.9.1
+
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+
+ io.jsonwebtoken
+ jjwt
+ 0.9.1
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+ org.springframework.boot
+ spring-boot-starter-tomcat
+ provided
+
+
+ javax.xml.bind
+ jaxb-api
+ 2.3.0
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.9.2
+
+
+ com.github.pagehelper
+ pagehelper-spring-boot-autoconfigure
+ 1.4.5
+
+
+ org.springframework.boot
+ spring-boot-starter-websocket
+
+
+
+
+
+ org.apache.poi
+ poi
+ 4.0.0
+
+
+
+ org.apache.poi
+ poi-ooxml
+ 4.0.0
+
+
+
+
+ com.glxp
+ tochina
+ 1.0
+
+
+ com.itextpdf
+ itextpdf
+ 5.5.13.1
+
+
+ com.itextpdf
+ itext-asian
+ 5.2.0
+
+
+
+
+ cn.hutool
+ hutool-all
+ 5.8.18
+
+
+ com.belerweb
+ pinyin4j
+ 2.5.0
+
+
+
+ com.google.zxing
+ core
+ 3.3.3
+
+
+ com.google.zxing
+ javase
+ 3.3.3
+
+
+ org.olap4j
+ olap4j
+ 1.2.0
+
+
+
+
+
+
+
+ net.sf.barcode4j
+ barcode4j
+ 2.1
+
+
+ org.olap4je
+ olap4j
+
+
+
+
+
+ net.sf.jasperreports
+ jasperreports
+ 6.5.1
+
+
+ com.lowagie
+ itext
+
+
+
+
+
+ net.sf.jasperreports
+ jasperreports-fonts
+ 6.0.0
+
+
+
+
+ com.belerweb
+ pinyin4j
+ 2.5.1
+
+
+
+ com.itextpdf
+ itext-pdfa
+ 5.5.0
+
+
+ org.codehaus.groovy
+ groovy
+ 3.0.7
+
+
+ cn.lesper
+ iTextAsian
+ 3.0
+
+
+
+ com.alibaba
+ easyexcel
+ 2.2.10
+
+
+
+
+ hu.blackbelt.bundles.swagger-parser
+ io.swagger.parser
+ 1.0.47_1
+
+
+
+ commons-fileupload
+ commons-fileupload
+ 1.3.1
+
+
+
+
+
+ org.apache.xmlgraphics
+ batik-bridge
+ 1.11
+
+
+
+ org.apache.xmlgraphics
+ batik-dom
+ 1.11
+
+
+
+ org.eclipse.birt.runtime.3_7_1
+ com.lowagie.text
+ 2.1.7
+
+
+ com.squareup.okhttp3
+ okhttp
+ 3.10.0
+
+
+
+
+
+
+ cn.dev33
+ sa-token-spring-boot-starter
+ 1.30.0
+
+
+ org.apache.commons
+ commons-text
+ 1.1
+
+
+
+
+ org.springframework.plugin
+ spring-plugin-core
+ 2.0.0.RELEASE
+
+
+ org.springframework.plugin
+ spring-plugin-metadata
+ 2.0.0.RELEASE
+
+
+ com.github.xiaoymin
+ knife4j-spring-boot-starter
+ 2.0.9
+
+
+
+ org.java-websocket
+ Java-WebSocket
+ 1.5.4
+
+
UDI_WMS_MC
diff --git a/src/main/java/com/glxp/api/config/HdSchemaExecutor.java b/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
index ef180f362..11e026126 100644
--- a/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
+++ b/src/main/java/com/glxp/api/config/HdSchemaExecutor.java
@@ -74,8 +74,7 @@ public class HdSchemaExecutor implements ApplicationRunner {
}
public void buildSchemas() {
- schema.add(new SchemaData("v2.1", "schema_v2.1.sql"));
-// schema.add(new SchemaData("v2.2", "schema_v2.2.sql"));
-// schema.add(new SchemaData("v2.3", "schema_v2.3.sql"));
+// schema.add(new SchemaData("v2.1", "schema_v2.1.sql"));
+ schema.add(new SchemaData("v2.2", "schema_v2.2.sql"));
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/com/glxp/api/controller/TestController.java b/src/main/java/com/glxp/api/controller/TestController.java
new file mode 100644
index 000000000..794044c16
--- /dev/null
+++ b/src/main/java/com/glxp/api/controller/TestController.java
@@ -0,0 +1,28 @@
+package com.glxp.api.controller;
+
+import com.glxp.api.common.res.BaseResponse;
+import com.glxp.api.common.util.ResultVOUtils;
+import com.glxp.api.req.sync.BasicExportStatusRequest;
+import com.glxp.api.task.TestStatOrderService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@Slf4j
+@RestController
+public class TestController {
+ @Resource
+ TestStatOrderService statOrderService;
+
+
+ @GetMapping("/test/stat/order")
+ public BaseResponse getStatus(BasicExportStatusRequest basicExportStatusRequest) {
+ long start = System.currentTimeMillis();
+ statOrderService.starGen(start);
+ long end = System.currentTimeMillis();
+ return ResultVOUtils.success("生成成功!" + start + "=====" + end + "\n-------" + (start - end));
+ }
+
+}
diff --git a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java
index b91a85950..7a5d604cb 100644
--- a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java
+++ b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java
@@ -121,11 +121,11 @@ public class BasicCorpController {
BasicCorpEntity basicUnitMaintainEntity = new BasicCorpEntity();
BeanUtils.copyProperties(basicUnitMaintainSaveRequest, basicUnitMaintainEntity);
basicUnitMaintainEntity.setErpId(CustomUtil.getId());
- if(basicUnitMaintainSaveRequest.getCorpType()==1){
+ if (basicUnitMaintainSaveRequest.getCorpType() == 1) {
basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_CUS);
- }else if(basicUnitMaintainSaveRequest.getCorpType()==2){
+ } else if (basicUnitMaintainSaveRequest.getCorpType() == 2) {
basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_SICK);
- }else{
+ } else {
basicUnitMaintainEntity.setOutType(ConstantStatus.CORP_SICK_INN);
}
basicUnitMaintainEntity.setUpdateTime(new Date());
@@ -164,7 +164,11 @@ public class BasicCorpController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
- basicUnitMaintainFilterRequest.setOutType(ConstantStatus.CORP_SICK_SICK);
+ List corpTypeLists = new ArrayList<>();
+ corpTypeLists.add(1);
+ corpTypeLists.add(2);
+ basicUnitMaintainFilterRequest.setCorpTypeLists(corpTypeLists);
+ basicUnitMaintainFilterRequest.setOutType(0);
List basicUnitMaintainEntities;
basicUnitMaintainEntities = basicUnitMaintainService.filterList(basicUnitMaintainFilterRequest);
PageInfo pageInfo;
diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java
index e0d4f4148..4445f7f67 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java
@@ -799,6 +799,7 @@ public class IoCodeTempController extends BaseController {
} else if (bussinessTypeEntity.getSpaceOut() == ConstantStatus.SPACE_OUT_CODE) {
//按指定货位出库
if (StrUtil.isEmpty(codeTempEntity.getWarehouseCode())) {
+
List invProductDetailEntities = invProductDetailService.findByGroupCode(codeTempEntity.getInvCode(), codeTempEntity.getCode(), true);
if (CollUtil.isNotEmpty(invProductDetailEntities) && invProductDetailEntities.size() > 1) {
BaseResponse baseResponse = ResultVOUtils.error(511, "存在多个货位,请指定当前货位!");
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java
index d2d1563f5..5d0f44047 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java
@@ -37,6 +37,7 @@ import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.basic.UdiRlSupResponse;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
+import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderInvoiceResponse;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.*;
@@ -193,6 +194,7 @@ public class IoOrderDetailBizController extends BaseController {
ioOrderDetailBizEntity.setExpireDate(item.getExpireDate());
ioOrderDetailBizEntity.setBatchNo(item.getBatchNo());
ioOrderDetailBizEntity.setSupId(item.getSupId());
+ ioOrderDetailBizEntity.setCertCode(udiRelevanceResponse.getZczbhhzbapzbh());
orderDetailBizService.insert(ioOrderDetailBizEntity);
}
@@ -701,9 +703,9 @@ public class IoOrderDetailBizController extends BaseController {
*/
@GetMapping("/udiwms/inout/bizDetail/filterBizOrderList")
public BaseResponse filterBizOrderList(FilterOrderDetailCodeRequest orderDetailBizRequest) {
- List ioOrderDetailCodeResponses = orderDetailBizService.getfilterOrderList(orderDetailBizRequest);
+ List ioOrderDetailCodeResponses = orderDetailBizService.getInvoicResultDetail(orderDetailBizRequest);
List orderInvoiceEntities = ioOrderInvoiceService.findByBillNo(orderDetailBizRequest.getOrderIdFk());
- for (IoOrderDetailCodeResponse orderDetailCodeEntity : ioOrderDetailCodeResponses) {
+ for (IoOrderDetailResultResponse orderDetailCodeEntity : ioOrderDetailCodeResponses) {
if (orderDetailCodeEntity.getReCount() != 0 && orderDetailCodeEntity.getPrice() != null) {
orderDetailCodeEntity.setAmount(new BigDecimal(orderDetailCodeEntity.getReCount()).multiply(orderDetailCodeEntity.getPrice()));
}
@@ -722,7 +724,7 @@ public class IoOrderDetailBizController extends BaseController {
}
orderDetailCodeEntity.setInvoiceCodes(msg);
}
- PageInfo pageInfo = new PageInfo<>(ioOrderDetailCodeResponses);
+ PageInfo pageInfo = new PageInfo<>(ioOrderDetailCodeResponses);
return ResultVOUtils.page(pageInfo);
}
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java
index 6bdc3790f..997223111 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailResultController.java
@@ -34,6 +34,7 @@ import com.glxp.api.service.system.SystemPDFModuleService;
import com.glxp.api.service.system.SystemPDFTemplateService;
import com.glxp.api.service.thrsys.ThrProductsService;
import com.glxp.api.util.JasperUtils;
+import com.glxp.api.util.MsDateUtil;
import net.sf.jasperreports.engine.JRException;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Value;
@@ -246,18 +247,18 @@ public class IoOrderDetailResultController extends BaseController {
//查询第三方产品产品类别
ThrProductsEntity thrProductsEntity = thrProductsService.filterThrProductsByMainId(ioOrderDetailResultResponse.getBindRlFk() + "");
//查询发票信息
- String dateStr="";
- List encodeList=new ArrayList<>();
- IoOrderInvoiceRequest ioOrderInvoiceRequest=new IoOrderInvoiceRequest();
+ String dateStr = "";
+ List encodeList = new ArrayList<>();
+ IoOrderInvoiceRequest ioOrderInvoiceRequest = new IoOrderInvoiceRequest();
ioOrderInvoiceRequest.setBindRlFk(ioOrderDetailResultResponse.getBindRlFk() + "");
ioOrderInvoiceRequest.setOrderIdFk(ioOrderDetailResultResponse.getOrderIdFk());
ioOrderInvoiceRequest.setBatchNo(ioOrderDetailResultResponse.getBatchNo());
- List ioOrderInvoiceEntityList=ioOrderInvoiceService.selectOrderInvoice(ioOrderInvoiceRequest);
+ List ioOrderInvoiceEntityList = ioOrderInvoiceService.selectOrderInvoice(ioOrderInvoiceRequest);
for (IoOrderInvoiceEntity ioOrderInvoiceEntity : ioOrderInvoiceEntityList) {
encodeList.add(ioOrderInvoiceEntity.getInvoiceEncode());
}
- String encode=String.join(",", encodeList);
- if(CollectionUtils.isNotEmpty(ioOrderInvoiceEntityList)){
+ String encode = String.join(",", encodeList);
+ if (CollectionUtils.isNotEmpty(ioOrderInvoiceEntityList)) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
dateStr = sdf.format(ioOrderInvoiceEntityList.get(0).getCreateTime());
}
@@ -284,7 +285,7 @@ public class IoOrderDetailResultController extends BaseController {
ioOrderDetailResultData.put("billTypeName", ioOrderDetailResultResponse.getBillTypeName() == null ? ' ' : ioOrderDetailResultResponse.getBillTypeName());
ioOrderDetailResultData.put("mainAction", ioOrderDetailResultResponse.getMainAction() == null ? ' ' : ioOrderDetailResultResponse.getMainAction());
ioOrderDetailResultData.put("auditTime", ioOrderDetailResultResponse.getAuditTime() == null ? ' ' : formatter.format(ioOrderDetailResultResponse.getAuditTime()));
- if(thrProductsEntity!=null){
+ if (thrProductsEntity != null) {
ioOrderDetailResultData.put("cplb", thrProductsEntity.getCplb() == null ? ' ' : thrProductsEntity.getCplb());
}
ioOrderDetailResultData.put("invoiceEncode", encode);
@@ -317,7 +318,7 @@ public class IoOrderDetailResultController extends BaseController {
for (CptTraceOrderResponse cptTraceOrderResponse : cptTraceOrderResponses) {
CptTraceResultResponse cptTraceResultResponse = new CptTraceResultResponse();
cptTraceResultResponse.setBillNo(cptTraceOrderResponse.getBillNo());
- cptTraceResultResponse.setBillDate(DateUtil.formatDate(cptTraceOrderResponse.getCreateTime()));
+ cptTraceResultResponse.setBillDate(MsDateUtil.formatDate(cptTraceOrderResponse.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
cptTraceResultResponse.setBillType(cptTraceOrderResponse.getBillType());
if (cptTraceOrderResponse.getMainAction().equals(ConstantType.TYPE_OUT)) {
if (StrUtil.isNotEmpty(cptTraceOrderResponse.getFromInvCode()))
diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderInvoiceController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderInvoiceController.java
index b24eaf5c0..f076f97b6 100644
--- a/src/main/java/com/glxp/api/controller/inout/IoOrderInvoiceController.java
+++ b/src/main/java/com/glxp/api/controller/inout/IoOrderInvoiceController.java
@@ -21,10 +21,7 @@ import com.glxp.api.req.inout.FilterOrderDetailCodeRequest;
import com.glxp.api.req.inout.IoOrderInvoiceRequest;
import com.glxp.api.req.inout.RefreshInoiceRequest;
import com.glxp.api.req.system.DeleteRequest;
-import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
-import com.glxp.api.res.inout.IoOrderInvoiceResponse;
-import com.glxp.api.res.inout.IoOrderResponse;
-import com.glxp.api.res.inout.RefreshInoiceResponse;
+import com.glxp.api.res.inout.*;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.inout.IoOrderDetailBizService;
import com.glxp.api.service.inout.IoOrderDetailCodeService;
@@ -95,8 +92,6 @@ public class IoOrderInvoiceController {
}
-
-
//分组查询发票列表
@AuthRuleAnnotation("")
@GetMapping("/udiwms/inout/order/group/invoice")
@@ -162,8 +157,8 @@ public class IoOrderInvoiceController {
//查询单据详情
FilterOrderDetailCodeRequest orderDetailBizRequest = new FilterOrderDetailCodeRequest();
orderDetailBizRequest.setOrderIdFk(orderFk);
- List ioOrderDetailCodeResponses = orderDetailBizService.getfilterOrderList(orderDetailBizRequest);
- for (IoOrderDetailCodeResponse ioOrderDetailCodeRespons : ioOrderDetailCodeResponses) {
+ List ioOrderDetailCodeResponses = orderDetailBizService.getInvoicResultDetail(orderDetailBizRequest);
+ for (IoOrderDetailResultResponse ioOrderDetailCodeRespons : ioOrderDetailCodeResponses) {
IoOrderInvoiceEntity ioOrderInvoiceEntity = new IoOrderInvoiceEntity();
BeanUtils.copyProperties(ioOrderInvoiceRequest, ioOrderInvoiceEntity);
ioOrderInvoiceEntity.setId(IdUtil.getSnowflakeNextId());
@@ -192,7 +187,7 @@ public class IoOrderInvoiceController {
@Log(title = "发票管理", businessType = BusinessType.UPDATE)
public BaseResponse uploadInvoice(@RequestBody IoOrderInvoiceEntity ioOrderInvoice) {
- List ioOrderInvoiceEntityList=ioOrderInvoiceService.list(new QueryWrapper().eq("invoiceEncode",ioOrderInvoice.getInvoiceEncode()));
+ List ioOrderInvoiceEntityList = ioOrderInvoiceService.list(new QueryWrapper().eq("invoiceEncode", ioOrderInvoice.getInvoiceEncode()));
for (IoOrderInvoiceEntity ioOrderInvoiceEntity : ioOrderInvoiceEntityList) {
ioOrderInvoiceEntity.setInvoiceDate(ioOrderInvoice.getInvoiceDate());
ioOrderInvoiceEntity.setPrice(ioOrderInvoice.getPrice());
@@ -215,7 +210,7 @@ public class IoOrderInvoiceController {
if (StrUtil.isEmpty(deleteRequest.getInvoiceEncode()))
return ResultVOUtils.error(500, "发票编码不能为空");
- boolean b = ioOrderInvoiceService.remove(new QueryWrapper().eq("invoiceEncode", deleteRequest.getInvoiceEncode()).eq("orderIdFk",deleteRequest.getBillNo()));
+ boolean b = ioOrderInvoiceService.remove(new QueryWrapper().eq("invoiceEncode", deleteRequest.getInvoiceEncode()).eq("orderIdFk", deleteRequest.getBillNo()));
if (b)
return ResultVOUtils.success("删除成功!");
else
@@ -230,8 +225,8 @@ public class IoOrderInvoiceController {
return ResultVOUtils.error(500, "发票编码不能为空");
List ioOrderInvoiceEntityList = ioOrderInvoiceService.list(new QueryWrapper().eq("invoiceEncode", deleteRequest.getInvoiceEncode()));
- if (CollectionUtils.isNotEmpty(ioOrderInvoiceEntityList) && ioOrderInvoiceEntityList.size()>0){
- return ResultVOUtils.error(999,"发票编码已存在!");
+ if (CollectionUtils.isNotEmpty(ioOrderInvoiceEntityList) && ioOrderInvoiceEntityList.size() > 0) {
+ return ResultVOUtils.error(999, "发票编码已存在!");
}
return ResultVOUtils.success();
diff --git a/src/main/java/com/glxp/api/controller/inv/DeviceRepairOrderController.java b/src/main/java/com/glxp/api/controller/inv/DeviceRepairOrderController.java
index bc27b431b..6321e960f 100644
--- a/src/main/java/com/glxp/api/controller/inv/DeviceRepairOrderController.java
+++ b/src/main/java/com/glxp/api/controller/inv/DeviceRepairOrderController.java
@@ -101,6 +101,7 @@ public class DeviceRepairOrderController {
/**
* 删除报修单
+ *
* @param deleteRequest
* @return
*/
diff --git a/src/main/java/com/glxp/api/controller/inv/InvPreProductController.java b/src/main/java/com/glxp/api/controller/inv/InvPreProductController.java
index 9ac22485b..d018d4b81 100644
--- a/src/main/java/com/glxp/api/controller/inv/InvPreProductController.java
+++ b/src/main/java/com/glxp/api/controller/inv/InvPreProductController.java
@@ -87,6 +87,35 @@ public class InvPreProductController extends BaseController {
return ResultVOUtils.success(pageResponse);
}
+ /**
+ * 寄售库存查询接口过滤零库存和负库存
+ *
+ * @param filterInvPreProductRequest
+ * @return
+ */
+ @GetMapping("/spms/inv/pre/product/filterStock")
+ public BaseResponse filterListStock(FilterInvPreProductRequest filterInvPreProductRequest) {
+ boolean showSup = false; //前端控制表格显示字段
+ if (StrUtil.isNotBlank(filterInvPreProductRequest.getUdiCode())) {
+ filterInvPreProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvPreProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvPreProductRequest.setInvCodes(invCodes);
+ }
+ }
+ List list = invPreProductService.filterListStock(filterInvPreProductRequest);
+
+ PageInfo pageInfo = new PageInfo<>(list);
+ InvPreProductPageResponse pageResponse = new InvPreProductPageResponse<>();
+ pageResponse.setList(pageInfo.getList());
+ pageResponse.setTotal(pageInfo.getTotal());
+ pageResponse.setShowSup(showSup);
+ return ResultVOUtils.success(pageResponse);
+ }
+
/**
* 查询寄售库存详情
*
diff --git a/src/main/java/com/glxp/api/controller/inv/InvPreinProductController.java b/src/main/java/com/glxp/api/controller/inv/InvPreinProductController.java
index 96d89df4a..8b1e089e4 100644
--- a/src/main/java/com/glxp/api/controller/inv/InvPreinProductController.java
+++ b/src/main/java/com/glxp/api/controller/inv/InvPreinProductController.java
@@ -8,15 +8,14 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.inv.InvPreInProductDetailEntity;
-import com.glxp.api.entity.inv.InvPreProductDetailEntity;
import com.glxp.api.req.inv.FilterInvPreProductDetailRequest;
-import com.glxp.api.req.inv.FilterInvPreinDetailRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
import com.glxp.api.res.PageSimpleResponse;
-import com.glxp.api.res.inv.*;
+import com.glxp.api.res.inv.InvPreProductDetailResponse;
+import com.glxp.api.res.inv.InvPreProductPageResponse;
+import com.glxp.api.res.inv.InvPreinProductResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.WarehouseUserService;
-import com.glxp.api.service.inv.InvPreinDetailService;
import com.glxp.api.service.inv.InvPreinProductDetailService;
import com.glxp.api.service.inv.InvPreinProductService;
import com.glxp.api.util.udi.FilterUdiUtils;
@@ -78,6 +77,36 @@ public class InvPreinProductController extends BaseController {
return ResultVOUtils.success(pageResponse);
}
+ /**
+ * 预验收库存查询接口过滤零库存和负库存
+ *
+ * @param filterInvPreinProductRequest
+ * @return
+ */
+ @GetMapping("/spms/inv/pre/in/product/filterStock")
+ public BaseResponse filterListStock(FilterInvPreinProductRequest filterInvPreinProductRequest) {
+ boolean showSup = false; //前端控制表格显示字段
+ if (StrUtil.isNotBlank(filterInvPreinProductRequest.getUdiCode())) {
+ filterInvPreinProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreinProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvPreinProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvPreinProductRequest.setInvCodes(invCodes);
+ }
+ }
+
+ List list = invPreinProductService.filterListStock(filterInvPreinProductRequest);
+
+ PageInfo pageInfo = new PageInfo<>(list);
+ InvPreProductPageResponse pageResponse = new InvPreProductPageResponse<>();
+ pageResponse.setList(pageInfo.getList());
+ pageResponse.setTotal(pageInfo.getTotal());
+ pageResponse.setShowSup(showSup);
+ return ResultVOUtils.success(pageResponse);
+ }
+
/**
* 查询预验收库存详情
*
diff --git a/src/main/java/com/glxp/api/controller/inv/InvProductController.java b/src/main/java/com/glxp/api/controller/inv/InvProductController.java
index cffcca4b5..a1852a610 100644
--- a/src/main/java/com/glxp/api/controller/inv/InvProductController.java
+++ b/src/main/java/com/glxp/api/controller/inv/InvProductController.java
@@ -119,6 +119,40 @@ public class InvProductController extends BaseController {
return ResultVOUtils.success(pageResponse);
}
+ /**
+ * 库存列表查询接口过滤零库存负库存
+ *
+ * @param filterInvProductRequest
+ * @return
+ */
+ @GetMapping("/spms/inv/product/filterStock")
+ public BaseResponse filterListStock(FilterInvProductRequest filterInvProductRequest) {
+ boolean showSup = false; //前端控制表格显示列字段
+ if (StrUtil.isNotBlank(filterInvProductRequest.getUdiCode())) {
+ filterInvProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvProductRequest.setInvCodes(invCodes);
+ }
+ }
+
+ List list = invProductService.filterListStock(filterInvProductRequest);
+ PageInfo pageInfo = new PageInfo<>(list);
+ InvProductPageResponse pageResponse = new InvProductPageResponse();
+ pageResponse.setList(pageInfo.getList());
+ pageResponse.setTotal(pageInfo.getTotal());
+ pageResponse.setShowSup(showSup);
+ return ResultVOUtils.success(pageResponse);
+ }
+
+
+
+
+
+
/**
* 查询库存详情
*
diff --git a/src/main/java/com/glxp/api/controller/inv/UdiTraceController.java b/src/main/java/com/glxp/api/controller/inv/UdiTraceController.java
index 28ac37129..12521734d 100644
--- a/src/main/java/com/glxp/api/controller/inv/UdiTraceController.java
+++ b/src/main/java/com/glxp/api/controller/inv/UdiTraceController.java
@@ -172,10 +172,7 @@ public class UdiTraceController {
mInvProductDetailEntities.addAll(invProductDetailEntities);
}
}
-
}
-
-
} else {
filterInvProductDetailRequest = new FilterInvProductDetailRequest();
filterInvProductDetailRequest.setRelId(udiRelevanceResponse.getId() + "");
@@ -184,14 +181,9 @@ public class UdiTraceController {
if (CollUtil.isNotEmpty(invProductDetailEntities)) {
mInvProductDetailEntities.addAll(invProductDetailEntities);
}
-
}
}
-
-
}
-
-
} else {
//单级包装
FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest();
diff --git a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java
index 5715c8050..ce8dc4f7d 100644
--- a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java
+++ b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java
@@ -12,6 +12,9 @@ import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.controller.BaseController;
+import com.glxp.api.controller.inv.InvPreProductController;
+import com.glxp.api.controller.inv.InvPreinProductController;
+import com.glxp.api.controller.inv.InvProductController;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.basic.BasicBusTypeChangeEntity;
@@ -26,23 +29,33 @@ import com.glxp.api.req.inout.AddReceiveDetailRequest;
import com.glxp.api.req.inout.FilterReceiveDetailRequest;
import com.glxp.api.req.inout.FilterReceiveRequest;
import com.glxp.api.req.inout.UpdateReceiveDetailRequest;
-import com.glxp.api.req.purchase.*;
+import com.glxp.api.req.inv.FilterInvPreProductRequest;
+import com.glxp.api.req.inv.FilterInvPreinProductRequest;
+import com.glxp.api.req.inv.FilterInvProductRequest;
+import com.glxp.api.req.purchase.purReceiveRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.ReceiveDetailResponse;
import com.glxp.api.res.inout.ReceiveResponse;
+import com.glxp.api.res.inv.InvPreProductResponse;
+import com.glxp.api.res.inv.InvPreinProductResponse;
+import com.glxp.api.res.inv.InvProductResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.InvWarehouseService;
+import com.glxp.api.service.auth.WarehouseUserService;
import com.glxp.api.service.basic.IBasicBusTypeChangeService;
import com.glxp.api.service.basic.UdiProductService;
import com.glxp.api.service.inout.IoOrderDetailBizService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.service.inout.ReceiveService;
import com.glxp.api.service.inout.ReceivedetailService;
+import com.glxp.api.service.inv.InvPreProductService;
+import com.glxp.api.service.inv.InvPreinProductService;
+import com.glxp.api.service.inv.InvProductService;
import com.glxp.api.service.purchase.*;
import com.glxp.api.util.CustomUtil;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
-import org.springframework.beans.BeanUtils;
+import com.glxp.api.util.udi.FilterUdiUtils;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -88,6 +101,13 @@ public class PurOrderReceiveController extends BaseController {
IoOrderDetailBizService ioOrderDetailBizService;
@Resource
IoPurChangeService purChangeService;
+ @Resource
+ InvPreProductController invPreProductController;
+ @Resource
+ InvPreinProductController invPreinProductController;
+ @Resource
+ InvProductController invProductController;
+
@AuthRuleAnnotation("")
@@ -199,12 +219,66 @@ public class PurOrderReceiveController extends BaseController {
return ResultVOUtils.success(orderNo);
}
+ @Resource
+ WarehouseUserService warehouseUserService;
+ @Resource
+ InvPreProductService invPreProductService;
+ @Resource
+ InvPreinProductService invPreinProductService;
+ @Resource
+ InvProductService invProductService;
+
@AuthRuleAnnotation("")
@PostMapping("/udiwms/receive/detail/Update")
public BaseResponse updateReceiveDetail(@RequestBody UpdateReceiveDetailRequest updateReceiveDetailRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
+ //判断库存
+ List list = new ArrayList<>();
+ List listinvprein = new ArrayList<>();
+ List listInv = new ArrayList<>();
+ if(updateReceiveDetailRequest.getAdvanceType() == 3){
+ //寄售
+ FilterInvPreProductRequest request = new FilterInvPreProductRequest();
+ // BeanUtils.copyProperties(updateReceiveDetailRequest,request);
+ request.setNameCode(updateReceiveDetailRequest.getNameCode());
+ request.setInvCode(updateReceiveDetailRequest.getTargetInvCode());
+ list = selectFilterInvPreProductRequest(request);
+
+ }else if(updateReceiveDetailRequest.getAdvanceType() == 2){
+ //预验收
+ FilterInvPreinProductRequest request = new FilterInvPreinProductRequest();
+ // BeanUtils.copyProperties(updateReceiveDetailRequest,request);
+ request.setNameCode(updateReceiveDetailRequest.getNameCode());
+ request.setInvCode(updateReceiveDetailRequest.getTargetInvCode());
+ listinvprein = selectfilterListStock(request);
+
+ }else{
+ FilterInvProductRequest request = new FilterInvProductRequest();
+ // BeanUtils.copyProperties(updateReceiveDetailRequest,request);
+ request.setNameCode(updateReceiveDetailRequest.getNameCode());
+ request.setInvCode(updateReceiveDetailRequest.getTargetInvCode());
+ listInv = selectFilterInvProductRequest(request);
+
+ }
+ if(list != null && list.size()>0 ){
+ if( list.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){
+ return ResultVOUtils.error(999, "库存不足!");
+ }
+ }
+ if(listinvprein != null && listinvprein.size()>0 ){
+ if(listinvprein.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){
+ return ResultVOUtils.error(999, "库存不足!");
+ }
+ }
+ if(listInv != null && listInv.size()>0 ){
+ if(listInv.get(0).getReCount() < updateReceiveDetailRequest.getCount() ){
+ return ResultVOUtils.error(999, "库存不足!");
+ }
+ }
+
+
boolean falg = receivedetailService.updateReceiveDetail(updateReceiveDetailRequest);
if (falg) {
return ResultVOUtils.success();
@@ -213,6 +287,59 @@ public class PurOrderReceiveController extends BaseController {
}
}
+ public List selectFilterInvPreProductRequest(FilterInvPreProductRequest filterInvPreProductRequest){
+ if (StrUtil.isNotBlank(filterInvPreProductRequest.getUdiCode())) {
+ filterInvPreProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvPreProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvPreProductRequest.setInvCodes(invCodes);
+ }
+ }
+ List list = invPreProductService.filterListStock(filterInvPreProductRequest);
+ return list;
+ }
+
+ public List selectfilterListStock(FilterInvPreinProductRequest filterInvPreinProductRequest){
+ boolean showSup = false; //前端控制表格显示字段
+ if (StrUtil.isNotBlank(filterInvPreinProductRequest.getUdiCode())) {
+ filterInvPreinProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvPreinProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvPreinProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvPreinProductRequest.setInvCodes(invCodes);
+ }
+ }
+
+ List list = invPreinProductService.filterListStock(filterInvPreinProductRequest);
+
+ return list;
+ }
+
+ public List selectFilterInvProductRequest(FilterInvProductRequest filterInvProductRequest){
+ boolean showSup = false; //前端控制表格显示列字段
+ if (StrUtil.isNotBlank(filterInvProductRequest.getUdiCode())) {
+ filterInvProductRequest.setNameCode(FilterUdiUtils.getDiStr(filterInvProductRequest.getUdiCode()));
+ }
+
+ if (StrUtil.isBlank(filterInvProductRequest.getInvCode())) {
+ List invCodes = warehouseUserService.selectCodeByUser(customerService.getUserIdStr());
+ if (CollUtil.isNotEmpty(invCodes)) {
+ filterInvProductRequest.setInvCodes(invCodes);
+ }
+ }
+
+ List list = invProductService.filterListStock(filterInvProductRequest);
+
+ return list;
+ }
+
+
+
@AuthRuleAnnotation("")
@GetMapping("/udiwms/receive/order/del")
diff --git a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java
index c71010191..4d3c9acf0 100644
--- a/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java
+++ b/src/main/java/com/glxp/api/dao/inout/IoOrderDetailBizDao.java
@@ -2,10 +2,12 @@ package com.glxp.api.dao.inout;
import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
+import com.glxp.api.entity.inout.IoOrderDetailResultEntity;
import com.glxp.api.req.inout.FilterOrderDetailBizRequest;
import com.glxp.api.req.inout.FilterOrderDetailCodeRequest;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
+import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderInvoiceResponse;
import org.apache.ibatis.annotations.Param;
@@ -24,11 +26,11 @@ public interface IoOrderDetailBizDao extends BaseMapperPlus getfilterList(FilterOrderDetailCodeRequest orderDetailBizRequest);
- List getfilterOrderList(FilterOrderDetailCodeRequest orderDetailBizRequest);
+ List getfilterOrderList(FilterOrderDetailCodeRequest orderDetailBizRequest);
List filterListInv(FilterOrderDetailBizRequest orderDetailBizRequest);
- List selectByorderIdFk(String orderIdFk);
+ List selectByorderIdFk(String orderIdFk);
IoOrderInvoiceResponse selectByinvoiceId(Long id);
diff --git a/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskDetailMapper.java b/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskDetailMapper.java
new file mode 100644
index 000000000..9977ba8b4
--- /dev/null
+++ b/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskDetailMapper.java
@@ -0,0 +1,9 @@
+package com.glxp.api.dao.inv;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.glxp.api.entity.inv.DeviceInspectTaskDetail;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface DeviceInspectTaskDetailMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskMapper.java b/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskMapper.java
new file mode 100644
index 000000000..0b805c96b
--- /dev/null
+++ b/src/main/java/com/glxp/api/dao/inv/DeviceInspectTaskMapper.java
@@ -0,0 +1,9 @@
+package com.glxp.api.dao.inv;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.glxp.api.entity.inv.DeviceInspectTask;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface DeviceInspectTaskMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/dao/inv/DeviceProjectSetMapper.java b/src/main/java/com/glxp/api/dao/inv/DeviceProjectSetMapper.java
new file mode 100644
index 000000000..126bb0179
--- /dev/null
+++ b/src/main/java/com/glxp/api/dao/inv/DeviceProjectSetMapper.java
@@ -0,0 +1,9 @@
+package com.glxp.api.dao.inv;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.glxp.api.entity.inv.DeviceProjectSet;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface DeviceProjectSetMapper extends BaseMapper {
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/dao/inv/InvPreProductDao.java b/src/main/java/com/glxp/api/dao/inv/InvPreProductDao.java
index 363c17af3..9ad5009a5 100644
--- a/src/main/java/com/glxp/api/dao/inv/InvPreProductDao.java
+++ b/src/main/java/com/glxp/api/dao/inv/InvPreProductDao.java
@@ -2,11 +2,8 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvPreProductEntity;
-import com.glxp.api.req.inv.FilterInvPlaceRequest;
import com.glxp.api.req.inv.FilterInvPreProductRequest;
-import com.glxp.api.res.inv.InvPlaceDetailResponse;
import com.glxp.api.res.inv.InvPreProductResponse;
-import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -23,6 +20,8 @@ public interface InvPreProductDao extends BaseMapperPlus filterList(FilterInvPreProductRequest invPreProductRequest);
+ List filterListStock(FilterInvPreProductRequest invPreProductRequest);
+
/**
diff --git a/src/main/java/com/glxp/api/dao/inv/InvPreinProductDao.java b/src/main/java/com/glxp/api/dao/inv/InvPreinProductDao.java
index 90ae59f22..195660a9c 100644
--- a/src/main/java/com/glxp/api/dao/inv/InvPreinProductDao.java
+++ b/src/main/java/com/glxp/api/dao/inv/InvPreinProductDao.java
@@ -2,9 +2,7 @@ package com.glxp.api.dao.inv;
import com.glxp.api.dao.BaseMapperPlus;
import com.glxp.api.entity.inv.InvPreinProductEntity;
-import com.glxp.api.req.inv.FilterInvPreProductRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
-import com.glxp.api.res.inv.InvPreProductResponse;
import com.glxp.api.res.inv.InvPreinProductResponse;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -25,6 +23,8 @@ public interface InvPreinProductDao extends BaseMapperPlus filterList(FilterInvPreinProductRequest invPreProductRequest);
+ List filterListStock(FilterInvPreinProductRequest invPreProductRequest);
+
void batchBindSpace(@Param("ids") List ids, @Param("invSpaceCode") String invSpaceCode);
/**
diff --git a/src/main/java/com/glxp/api/dao/inv/InvProductDao.java b/src/main/java/com/glxp/api/dao/inv/InvProductDao.java
index 3269a95bb..adac7dd2c 100644
--- a/src/main/java/com/glxp/api/dao/inv/InvProductDao.java
+++ b/src/main/java/com/glxp/api/dao/inv/InvProductDao.java
@@ -28,6 +28,14 @@ public interface InvProductDao extends BaseMapperPlus filterProductList(FilterInvProductRequest filterInvProductRequest);
+ /**
+ * 查询库存列表过滤零库存和负库存
+ *
+ * @param filterInvProductRequest
+ * @return
+ */
+ List filterProductListStock(FilterInvProductRequest filterInvProductRequest);
+
/**
* 库存统计查询
*
diff --git a/src/main/java/com/glxp/api/entity/inv/DeviceInspectPlanEntity.java b/src/main/java/com/glxp/api/entity/inv/DeviceInspectPlanEntity.java
index d1c9a65d9..e0e6dbe85 100644
--- a/src/main/java/com/glxp/api/entity/inv/DeviceInspectPlanEntity.java
+++ b/src/main/java/com/glxp/api/entity/inv/DeviceInspectPlanEntity.java
@@ -90,4 +90,40 @@ public class DeviceInspectPlanEntity {
@TableField(value = "remark")
private String remark;
-}
\ No newline at end of file
+
+ //--------------------------新增字段--------------------------------
+ /**
+ * 计划开始时间
+ */
+ private Date startTime;
+ /**
+ * 计划结束时间
+ */
+ private Date endTime;
+ /**
+ * 时间频率
+ */
+ private String frequency;
+ /**
+ * 时间频率单位(1:年;2:月:3:日;4:小时;5:分钟: 6:秒)
+ */
+ private Integer frequencyUnit;
+ /**
+ * 计划状态(1:未启用;2:运行中;3:已结束;4:已过期
+ */
+ private Integer planStatus;
+ /**
+ * 巡检人
+ */
+ private String inspectUser;
+ /**
+ * 上次巡检时间
+ */
+ private Date lastTime;
+ /**
+ * 下一次巡检时间
+ */
+ private Date nextTime;
+
+
+}
diff --git a/src/main/java/com/glxp/api/entity/inv/DeviceInspectTask.java b/src/main/java/com/glxp/api/entity/inv/DeviceInspectTask.java
new file mode 100644
index 000000000..51969cd66
--- /dev/null
+++ b/src/main/java/com/glxp/api/entity/inv/DeviceInspectTask.java
@@ -0,0 +1,96 @@
+package com.glxp.api.entity.inv;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+@Data
+@TableName(value = "device_inspect_task")
+public class DeviceInspectTask implements Serializable {
+ @TableId(value = "id", type = IdType.INPUT)
+ private Integer id;
+
+ /**
+ * 任务单号
+ */
+ @TableField(value = "orderId")
+ private String orderId;
+
+ /**
+ * 巡检计划单号(外键)
+ */
+ @TableField(value = "planOrderIdFk")
+ private String planOrderIdFk;
+
+ /**
+ * 部门
+ */
+ @TableField(value = "deptCode")
+ private String deptCode;
+
+ /**
+ * 仓库
+ */
+ @TableField(value = "invCode")
+ private String invCode;
+
+ /**
+ * 资产编码
+ */
+ @TableField(value = "code")
+ private String code;
+
+ /**
+ * 状态
+ */
+ @TableField(value = "`status`")
+ private String status;
+
+ /**
+ * 巡检人
+ */
+ @TableField(value = "inspectUser")
+ private String inspectUser;
+
+ /**
+ * 提醒时间
+ */
+ @TableField(value = "remindTime")
+ private Date remindTime;
+
+ /**
+ * 巡检备注
+ */
+ @TableField(value = "remark")
+ private String remark;
+
+ /**
+ * 任务开始时间
+ */
+ @TableField(value = "strartTime")
+ private Date strartTime;
+
+ /**
+ * 任务结束时间
+ */
+ @TableField(value = "endTime")
+ private Date endTime;
+
+ /**
+ * 创建时间
+ */
+ @TableField(value = "createTime")
+ private Date createTime;
+
+ /**
+ * 更新时间
+ */
+ @TableField(value = "updateTime")
+ private Date updateTime;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/entity/inv/DeviceInspectTaskDetail.java b/src/main/java/com/glxp/api/entity/inv/DeviceInspectTaskDetail.java
new file mode 100644
index 000000000..272346058
--- /dev/null
+++ b/src/main/java/com/glxp/api/entity/inv/DeviceInspectTaskDetail.java
@@ -0,0 +1,66 @@
+package com.glxp.api.entity.inv;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+@Data
+@TableName(value = "device_inspect_task_detail")
+public class DeviceInspectTaskDetail implements Serializable {
+ @TableId(value = "id", type = IdType.INPUT)
+ private Integer id;
+
+ /**
+ * 巡检项目编码
+ */
+ @TableField(value = "projectCode")
+ private String projectCode;
+
+ /**
+ * 巡检内容
+ */
+ @TableField(value = "projectContent")
+ private String projectContent;
+
+ /**
+ * 状态(1:未开始;2:已检查;3:异常;4:不巡检
+ */
+ @TableField(value = "`status`")
+ private String status;
+
+ /**
+ * 巡检结果备注
+ */
+ @TableField(value = "`result`")
+ private String result;
+
+ /**
+ * 巡检图片
+ */
+ @TableField(value = "inspectImage")
+ private String inspectImage;
+
+ /**
+ * 巡检人
+ */
+ @TableField(value = "inspectUser")
+ private String inspectUser;
+
+ /**
+ * 更新时间
+ */
+ @TableField(value = "updateTime")
+ private Date updateTime;
+
+ /**
+ * 巡检任务ID外键
+ */
+ @TableField(value = "taskOrderIdFk")
+ private String taskOrderIdFk;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/entity/inv/DeviceProjectSet.java b/src/main/java/com/glxp/api/entity/inv/DeviceProjectSet.java
new file mode 100644
index 000000000..0f2a0c10f
--- /dev/null
+++ b/src/main/java/com/glxp/api/entity/inv/DeviceProjectSet.java
@@ -0,0 +1,66 @@
+package com.glxp.api.entity.inv;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+@Data
+@TableName(value = "device_project_set")
+public class DeviceProjectSet implements Serializable {
+ @TableId(value = "id", type = IdType.INPUT)
+ private Integer id;
+
+ /**
+ * 项目编号
+ */
+ @TableField(value = "code")
+ private String code;
+
+ /**
+ * 项目内容
+ */
+ @TableField(value = "content")
+ private String content;
+
+ /**
+ * 项目类型:1:巡检;2:养护
+ */
+ @TableField(value = "`type`")
+ private Integer type;
+
+ /**
+ * 备注
+ */
+ @TableField(value = "remak")
+ private String remak;
+
+ /**
+ * 更新时间
+ */
+ @TableField(value = "udpateTime")
+ private Date udpateTime;
+
+ /**
+ * 更新人
+ */
+ @TableField(value = "updateUser")
+ private String updateUser;
+
+ /**
+ * 创建人
+ */
+ @TableField(value = "`createUser`")
+ private String createUser;
+
+ /**
+ * 创建时间
+ */
+ @TableField(value = "createTime")
+ private Date createTime;
+
+ private static final long serialVersionUID = 1L;
+}
\ No newline at end of file
diff --git a/src/main/java/com/glxp/api/entity/inv/DeviceRepairOrderEntity.java b/src/main/java/com/glxp/api/entity/inv/DeviceRepairOrderEntity.java
index 9c22f8a14..091ae25c4 100644
--- a/src/main/java/com/glxp/api/entity/inv/DeviceRepairOrderEntity.java
+++ b/src/main/java/com/glxp/api/entity/inv/DeviceRepairOrderEntity.java
@@ -43,7 +43,7 @@ public class DeviceRepairOrderEntity {
private String code;
/**
- * 状态(0:新增;1:未审核;2:已审核)
+ * 状态(0:新增;1:未审核;2:已审核;3。已处理)
*/
@TableField(value = "`status`")
private Integer status;
@@ -90,4 +90,46 @@ public class DeviceRepairOrderEntity {
@TableField(value = "remark")
private String remark;
-}
\ No newline at end of file
+
+// ----------------------新增字段=-------------------------------
+ /**
+ * 维修类型 1:自行维修;2:外部维修
+ */
+ private String repairType;
+ /**
+ * 紧急类型 1,正常;2,较急;3,特急
+ */
+ private Integer urgencyType;
+ /**
+ * 计划完成日期
+ */
+ private Date planTime;
+ /**
+ * 报修图片
+ */
+ private String uploadImage;
+
+
+ /**
+ * 维修人
+ */
+ private String repariName;
+ /**
+ * 维修开始时间
+ */
+ private String repariStartTime;
+ /**
+ * 维修结束时间
+ */
+ private String repariEndTime;
+ /**
+ * 维修说明
+ */
+ private String repariRemark;
+ /**
+ * 维修图片
+ */
+ private String repariImage;
+
+
+}
diff --git a/src/main/java/com/glxp/api/req/inout/UpdateReceiveDetailRequest.java b/src/main/java/com/glxp/api/req/inout/UpdateReceiveDetailRequest.java
index 2f2fd7078..25f2f32a8 100644
--- a/src/main/java/com/glxp/api/req/inout/UpdateReceiveDetailRequest.java
+++ b/src/main/java/com/glxp/api/req/inout/UpdateReceiveDetailRequest.java
@@ -1,10 +1,7 @@
package com.glxp.api.req.inout;
-import com.glxp.api.entity.inout.PurReceiveEntity;
import lombok.Data;
-import java.util.List;
-
@Data
public class UpdateReceiveDetailRequest {
@@ -38,4 +35,8 @@ public class UpdateReceiveDetailRequest {
private String expireDate;
+ private Integer advanceType;
+
+ private String targetInvCode;
+
}
diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java
index 894385e7c..bb54f9c06 100644
--- a/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java
+++ b/src/main/java/com/glxp/api/res/inout/IoOrderDetailResultResponse.java
@@ -165,6 +165,20 @@ public class IoOrderDetailResultResponse {
private String fromInvName;
private String fromName;
+
+
+ private int orderCount;
+
+ private String invoiceCodes;
+
+ private Integer sucCount;
+
+ private boolean regStatus;
+
+ //金额
+ private BigDecimal amount;
+
+
public String getFromName() {
if (StrUtil.isNotEmpty(fromCorpName))
return fromCorpName;
diff --git a/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java b/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
index 60d45eb48..3495da336 100644
--- a/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
+++ b/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java
@@ -212,6 +212,8 @@ public class IoOrderResponse {
private String customerName;
+
+
/**
* 导出状态/上传状态(0.未导出,1.已导出,2.导出失败)
*/
@@ -253,4 +255,11 @@ public class IoOrderResponse {
return fromInvName;
return fromName;
}
+
+ public Integer getExportStatus() {
+ if(exportStatus == null){
+ return 0;
+ }
+ return exportStatus;
+ }
}
diff --git a/src/main/java/com/glxp/api/service/basic/impl/UdiRelevanceServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/UdiRelevanceServiceImpl.java
index 1ac7af9ff..dd21f84ae 100644
--- a/src/main/java/com/glxp/api/service/basic/impl/UdiRelevanceServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/basic/impl/UdiRelevanceServiceImpl.java
@@ -126,12 +126,12 @@ public class UdiRelevanceServiceImpl extends ServiceImpl filterListInv(FilterOrderDetailBizRequest orderDetailBizRequest);
- List selectByorderIdFk(String orderIdFk);
+ List selectByorderIdFk(String orderIdFk);
IoOrderInvoiceResponse selectByinvoiceId(Long id);
Boolean updateOrderDetailBiz(IoOrderDetailBizEntity ioOrderDetailBizEntity);
- List getfilterOrderList(FilterOrderDetailCodeRequest orderDetailBizRequest);
+ List getInvoicResultDetail(FilterOrderDetailCodeRequest orderDetailBizRequest);
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
index 9655608c7..fff113029 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java
@@ -9,11 +9,13 @@ import com.glxp.api.dao.inout.IoOrderDetailBizDao;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
+import com.glxp.api.entity.inout.IoOrderDetailResultEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterOrderDetailBizRequest;
import com.glxp.api.req.inout.FilterOrderDetailCodeRequest;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
+import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderInvoiceResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.IoCheckInoutService;
@@ -132,7 +134,7 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService {
}
@Override
- public List getfilterOrderList(FilterOrderDetailCodeRequest OrderDetailCodeRequest) {
+ public List getInvoicResultDetail(FilterOrderDetailCodeRequest OrderDetailCodeRequest) {
if (null == OrderDetailCodeRequest) {
return Collections.emptyList();
}
diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
index 8b4c0bb26..36ad1104b 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderServiceImpl.java
@@ -318,21 +318,30 @@ public class IoOrderServiceImpl implements IoOrderService {
//更新扫码单据详情
IoOrderDetailCodeEntity ioOrderDetailCodeEntity = ioOrderDetailCodeService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo());
- ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount);
- ioOrderDetailCodeService.update(ioOrderDetailCodeEntity);
+
+ if (ioOrderDetailCodeEntity != null) {
+ ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount);
+ ioOrderDetailCodeService.update(ioOrderDetailCodeEntity);
+ }
//更新结果详情
IoOrderDetailResultEntity ioOrderDetailResultEntity = ioOrderDetailResultService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo());
- ioOrderDetailResultEntity.setReCount(ioOrderDetailResultEntity.getReCount() - reCount);
- ioOrderDetailResultService.update(ioOrderDetailResultEntity);
+ if (ioOrderDetailResultEntity != null) {
+ ioOrderDetailResultEntity.setReCount(ioOrderDetailResultEntity.getReCount() - reCount);
+ ioOrderDetailResultService.update(ioOrderDetailResultEntity);
+ }
+
} else {
int reCount = udiCalCountUtil.getActCount(ioCodeEntity.getNameCode());
//如果数量扣减之后为0,直接删除此条码
codeService.deleteById(ioCodeEntity.getId());
//更新扫码单据详情
IoOrderDetailCodeEntity ioOrderDetailCodeEntity = ioOrderDetailCodeService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo());
- ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount);
- ioOrderDetailCodeService.update(ioOrderDetailCodeEntity);
+ if (ioOrderDetailCodeEntity != null) {
+ ioOrderDetailCodeEntity.setReCount(ioOrderDetailCodeEntity.getReCount() - reCount);
+ ioOrderDetailCodeService.update(ioOrderDetailCodeEntity);
+ }
+
//更新结果详情
IoOrderDetailResultEntity ioOrderDetailResultEntity = ioOrderDetailResultService.findByUnique(ioCodeEntity.getOrderId(), ioCodeEntity.getRelId(), ioCodeEntity.getBatchNo());
@@ -754,7 +763,7 @@ public class IoOrderServiceImpl implements IoOrderService {
@Override
public List filterOrderTrace(String billNo) {
- IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", billNo).in("status",5,7,10).in("dealStatus",2,3,4));
+ IoOrderEntity order = orderDao.selectOne(new QueryWrapper().eq("billNo", billNo).in("status", 5, 7, 10).in("dealStatus", 2, 3, 4));
if (null == order) {
return Collections.emptyList();
diff --git a/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java
index c39021e05..2a760a3aa 100644
--- a/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inout/impl/PlatformServiceImpl.java
@@ -388,10 +388,15 @@ public class PlatformServiceImpl implements PlatformService {
IoOrderEntity ioOrderEntity1=new IoOrderEntity();
ioOrderEntity1.setFromSpmsOrders(formSpmsOrders);
ioOrderEntity1.setBillNo(orderId);
+ ioOrderEntity1.setExportStatus(1);
ioOrderService.updateByBillNo(ioOrderEntity1);
return JSON.parseObject(resp, BaseResponse.class);
} else {
log.error("获取自助平台分库失败");
+ IoOrderEntity ioOrderEntity1=new IoOrderEntity();
+ ioOrderEntity1.setBillNo(orderId);
+ ioOrderEntity1.setExportStatus(2);
+ ioOrderService.updateByBillNo(ioOrderEntity1);
return ResultVOUtils.error(500, "获取自助平台接口异常");
}
}
diff --git a/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskDetailService.java b/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskDetailService.java
new file mode 100644
index 000000000..f870cdb76
--- /dev/null
+++ b/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskDetailService.java
@@ -0,0 +1,12 @@
+package com.glxp.api.service.inv;
+
+import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.glxp.api.entity.inv.DeviceInspectTaskDetail;
+import com.glxp.api.dao.inv.DeviceInspectTaskDetailMapper;
+@Service
+public class DeviceInspectTaskDetailService extends ServiceImpl {
+
+}
diff --git a/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskService.java b/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskService.java
new file mode 100644
index 000000000..75dff98bd
--- /dev/null
+++ b/src/main/java/com/glxp/api/service/inv/DeviceInspectTaskService.java
@@ -0,0 +1,12 @@
+package com.glxp.api.service.inv;
+
+import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.glxp.api.dao.inv.DeviceInspectTaskMapper;
+import com.glxp.api.entity.inv.DeviceInspectTask;
+@Service
+public class DeviceInspectTaskService extends ServiceImpl {
+
+}
diff --git a/src/main/java/com/glxp/api/service/inv/DeviceProjectSetService.java b/src/main/java/com/glxp/api/service/inv/DeviceProjectSetService.java
new file mode 100644
index 000000000..1eac4ddd0
--- /dev/null
+++ b/src/main/java/com/glxp/api/service/inv/DeviceProjectSetService.java
@@ -0,0 +1,12 @@
+package com.glxp.api.service.inv;
+
+import org.springframework.stereotype.Service;
+import javax.annotation.Resource;
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.glxp.api.entity.inv.DeviceProjectSet;
+import com.glxp.api.dao.inv.DeviceProjectSetMapper;
+@Service
+public class DeviceProjectSetService extends ServiceImpl {
+
+}
diff --git a/src/main/java/com/glxp/api/service/inv/InvPreProductService.java b/src/main/java/com/glxp/api/service/inv/InvPreProductService.java
index f276d679e..8c682e5a5 100644
--- a/src/main/java/com/glxp/api/service/inv/InvPreProductService.java
+++ b/src/main/java/com/glxp/api/service/inv/InvPreProductService.java
@@ -1,12 +1,8 @@
package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvPreProductEntity;
-import com.glxp.api.entity.inv.InvProductDetailEntity;
-import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.req.inv.FilterInvPreProductRequest;
-import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.res.inv.InvPreProductResponse;
-import com.glxp.api.res.inv.InvProductResponse;
import java.util.List;
@@ -32,6 +28,8 @@ public interface InvPreProductService {
*/
List filterList(FilterInvPreProductRequest invPreProductRequest);
+ List filterListStock(FilterInvPreProductRequest invPreProductRequest);
+
List findGroupBySpace(FilterInvPreProductRequest invPreProductRequest);
diff --git a/src/main/java/com/glxp/api/service/inv/InvPreinProductService.java b/src/main/java/com/glxp/api/service/inv/InvPreinProductService.java
index fdf98ea66..9f3121129 100644
--- a/src/main/java/com/glxp/api/service/inv/InvPreinProductService.java
+++ b/src/main/java/com/glxp/api/service/inv/InvPreinProductService.java
@@ -1,9 +1,7 @@
package com.glxp.api.service.inv;
import com.glxp.api.entity.inv.InvPreinProductEntity;
-import com.glxp.api.req.inv.FilterInvPreProductRequest;
import com.glxp.api.req.inv.FilterInvPreinProductRequest;
-import com.glxp.api.res.inv.InvPreProductResponse;
import com.glxp.api.res.inv.InvPreinProductResponse;
import java.util.List;
@@ -30,6 +28,9 @@ public interface InvPreinProductService {
*/
List filterList(FilterInvPreinProductRequest filterInvPreinDetailRequest);
+
+ List filterListStock(FilterInvPreinProductRequest filterInvPreinDetailRequest);
+
/**
* 查询寄售库存列表
*
diff --git a/src/main/java/com/glxp/api/service/inv/InvProductService.java b/src/main/java/com/glxp/api/service/inv/InvProductService.java
index 28b39e092..7e2b64c0b 100644
--- a/src/main/java/com/glxp/api/service/inv/InvProductService.java
+++ b/src/main/java/com/glxp/api/service/inv/InvProductService.java
@@ -25,6 +25,14 @@ public interface InvProductService {
*/
List filterList(FilterInvProductRequest filterInvProductRequest);
+ /**
+ * 库存查询过滤零库存和负库存
+ *
+ * @param filterInvProductRequest
+ * @return
+ */
+ List filterListStock(FilterInvProductRequest filterInvProductRequest);
+
/**
* 库存查询
*
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPreInProductDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPreInProductDetailServiceImpl.java
index c000e9f08..be36420a8 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvPreInProductDetailServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvPreInProductDetailServiceImpl.java
@@ -214,7 +214,7 @@ public class InvPreInProductDetailServiceImpl implements InvPreinProductDetailSe
List datas =
invPreInProductDetailDao.selectList(new QueryWrapper().eq("relId", relId).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo)
.eq(StrUtil.isNotEmpty(supId), "supId", supId).eq(StrUtil.isNotEmpty(deptCode), "deptCode", deptCode).eq("invCode", invCode).eq(StrUtil.isNotEmpty(invSpaceCode), "invSpaceCode", invSpaceCode).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo)
- .and(i-> i.isNull(StrUtil.isEmpty(batchNo), "batchNo").or().eq(StrUtil.isEmpty(batchNo), "batchNo", "")));
+ .and(StrUtil.isEmpty(batchNo), i -> i.isNull("batchNo").or().eq("batchNo", "")));
int count = 0;
if (CollUtil.isNotEmpty(datas)) {
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPreProductDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPreProductDetailServiceImpl.java
index 16a9b8399..a63cef8d6 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvPreProductDetailServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvPreProductDetailServiceImpl.java
@@ -190,7 +190,11 @@ public class InvPreProductDetailServiceImpl implements InvPreProductDetailServic
}
List datas =
invPreProductDetailDao.selectList(new QueryWrapper().eq("relId", relId).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo)
- .isNull(StrUtil.isEmpty(batchNo), "batchNo").eq(StrUtil.isNotEmpty(supId), "supId", supId).eq(StrUtil.isNotEmpty(deptCode), "deptCode", deptCode).eq("invCode", invCode).eq(StrUtil.isNotEmpty(invSpaceCode), "invSpaceCode", invSpaceCode));
+ .eq(StrUtil.isNotEmpty(supId), "supId", supId)
+ .eq(StrUtil.isNotEmpty(deptCode), "deptCode", deptCode).eq("invCode", invCode)
+ .eq(StrUtil.isNotEmpty(invSpaceCode), "invSpaceCode", invSpaceCode)
+ .and(StrUtil.isEmpty(batchNo), i -> i.isNull("batchNo").or().eq("batchNo", "")))
+ ;
int count = 0;
if (CollUtil.isNotEmpty(datas)) {
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPreProductServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPreProductServiceImpl.java
index 126f48011..cd3f0a043 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvPreProductServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvPreProductServiceImpl.java
@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.inv.InvPreProductDao;
import com.glxp.api.entity.inv.InvPreProductEntity;
-import com.glxp.api.entity.inv.InvProductEntity;
import com.glxp.api.req.inv.FilterInvPreProductRequest;
import com.glxp.api.res.inv.InvPreProductResponse;
import com.glxp.api.service.inv.InvPreProductService;
@@ -58,6 +57,17 @@ public class InvPreProductServiceImpl implements InvPreProductService {
return invPreProductDao.filterList(invPreProductRequest);
}
+ @Override
+ public List filterListStock(FilterInvPreProductRequest invPreProductRequest) {
+ if (null == invPreProductRequest) {
+ return Collections.emptyList();
+ }
+ if (null != invPreProductRequest.getPage()) {
+ PageHelper.offsetPage((invPreProductRequest.getPage() - 1) * invPreProductRequest.getLimit(), invPreProductRequest.getLimit());
+ }
+ return invPreProductDao.filterListStock(invPreProductRequest);
+ }
+
@Override
public List findGroupBySpace(FilterInvPreProductRequest invPreProductRequest) {
if (null == invPreProductRequest) {
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvPreinProductServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvPreinProductServiceImpl.java
index eb5f45a85..b19b7c4bf 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvPreinProductServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvPreinProductServiceImpl.java
@@ -57,6 +57,17 @@ public class InvPreinProductServiceImpl implements InvPreinProductService {
return invPreinProductDao.filterList(invPreProductRequest);
}
+ @Override
+ public List filterListStock(FilterInvPreinProductRequest invPreProductRequest) {
+ if (null == invPreProductRequest) {
+ return Collections.emptyList();
+ }
+ if (null != invPreProductRequest.getPage()) {
+ PageHelper.offsetPage((invPreProductRequest.getPage() - 1) * invPreProductRequest.getLimit(), invPreProductRequest.getLimit());
+ }
+ return invPreinProductDao.filterListStock(invPreProductRequest);
+ }
+
@Override
public List filterPreinProductList(FilterInvPreinProductRequest invPreProductRequest) {
if (null == invPreProductRequest) {
@@ -79,6 +90,7 @@ public class InvPreinProductServiceImpl implements InvPreinProductService {
return invPreinProductDao.findGroupBySpace(invPreProductRequest);
}
+
@Override
public InvPreinProductEntity findById(String id) {
return invPreinProductDao.selectById(id);
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
index 601ae48ff..d8cea5d4d 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductDetailServiceImpl.java
@@ -182,8 +182,9 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
}
List datas =
invProductDetailDao.selectList(new QueryWrapper().eq("relId", relId).eq(StrUtil.isNotEmpty(batchNo), "batchNo", batchNo)
- .eq(StrUtil.isNotEmpty(supId), "supId", supId).eq("deptCode", deptCode).eq("invCode", invCode)
- .eq(StrUtil.isNotEmpty(invSpaceCode), "invSpaceCode", invSpaceCode) .isNull(StrUtil.isEmpty(batchNo), "batchNo").or().eq(StrUtil.isEmpty(batchNo),"batchNo","")
+ .eq(StrUtil.isNotEmpty(supId), "supId", supId).eq("deptCode", deptCode).eq("invCode", invCode)
+ .eq(StrUtil.isNotEmpty(invSpaceCode), "invSpaceCode", invSpaceCode)
+ .and(StrUtil.isEmpty(batchNo), i -> i.isNull("batchNo").or().eq("batchNo", ""))
);
int count = 0;
@@ -221,10 +222,10 @@ public class InvProductDetailServiceImpl implements InvProductDetailService {
}
@Override
- public List findByGroupCode(String invCode, String code,Boolean isCheckSpace) {
+ public List findByGroupCode(String invCode, String code, Boolean isCheckSpace) {
if (StrUtil.isNotEmpty(invCode) && StrUtil.isNotEmpty(code)) {
List datas =
- invProductDetailDao.findByGroupCode(invCode, code,isCheckSpace);
+ invProductDetailDao.findByGroupCode(invCode, code, isCheckSpace);
return datas;
}
diff --git a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
index fa8704a8b..7d5629767 100644
--- a/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
+++ b/src/main/java/com/glxp/api/service/inv/impl/InvProductServiceImpl.java
@@ -58,6 +58,17 @@ public class InvProductServiceImpl implements InvProductService {
return invProductDao.filterProductList(filterInvProductRequest);
}
+ @Override
+ public List filterListStock(FilterInvProductRequest filterInvProductRequest) {
+ if (null == filterInvProductRequest) {
+ return Collections.emptyList();
+ }
+ if (null != filterInvProductRequest.getPage() && null != filterInvProductRequest.getLimit()) {
+ PageHelper.offsetPage((filterInvProductRequest.getPage() - 1) * filterInvProductRequest.getLimit(), filterInvProductRequest.getLimit());
+ }
+ return invProductDao.filterProductListStock(filterInvProductRequest);
+ }
+
@Override
public List filterListProduct(FilterInvProductRequest filterInvProductRequest) {
diff --git a/src/main/java/com/glxp/api/service/sync/HeartService.java b/src/main/java/com/glxp/api/service/sync/HeartService.java
index 3862d6d79..2981aad4c 100644
--- a/src/main/java/com/glxp/api/service/sync/HeartService.java
+++ b/src/main/java/com/glxp/api/service/sync/HeartService.java
@@ -1294,7 +1294,6 @@ public class HeartService {
if (CollUtil.isNotEmpty(syncDataResponse.getDeptUserEntities()))
logs = logs + "部门用户信息:" + syncDataResponse.getDeptUserEntities().size() + "条\n";
-
if (CollUtil.isNotEmpty(syncDataResponse.getInvSpaces()))
logs = logs + "货位信息:" + syncDataResponse.getInvSpaces().size() + "条\n";
@@ -1341,10 +1340,6 @@ public class HeartService {
for (IoOrderEntity orderEntity : orderEntities) {
SyncDataBustypeEntity syncDataBustypeEntity = syncDataBustypeService.findByAction(orderEntity.getAction(), 2);
orderEntity.setUpdateTime(null);
- orderEntity.setFromType(ConstantStatus.FROM_UDISP);
- orderEntity.setProcessStatus(ConstantStatus.ORDER_DEAL_POST);
- orderEntity.setOrderType(ConstantStatus.ORDER_TYPE_SCAN);
- orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
if (syncDataBustypeEntity != null) {
if (syncDataBustypeEntity.getSyncStatus() != null && syncDataBustypeEntity.getSyncStatus().compareTo(1) == 0) {
orderEntity.setProcessStatus(ConstantStatus.ORDER_DEAL_DRAFT);
@@ -1356,6 +1351,10 @@ public class HeartService {
}
IoOrderEntity temp = orderService.findByBillNo(orderEntity.getBillNo());
if (temp == null) {
+ orderEntity.setFromType(ConstantStatus.FROM_UDISP);
+ orderEntity.setProcessStatus(ConstantStatus.ORDER_DEAL_POST);
+ orderEntity.setOrderType(ConstantStatus.ORDER_TYPE_SCAN);
+ orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESS);
orderEntity.setId(null);
orderService.insertOrder(orderEntity);
insetOrderDb(syncDataResponse, orderEntity);
diff --git a/src/main/java/com/glxp/api/task/TestStatOrderService.java b/src/main/java/com/glxp/api/task/TestStatOrderService.java
new file mode 100644
index 000000000..50928fb5a
--- /dev/null
+++ b/src/main/java/com/glxp/api/task/TestStatOrderService.java
@@ -0,0 +1,88 @@
+package com.glxp.api.task;
+
+import com.glxp.api.service.inout.IoStatDayService;
+import com.glxp.api.service.inout.IoStatMonthService;
+import com.glxp.api.service.inout.IoStatQuarterService;
+import com.glxp.api.service.inout.IoStatYearService;
+import com.glxp.api.util.MsDateUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+
+@Slf4j
+@Service
+public class TestStatOrderService {
+ @Resource
+ private IoStatDayService statDayService;
+ @Resource
+ private IoStatMonthService statMonthService;
+ @Resource
+ private IoStatQuarterService statQuarterService;
+ @Resource
+ private IoStatYearService statYearService;
+
+
+ public void starGen(Long starTime) {
+ if (starTime == null) {
+ starTime = 1684252800000L;
+ }
+ Long oneDay = 1000 * 60 * 60 * 24L;//One Day TimeStamp
+ Long endTime = new Date().getTime();
+ while (starTime <= endTime) {
+ Date today = new Date(starTime);
+ genStat(today);
+ starTime += oneDay;
+ }
+ }
+
+
+ public void genStat(Date today) {
+ if (MsDateUtil.isYearStart(today)) {
+ //年初第一天,依次生成 日 -> 月 -> 季度 -> 年度 汇总数据
+ log.info("开始生成每日物资出入库汇总数据");
+ statDayService.statData(today);
+ log.info("每日物资出入库数据汇总生成结束");
+
+ log.info("本日为月初,生成月度物资出入库汇总数据");
+ statMonthService.statData(today);
+ log.info("月度物资出入库汇总数据生成结束");
+
+ log.info("本日为季初,生成季度物资出入库汇总数据");
+ statQuarterService.statData(today);
+ log.info("季度物资出入库汇总数据生成结束");
+
+ log.info("本日为年初,生成年度物资出入库汇总数据");
+ statYearService.statData(today);
+ log.info("年度物资出入库汇总数据生成结束");
+ } else if (MsDateUtil.isQuarterStart(today)) {
+ //季度第一天,依次生成 日 -> 月 -> 季度 汇总数据
+ log.info("开始生成每日物资出入库汇总数据");
+ statDayService.statData(today);
+ log.info("每日物资出入库数据汇总生成结束");
+
+ log.info("本日为月初,生成月度物资出入库汇总数据");
+ statMonthService.statData(today);
+ log.info("月度物资出入库汇总数据生成结束");
+
+ log.info("本日为季初,生成季度物资出入库汇总数据");
+ statQuarterService.statData(today);
+ log.info("季度物资出入库汇总数据生成结束");
+ } else if (MsDateUtil.isMonthStart(today)) {
+ //月度第一天,依次生成 日 -> 月 汇总数据
+ log.info("开始生成每日物资出入库汇总数据");
+ statDayService.statData(today);
+ log.info("每日物资出入库数据汇总生成结束");
+
+ log.info("本日为月初,生成月度物资出入库汇总数据");
+ statMonthService.statData(today);
+ log.info("月度物资出入库汇总数据生成结束");
+ } else {
+ //生成日汇总数据
+ log.info("开始生成每日物资出入库汇总数据");
+ statDayService.statData(today);
+ log.info("每日物资出入库数据汇总生成结束");
+ }
+ }
+}
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index 86bb3fdf0..9463b3440 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -4,7 +4,7 @@ server:
spring:
datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
- jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_pt?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
+ jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_zyy?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
hikari:
diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailBizDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailBizDao.xml
index d9a9b9f94..fa9523c9e 100644
--- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailBizDao.xml
+++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailBizDao.xml
@@ -119,9 +119,9 @@
-
+
+ select ipp.id,
+ ipp.nameCode,
+ bp.cpmctymc,
+ ipp.relIdFk,
+ bp.ggxh,
+ ipp.batchNo,
+ ipp.productionDate,
+ ipp.expireDate,
+ bp.ylqxzcrbarmc,
+ bp.zczbhhzbapzbh,
+ ipp.inCount,
+ ipp.outCount,
+ ipp.reCount,
+ ipp.customerId,
+ basic_corp.name supName,
+ ipp.supId,
+ auth_dept.name deptName,
+ auth_warehouse.name invName,
+ ipp.deptCode,
+ ipp.invCode,
+ bp.measname
+ from inv_pre_product ipp
+ inner join basic_udirel on ipp.relIdFk = basic_udirel.id
+ inner join basic_products bp on basic_udirel.uuid = bp.uuid
+ left join basic_corp on ipp.supId = basic_corp.erpId
+ left join auth_dept on auth_dept.code = ipp.deptCode
+ left join auth_warehouse on auth_warehouse.code = ipp.invCode
+
+ bp.diType = 1
+ and ipp.reCount > 0
+
+ AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
+
+
+ AND ipp.nameCode like concat('%', #{nameCode}, '%')
+
+
+ AND ipp.relIdFk = #{relIdFk}
+
+
+ AND bp.ggxh like concat('%', #{ggxh}, '%')
+
+
+ AND ipp.batchNo like concat('%', #{batchNo}, '%')
+
+
+ AND ipp.productionDate = #{productionDate}
+
+
+ AND ipp.expireDate = #{expireDate}
+
+
+ AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
+
+
+ AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
+
+
+ AND ipp.customerId = #{customerId}
+
+
+ AND ipp.supId = #{supId}
+
+
+ AND ipp.deptCode = #{deptCode}
+
+
+ AND ipp.invCode = #{invCode}
+
+
+ AND ipp.invCode in
+
+ #{item}
+
+
+
+ group by ipp.id
+
+
select ipp.*
from inv_pre_product ipp
@@ -138,7 +218,7 @@
-
+
select
ipp.id,
ipp.nameCode,
diff --git a/src/main/resources/mybatis/mapper/inv/InvPreinProductDao.xml b/src/main/resources/mybatis/mapper/inv/InvPreinProductDao.xml
index 97ea4c22f..d6cea9d26 100644
--- a/src/main/resources/mybatis/mapper/inv/InvPreinProductDao.xml
+++ b/src/main/resources/mybatis/mapper/inv/InvPreinProductDao.xml
@@ -79,6 +79,85 @@
group by ipp.id
+
+ select ipp.id,
+ ipp.nameCode,
+ bp.cpmctymc,
+ ipp.relIdFk,
+ bp.ggxh,
+ bp.measname,
+ ipp.batchNo,
+ ipp.productionDate,
+ ipp.expireDate,
+ bp.ylqxzcrbarmc,
+ bp.zczbhhzbapzbh,
+ ipp.inCount,
+ ipp.outCount,
+ ipp.reCount,
+ ipp.customerId,
+ basic_corp.name supName,
+ ipp.supId,
+ auth_dept.name deptName,
+ auth_warehouse.name invName,
+ ipp.deptCode,
+ ipp.invCode
+ from inv_prein_product ipp
+ inner join basic_udirel on ipp.relIdFk = basic_udirel.id
+ inner join basic_products bp on basic_udirel.uuid = bp.uuid
+ left join basic_corp on ipp.supId = basic_corp.erpId
+ left join auth_dept on auth_dept.code = ipp.deptCode
+ left join auth_warehouse on auth_warehouse.code = ipp.invCode
+
+ ipp.reCount > 0
+
+ AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
+
+
+ AND ipp.nameCode like concat('%', #{nameCode}, '%')
+
+
+ AND ipp.relIdFk = #{relIdFk}
+
+
+ AND bp.ggxh like concat('%', #{ggxh}, '%')
+
+
+ AND ipp.batchNo like concat('%', #{batchNo}, '%')
+
+
+ AND ipp.productionDate = #{productionDate}
+
+
+ AND ipp.expireDate = #{expireDate}
+
+
+ AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
+
+
+ AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
+
+
+ AND ipp.customerId = #{customerId}
+
+
+ AND ipp.supId = #{supId}
+
+
+ AND ipp.deptCode = #{deptCode}
+
+
+ AND ipp.invCode = #{invCode}
+
+
+ AND ipp.invCode in
+
+ #{item}
+
+
+
+ group by ipp.id
+
+
select ipp.*
from inv_prein_product ipp
diff --git a/src/main/resources/mybatis/mapper/inv/invProductDao.xml b/src/main/resources/mybatis/mapper/inv/invProductDao.xml
index 6fcf0f15f..d93333510 100644
--- a/src/main/resources/mybatis/mapper/inv/invProductDao.xml
+++ b/src/main/resources/mybatis/mapper/inv/invProductDao.xml
@@ -382,4 +382,94 @@
group by ip.relIdFk
order by ip.updateTime desc
+
+
+ select ip.id,
+ ip.nameCode,
+ bp.cpmctymc,
+ ip.relIdFk,
+ bp.ggxh,
+ ip.batchNo,
+ ip.productionDate,
+ ip.expireDate,
+ bp.ylqxzcrbarmc,
+ bp.zczbhhzbapzbh,
+ sum(ip.inCount) as inCount,
+ sum(ip.outCount) as outCount,
+ sum(ip.reCount) as reCount,
+ ip.customerId,
+ basic_corp.name supName,
+ ip.supId,
+ auth_dept.name deptName,
+ auth_warehouse.name invName,
+ ip.deptCode,
+ ip.invCode
+ from inv_product ip
+ inner join basic_udirel on ip.relIdFk = basic_udirel.id
+ inner join basic_products bp on basic_udirel.uuid = bp.uuid
+ left join basic_corp on ip.supId = basic_corp.erpId
+ left join auth_dept on auth_dept.code = ip.deptCode
+ left join auth_warehouse on auth_warehouse.code = ip.invCode
+ left join inv_product_detail ipd on ip.invCode = ipd.invCode and ip.relIdFk = ipd.relId and
+ ifnull(ip.batchNo, 'empty') = ifnull(ipd.batchNo, 'empty')
+
+ bp.diType = 1
+
+ AND bp.cpmctymc like concat('%', #{cpmctymc}, '%')
+
+
+ AND ip.nameCode like concat('%', #{nameCode}, '%')
+
+
+ AND ip.relIdFk = #{relIdFk}
+
+
+ AND bp.ggxh like concat('%', #{ggxh}, '%')
+
+
+ AND ip.batchNo like concat('%', #{batchNo}, '%')
+
+
+ AND ip.productionDate = #{productionDate}
+
+
+ AND ip.expireDate = #{expireDate}
+
+
+ AND bp.ylqxzcrbarmc like concat('%', #{ylqxzcrbarmc}, '%')
+
+
+ AND bp.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
+
+
+ AND ip.customerId = #{customerId}
+
+
+ AND ip.supId = #{supId}
+
+
+ AND ip.deptCode = #{deptCode}
+
+
+ AND ip.invCode = #{invCode}
+
+
+ AND ip.invCode in
+
+ #{item}
+
+
+
+ AND basic_corp.name like concat('%', #{supName}, '%')
+
+
+ AND ipd.invSpaceCode = #{invSpaceCode}
+
+
+ group by ip.relIdFk
+ having reCount >0
+ order by ip.updateTime desc
+
+
diff --git a/src/main/resources/schemas/schema_v2.1.sql b/src/main/resources/schemas/schema_v2.1.sql
index f1389d7e9..3d2e35759 100644
--- a/src/main/resources/schemas/schema_v2.1.sql
+++ b/src/main/resources/schemas/schema_v2.1.sql
@@ -608,4 +608,3 @@ CALL Pro_Temp_ColumnWork('io_order', 'fromSpmsOrders', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'checkReview', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'secCheckReview', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'thrCheckReview', 'tinyint', 1);
-
diff --git a/src/main/resources/schemas/schema_v2.2.sql b/src/main/resources/schemas/schema_v2.2.sql
new file mode 100644
index 000000000..39627cec2
--- /dev/null
+++ b/src/main/resources/schemas/schema_v2.2.sql
@@ -0,0 +1,85 @@
+# 字段新增 (表名,字段名,字段类型,修改方式(1:新增,2:修改,3:删除)
+
+CREATE TABLE IF NOT EXISTS `device_inspect_task`
+(
+ `id` int NOT NULL AUTO_INCREMENT,
+ `orderId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '任务单号',
+ `planOrderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检计划单号(外键)',
+ `deptCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '部门',
+ `invCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '仓库',
+ `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '资产编码',
+ `status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '状态',
+ `inspectUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检人',
+ `remindTime` datetime(0) NULL DEFAULT NULL COMMENT '提醒时间',
+ `remark` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检备注',
+ `strartTime` datetime(0) NULL DEFAULT NULL COMMENT '任务开始时间',
+ `endTime` datetime(0) NULL DEFAULT NULL COMMENT '任务结束时间',
+ `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+ `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB
+ CHARACTER SET = utf8mb4
+ COLLATE = utf8mb4_0900_ai_ci
+ ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for device_inspect_task_detail
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `device_inspect_task_detail`
+(
+ `id` int NOT NULL AUTO_INCREMENT,
+ `projectCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检项目编码',
+ `projectContent` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检内容',
+ `status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '状态(1:未开始;2:已检查;3:异常;4:不巡检',
+ `result` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检结果备注',
+ `inspectImage` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检图片',
+ `inspectUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检人',
+ `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+ `taskOrderIdFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '巡检任务ID外键',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB
+ CHARACTER SET = utf8mb4
+ COLLATE = utf8mb4_0900_ai_ci
+ ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for device_project_set
+-- ----------------------------
+CREATE TABLE IF NOT EXISTS `device_project_set`
+(
+ `id` int NOT NULL AUTO_INCREMENT,
+ `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '项目编号',
+ `content` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '项目内容',
+ `type` int NULL DEFAULT NULL COMMENT '项目类型:1:巡检;2:养护',
+ `remak` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注',
+ `udpateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+ `updateUser` varchar(0) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新人',
+ `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建人',
+ `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB
+ CHARACTER SET = utf8mb4
+ COLLATE = utf8mb4_0900_ai_ci
+ ROW_FORMAT = Dynamic;
+
+SET FOREIGN_KEY_CHECKS = 1;
+
+
+CALL Pro_Temp_ColumnWork('device_repair_order', 'repairType', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'urgencyType', 'tinyint', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'planTime', 'datetime', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'uploadImage', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'repariName', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'reparistartTime', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'repariEndTime', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'repariRemark', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_repair_order', 'repariImage', 'varchar(255)', 1);
+
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'startTime', 'datetime', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'endTime', 'datetime', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'frequency', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'frequencyUnit', 'tinyint', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'planStatus', 'tinyint', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'inspectUser', 'varchar(255)', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'lastTime', 'datetime', 1);
+CALL Pro_Temp_ColumnWork('device_inspect_plan', 'nextTime', 'datetime', 1);
\ No newline at end of file