diff --git a/src/main/java/com/glxp/api/controller/inout/IoDepartmentOrderController.java b/src/main/java/com/glxp/api/controller/inout/IoDepartmentOrderController.java new file mode 100644 index 000000000..82a1d1fad --- /dev/null +++ b/src/main/java/com/glxp/api/controller/inout/IoDepartmentOrderController.java @@ -0,0 +1,50 @@ +package com.glxp.api.controller.inout; + +import com.github.pagehelper.PageInfo; +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.basic.BasicSkSickerEntity; +import com.glxp.api.req.inout.FilterSkSiackerListRequest; +import com.glxp.api.res.inout.IoOrderResponse; +import com.glxp.api.service.inout.IoDepartmentOrderService; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +@RestController +public class IoDepartmentOrderController extends BaseController { + + @Resource + IoDepartmentOrderService ioDepartmentOrderService; + + /** + * 查询患者列表 + * + * @param + * @return + */ + @PostMapping("/udiwms/inout/ioDepartmentOrder/getSkSickerList") + public BaseResponse getSkSickerList(@RequestBody FilterSkSiackerListRequest filterSkSiackerListRequest) { + List list = ioDepartmentOrderService.getSkSickerList(filterSkSiackerListRequest); + PageInfo pageInfo = new PageInfo<>(list); + return ResultVOUtils.page(pageInfo); + } + + /** + * 通过患者code 获取草稿单据列表 + * + * @param + * @return + */ + @GetMapping("/udiwms/inout/ioDepartmentOrder/getOrderListbyCode") + public BaseResponse getOrderListbyCode(String adNum) { + Listlist = ioDepartmentOrderService.getOrderListbyCode(adNum); + return ResultVOUtils.success(list); + } + +} diff --git a/src/main/java/com/glxp/api/dao/basic/BasicSkSickerMapper.java b/src/main/java/com/glxp/api/dao/basic/BasicSkSickerMapper.java index 5b23d40d5..ada9fcdb7 100644 --- a/src/main/java/com/glxp/api/dao/basic/BasicSkSickerMapper.java +++ b/src/main/java/com/glxp/api/dao/basic/BasicSkSickerMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.entity.basic.BasicSkSickerEntity; import com.glxp.api.req.basic.BasicSkSickerRequest; +import com.glxp.api.req.inout.FilterSkSiackerListRequest; import com.glxp.api.res.basic.BasicSkSickerResponse; import org.apache.ibatis.annotations.Mapper; @@ -16,6 +17,7 @@ public interface BasicSkSickerMapper extends BaseMapperPlus filterNoList(BasicSkSickerRequest basicSkSickerRequest); + List getSkSickerList(FilterSkSiackerListRequest filterSkSiackerListRequest); } diff --git a/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java b/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java index 35f7f8e3e..c61946750 100644 --- a/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/inout/IoOrderEntity.java @@ -291,5 +291,10 @@ public class IoOrderEntity { @TableField(value = "sickerAdNum") private String sickerAdNum; + /** + * 往来患者code + */ + @TableField(value = "fromPatientCode") + private String fromPatientCode; } 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 aa6399c16..dbb579dbe 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterOrderRequest.java @@ -210,4 +210,6 @@ public class FilterOrderRequest extends ListPageRequest { */ private Integer deptNoInvType; private Integer inPreInBack; + + private String fromPatientCode; } diff --git a/src/main/java/com/glxp/api/req/inout/FilterSkSiackerListRequest.java b/src/main/java/com/glxp/api/req/inout/FilterSkSiackerListRequest.java new file mode 100644 index 000000000..20ca3a114 --- /dev/null +++ b/src/main/java/com/glxp/api/req/inout/FilterSkSiackerListRequest.java @@ -0,0 +1,13 @@ +package com.glxp.api.req.inout; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class FilterSkSiackerListRequest extends ListPageRequest { + + /** + * 姓名/住院号 模糊查询 + */ + private String name; +} 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 a179a33c0..7ad7f5fa7 100644 --- a/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java +++ b/src/main/java/com/glxp/api/res/inout/IoOrderResponse.java @@ -253,6 +253,11 @@ public class IoOrderResponse { */ private String sickerAdNum; + /** + * 往来患者code + */ + private String fromPatientCode; + private String fromSpmsOrders; //自助单据号 diff --git a/src/main/java/com/glxp/api/service/inout/IoDepartmentOrderService.java b/src/main/java/com/glxp/api/service/inout/IoDepartmentOrderService.java new file mode 100644 index 000000000..36c1b91b5 --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/IoDepartmentOrderService.java @@ -0,0 +1,18 @@ +package com.glxp.api.service.inout; + +import com.glxp.api.entity.basic.BasicSkSickerEntity; +import com.glxp.api.req.inout.FilterSkSiackerListRequest; +import com.glxp.api.res.inout.IoOrderResponse; + +import java.util.List; + +public interface IoDepartmentOrderService { + /** + * 获取患者列表 + * @param filterSkSiackerListRequest + * @return + */ + List getSkSickerList(FilterSkSiackerListRequest filterSkSiackerListRequest); + + List getOrderListbyCode(String adNum); +} diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoDepartmentOrderServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoDepartmentOrderServiceImpl.java new file mode 100644 index 000000000..179b4a03d --- /dev/null +++ b/src/main/java/com/glxp/api/service/inout/impl/IoDepartmentOrderServiceImpl.java @@ -0,0 +1,53 @@ +package com.glxp.api.service.inout.impl; + + +import com.github.pagehelper.PageHelper; +import com.glxp.api.constant.ConstantStatus; +import com.glxp.api.dao.basic.BasicSkSickerMapper; +import com.glxp.api.dao.inout.IoOrderDao; +import com.glxp.api.entity.basic.BasicSkSickerEntity; +import com.glxp.api.req.inout.FilterOrderRequest; +import com.glxp.api.req.inout.FilterSkSiackerListRequest; +import com.glxp.api.res.basic.BasicSkSickerResponse; +import com.glxp.api.res.inout.IoOrderResponse; +import com.glxp.api.service.inout.IoDepartmentOrderService; +import com.glxp.api.util.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + + +@Service +public class IoDepartmentOrderServiceImpl implements IoDepartmentOrderService { + + @Resource + BasicSkSickerMapper skSickerMapper; + @Resource + IoOrderDao ioOrderDao; + + @Override + public List getSkSickerList(FilterSkSiackerListRequest filterSkSiackerListRequest) { + if (filterSkSiackerListRequest == null) { + return Collections.emptyList(); + } + if (filterSkSiackerListRequest.getPage() != null) { + int offset = (filterSkSiackerListRequest.getPage() - 1) * filterSkSiackerListRequest.getLimit(); + PageHelper.offsetPage(offset, filterSkSiackerListRequest.getLimit()); + } + List data = skSickerMapper.getSkSickerList(filterSkSiackerListRequest); + return data; + } + + @Override + public List getOrderListbyCode(String adNum) { + if (StringUtils.isEmpty(adNum)) { + return Collections.emptyList(); + } + FilterOrderRequest filterOrderRequest = new FilterOrderRequest(); + filterOrderRequest.setFromPatientCode(adNum); + filterOrderRequest.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE); + return ioOrderDao.filterList(filterOrderRequest); + } +} diff --git a/src/main/resources/mybatis/mapper/basic/BasicSkSickerMapper.xml b/src/main/resources/mybatis/mapper/basic/BasicSkSickerMapper.xml index 83747f5f8..e83ff97b9 100644 --- a/src/main/resources/mybatis/mapper/basic/BasicSkSickerMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/BasicSkSickerMapper.xml @@ -78,4 +78,17 @@ limit 0,10 + + + diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml index 9452a13d5..01c99e414 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDao.xml @@ -142,6 +142,9 @@ AND io.orderType = #{orderType} + + AND io.fromPatientCode = #{fromPatientCode} + diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index 85bbe2eda..0d573d49a 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -727,3 +727,6 @@ VALUES (200321, 0, '收费出库是否过滤高值耗材', 'fee_out_filter_hight INSERT IGNORE INTO `sys_param_config`(`id`, `parentId`, `paramName`, `paramKey`, `paramValue`, `paramStatus`, `paramType`, `paramExplain`, `updateTime`) VALUES (200322, 0, '收费出库是否过滤一对多', 'fee_out_filter_cp', '0', 1, 0, '收费出库是否过滤1对多的耗材', '2024-03-13 11:04:02'); + + +CALL Pro_Temp_ColumnWork('io_order', 'fromPatientCode',' varchar(30) NULL DEFAULT NULL COMMENT ''往来患者code'' AFTER `sickerAdNum`', 1);