diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/ISupplierManagementAppService.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/ISupplierManagementAppService.java index 1db520aa..d243d9eb 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/ISupplierManagementAppService.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/datadictionary/appservice/ISupplierManagementAppService.java @@ -3,37 +3,16 @@ */ package com.openhis.web.datadictionary.appservice; +import java.util.List; + import javax.servlet.http.HttpServletRequest; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestBody; + import com.core.common.core.domain.R; -import com.core.common.utils.MessageUtils; -import com.core.common.utils.bean.BeanUtils; -import com.openhis.administration.domain.Supplier; -import com.openhis.administration.mapper.SupplierMapper; -import com.openhis.administration.service.ISupplierService; -import com.openhis.common.constant.PromptMsgConstant; -import com.openhis.common.enums.AccountStatus; -import com.openhis.common.enums.SupplierType; -import com.openhis.common.utils.EnumUtils; -import com.openhis.common.utils.HisPageUtils; -import com.openhis.common.utils.HisQueryUtils; -import com.openhis.web.datadictionary.dto.SupplierDto; -import com.openhis.web.datadictionary.dto.SupplierInitDto; import com.openhis.web.datadictionary.dto.SupplierSearchParam; import com.openhis.web.datadictionary.dto.SupplierUpDto; -import com.openhis.web.inventorymanage.dto.InventoryReceiptDto; -import com.openhis.web.inventorymanage.dto.InventorySearchParam; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.Arrays; -import java.util.HashSet; -import java.util.List; -import java.util.concurrent.CopyOnWriteArrayList; -import java.util.stream.Collectors; -import java.util.stream.Stream; /** * 厂商/产地 service diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IPurchaseInventoryAppService.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IPurchaseInventoryAppService.java index e91f640d..4c82b323 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IPurchaseInventoryAppService.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IPurchaseInventoryAppService.java @@ -6,8 +6,8 @@ package com.openhis.web.inventorymanage.appservice; import javax.servlet.http.HttpServletRequest; import com.core.common.core.domain.R; -import com.openhis.web.inventorymanage.dto.InventoryReceiptDto; import com.openhis.web.inventorymanage.dto.InventorySearchParam; +import com.openhis.web.inventorymanage.dto.PurchaseInventoryDto; /** * 采购入库 appService @@ -41,10 +41,10 @@ public interface IPurchaseInventoryAppService { /** * 添加/编辑入库单据 * - * @param inventoryReceiptDto 入库单据 + * @param purchaseInventoryDto 入库单据 * @return 操作结果 */ - R addOrEditInventoryReceipt(InventoryReceiptDto inventoryReceiptDto); + R addOrEditInventoryReceipt(PurchaseInventoryDto purchaseInventoryDto); /** * 删除单据 diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IReceiptApprovalAppService.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IReceiptApprovalAppService.java index 0b95ade7..ddac440b 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IReceiptApprovalAppService.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/IReceiptApprovalAppService.java @@ -9,8 +9,8 @@ import javax.servlet.http.HttpServletRequest; import com.core.common.core.domain.R; import com.openhis.web.inventorymanage.dto.ItemChargeDetailDto; +import com.openhis.web.inventorymanage.dto.ReceiptApprovalSearchParam; import com.openhis.web.inventorymanage.dto.SupplyItemDetailDto; -import com.openhis.workflow.domain.SupplyRequest; /** * 单据审批 appService @@ -20,14 +20,6 @@ import com.openhis.workflow.domain.SupplyRequest; */ public interface IReceiptApprovalAppService { - /** - * 校验单据是否正确 - * - * @param supplyRequest 单据信息 - * @return 校验结果 - */ - R verifyInventoryReceipt(SupplyRequest supplyRequest); - /** * 根据单据号获取供应单据及供应项相关详细信息 * @@ -62,4 +54,24 @@ public interface IReceiptApprovalAppService { * @return 操作结果 */ R reject(String busNo, HttpServletRequest request); + + /** + * 审批单据分页列表 + * + * @param receiptSearchParam 查询条件 + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return 审批单据分页列表 + */ + R getPage(ReceiptApprovalSearchParam receiptSearchParam, Integer pageNo, Integer pageSize, String searchKey, + HttpServletRequest request); + + /** + * 单据审批页面初始化 + * + * @return 初始化信息 + */ + R receiptApprovalInit(); } diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/PurchaseInventoryAppServiceImpl.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/PurchaseInventoryAppServiceImpl.java index 2c93e14a..19de1953 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/PurchaseInventoryAppServiceImpl.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/PurchaseInventoryAppServiceImpl.java @@ -16,7 +16,6 @@ import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.core.common.core.domain.R; -import com.openhis.common.enums.AssignSeqEnum; import com.core.common.utils.AssignSeqUtil; import com.core.common.utils.DateUtils; import com.core.common.utils.MessageUtils; @@ -27,10 +26,7 @@ import com.openhis.administration.service.IPractitionerService; import com.openhis.administration.service.ISupplierService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; -import com.openhis.common.enums.ItemType; -import com.openhis.common.enums.SupplyCategory; -import com.openhis.common.enums.SupplyStatus; -import com.openhis.common.enums.SupplyType; +import com.openhis.common.enums.*; import com.openhis.common.utils.EnumUtils; import com.openhis.common.utils.HisQueryUtils; import com.openhis.web.inventorymanage.appservice.IPurchaseInventoryAppService; @@ -71,29 +67,29 @@ public class PurchaseInventoryAppServiceImpl implements IPurchaseInventoryAppSer @Override public R purchaseInventoryInit() { - InventoryReceiptInitDto initDto = new InventoryReceiptInitDto(); + PurchaseInventoryInitDto initDto = new PurchaseInventoryInitDto(); // 单据号 initDto.setBusNo(assignSeqUtil.getSeqByDay(AssignSeqEnum.PURCHASE_NUM.getPrefix(), 12)); // 查询供应商列表 List supplierList = supplierService.getList(); // 查询经手人列表 List practitionerList = practitionerService.getList(); - // 供应商信息 - List practitionerListOptions = practitionerList.stream() - .map(practitioner -> new InventoryReceiptInitDto.practitionerListOption(practitioner.getId(), + // 经手人信息 + List practitionerListOptions = practitionerList.stream() + .map(practitioner -> new PurchaseInventoryInitDto.practitionerListOption(practitioner.getId(), practitioner.getName())) .collect(Collectors.toList()); - // 经手人信息 - List supplierListOptions = supplierList.stream() - .map(supplier -> new InventoryReceiptInitDto.supplierListOption(supplier.getId(), supplier.getName())) + // 供应商信息 + List supplierListOptions = supplierList.stream() + .map(supplier -> new PurchaseInventoryInitDto.supplierListOption(supplier.getId(), supplier.getName())) .collect(Collectors.toList()); // 入库项目类型 - List itemTypeOptions = Stream.of(ItemType.values()) - .map(itemType -> new InventoryReceiptInitDto.itemTypeOption(itemType.getValue(), itemType.getInfo())) + List itemTypeOptions = Stream.of(ItemType.values()) + .map(itemType -> new PurchaseInventoryInitDto.itemTypeOption(itemType.getValue(), itemType.getInfo())) .collect(Collectors.toList()); // 审批状态 - List supplyStatusOptions = Stream.of(SupplyStatus.values()) - .map(supplyStatus -> new InventoryReceiptInitDto.supplyStatusOption(supplyStatus.getValue(), + List supplyStatusOptions = Stream.of(SupplyStatus.values()) + .map(supplyStatus -> new PurchaseInventoryInitDto.supplyStatusOption(supplyStatus.getValue(), supplyStatus.getInfo())) .collect(Collectors.toList()); @@ -125,7 +121,7 @@ public class PurchaseInventoryAppServiceImpl implements IPurchaseInventoryAppSer QueryWrapper queryWrapper = HisQueryUtils.buildQueryWrapper(inventorySearchParam, searchKey, searchFields, request); // 查询入库单据分页列表 - Page inventoryReceiptPage = purchaseInventoryMapper.selectInventoryReceiptPage( + Page inventoryReceiptPage = purchaseInventoryMapper.selectInventoryReceiptPage( new Page<>(pageNo, pageSize), queryWrapper, SupplyType.PURCHASE_INVENTORY.getValue()); inventoryReceiptPage.getRecords().forEach(e -> { @@ -144,8 +140,8 @@ public class PurchaseInventoryAppServiceImpl implements IPurchaseInventoryAppSer @Override public R getDetail(String busNo) { List receiptDetailList = purchaseInventoryMapper.selectDetail(busNo); - if (receiptDetailList.isEmpty()){ - return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00006,null)); + if (receiptDetailList.isEmpty()) { + return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00006, null)); } return R.ok(receiptDetailList); } @@ -153,17 +149,17 @@ public class PurchaseInventoryAppServiceImpl implements IPurchaseInventoryAppSer /** * 添加/编辑入库单据 * - * @param inventoryReceiptDto 入库单据 + * @param purchaseInventoryDto 入库单据 * @return 操作结果 */ @Override - public R addOrEditInventoryReceipt(InventoryReceiptDto inventoryReceiptDto) { + public R addOrEditInventoryReceipt(PurchaseInventoryDto purchaseInventoryDto) { // 初始化单据信息 SupplyRequest supplyRequest = new SupplyRequest(); - BeanUtils.copyProperties(inventoryReceiptDto, supplyRequest); + BeanUtils.copyProperties(purchaseInventoryDto, supplyRequest); - if (inventoryReceiptDto.getId() != null) { + if (purchaseInventoryDto.getId() != null) { // 更新单据信息 supplyRequestService.updateById(supplyRequest); } else { diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java index bd79df77..4cd470a5 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/appservice/impl/ReceiptApprovalAppServiceImpl.java @@ -4,11 +4,9 @@ package com.openhis.web.inventorymanage.appservice.impl; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; import javax.servlet.http.HttpServletRequest; @@ -16,6 +14,8 @@ import org.apache.commons.lang3.tuple.Pair; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.core.common.core.domain.R; import com.core.common.core.domain.model.LoginUser; import com.core.common.utils.DateUtils; @@ -28,10 +28,13 @@ import com.openhis.administration.service.IChargeItemService; import com.openhis.common.constant.CommonConstants; import com.openhis.common.constant.PromptMsgConstant; import com.openhis.common.enums.EventStatus; +import com.openhis.common.enums.SupplyStatus; +import com.openhis.common.enums.SupplyType; +import com.openhis.common.utils.EnumUtils; +import com.openhis.common.utils.HisQueryUtils; import com.openhis.web.inventorymanage.appservice.IReceiptApprovalAppService; import com.openhis.web.inventorymanage.assembler.InventoryManageAssembler; -import com.openhis.web.inventorymanage.dto.ItemChargeDetailDto; -import com.openhis.web.inventorymanage.dto.SupplyItemDetailDto; +import com.openhis.web.inventorymanage.dto.*; import com.openhis.web.inventorymanage.mapper.ReceiptApprovalMapper; import com.openhis.workflow.domain.InventoryItem; import com.openhis.workflow.domain.SupplyDelivery; @@ -65,23 +68,58 @@ public class ReceiptApprovalAppServiceImpl implements IReceiptApprovalAppService private ReceiptApprovalMapper receiptApprovalMapper; /** - * 校验单据是否正确 + * 单据审批页面初始化 * - * @param supplyRequest 单据信息 - * @return 校验结果 + * @return 初始化信息 */ @Override - public R verifyInventoryReceipt(SupplyRequest supplyRequest) { + public R receiptApprovalInit() { + ReceiptInitDto initDto = new ReceiptInitDto(); + // 单据类型 + List supplyTypeOptions = Stream.of(SupplyType.values()) + .map(supplyType -> new ReceiptInitDto.supplyTypeOption(supplyType.getValue(), supplyType.getInfo())) + .collect(Collectors.toList()); + // 审批状态 + List supplyStatusOptions = Stream.of(SupplyStatus.values()) + .map(supplyStatus -> new ReceiptInitDto.supplyStatusOption(supplyStatus.getValue(), supplyStatus.getInfo())) + .collect(Collectors.toList()); + initDto.setSupplyTypeOptions(supplyTypeOptions).setSupplyStatusOptions(supplyStatusOptions); - // // 判断同一物品的批次号是否重复 - // boolean result = supplyRequestMapper - // .exists(new LambdaQueryWrapper().eq(SupplyRequest::getItemId, supplyRequest.getItemId()) - // .eq(SupplyRequest::getLotNumber, supplyRequest.getLotNumber()) - // .ne(supplyRequest.getId() != null, SupplyRequest::getId, supplyRequest.getId())); - // if (result) { - // return R.fail(MessageUtils.createMessage(PromptMsgConstant.Common.M00003, new Object[] {"批次号"})); - // } - return R.ok(); + return R.ok(initDto); + } + + /** + * 审批单据分页列表 + * + * @param receiptSearchParam 查询条件 + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return 审批单据分页列表 + */ + @Override + public R getPage(ReceiptApprovalSearchParam receiptSearchParam, Integer pageNo, Integer pageSize, + String searchKey, HttpServletRequest request) { + // 设置模糊查询的字段名 + HashSet searchFields = new HashSet<>(); + searchFields.add(CommonConstants.FieldName.SupplyBusNo); + + // 构建查询条件 + QueryWrapper queryWrapper = + HisQueryUtils.buildQueryWrapper(receiptSearchParam, searchKey, searchFields, request); + // 查询单据分页列表 + Page receiptPage = + receiptApprovalMapper.selectReceiptPage(new Page<>(pageNo, pageSize), queryWrapper, + SupplyStatus.APPROVAL.getValue(), SupplyStatus.AGREE.getValue(), SupplyStatus.REJECT.getValue()); + + receiptPage.getRecords().forEach(e -> { + // 单据状态 + e.setStatusEnum_enumText(EnumUtils.getInfoByValue(SupplyStatus.class, e.getStatusEnum())); + // 单据状态 + e.setTypeEnum_enumText(EnumUtils.getInfoByValue(SupplyType.class, e.getTypeEnum())); + }); + return R.ok(receiptPage); } /** diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/PurchaseInventoryController.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/PurchaseInventoryController.java index 35b9e92f..dcced6ff 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/PurchaseInventoryController.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/PurchaseInventoryController.java @@ -11,8 +11,8 @@ import org.springframework.web.bind.annotation.*; import com.core.common.core.domain.R; import com.openhis.web.inventorymanage.appservice.IPurchaseInventoryAppService; -import com.openhis.web.inventorymanage.dto.InventoryReceiptDto; import com.openhis.web.inventorymanage.dto.InventorySearchParam; +import com.openhis.web.inventorymanage.dto.PurchaseInventoryDto; import lombok.extern.slf4j.Slf4j; @@ -72,12 +72,12 @@ public class PurchaseInventoryController { /** * 添加/编辑入库单据 * - * @param inventoryReceiptDto 入库单据 + * @param purchaseInventoryDto 入库单据 * @return 操作结果 */ @PutMapping("/inventory-receipt") - public R addOrEditInventoryReceipt(@Validated @RequestBody InventoryReceiptDto inventoryReceiptDto) { - return purchaseInventoryAppService.addOrEditInventoryReceipt(inventoryReceiptDto); + public R addOrEditInventoryReceipt(@Validated @RequestBody PurchaseInventoryDto purchaseInventoryDto) { + return purchaseInventoryAppService.addOrEditInventoryReceipt(purchaseInventoryDto); } /** diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/ReceiptApprovalController.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/ReceiptApprovalController.java index a739adfa..037bdbba 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/ReceiptApprovalController.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/controller/ReceiptApprovalController.java @@ -6,13 +6,11 @@ package com.openhis.web.inventorymanage.controller; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.core.common.core.domain.R; import com.openhis.web.inventorymanage.appservice.IReceiptApprovalAppService; +import com.openhis.web.inventorymanage.dto.ReceiptApprovalSearchParam; import lombok.extern.slf4j.Slf4j; @@ -30,6 +28,34 @@ public class ReceiptApprovalController { @Autowired private IReceiptApprovalAppService receiptApprovalAppService; + /** + * 单据审批页面初始化 + * + * @return 初始化信息 + */ + @GetMapping(value = "/init") + public R receiptApprovalInit() { + return receiptApprovalAppService.receiptApprovalInit(); + } + + /** + * 审批单据分页列表 + * + * @param receiptSearchParam 查询条件 + * @param pageNo 当前页码 + * @param pageSize 查询条数 + * @param searchKey 模糊查询关键字 + * @param request 请求数据 + * @return 审批单据分页列表 + */ + @GetMapping(value = "/receipt-page") + public R getPage(ReceiptApprovalSearchParam receiptSearchParam, + @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, + @RequestParam(name = "searchKey", required = false) String searchKey, HttpServletRequest request) { + return receiptApprovalAppService.getPage(receiptSearchParam, pageNo, pageSize, searchKey, request); + } + /** * 入库单据审批通过 * diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventorySearchParam.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventorySearchParam.java index e9ccbf5b..940be571 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventorySearchParam.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventorySearchParam.java @@ -4,9 +4,6 @@ package com.openhis.web.inventorymanage.dto; import java.io.Serializable; -import java.util.Date; - -import org.hibernate.validator.constraints.Length; import lombok.Data; import lombok.experimental.Accessors; @@ -21,9 +18,7 @@ import lombok.experimental.Accessors; @Accessors(chain = true) public class InventorySearchParam implements Serializable { - /** 单据号 */ - @Length(max = 255) - private String busNo; + private static final long serialVersionUID = 1L; /** 状态 */ private Integer statusEnum; @@ -31,12 +26,6 @@ public class InventorySearchParam implements Serializable { /** 供应商 */ private Long supplierId; - /** 申请开始时间 */ - private Date applyTimeStart; - - /** 申请结束时间 */ - private Date applyTimeEnd; - /** 经手人 */ private Long practitionerId; } diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryDto.java similarity index 97% rename from openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptDto.java rename to openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryDto.java index 000b2fc5..5213d0f5 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryDto.java @@ -26,7 +26,7 @@ import lombok.experimental.Accessors; */ @Data @Accessors(chain = true) -public class InventoryReceiptDto implements Serializable { +public class PurchaseInventoryDto implements Serializable { private static final long serialVersionUID = 1L; diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptInitDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryInitDto.java similarity index 82% rename from openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptInitDto.java rename to openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryInitDto.java index 30b55e70..b37e354e 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptInitDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/PurchaseInventoryInitDto.java @@ -16,7 +16,7 @@ import lombok.experimental.Accessors; */ @Data @Accessors(chain = true) -public class InventoryReceiptInitDto { +public class PurchaseInventoryInitDto { /** * 单据号 @@ -26,22 +26,22 @@ public class InventoryReceiptInitDto { /** * 供应商 */ - private List supplierListOptions; + private List supplierListOptions; /** * 经手人 */ - private List practitionerListOptions; + private List practitionerListOptions; /** * 入库项目类型 */ - private List itemTypeOptions; + private List itemTypeOptions; /** * 审批状态 */ - private List supplyStatusOptions; + private List supplyStatusOptions; /** * 供应商 diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptApprovalSearchParam.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptApprovalSearchParam.java new file mode 100644 index 00000000..1877a110 --- /dev/null +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptApprovalSearchParam.java @@ -0,0 +1,28 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.inventorymanage.dto; + +import java.io.Serializable; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 单据审批分页查询条件 + * + * @author zwh + * @date 2025-03-19 + */ +@Data +@Accessors(chain = true) +public class ReceiptApprovalSearchParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** 状态 */ + private Integer statusEnum; + + /** 类型 */ + private Integer typeEnum; +} diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptInitDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptInitDto.java new file mode 100644 index 00000000..940cacc4 --- /dev/null +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptInitDto.java @@ -0,0 +1,58 @@ +/* + * Copyright ©2023 CJB-CNIT Team. All rights reserved + */ +package com.openhis.web.inventorymanage.dto; + +import java.util.List; + +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * TODO:概括描述当前类的主要用途和注意事项 + * + * @author zwh + * @date 2025-03-19 + */ +@Data +@Accessors(chain = true) +public class ReceiptInitDto { + + /** + * 单据类型 + */ + private List supplyTypeOptions; + + /** + * 审批状态 + */ + private List supplyStatusOptions; + + /** + * 单据类型 + */ + @Data + public static class supplyTypeOption { + private Integer value; + private String label; + + public supplyTypeOption(Integer value, String label) { + this.value = value; + this.label = label; + } + } + + /** + * 审批状态 + */ + @Data + public static class supplyStatusOption { + private Integer value; + private String label; + + public supplyStatusOption(Integer value, String label) { + this.value = value; + this.label = label; + } + } +} diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptPageDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptPageDto.java similarity index 80% rename from openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptPageDto.java rename to openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptPageDto.java index 808e6098..bfef1c4b 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/InventoryReceiptPageDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/dto/ReceiptPageDto.java @@ -16,14 +16,14 @@ import lombok.Data; import lombok.experimental.Accessors; /** - * 入库单据分页列表 dto + * 单据分页列表 dto * * @author zwh * @date 2025-02-18 */ @Data @Accessors(chain = true) -public class InventoryReceiptPageDto implements Serializable { +public class ReceiptPageDto implements Serializable { private static final long serialVersionUID = 1L; @@ -39,16 +39,22 @@ public class InventoryReceiptPageDto implements Serializable { private Integer statusEnum; private String statusEnum_enumText; + /** 状态 */ + private Integer typeEnum; + private String typeEnum_enumText; + /** 供应商 */ private Long supplierId; /** 经手人 */ @Dict(dictCode = "id", dictText = "name", dictTable = "adm_practitioner") private Long practitionerId; + private String practitionerId_dictText; /** 审批人 */ @Dict(dictCode = "id", dictText = "name", dictTable = "adm_practitioner") private Long approverId; + private String approverId_dictText; /** 审批时间 */ private Date approvalTime; @@ -56,8 +62,12 @@ public class InventoryReceiptPageDto implements Serializable { /** 申请人 */ @Dict(dictCode = "id", dictText = "name", dictTable = "adm_practitioner") private Long applicantId; + private String applicantId_dictText; /** 申请时间 */ private Date applyTime; + /** 制单日期 */ + private Date createTime; + } diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/PurchaseInventoryMapper.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/PurchaseInventoryMapper.java index ab176c0b..88f04f65 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/PurchaseInventoryMapper.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/PurchaseInventoryMapper.java @@ -11,9 +11,9 @@ import org.springframework.stereotype.Repository; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.openhis.web.inventorymanage.dto.InventoryReceiptPageDto; import com.openhis.web.inventorymanage.dto.InventorySearchParam; import com.openhis.web.inventorymanage.dto.ReceiptDetailDto; +import com.openhis.web.inventorymanage.dto.ReceiptPageDto; /** * 采购入库查询用 mapper @@ -32,7 +32,7 @@ public interface PurchaseInventoryMapper { * @param purchaseInventory 单据类型:采购入库 * @return 入库单据分页列表 */ - Page selectInventoryReceiptPage(@Param("page") Page page, + Page selectInventoryReceiptPage(@Param("page") Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper, @Param("purchaseInventory") Integer purchaseInventory); diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/ReceiptApprovalMapper.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/ReceiptApprovalMapper.java index ad8b2702..00e4e805 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/ReceiptApprovalMapper.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/inventorymanage/mapper/ReceiptApprovalMapper.java @@ -8,8 +8,13 @@ import java.util.List; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.openhis.web.inventorymanage.dto.ItemChargeDetailDto; +import com.openhis.web.inventorymanage.dto.ReceiptApprovalSearchParam; +import com.openhis.web.inventorymanage.dto.ReceiptPageDto; import com.openhis.web.inventorymanage.dto.SupplyItemDetailDto; import com.openhis.workflow.domain.SupplyRequest; @@ -49,4 +54,18 @@ public interface ReceiptApprovalMapper extends BaseMapper { * @return 价格信息 */ List selectChargeDetail(@Param("itemIdList") List itemIdList); + + /** + * 查询单据审批分页列表 + * + * @param page 分页 + * @param queryWrapper 查询条件 + * @param approval 单据状态:审核中 + * @param agree 单据状态:同意 + * @param reject 单据状态:驳回 + * @return 单据审批分页列表 + */ + Page selectReceiptPage(@Param("page") Page page, + @Param(Constants.WRAPPER) QueryWrapper queryWrapper, + @Param("approval") Integer approval, @Param("agree") Integer agree, @Param("reject") Integer reject); } diff --git a/openhis-server/openhis-application/src/main/resources/mapper/Inventorymanage/PurchaseInventoryMapper.xml b/openhis-server/openhis-application/src/main/resources/mapper/Inventorymanage/PurchaseInventoryMapper.xml index c958d003..9af76e89 100644 --- a/openhis-server/openhis-application/src/main/resources/mapper/Inventorymanage/PurchaseInventoryMapper.xml +++ b/openhis-server/openhis-application/src/main/resources/mapper/Inventorymanage/PurchaseInventoryMapper.xml @@ -3,7 +3,7 @@ + \ No newline at end of file diff --git a/openhis-server/openhis-common/src/main/java/com/openhis/common/enums/SupplyType.java b/openhis-server/openhis-common/src/main/java/com/openhis/common/enums/SupplyType.java index 5d4aaebd..dcfdce61 100644 --- a/openhis-server/openhis-common/src/main/java/com/openhis/common/enums/SupplyType.java +++ b/openhis-server/openhis-common/src/main/java/com/openhis/common/enums/SupplyType.java @@ -14,29 +14,30 @@ import lombok.Getter; */ @Getter @AllArgsConstructor -public enum SupplyType { +public enum SupplyType implements HisEnumInterface { /** * 采购入库 */ - PURCHASE_INVENTORY(1, "采购入库"), + PURCHASE_INVENTORY(1, "1", "采购入库"), /** * 商品调拨 */ - PRODUCT_ALLOCATION(2, "商品调拨"), + PRODUCT_ALLOCATION(2, "2", "商品调拨"), /** * 汇总发药 */ - DISPENSING_AGGREGATION(3, "汇总发药"), + DISPENSING_AGGREGATION(3, "3", "汇总发药"), /** * 商品盘点 */ - PRODUCT_INVENTORY(4, "商品盘点"); + PRODUCT_INVENTORY(4, "4", "商品盘点"); private Integer value; + private String code; private String info; public static SupplyType getByValue(Integer value) { diff --git a/openhis-server/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java b/openhis-server/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java index 418a24a3..4f57c284 100644 --- a/openhis-server/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java +++ b/openhis-server/openhis-domain/src/main/java/com/openhis/workflow/service/impl/SupplyRequestServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.core.common.core.domain.model.LoginUser; +import com.core.common.utils.DateUtils; import com.openhis.common.enums.SupplyStatus; import com.openhis.workflow.domain.SupplyRequest; import com.openhis.workflow.mapper.SupplyRequestMapper; @@ -68,8 +69,10 @@ public class SupplyRequestServiceImpl extends ServiceImpl() - .eq(SupplyRequest::getBusNo, busNo).set(SupplyRequest::getStatusEnum, SupplyStatus.APPROVAL.getValue())); + int updateCount = baseMapper.update(null, + new LambdaUpdateWrapper().eq(SupplyRequest::getBusNo, busNo) + .set(SupplyRequest::getStatusEnum, SupplyStatus.APPROVAL.getValue()) + .set(SupplyRequest::getApplyTime, DateUtils.getNowDate())); return updateCount > 0; }