|
@@ -0,0 +1,163 @@
|
|
|
+package com.diagbot.facade;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.diagbot.dto.TemplateInfoDTO;
|
|
|
+import com.diagbot.dto.TemplateInfoPageDTO;
|
|
|
+import com.diagbot.entity.TemplateInfo;
|
|
|
+import com.diagbot.enums.IsDeleteEnum;
|
|
|
+import com.diagbot.exception.CommonErrorCode;
|
|
|
+import com.diagbot.exception.CommonException;
|
|
|
+import com.diagbot.service.impl.TemplateInfoServiceImpl;
|
|
|
+import com.diagbot.util.BeanUtil;
|
|
|
+import com.diagbot.util.DateUtil;
|
|
|
+import com.diagbot.util.GsonUtil;
|
|
|
+import com.diagbot.util.ListUtil;
|
|
|
+import com.diagbot.vo.TemplateIdVO;
|
|
|
+import com.diagbot.vo.TemplateInfoPageVO;
|
|
|
+import com.diagbot.vo.TemplateInfoRevampVO;
|
|
|
+import com.diagbot.vo.TemplateInfosIdVO;
|
|
|
+import com.diagbot.vo.TemplateInfosVO;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author wangfeng
|
|
|
+ * @Description: 病历模板
|
|
|
+ * @date 2018年11月16日 上午11:24:36
|
|
|
+ */
|
|
|
+@Component
|
|
|
+public class TemplateInfoFacade extends TemplateInfoServiceImpl {
|
|
|
+ /**
|
|
|
+ * 根据模板id 修改模板名
|
|
|
+ *
|
|
|
+ * @param templateInfoRevampVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean updateByIdUsName(TemplateInfoRevampVO templateInfoRevampVO) {
|
|
|
+ //1.先判断数据是否存在有效
|
|
|
+ QueryWrapper<TemplateInfo> templateInfoFand = new QueryWrapper<>();
|
|
|
+ templateInfoFand
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("id", templateInfoRevampVO.getId());
|
|
|
+ int sum = count(templateInfoFand);
|
|
|
+ if (sum == 0) {
|
|
|
+ throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板不存在");
|
|
|
+ }
|
|
|
+ //2.再判断该医院下模板名是否重复存在
|
|
|
+ QueryWrapper<TemplateInfo> templates = new QueryWrapper<>();
|
|
|
+ Map<String, Object> mapAll = new HashMap<>();
|
|
|
+ mapAll.put("hospital_id", templateInfoRevampVO.getHospitalId());
|
|
|
+ mapAll.put("is_deleted", IsDeleteEnum.N.getKey());
|
|
|
+ mapAll.put("name", templateInfoRevampVO.getModeName());
|
|
|
+ templates.allEq(mapAll);
|
|
|
+ TemplateInfo datas = getOne(templates, false);
|
|
|
+ if (datas != null) {
|
|
|
+ throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板名已存在");
|
|
|
+ }
|
|
|
+ //3.修改表数据的模板名字
|
|
|
+ TemplateInfo templateInfo = new TemplateInfo();
|
|
|
+ templateInfo.setId(templateInfoRevampVO.getId());//模板id
|
|
|
+ templateInfo.setName(templateInfoRevampVO.getModeName());//模板名称
|
|
|
+ templateInfo.setGmtModified(DateUtil.now());//修改时间
|
|
|
+ boolean res = updateById(templateInfo);
|
|
|
+ if (!res) {
|
|
|
+ throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
|
|
|
+ }
|
|
|
+
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 保存模板
|
|
|
+ *
|
|
|
+ * @param templateInfosVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean saveTemplateInfo(TemplateInfosVO templateInfosVO) {
|
|
|
+ //1.判断该医院下是否存在模板名相同的数据
|
|
|
+ TemplateInfo templateInfo = new TemplateInfo();
|
|
|
+ QueryWrapper<TemplateInfo> templateInfoFand = new QueryWrapper<>();
|
|
|
+ Map<String, Object> mapAll = new HashMap<>();
|
|
|
+ mapAll.put("hospital_id", templateInfosVO.getHospitalId());
|
|
|
+ mapAll.put("is_deleted", IsDeleteEnum.N.getKey());
|
|
|
+ mapAll.put("name", templateInfosVO.getModeName());
|
|
|
+
|
|
|
+ templateInfoFand.allEq(mapAll);
|
|
|
+ int sum = count(templateInfoFand);
|
|
|
+ if (sum != 0) {
|
|
|
+ throw new CommonException(CommonErrorCode.NOT_EXISTS, "该模板名存在");
|
|
|
+ }
|
|
|
+ //2.获取传入的数据,保存到数据表中。
|
|
|
+ templateInfo.setGmtCreate(DateUtil.now());//创建时间
|
|
|
+ templateInfo.setHospitalId(templateInfosVO.getHospitalId());//医院id
|
|
|
+ templateInfo.setSex(templateInfosVO.getSex());
|
|
|
+ templateInfo.setPreview(templateInfosVO.getPreview());//文本的展示
|
|
|
+ templateInfo.setDataJson(templateInfosVO.getDataJson());//页面json
|
|
|
+ templateInfo.setName(templateInfosVO.getModeName());//模板名称
|
|
|
+ boolean res = save(templateInfo);
|
|
|
+ if (!res) {
|
|
|
+ throw new CommonException(CommonErrorCode.INSERT_DATA_FAILED);
|
|
|
+ }
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据模板id批量删除模板
|
|
|
+ *
|
|
|
+ * @param templateInfosIdVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean cancelTemplateInfo(TemplateInfosIdVO templateInfosIdVO) {
|
|
|
+ //1.获取传入的ids数据
|
|
|
+ String ids = templateInfosIdVO.getIds();
|
|
|
+ //2.截取到最后一个
|
|
|
+ String substring = ids.substring(0, ids.length());
|
|
|
+ //System.out.println(substring);
|
|
|
+ //3.以逗号分割
|
|
|
+ String[] splitIds = substring.split(",");
|
|
|
+ //验证转化好的参数
|
|
|
+ if (ListUtil.isEmpty(ListUtil.arrayToList(splitIds))) {
|
|
|
+ throw new CommonException(CommonErrorCode.PARAM_IS_ERROR, "请输入模板id");
|
|
|
+ }
|
|
|
+ //把分割的id数据传入对象中,在表中批量删除
|
|
|
+ UpdateWrapper<TemplateInfo> templateInfoNew = new UpdateWrapper<>();
|
|
|
+ templateInfoNew
|
|
|
+ .in("id", ListUtil.arrayToList(splitIds))
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("is_deleted", IsDeleteEnum.Y.getKey())
|
|
|
+ .set("gmt_modified", DateUtil.now());
|
|
|
+ boolean res = update(new TemplateInfo(), templateInfoNew);
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param templateInfoPageVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public IPage<TemplateInfoPageDTO> getTemplatePageAlls(TemplateInfoPageVO templateInfoPageVO) {
|
|
|
+ IPage<TemplateInfoPageDTO> TemplateInfoData = getTemplatePages(templateInfoPageVO);
|
|
|
+ return TemplateInfoData;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param templateIdVO
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public TemplateInfoDTO getTemplateIdAlls(TemplateIdVO templateIdVO) {
|
|
|
+ //根据模板id在数据表中查出相应的模板数据
|
|
|
+ QueryWrapper<TemplateInfo> templateInfoQuery = new QueryWrapper<>();
|
|
|
+ templateInfoQuery
|
|
|
+ .eq("id", templateIdVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey());
|
|
|
+ TemplateInfoDTO data = new TemplateInfoDTO();
|
|
|
+ TemplateInfo datas = getOne(templateInfoQuery, false);
|
|
|
+ //过滤
|
|
|
+ BeanUtil.copyProperties(datas, data);
|
|
|
+ return data;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|