From 9e42e8ee528dd816a80672123231648113df5099 Mon Sep 17 00:00:00 2001 From: x_z Date: Thu, 9 Feb 2023 18:11:46 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=8D=95=E6=8D=AE=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=8F=82=E6=95=B0=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/glxp/api/constant/Constant.java | 33 ++++++++++++++ .../controller/inout/IoOrderController.java | 5 ++- .../api/req/inout/FilterOrderRequest.java | 23 ++++++++++ .../api/service/inout/IoOrderService.java | 7 +++ .../inout/impl/IoOrderServiceImpl.java | 39 ++++++++++++++-- .../mybatis/mapper/inout/IoOrderDao.xml | 44 ++++++++++++------- 6 files changed, 128 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/glxp/api/constant/Constant.java b/src/main/java/com/glxp/api/constant/Constant.java index adc93bef9..18880e914 100644 --- a/src/main/java/com/glxp/api/constant/Constant.java +++ b/src/main/java/com/glxp/api/constant/Constant.java @@ -155,4 +155,37 @@ public class Constant { public static final String LOGIN_FAIL = "Error"; + + //-------------前端页面查询单据列表标识类型------------------ + /** + * 单据-草稿标识 + */ + public static final String ORDER_STATUS_DRAFT = "draft"; + + /** + * 单据-处理异常标识 + */ + public static final String ORDER_STATUS_PROCESSED_ERROR = "processedError"; + + /** + * 单据-未校验标识 + */ + public static final String ORDER_STATUS_UN_CHECK = "unCheck"; + + /** + * 单据-校验异常标识 + */ + public static final String ORDER_STATUS_CHECKED_ERROR = "checkedError"; + + /** + * 单据-已校验标识 + */ + public static final String ORDER_STATUS_CHECK_SUCCESS = "checkSuccess"; + + /** + * 单据-已审核标识 + */ + public static final String ORDER_STATUS_AUDITED = "audited"; + + } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java index 93d809fa9..b0cae91db 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderController.java @@ -6,7 +6,6 @@ import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; -import com.glxp.api.constant.ConstantStatus; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; @@ -27,7 +26,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; -import java.util.Date; import java.util.List; @@ -56,6 +54,9 @@ public class IoOrderController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } + if (StrUtil.isNotBlank(filterOrderRequest.getStatusType())) { + orderService.setFilterStatus(filterOrderRequest); + } List list = orderService.filterList(filterOrderRequest); PageInfo pageInfo = new PageInfo<>(list); return ResultVOUtils.page(pageInfo); diff --git a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java index f327b2d6c..f563969dd 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java @@ -3,6 +3,8 @@ package com.glxp.api.req.inout; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class FilterOrderRequest extends ListPageRequest { @@ -115,4 +117,25 @@ public class FilterOrderRequest extends ListPageRequest { private String igNoreBillNo; + /** + * 单据状态类型标识 + * 草稿:draft + * 处理异常:processedError + * 未校验:unCheck + * 校验异常:checkedError + * 已校验:checkSuccess + * 已审核:audited + */ + private String statusType; + + /** + * 单据状态集合 + */ + private List statuses; + + /** + * 单据提交审核状态集合 + */ + private List dealStatuses; + } diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderService.java b/src/main/java/com/glxp/api/service/inout/IoOrderService.java index bfbe7f14f..b6cca5562 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderService.java @@ -54,4 +54,11 @@ public interface IoOrderService { * 判断订单是否可以补单 */ List checkSupplementOrder(List orderEntities); + + /** + * 根据查询单据状态标识,设置单据状态值 + * + * @param filterOrderRequest + */ + void setFilterStatus(FilterOrderRequest filterOrderRequest); } 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 957851c12..c92c40dd2 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 @@ -3,13 +3,12 @@ package com.glxp.api.service.inout.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; +import com.glxp.api.constant.Constant; import com.glxp.api.constant.ConstantStatus; import com.glxp.api.dao.basic.BasicBussinessTypeDao; import com.glxp.api.dao.inout.IoOrderDao; -import com.glxp.api.entity.auth.SysDictData; import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.req.inout.FilterOrderRequest; @@ -19,6 +18,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -27,6 +27,8 @@ public class IoOrderServiceImpl implements IoOrderService { @Resource private IoOrderDao orderDao; + @Resource + BasicBussinessTypeDao basicBussinessTypeDao; @Override public List selectAll() { @@ -149,8 +151,37 @@ public class IoOrderServiceImpl implements IoOrderService { return result; } - @Resource - BasicBussinessTypeDao basicBussinessTypeDao; + @Override + public void setFilterStatus(FilterOrderRequest filterOrderRequest) { + switch (filterOrderRequest.getStatusType()) { + case Constant.ORDER_STATUS_DRAFT: + filterOrderRequest.setStatuses(Arrays.asList(1, 2)); + filterOrderRequest.setDealStatuses(Arrays.asList(1)); + break; + case Constant.ORDER_STATUS_PROCESSED_ERROR: + filterOrderRequest.setStatuses(Arrays.asList(4)); + filterOrderRequest.setDealStatuses(Arrays.asList(2)); + break; + case Constant.ORDER_STATUS_UN_CHECK: + filterOrderRequest.setStatuses(Arrays.asList(3)); + filterOrderRequest.setDealStatuses(Arrays.asList(2)); + break; + case Constant.ORDER_STATUS_CHECKED_ERROR: + filterOrderRequest.setStatuses(Arrays.asList(6)); + filterOrderRequest.setDealStatuses(Arrays.asList(2)); + break; + case Constant.ORDER_STATUS_CHECK_SUCCESS: + filterOrderRequest.setStatuses(Arrays.asList(5, 8)); + filterOrderRequest.setDealStatuses(Arrays.asList(2)); + break; + case Constant.ORDER_STATUS_AUDITED: + filterOrderRequest.setStatuses(Arrays.asList(7)); + filterOrderRequest.setDealStatuses(Arrays.asList(3)); + break; + default: + break; + } + } boolean checkBusTypeSupplementOrder(IoOrderEntity orderEntity) { BasicBussinessTypeEntity supplementOrderType = basicBussinessTypeDao.selectOne(new QueryWrapper().eq("action", orderEntity.getAction())); diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml index a2ce4f7ba..804425f4d 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml @@ -30,13 +30,25 @@ AND invCode = #{invCode} - AND createTime between #{startTime} and #{endTime} + AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') - - AND createTime >= #{startTime} + + AND date_format(createTime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') - - AND createTime <= #{endTime} + + AND date_format(createTime, '%Y-%m-%d') <= date_format(#{endTime}, '%Y-%m-%d') + + + AND status in + + #{item} + + + + AND dealStatus in + + #{item} + @@ -76,14 +88,13 @@ AND deptCode = #{deptCode} - AND createTime between #{startTime} - and #{endTime} + AND date_format(createTime, '%Y-%m-%d') between date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') - - AND createTime >= #{startTime} + + AND date_format(createTime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') - - AND createTime <= #{endTime} + + AND date_format(createTime, '%Y-%m-%d') <= date_format(#{endTime}, '%Y-%m-%d') @@ -93,11 +104,10 @@ SELECT * FROM io_order WHERE (supplementNo IS NULL OR supplementNo = '') - AND `action` IN ( - SELECT `action` - FROM basic_bussiness_type - WHERE supplementOrderType IS NOT NULL - OR supplementOrderType - != '') + AND `action` IN (SELECT `action` + FROM basic_bussiness_type + WHERE supplementOrderType IS NOT NULL + OR supplementOrderType + != '') \ No newline at end of file