患者处方相关修改

zyy_db
anthonywj 2 years ago
parent 270410daea
commit d345794cdb

@ -7,12 +7,17 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.BasicSkPrescribeDiEntity;
import com.glxp.api.entity.basic.BasicSkSickerEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.basic.BasicSkPrescribeDiRequest;
import com.glxp.api.req.basic.GetSickPrescribeRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.BasicSkPrescribeDiService;
import com.glxp.api.service.basic.BasicSkPrescribeService;
import com.glxp.api.service.basic.BasicSkSickerService;
import com.glxp.api.service.inout.IoAddInoutService;
import com.glxp.api.service.inout.IoOrderDetailCodeService;
import com.glxp.api.service.inout.IoOrderService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@ -45,6 +50,34 @@ public class BasicSickPrescribeDiController {
}
/**
*
*
* @return
*/
@GetMapping("/udiwms/basic/sk/prescribe/check")
public BaseResponse checkPrescribe(BasicSkPrescribeDiRequest basicSkPrescribeDiRequest) {
List<BasicSkPrescribeDiEntity> basicSkPrescribeDiEntities;
if (StrUtil.isEmpty(basicSkPrescribeDiRequest.getAdNum()))
return ResultVOUtils.error(500, "病人住院信息");
if (StrUtil.isEmpty(basicSkPrescribeDiRequest.getBillNo())) {
basicSkPrescribeDiEntities = basicSkPrescribeDiService.findBySkAdNum(basicSkPrescribeDiRequest.getAdNum());
return ResultVOUtils.success(basicSkPrescribeDiEntities);
}
List<IoOrderDetailCodeEntity> orderDetailCodeEntities = orderDetailCodeService.findByOrderId(basicSkPrescribeDiRequest.getBillNo());
IoOrderEntity orderEntity = orderService.findByBillNo(basicSkPrescribeDiRequest.getBillNo());
basicSkPrescribeDiEntities = addInoutService.checkPrescirbe(orderDetailCodeEntities, orderEntity);
return ResultVOUtils.success(basicSkPrescribeDiEntities);
}
@Resource
IoOrderDetailCodeService orderDetailCodeService;
@Resource
IoAddInoutService addInoutService;
@Resource
IoOrderService orderService;
/**
*
*/
@ -71,4 +104,5 @@ public class BasicSickPrescribeDiController {
return ResultVOUtils.success(pageSimpleResponse);
}
}

@ -1,5 +1,6 @@
package com.glxp.api.controller.basic;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.thread.ThreadUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.CusRedissonAnnotation;
@ -57,9 +58,13 @@ public class BasicSickerController extends BaseController {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
ThreadUtil.execAsync(() -> {
basicSkSickerService.downloadSicker(getSickRequest, null);
});
if (CollUtil.isNotEmpty(getSickRequest.getSelectSickers())) {
basicSkSickerService.replaceBatchs(getSickRequest.getSelectSickers());
} else {
ThreadUtil.execAsync(() -> {
basicSkSickerService.downloadSicker(getSickRequest, null);
});
}
return ResultVOUtils.success("后台已开始下载,请稍后刷新查看!");
}

@ -11,9 +11,11 @@ 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.Constant;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.*;
import com.glxp.api.entity.system.CompanyEntity;
@ -26,6 +28,7 @@ import com.glxp.api.res.inout.CptTraceResultResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderDetailVo;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
import com.glxp.api.service.inout.impl.IoCodeService;
@ -95,6 +98,9 @@ public class IoOrderDetailResultController extends BaseController {
return ResultVOUtils.page(pageInfo);
}
@Resource
InvWarehouseService invWarehouseService;
/**
*
*
@ -121,7 +127,14 @@ public class IoOrderDetailResultController extends BaseController {
}
orderDetailResultRequest.setActions(actions);
AuthAdmin authAdmin = customerService.getUserBean();
if (StrUtil.isBlank(orderDetailResultRequest.getInvCode())) {
if (orderDetailResultRequest.getActionType().equals(Constant.ORDER_ACTION_PRE_DETAIL)) {
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByPreInv();
orderDetailResultRequest.setInvCode(invWarehouseEntity.getCode());
} else if (orderDetailResultRequest.getActionType().equals(Constant.ORDER_ACTION_PREIN_DETAIL)) {
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByPreInInv();
orderDetailResultRequest.setInvCode(invWarehouseEntity.getCode());
} else if (StrUtil.isBlank(orderDetailResultRequest.getInvCode())) {
orderDetailResultRequest.setInvCode(authAdmin.getLocInvCode());
}
List<IoOrderDetailResultResponse> list = orderDetailResultService.filterOrderList(orderDetailResultRequest);

@ -467,5 +467,10 @@ public class BasicBussinessTypeEntity {
@TableField(value = "vailPrescribe")
private Boolean vailPrescribe;
/**
*
*/
@TableField(value = "inputSick")
private Boolean inputSick;
}

@ -1,15 +1,14 @@
package com.glxp.api.entity.basic;
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 io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import lombok.Data;
/**
*
*
@ -128,6 +127,20 @@ public class BasicSkPrescribeDiEntity implements Serializable {
@TableField(value = "amount")
private BigDecimal amount;
/**
*
*/
@TableField(exist = false)
private Integer realCount;
/**
*
*/
@TableField(exist = false)
private BigDecimal realPrice;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}

@ -204,4 +204,11 @@ public class ThrProductsEntity {
@TableField("prcitmcode")
private String prcitmcode;
/**
* /
*/
@TableField("invCode")
private String invCode;
}

@ -11,44 +11,43 @@ public class BasicSkPrescribeDiRequest extends ListPageRequest {
/**
*
*/
@TableField(value = "pId")
private Long pId;
/**
*
*/
@TableField(value = "sickerCode")
private String sickerCode;
/**
*
*/
@TableField(value = "adNum")
private String adNum;
/**
*
*/
@TableField(value = "prescribeCode")
private String prescribeCode;
/**
* id
*/
@TableField(value = "relId")
private Long relId;
/**
*
*/
@TableField(value = "thrName")
private String thrName;
/**
*
*/
@TableField(value = "thrCode")
private String thrCode;
/**
*
*/
private String billNo;
}

@ -314,4 +314,5 @@ public class BussinessTypeSaveRequest {
*/
private Integer deptNoInvType;
private Boolean vailPrescribe;
private Boolean inputSick;
}

@ -134,5 +134,6 @@ public class FilterBussinessTypeRequest extends ListPageRequest {
*/
private String detailType;
private Boolean vailPrescribe;
private Boolean inputSick;
}

@ -1,8 +1,11 @@
package com.glxp.api.req.basic;
import com.glxp.api.res.basic.BasicSkSickerResponse;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
import java.util.List;
@Data
public class GetSickRequest extends ListPageRequest {
@ -16,5 +19,7 @@ public class GetSickRequest extends ListPageRequest {
private String thirdSys;
private List<BasicSkSickerResponse> selectSickers;
}

@ -190,4 +190,5 @@ public class BasicBussinessTypeResponse {
*/
private Integer deptNoInvType;
private Boolean vailPrescribe;
private Boolean inputSick;
}

@ -52,6 +52,7 @@ public class ThrProductsResponse {
private String manufactoryCode;
private String supCode;
private String prcitmcode;
private String invCode;
public String getSpec() {
if(StrUtil.isNotEmpty(spec)){

@ -20,4 +20,7 @@ public interface BasicSkPrescribeDiService extends IService<BasicSkPrescribeDiEn
List<BasicSkPrescribeDiEntity> filterList(BasicSkPrescribeDiRequest basicSkPrescribeDiRequest);
List<BasicSkPrescribeDiEntity> findBySkAdNum(String adNum);
}

@ -64,6 +64,13 @@ public class BasicSkSickerService extends ServiceImpl<BasicSkSickerMapper, Basic
return basicSkSickerMapper.selectOne(new QueryWrapper<BasicSkSickerEntity>().eq("adNum", adNum).last("limit 1"));
}
public void replaceBatchs(List<BasicSkSickerResponse> basicSkSickerEntities) {
basicSkSickerEntities.forEach(item -> {
BasicSkSickerEntity basicSkSickerEntity = new BasicSkSickerEntity();
BeanUtil.copyProperties(item, basicSkSickerEntity);
basicSkSickerMapper.replace(basicSkSickerEntity);
});
}
public BaseResponse downloadSicker(GetSickRequest request, Integer startPage) {
int page = (int) redisUtil.get("thr_sicker_page");

@ -1,5 +1,7 @@
package com.glxp.api.service.basic.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.entity.basic.BasicSkPrescribeDiEntity;
@ -32,6 +34,13 @@ public class BasicSkPrescribeDiServiceImpl extends ServiceImpl<BasicSkPrescribeD
return data;
}
@Override
public List<BasicSkPrescribeDiEntity> findBySkAdNum(String adNum) {
if (StrUtil.isEmpty(adNum))
return Collections.emptyList();
return super.baseMapper.selectList(new QueryWrapper<BasicSkPrescribeDiEntity>().eq("adNum", adNum));
}
}

@ -2,6 +2,7 @@ package com.glxp.api.service.inout;
import cn.hutool.core.bean.BeanUtil;
import com.glxp.api.entity.basic.*;
import com.glxp.api.service.BasicSkPrescribeDiService;
import com.glxp.api.service.basic.*;
import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.service.inv.impl.InvProductDetailService;
@ -1177,4 +1178,39 @@ public class IoAddInoutService {
}
@Resource
BasicSkPrescribeDiService basicSkPrescribeDiService;
/**
* (
*/
public void checkPrescirbe(BasicBussinessTypeEntity bussinessTypeEntity, IoCodeTempEntity codeTempEntity, IoOrderEntity orderEntity) {
if (StrUtil.isEmpty(orderEntity.getSickerAdNum())) {
return;
}
// basicSkPrescribeDiService.
}
/**
* (
*/
public List<BasicSkPrescribeDiEntity> checkPrescirbe(List<IoOrderDetailCodeEntity> orderDetailCodeEntities, IoOrderEntity orderEntity) {
List<BasicSkPrescribeDiEntity> skPrescribeDiEntities = basicSkPrescribeDiService.findBySkAdNum(orderEntity.getSickerAdNum());
if (skPrescribeDiEntities.size() > 0) {
for (BasicSkPrescribeDiEntity skPrescribeDiEntity : skPrescribeDiEntities) {
for (IoOrderDetailCodeEntity orderDetailCodeEntity : orderDetailCodeEntities) {
if (IntUtil.value(skPrescribeDiEntity.getRelId()) == IntUtil.value(orderDetailCodeEntity.getBindRlFk())) {
skPrescribeDiEntity.setRealCount(IntUtil.value(skPrescribeDiEntity.getRealCount()) + IntUtil.value(orderDetailCodeEntity.getReCount()));
skPrescribeDiEntity.setRealPrice(orderDetailCodeEntity.getPrice());
}
}
}
}
return skPrescribeDiEntities;
}
}

@ -76,6 +76,6 @@
AND basic_sk_sicker.code LIKE concat('%', #{code}, '%')
</if>
</where>
limit 1,10
limit 0,10
</select>
</mapper>

@ -171,7 +171,7 @@
(id, code, `name`, measname, spec, registerNo, manufactory,
cplb, flbm, qxlb, ybbm, sptm, tyshxydm, zczbhhzbapzbh, ylqxzcrbarmc, ylqxzcrbarywmc, cpms,
thirdSysFk, updateTime, supName, model, standard, qtbm, zczyxqz, remark, remark1, remark2, remark3,
price, createUser, createTime, updateUser, manufactoryCode, supCode, type, prcitmcode)
price, createUser, createTime, updateUser, manufactoryCode, supCode, type, prcitmcode,invCode)
values (#{id},
#{code},
#{name},
@ -203,7 +203,7 @@
#{price},
#{createUser},
#{createTime},
#{updateUser}, #{manufactoryCode}, #{supCode}, #{type}, #{prcitmcode})
#{updateUser}, #{manufactoryCode}, #{supCode}, #{type}, #{prcitmcode},#{invCode})
</insert>
<select id="selectByLastTime" resultType="com.glxp.api.entity.thrsys.ThrProductsEntity">
@ -219,7 +219,7 @@
cplb, flbm, qxlb, ybbm, sptm, tyshxydm, zczbhhzbapzbh, ylqxzcrbarmc, ylqxzcrbarywmc, cpms,
thirdSysFk, updateTime, supName, model, standard, qtbm, zczyxqz, remark, remark1, remark2, remark3,
price,
createUser, createTime, updateUser, manufactoryCode, supCode, type, prcitmcode)
createUser, createTime, updateUser, manufactoryCode, supCode, type, prcitmcode,invCode)
values
<foreach collection="list" index="index" item="item" open="(" close=")" separator=",">
#{item.code},
@ -252,7 +252,7 @@
#{item.price},
#{item.createUser},
#{item.createTime},
#{item.updateUser}, #{item.manufactoryCode}, #{item.supCode}, #{item.type}, #{item.prcitmcode}
#{item.updateUser}, #{item.manufactoryCode}, #{item.supCode}, #{item.type}, #{item.prcitmcode},#{item.invCode}
</foreach>
</insert>
@ -286,7 +286,7 @@
remark3,
price,
manufactoryCode,
supCode,prcitmcode
supCode,prcitmcode,invCode
from thr_products
<where>
<if test="code != null and code != ''">
@ -332,6 +332,8 @@
supCode = #{supCode,jdbcType=VARCHAR},
type = #{type,jdbcType=VARCHAR},
prcitmcode = #{prcitmcode,jdbcType=VARCHAR},
invCode = #{invCode,jdbcType=VARCHAR},
</set>
where id = #{id,jdbcType=INTEGER}
</update>

@ -159,11 +159,15 @@ CALL Pro_Temp_ColumnWork('basic_udirel', 'uploadFlag', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_udirel', 'uploadMsg', 'varchar(1024)', 1);
CALL Pro_Temp_ColumnWork('thr_products', 'prcitmcode', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('thr_products', 'invCode', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_sk_prescribe', 'adNum', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_sk_prescribe_item', 'adNum', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_sk_prescribe_item_detail', 'nameCode', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_sk_prescribe_item_detail', 'amount', 'decimal(10, 3)', 1);
CALL Pro_Temp_ColumnWork('basic_sk_prescribe_item_detail', 'adNum', 'varchar(255)', 1);
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'vailPrescribe', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'inputSick', 'tinyint', 1);
CALL Pro_Temp_ColumnWork('io_order', 'sickerAdNum', 'varchar(255)', 1);

Loading…
Cancel
Save