新增患者使用溯源功能

master
anthonywj 2 years ago
parent 82dbbc2129
commit a7b199f6bd

@ -8,9 +8,12 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderEntity; import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterCodeRequest;
import com.glxp.api.req.inout.FilterOrderDetailResultRequest; import com.glxp.api.req.inout.FilterOrderDetailResultRequest;
import com.glxp.api.res.inout.IoCodeResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse; import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.IoCodeService;
import com.glxp.api.service.inout.IoOrderDetailResultService; import com.glxp.api.service.inout.IoOrderDetailResultService;
import com.glxp.api.service.inout.IoOrderService; import com.glxp.api.service.inout.IoOrderService;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
@ -31,6 +34,8 @@ public class IoOrderDetailResultController {
private IoOrderDetailResultService orderDetailResultService; private IoOrderDetailResultService orderDetailResultService;
@Resource @Resource
IBasicBussinessTypeService basicBussinessTypeService; IBasicBussinessTypeService basicBussinessTypeService;
@Resource
IoCodeService codeService;
/** /**
* *
@ -59,21 +64,11 @@ public class IoOrderDetailResultController {
if (StrUtil.isEmpty(filterErpOrderRequest.getOrderIdFk())) { if (StrUtil.isEmpty(filterErpOrderRequest.getOrderIdFk())) {
return ResultVOUtils.error(500, "单据号不能为空!"); return ResultVOUtils.error(500, "单据号不能为空!");
} }
IoOrderEntity orderEntity = orderService.findByBillNo(filterErpOrderRequest.getOrderIdFk());
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
filterErpOrderRequest.setPage(null); filterErpOrderRequest.setPage(null);
filterErpOrderRequest.setLimit(null); filterErpOrderRequest.setLimit(null);
IoOrderEntity orderEntity = orderService.findByBillNo(filterErpOrderRequest.getOrderIdFk());
List<IoOrderDetailResultResponse> list = orderDetailResultService.filterList(filterErpOrderRequest); List<IoOrderDetailResultResponse> list = orderDetailResultService.filterList(filterErpOrderRequest);
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
if ((bussinessTypeEntity.getOrderVisibleType() == 1 && orderEntity.getStatus() == 4) || filterErpOrderRequest.getShowType() == 1) {
//todo使用关联查
// erpOrderEntities = transferSerList(erpOrderEntities, filterErpOrderRequest.getOrderId());
}
return ResultVOUtils.success(list); return ResultVOUtils.success(list);
} }

@ -0,0 +1,52 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.BasicCorpEntity;
import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.req.inv.FilterSickTraceRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.service.basic.BasicCorpService;
import com.glxp.api.service.inout.IoOrderService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController
public class InvSickTraceController {
@Resource
IoOrderService orderService;
@Resource
BasicCorpService basicCorpService;
@AuthRuleAnnotation("")
@GetMapping("spms/inv/sick/order/trace")
public BaseResponse filterSickTrace(FilterSickTraceRequest filterSickTraceRequest) {
if (StrUtil.isEmpty(filterSickTraceRequest.getSickAd())) {
return ResultVOUtils.error(500, "病人住院号不能为空!");
}
BasicCorpEntity basicCorpEntity = basicCorpService.selectByName(filterSickTraceRequest.getSickAd());
if (basicCorpEntity == null) {
return ResultVOUtils.error(500, "未查询到病人信息");
}
FilterOrderRequest orderFilterRequest = new FilterOrderRequest();
orderFilterRequest.setFromCorp(basicCorpEntity.getErpId());
List<IoOrderResponse> orderEntityList = orderService.filterList(orderFilterRequest);
PageInfo<IoOrderResponse> pageInfo;
pageInfo = new PageInfo<>(orderEntityList);
PageSimpleResponse<IoOrderResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(orderEntityList);
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -0,0 +1,9 @@
package com.glxp.api.req.inv;
import lombok.Data;
@Data
public class FilterSickTraceRequest {
private String sickAd; //病人住院号
}

@ -142,4 +142,10 @@ public class IoCodeResponse {
* *
*/ */
private String warehouseName; private String warehouseName;
private String ggxh;
private String ylqxzcrbarmc;
private String zczbhhzbapzbh;
private String manufactory;
} }

@ -50,18 +50,20 @@
<select id="filterList" resultType="com.glxp.api.res.inout.IoCodeResponse"> <select id="filterList" resultType="com.glxp.api.res.inout.IoCodeResponse">
select ic.*, select ic.*,
bp.cpmctymc productName, bp.cpmctymc productName,
ad.name deptName, bp.ggxh,bp.ylqxzcrbarmc,bp.zczbhhzbapzbh,bp.manufactory,
aw.name invName, ad.name deptName,
auth_space.name warehouseName, aw.name invName,
bc.name supName auth_space.name warehouseName,
bc.name supName
from io_code ic from io_code ic
left join auth_dept ad on ic.deptCode = ad.code left join auth_dept ad on ic.deptCode = ad.code
left join auth_warehouse aw on ic.invCode = aw.code left join auth_warehouse aw on ic.invCode = aw.code
left join auth_space on auth_space.code = ic.warehouseCode left join auth_space on auth_space.code = ic.warehouseCode
left join basic_udirel bu on bu.id = ic.relId left join basic_udirel bu on bu.id = ic.relId
left join basic_products bp on bu.uuid = bp.uuid left join basic_products bp on bu.uuid = bp.uuid
left join basic_corp bc on bc.erpId = ic.supId left join basic_corp bc on bc.erpId = ic.supId
<where> <where>
<if test="code != null and code != ''"> <if test="code != null and code != ''">
AND ic.code = #{code} AND ic.code = #{code}

Loading…
Cancel
Save