Commit e2dfda9c by zhu.zewen

药品专用登记区分科室和药房,以及对应专账也区分

parent d4ed9eaa
...@@ -29,7 +29,8 @@ public class BillDTO { ...@@ -29,7 +29,8 @@ public class BillDTO {
@ApiModelProperty(value = "药品数量") @ApiModelProperty(value = "药品数量")
private Integer physicNum; private Integer physicNum;
@ApiModelProperty(value = "类型:1-采购入库、2-申领入库、3-申领出库、4-使用出库、5-回收空安瓿、6-退回空安瓿、7-销毁空安瓿") @ApiModelProperty(value = "类型:1-采购入库、2-申领入库、3-申领出库、4-药品专用登记(科室)" +
"、5-回收空安瓿、6-退回空安瓿、7-销毁空安瓿、8-药品专用登记(药房)")
private Integer type; private Integer type;
@ApiModelProperty(value = "相关申请、入库等表id") @ApiModelProperty(value = "相关申请、入库等表id")
......
...@@ -10,7 +10,7 @@ import lombok.Data; ...@@ -10,7 +10,7 @@ import lombok.Data;
@ApiModel(description = "药品专用登记") @ApiModel(description = "药品专用登记")
@TableName("physic_record") @TableName("physic_record")
public class PhysicRecord extends BaseVersionEntity { public class PhysicRecord extends BaseVersionEntity {
@ApiModelProperty(value = "部门ID") @ApiModelProperty(value = "所属部门ID(科室、药房)")
private Long deptId; private Long deptId;
@ApiModelProperty(value = "药品名称") @ApiModelProperty(value = "药品名称")
...@@ -51,6 +51,9 @@ public class PhysicRecord extends BaseVersionEntity { ...@@ -51,6 +51,9 @@ public class PhysicRecord extends BaseVersionEntity {
@ApiModelProperty(value = "处方医生") @ApiModelProperty(value = "处方医生")
private String prescriptionDoctor; private String prescriptionDoctor;
@ApiModelProperty(value = "关联科室专用登记(药房时不为空)")
private Long relatedRecordId;
@ApiModelProperty(value = "状态:0-待调配、1-待发药、2- 待验收、3- 待复核、100-已完成") @ApiModelProperty(value = "状态:0-待调配、1-待发药、2- 待验收、3- 待复核、100-已完成")
private Integer status; private Integer status;
@ApiModelProperty(value = "调配人") @ApiModelProperty(value = "调配人")
......
...@@ -19,6 +19,7 @@ import com.jmai.physic.vo.PhysicRecordVO; ...@@ -19,6 +19,7 @@ import com.jmai.physic.vo.PhysicRecordVO;
import com.jmai.physic.vo.PhysicVO; import com.jmai.physic.vo.PhysicVO;
import com.jmai.sys.AbstractService; import com.jmai.sys.AbstractService;
import com.jmai.sys.consts.BizFileTypes; import com.jmai.sys.consts.BizFileTypes;
import com.jmai.sys.consts.enums.DeptEnum;
import com.jmai.sys.consts.enums.RoleTypeEum; import com.jmai.sys.consts.enums.RoleTypeEum;
import com.jmai.sys.ctx.SpringContextUtils; import com.jmai.sys.ctx.SpringContextUtils;
import com.jmai.sys.dto.BizFileDto; import com.jmai.sys.dto.BizFileDto;
...@@ -52,13 +53,13 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -52,13 +53,13 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
public List<PhysicRecord> physicRecordCreate(PhysicRecordCreateReq req) { public List<PhysicRecord> physicRecordCreate(PhysicRecordCreateReq req) {
List<PhysicRecord> records = new ArrayList<>(); List<PhysicRecord> records = new ArrayList<>();
for (PhysicRecordCreateReq.Physic physic : req.getPhysicList()) { for (PhysicRecordCreateReq.Physic physic : req.getPhysicList()) {
// 1)科室专账 // 1)科室专账(deptId=科室)
// 专账类型:2-药房,3-科室(参考组织部门) // 专账类型:2-药房,3-科室(参考组织部门)
PhysicRecord record = newRecord(req, physic, 3); PhysicRecord ksRecord = newRecord(req, physic, 3);
physicRecordMapper.insert(record); physicRecordMapper.insert(ksRecord);
if (ObjectUtil.isNotEmpty(req.getPrescriptionImages())) { if (ObjectUtil.isNotEmpty(req.getPrescriptionImages())) {
if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) { if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) {
bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE, record.getId().toString(), req.getPrescriptionImages()); bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE, ksRecord.getId().toString(), req.getPrescriptionImages());
} }
} }
...@@ -66,18 +67,20 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -66,18 +67,20 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
if (ObjectUtil.isNotEmpty(req.getSign())) { if (ObjectUtil.isNotEmpty(req.getSign())) {
PhysicRecordSignReq signReq = new PhysicRecordSignReq(); PhysicRecordSignReq signReq = new PhysicRecordSignReq();
copyTo(req.getSign(), signReq); copyTo(req.getSign(), signReq);
signReq.setPhysicRecordId(record.getId()); signReq.setPhysicRecordId(ksRecord.getId());
sign(signReq); sign(signReq);
} }
records.add(record); records.add(ksRecord);
// 2)药房专账 // 2)药房专账(deptId=药房)
PhysicRecord dupRecord = newRecord(req, physic, 2); PhysicRecord yfRecord = newRecord(req, physic, 2);
physicRecordMapper.insert(dupRecord); // 关联科室专账
yfRecord.setRelatedRecordId(ksRecord.getId());
physicRecordMapper.insert(yfRecord);
if (ObjectUtil.isNotEmpty(req.getPrescriptionImages())) { if (ObjectUtil.isNotEmpty(req.getPrescriptionImages())) {
if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) { if (CollectionUtils.isNotEmpty(req.getPrescriptionImages())) {
bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE, dupRecord.getId().toString(), req.getPrescriptionImages()); bizFileService.addBizFilesIfAbsent(BizFileTypes.PHYSIC_RECORD_IMAGE, yfRecord.getId().toString(), req.getPrescriptionImages());
} }
} }
} }
...@@ -87,7 +90,15 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -87,7 +90,15 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
private PhysicRecord newRecord(PhysicRecordCreateReq req, PhysicRecordCreateReq.Physic physic, Integer type) { private PhysicRecord newRecord(PhysicRecordCreateReq req, PhysicRecordCreateReq.Physic physic, Integer type) {
PhysicRecord record = new PhysicRecord(); PhysicRecord record = new PhysicRecord();
BeanUtil.copyProperties(req, record); BeanUtil.copyProperties(req, record);
record.setDeptId(SpringContextUtils.getDeptId()); if (ObjectUtil.equals(type, 2)) {
// 药房
Long yfDeptId = DeptEnum.YF.getCode();
record.setDeptId(yfDeptId);
} else {
// 用户所属科室
Long ksDeptId = SpringContextUtils.getDeptId();
record.setDeptId(ksDeptId);
}
record.setPhysicName(physic.getPhysicName()); record.setPhysicName(physic.getPhysicName());
record.setPhysicSpec(physic.getPhysicSpec()); record.setPhysicSpec(physic.getPhysicSpec());
record.setPhysicType(physic.getPhysicType()); record.setPhysicType(physic.getPhysicType());
...@@ -182,7 +193,7 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe ...@@ -182,7 +193,7 @@ public class PhysicRecordServiceImpl extends AbstractService implements PhysicRe
// 5)完成 => 生成专账 // 5)完成 => 生成专账
BillDTO billDTO = new BillDTO(); BillDTO billDTO = new BillDTO();
BeanUtil.copyProperties(physicRecord, billDTO); BeanUtil.copyProperties(physicRecord, billDTO);
billDTO.setType(4); billDTO.setType(ObjectUtil.equals(physicRecord.getType(), 2) ? 8 : 4);
billDTO.setDeptId(physicRecord.getDeptId()); billDTO.setDeptId(physicRecord.getDeptId());
billDTO.setRefId(physicRecord.getId()); billDTO.setRefId(physicRecord.getId());
physicBillService.createBill(billDTO); physicBillService.createBill(billDTO);
......
package com.jmai.sys.consts.enums;
import lombok.Getter;
/**
* 部门枚举
* @author Qoder
*/
@Getter
public enum DeptEnum {
YK(1, "药库"),
YF(2, "药房"),
KS(3, "科室");
private long code;
private String msg;
DeptEnum(long code, String msg) {
this.code = code;
this.msg = msg;
}
/**
* 根据编码获取枚举值
* @param code 编码
* @return 枚举值
*/
public static DeptEnum getEnum(long code) {
for (DeptEnum enums : DeptEnum.values()) {
if (enums.getCode() == code) {
return enums;
}
}
return null;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment