科内开单
This commit is contained in:
parent
25bd802e76
commit
94b31f131d
@ -28,5 +28,8 @@ public class LabReqdetail extends BaseEntity {
|
||||
private Date dtbk1;
|
||||
private Date dtbk2;
|
||||
private String bz3;
|
||||
private String bz4;
|
||||
private String bz5;
|
||||
private String bz6;
|
||||
|
||||
}
|
||||
|
||||
@ -7,4 +7,5 @@ import java.util.List;
|
||||
public interface LabReqdetailMapper {
|
||||
List<LabReqdetail> getLabReqdetailList(String sqh);
|
||||
int getCountByKey(String sqh);
|
||||
void insert(LabReqdetail labReqdetail);
|
||||
}
|
||||
|
||||
@ -676,4 +676,9 @@ public class CommonUtil {
|
||||
public SysUser getSysUserOne(String user_name){
|
||||
return sysUserCommMapper.getSysUserOne(user_name);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void insertLabReqdetail(LabReqdetail labReqdetail){
|
||||
labReqdetailMapper.insert(labReqdetail);
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,4 +10,25 @@
|
||||
select count(1) from lab_reqdetail where sqh = #{sqh}
|
||||
</select>
|
||||
|
||||
<insert id="insert" parameterType="com.czlis.common.core.domain.entity.lis.LabReqdetail">
|
||||
insert into lab_reqdetail (sqh, xh, sqxmdh, sqxmmc, sl, dj
|
||||
<if test="bz1 != null and bz1 != ''">, bz1</if>
|
||||
<if test="bz2 != null and bz2 != ''">, bz2</if>
|
||||
<if test="bz3 != null and bz3 != ''">, bz3</if>
|
||||
<if test="bz4 != null and bz4 != ''">, bz4</if>
|
||||
<if test="bz5 != null and bz5 != ''">, bz5</if>
|
||||
<if test="bz6 != null and bz6 != ''">, bz6</if>
|
||||
)
|
||||
values (
|
||||
#{sqh}, #{xh}, #{sqxmdh}, #{sqxmmc}, #{sl}, #{dj}
|
||||
<if test="bz1 != null and bz1 != ''">, #{bz1}</if>
|
||||
<if test="bz2 != null and bz2 != ''">, #{bz2}</if>
|
||||
<if test="bz3 != null and bz3 != ''">, #{bz3}</if>
|
||||
<if test="bz4 != null and bz4 != ''">, #{bz4}</if>
|
||||
<if test="bz5 != null and bz5 != ''">, #{bz5}</if>
|
||||
<if test="bz6 != null and bz6 != ''">, #{bz6}</if>
|
||||
|
||||
)
|
||||
</insert>
|
||||
|
||||
</mapper>
|
||||
|
||||
@ -1,9 +1,12 @@
|
||||
package com.czlis.mzcx.controller;
|
||||
|
||||
import com.czlis.common.core.controller.BaseController;
|
||||
import com.czlis.common.core.domain.Result;
|
||||
import com.czlis.common.core.domain.entity.lis.ComPat;
|
||||
import com.czlis.common.core.domain.entity.lis.LabReqmain;
|
||||
import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO;
|
||||
import com.czlis.mzcx.pojo.dto.ReqInputLisWorkReqInfoDTO;
|
||||
import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO;
|
||||
import com.czlis.mzcx.service.ReqInputLisWorkService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@ -15,7 +18,7 @@ import java.util.List;
|
||||
@Api(tags = "科内开单")
|
||||
@RestController
|
||||
@RequestMapping("/reqInput")
|
||||
public class ReqInputLisWorkController {
|
||||
public class ReqInputLisWorkController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ReqInputLisWorkService reqInputLisWorkService;
|
||||
@ -34,8 +37,11 @@ public class ReqInputLisWorkController {
|
||||
|
||||
@ApiOperation("保存病人信息")
|
||||
@PostMapping("/saveReqInfo")
|
||||
public Result saveReqInfo(@RequestBody LabReqmain labReqmain){
|
||||
return reqInputLisWorkService.saveReqInfo(labReqmain);
|
||||
public Result saveReqInfo(@RequestBody ReqInputLisWorkReqInfoDTO reqInputLisWorkReqInfoDTO){
|
||||
LabReqmain labReqmain = reqInputLisWorkReqInfoDTO.getLabReqmain();
|
||||
List<ReqInputLisWorkVO> reqInputLisWorkVOList = reqInputLisWorkReqInfoDTO.getReqInputLisWorkVOList();
|
||||
labReqmain.setZxys(getUsername());
|
||||
return reqInputLisWorkService.saveReqInfo(labReqmain,reqInputLisWorkVOList);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,17 @@
|
||||
package com.czlis.mzcx.pojo.dto;
|
||||
|
||||
import com.czlis.common.core.domain.entity.lis.LabReqmain;
|
||||
import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ReqInputLisWorkReqInfoDTO {
|
||||
private LabReqmain labReqmain;
|
||||
private List<ReqInputLisWorkVO> reqInputLisWorkVOList;
|
||||
}
|
||||
@ -4,13 +4,16 @@ import com.czlis.common.core.domain.Result;
|
||||
import com.czlis.common.core.domain.entity.lis.ComPat;
|
||||
import com.czlis.common.core.domain.entity.lis.LabReqmain;
|
||||
import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO;
|
||||
import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ReqInputLisWorkService {
|
||||
Result getPatientInfo(ComPat comPat);
|
||||
|
||||
Result queryPatList(ReqInputLisWorkDTO reqInputLisWorkDTO);
|
||||
|
||||
Result saveReqInfo(LabReqmain labReqmain);
|
||||
Result saveReqInfo(LabReqmain labReqmain, List<ReqInputLisWorkVO> reqInputLisWorkVOList);
|
||||
|
||||
Result queryXmInfoList();
|
||||
}
|
||||
|
||||
@ -3,11 +3,13 @@ package com.czlis.mzcx.service.impl;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.czlis.common.core.domain.Result;
|
||||
import com.czlis.common.core.domain.entity.lis.ComPat;
|
||||
import com.czlis.common.core.domain.entity.lis.LabReqdetail;
|
||||
import com.czlis.common.core.domain.entity.lis.LabReqmain;
|
||||
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
||||
import com.czlis.interfaceCommon.pojo.inter.DayMessage;
|
||||
import com.czlis.interfaceCommon.utils.CommonUtil;
|
||||
import com.czlis.interfaceCommon.utils.LisInterfaceUtil;
|
||||
import com.czlis.interfaceCommon.utils.LisUtil;
|
||||
import com.czlis.mzcx.mapper.ReqInputLisWorkMapper;
|
||||
import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO;
|
||||
import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO;
|
||||
@ -15,10 +17,10 @@ import com.czlis.mzcx.service.ReqInputLisWorkService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
@ -60,10 +62,48 @@ public class ReqInputLisWorkServiceImpl implements ReqInputLisWorkService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Result saveReqInfo(LabReqmain labReqmain) {
|
||||
public Result saveReqInfo(LabReqmain labReqmain,List<ReqInputLisWorkVO> reqInputLisWorkVOList) {
|
||||
String brxm = labReqmain.getBrxm();
|
||||
if(brxm == null || "".equals(brxm)) return new Result("-1","病人姓名不能为空!");
|
||||
return null;
|
||||
List<Map<String,Object>> reqInfoList = new ArrayList<>();
|
||||
for (ReqInputLisWorkVO reqInputLisWorkVO : reqInputLisWorkVOList) {
|
||||
String sfxmmc = reqInputLisWorkVO.getSfxmmc();
|
||||
String sflbdh = reqInputLisWorkVO.getSflbdh();
|
||||
if(sflbdh == null || "".equals(sflbdh)) return new Result("-1",sfxmmc+":没有分类,请先进行分类!");
|
||||
Map<String,Object> reqInfoMap = new HashMap<>();
|
||||
reqInfoMap.put("lab_reqmain_yblx",labReqmain.getYblx());
|
||||
reqInfoMap.put("lab_reqmain_brxm",labReqmain.getBrxm());
|
||||
reqInfoMap.put("lab_reqmain_brdh",labReqmain.getBrdh());
|
||||
reqInfoMap.put("lab_reqmain_brxb",labReqmain.getBrxb());
|
||||
reqInfoMap.put("lab_reqmain_jzbz","0");
|
||||
reqInfoMap.put("lab_reqmain_brsr",DateUtil.format(labReqmain.getBrsr(),"yyyy-MM-dd HH:mm:ss"));
|
||||
reqInfoMap.put("lab_reqmain_ksdh",labReqmain.getKsdh());
|
||||
reqInfoMap.put("lab_reqmain_sqys",labReqmain.getSqys());
|
||||
reqInfoMap.put("lab_reqmain_sqsj",DateUtil.format(labReqmain.getSqsj(),"yyyy-MM-dd HH:mm:ss"));
|
||||
reqInfoMap.put("lab_reqmain_ch",labReqmain.getCh());
|
||||
String value = commonUtil.getComOptValue("HISOPT", "sp_knkdbrly");
|
||||
if(value == null || "".equals(value)) value = "1";
|
||||
reqInfoMap.put("lab_reqmain_brly",value);
|
||||
reqInfoMap.put("lab_reqmain_zt","1");
|
||||
reqInfoMap.put("lab_reqmain_yljg","1");
|
||||
reqInfoMap.put("lab_reqmain_zxys",labReqmain.getZxys());
|
||||
reqInfoMap.put("lab_reqmain_jjzt","0");
|
||||
|
||||
|
||||
reqInfoMap.put("sqxmdh",reqInputLisWorkVO.getSfxmdh());
|
||||
reqInfoMap.put("sqxmmc",reqInputLisWorkVO.getSfxmmc());
|
||||
reqInfoMap.put("sl","1");
|
||||
reqInfoMap.put("dj",reqInputLisWorkVO.getDj());
|
||||
reqInfoMap.put("zt","1");
|
||||
reqInfoMap.put("jjzt","1");
|
||||
|
||||
reqInfoMap.put("sflbdh",reqInputLisWorkVO.getSflbdh());
|
||||
reqInfoList.add(reqInfoMap);
|
||||
|
||||
}
|
||||
//给默认值
|
||||
createReqInfo(reqInfoList);
|
||||
return new Result("0","保存数据成功!");
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -88,4 +128,119 @@ public class ReqInputLisWorkServiceImpl implements ReqInputLisWorkService {
|
||||
String format = String.format("%04d", mzseq);
|
||||
return "6" + head + format.substring(format.length()-4);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 生成申请单信息
|
||||
*/
|
||||
public void createReqInfo(List<Map<String,Object>> reqInfoList){
|
||||
List<LabReqmain> labReqmainList = new ArrayList<>();
|
||||
List<LabReqdetail> labReqdetailList = new ArrayList<>();
|
||||
reqInfoList.sort(new Comparator<Map<String,Object>>() {
|
||||
@Override
|
||||
public int compare(Map<String,Object> o1, Map<String,Object> o2) {
|
||||
String bz11 = LisUtil.isBank(o1.get("sflbdh").toString().trim());
|
||||
String bz12 = LisUtil.isBank(o2.get("sflbdh").toString().trim());
|
||||
return bz11.compareTo(bz12);
|
||||
}
|
||||
});
|
||||
|
||||
String sflbdh1 = "",sqh = "";
|
||||
String jymd = "";
|
||||
int xh = 0;
|
||||
int k = -1;
|
||||
LabReqmain labReqmain = null;
|
||||
for (Map<String, Object> stringObjectMap : reqInfoList) {
|
||||
String sflbdh = stringObjectMap.get("sflbdh").toString();
|
||||
LabReqdetail labReqdetail = new LabReqdetail();
|
||||
if(sflbdh.equals(sflbdh1)){
|
||||
xh++;
|
||||
jymd = jymd + "," + stringObjectMap.get("sqxmmc").toString();
|
||||
if(jymd.length() >= 120){
|
||||
jymd = jymd.substring(0,120);
|
||||
}
|
||||
labReqmain.setJymd(jymd);
|
||||
labReqmainList.set(k,labReqmain);
|
||||
|
||||
//写lab_reqdetail表
|
||||
labReqdetail.setSqh(sqh);
|
||||
labReqdetail.setXh(xh);
|
||||
labReqdetail.setSqxmdh(stringObjectMap.get("sqxmdh").toString());
|
||||
labReqdetail.setSqxmmc(stringObjectMap.get("sqxmmc").toString());
|
||||
labReqdetail.setSl(new BigDecimal(stringObjectMap.get("sl").toString()).intValue());
|
||||
labReqdetail.setDj(new BigDecimal(stringObjectMap.get("dj").toString()));
|
||||
labReqdetail.setZt(stringObjectMap.get("zt").toString());
|
||||
labReqdetail.setJjzt(stringObjectMap.get("jjzt").toString());
|
||||
labReqdetailList.add(labReqdetail);
|
||||
continue;
|
||||
}else{
|
||||
sqh = createSQH();
|
||||
xh = 1;
|
||||
sflbdh1 = sflbdh;
|
||||
labReqdetail.setSqh(sqh);
|
||||
labReqdetail.setXh(xh);
|
||||
}
|
||||
|
||||
labReqdetail.setSqh(sqh);
|
||||
labReqdetail.setXh(xh);
|
||||
labReqdetail.setSqxmdh(LisUtil.isBank(stringObjectMap.get("sqxmdh")));
|
||||
labReqdetail.setSqxmmc(stringObjectMap.get("sqxmmc").toString());
|
||||
labReqdetail.setSl(new BigDecimal(stringObjectMap.get("sl").toString()).intValue());
|
||||
labReqdetail.setDj(new BigDecimal(stringObjectMap.get("dj").toString()));
|
||||
labReqdetail.setZt(stringObjectMap.get("zt").toString());
|
||||
labReqdetail.setJjzt(stringObjectMap.get("jjzt").toString());
|
||||
labReqdetailList.add(labReqdetail);
|
||||
|
||||
jymd = stringObjectMap.get("sqxmmc").toString();
|
||||
|
||||
//写lab_reqmain 表
|
||||
labReqmain = new LabReqmain();
|
||||
k++;
|
||||
labReqmain.setJzbz(stringObjectMap.get("lab_reqmain_jzbz").toString());
|
||||
labReqmain.setYblx(stringObjectMap.get("lab_reqmain_yblx").toString());
|
||||
labReqmain.setKsdh( stringObjectMap.get("lab_reqmain_ksdh").toString());
|
||||
labReqmain.setSqys( LisUtil.isBank(stringObjectMap.get("lab_reqmain_sqys")));
|
||||
labReqmain.setBrdh( (String)stringObjectMap.get("lab_reqmain_brdh"));
|
||||
labReqmain.setBrxm( (String)stringObjectMap.get("lab_reqmain_brxm"));
|
||||
labReqmain.setBrxb( (String)stringObjectMap.get("lab_reqmain_brxb"));
|
||||
String brsr = stringObjectMap.get("lab_reqmain_brsr").toString();
|
||||
labReqmain.setBrsr(DateUtil.parse(brsr,"yyyy-MM-dd HH:mm:ss"));
|
||||
labReqmain.setSqsj(DateUtil.parse(stringObjectMap.get("lab_reqmain_sqsj").toString(),"yyyy-MM-dd HH:mm:ss"));
|
||||
labReqmain.setBgddh((String) stringObjectMap.get("sflbdh"));
|
||||
labReqmain.setYljg(stringObjectMap.get("lab_reqmain_yljg").toString());
|
||||
labReqmain.setZxys(stringObjectMap.get("lab_reqmain_zxys").toString());
|
||||
labReqmain.setZxsj(commonUtil.getCurrentTime());
|
||||
labReqmain.setCh((String) stringObjectMap.get("lab_reqmain_ch"));
|
||||
labReqmain.setSqh(sqh);
|
||||
// String brzd = (String)stringObjectMap.get("lab_reqmain_zd");
|
||||
// if(brzd == null) brzd = "";
|
||||
// if(brzd.length() >= 50){
|
||||
// brzd = brzd.substring(0,48);
|
||||
// }
|
||||
//labReqmain.setZd(brzd);
|
||||
if(jymd.length() >= 120){
|
||||
jymd = jymd.substring(0,120);
|
||||
}
|
||||
labReqmain.setJymd(jymd);
|
||||
labReqmain.setZt(stringObjectMap.get("lab_reqmain_zt").toString());
|
||||
labReqmain.setJjzt(stringObjectMap.get("lab_reqmain_jjzt").toString());
|
||||
labReqmain.setBrly(LisUtil.isBank(stringObjectMap.get("lab_reqmain_brly")));
|
||||
labReqmainList.add(k,labReqmain);
|
||||
}
|
||||
|
||||
//保存数据
|
||||
saveReqInfo(labReqmainList,labReqdetailList);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public void saveReqInfo(List<LabReqmain> labReqmainList,List<LabReqdetail> labReqdetailList){
|
||||
for (LabReqmain labReqmain : labReqmainList) {
|
||||
commonUtil.insertLabReqmain(labReqmain);
|
||||
}
|
||||
for (LabReqdetail labReqdetail : labReqdetailList) {
|
||||
commonUtil.insertLabReqdetail(labReqdetail);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -36,20 +36,21 @@
|
||||
|
||||
<select id="queryXmInfoList" resultType="com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO">
|
||||
<![CDATA[
|
||||
SELECT lab_feeitemclass.sflbmc,
|
||||
SELECT
|
||||
lab_feeitem_vs_class.sfxmdh,
|
||||
lab_feeitem_vs_class.xh,
|
||||
xm_fee.sfxmmc,
|
||||
xm_fee.bz,
|
||||
xm_fee.dj,
|
||||
xm_fee.spec,
|
||||
xm_fee.zjf,
|
||||
lab_feeitemclass.sflbdh,
|
||||
lab_feeitemclass.sflbmc,
|
||||
lab_feeitemclass.sflbjc,
|
||||
lab_feeitemclass.bkcolor,
|
||||
lab_feeitemclass.bglqdh,
|
||||
lab_feeitemclass.yblx,
|
||||
lab_feeitemclass.sampletips,
|
||||
lab_feeitem_vs_class.xh
|
||||
lab_feeitemclass.sampletips
|
||||
FROM lab_feeitem_vs_class INNER JOIN
|
||||
lab_feeitemclass ON
|
||||
lab_feeitem_vs_class.sflbdh = lab_feeitemclass.sflbdh INNER JOIN
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user