From 904fc4d5857060554d0fe3fab2b559667e1c2cbf Mon Sep 17 00:00:00 2001 From: linjj <850658129@qq.com> Date: Thu, 20 Jul 2023 16:20:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=AF=A6=E6=83=85=E6=A0=B9?= =?UTF-8?q?=E6=8D=AE=E5=8C=BB=E7=94=9F=E3=80=81=E6=8A=A4=E5=A3=AB=E4=BC=98?= =?UTF-8?q?=E5=85=88=E6=98=BE=E7=A4=BA=E7=94=B5=E5=AD=90=E7=97=85=E5=8E=86?= =?UTF-8?q?=E3=80=81=E6=8A=A4=E7=90=86=E6=96=87=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/emr/dao/Archive_MasterMapper.java | 3 + .../ipml/Archive_MasterServiceImpl.java | 84 +++++++++---------- src/main/java/com/emr/util/FieldSelector.java | 12 +++ src/main/java/com/emr/util/ListUtils.java | 73 ++++++++++++++++ src/main/resources/config/config.properties | 2 +- src/main/resources/config/jdbc.properties | 2 +- .../resources/mapper/Archive_MasterMapper.xml | 12 +++ .../js/lastVerifyList/lastVerifyList.js | 2 +- 8 files changed, 144 insertions(+), 46 deletions(-) create mode 100644 src/main/java/com/emr/util/FieldSelector.java create mode 100644 src/main/java/com/emr/util/ListUtils.java diff --git a/src/main/java/com/emr/dao/Archive_MasterMapper.java b/src/main/java/com/emr/dao/Archive_MasterMapper.java index 546f32f..50049e0 100644 --- a/src/main/java/com/emr/dao/Archive_MasterMapper.java +++ b/src/main/java/com/emr/dao/Archive_MasterMapper.java @@ -109,4 +109,7 @@ public interface Archive_MasterMapper { int insertCommonlyUsed(CommomVo commomVo); List selectCommonlyUsed(Archive_Master record); + + + List selectCommonlyUsedNew(@Param("ids") String ids); } \ No newline at end of file diff --git a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java index 3b7514c..ccd7e03 100644 --- a/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java +++ b/src/main/java/com/emr/service/ipml/Archive_MasterServiceImpl.java @@ -11,10 +11,7 @@ import com.emr.dao.*; import com.emr.entity.*; import com.emr.service.Archive_MasterService; import com.emr.service.Emr_Fault_DetailService; -import com.emr.util.ExceptionPrintUtil; -import com.emr.util.HttpClientUtils; -import com.emr.util.Msg; -import com.emr.util.OracleConnect; +import com.emr.util.*; import com.emr.vo.CommomVo; import com.emr.vo.User; import com.github.pagehelper.Page; @@ -1226,54 +1223,55 @@ public class Archive_MasterServiceImpl implements Archive_MasterService { @Override public void updateFiled(Archive_Master_Vo master) throws Exception{ // 从session获取用户名 + CommomVo commomVo=new CommomVo(); String username = (String) SecurityUtils.getSubject().getSession().getAttribute("userSession");//获取前面登录的用户名 SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String ids = master.getId(); - String[] idList = ids.split(","); + String[] idList = master.getId().split(","); + String ids = String.join(",", idList); List archiveFlowRoles = flowRoleMapper.selectAll(); - List archive_masterVos = archive_masterMapper.selectCommonlyUsed(master); + List archive_masterVos = archive_masterMapper.selectCommonlyUsedNew(ids); if(CollectionUtils.isEmpty(archive_masterVos)){ return; } - Archive_Master archive_master_vos = archive_masterVos.get(0); - CommomVo commomVo=new CommomVo(); - commomVo.setPatientId(archive_master_vos.getId()); - commomVo.setAdmissTimes(archive_master_vos.getVisitId()); - commomVo.setAdmissId(archive_master_vos.getInpNo()); - commomVo.setInpatientNo(archive_master_vos.getInpNo()); - commomVo.setName(archive_master_vos.getName()); + for (Archive_Master list:archive_masterVos){ + commomVo.setPatientId(list.getId()); + commomVo.setAdmissTimes(list.getVisitId()); + commomVo.setAdmissId(list.getInpNo()); + commomVo.setInpatientNo(list.getInpNo()); + commomVo.setName(list.getName()); commomVo.setCheckedDatetime(format1.format(new Date())); - commomVo.setSex(archive_master_vos.getSex()); - commomVo.setAdmissId(archive_master_vos.getId()); - String substring = archive_master_vos.getSubAssort().substring(0, 2); + commomVo.setSex(list.getSex()); + commomVo.setAdmissId(list.getId()); + String substring = list.getSubAssort().substring(0, 2); commomVo.setAge(substring); - DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - Date date1=null; - Date date2=null; - String dischargeDateTime = archive_master_vos.getDischargeDateTime(); - String admissionDateTime = archive_master_vos.getAdmissionDateTime(); - try { - date1=format.parse(dischargeDateTime); - date2=format.parse(admissionDateTime); - } catch (ParseException e) { - e.printStackTrace(); + DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date date1=null; + Date date2=null; + String dischargeDateTime = list.getDischargeDateTime(); + String admissionDateTime = list.getAdmissionDateTime(); + try { + date1=format.parse(dischargeDateTime); + date2=format.parse(admissionDateTime); + } catch (ParseException e) { + e.printStackTrace(); + } + Calendar ca1 = Calendar.getInstance(); + Calendar ca2 = Calendar.getInstance(); + ca1.setTime(date1); + ca2.setTime(date2); + long distanceMin =( ca1.getTimeInMillis()- ca2.getTimeInMillis())/(1000*60*60*24); + int i2= (int)distanceMin; + commomVo.setAdmissDays(i2); + int i = Integer.parseInt(substring); + int i1 = i * 12; + String s = String.valueOf(i1); + commomVo.setAgeMonth(s); + commomVo.setAdmissDate(list.getAdmissionDateTime()); + commomVo.setDisDate(list.getDischargeDateTime()); + commomVo.setDisDept(list.getDeptName1()); + commomVo.setAttending(list.getDoctorInCharge()); + archive_masterMapper.insertCommonlyUsed(commomVo); } - Calendar ca1 = Calendar.getInstance(); - Calendar ca2 = Calendar.getInstance(); - ca1.setTime(date1); - ca2.setTime(date2); - long distanceMin =( ca1.getTimeInMillis()- ca2.getTimeInMillis())/(1000*60*60*24); - int i2= (int)distanceMin; - commomVo.setAdmissDays(i2); - int i = Integer.parseInt(substring); - int i1 = i * 12; - String s = String.valueOf(i1); - commomVo.setAgeMonth(s); - commomVo.setAdmissDate(archive_master_vos.getAdmissionDateTime()); - commomVo.setDisDate(archive_master_vos.getDischargeDateTime()); - commomVo.setDisDept(archive_master_vos.getDeptName1()); - commomVo.setAttending(archive_master_vos.getDoctorInCharge()); - archive_masterMapper.insertCommonlyUsed(commomVo); for(String id : idList) { if(StringUtils.isNotBlank(id)) { //修改病案归档状态 diff --git a/src/main/java/com/emr/util/FieldSelector.java b/src/main/java/com/emr/util/FieldSelector.java new file mode 100644 index 0000000..077c034 --- /dev/null +++ b/src/main/java/com/emr/util/FieldSelector.java @@ -0,0 +1,12 @@ +package com.emr.util; + +/** + * @InterfaceName FieldSelector + * @Description + * @Author linjj + * @Date 2023/6/29 16:41 + * @Version 1.0 + */ +public interface FieldSelector { + FieldType select(Type type); +} diff --git a/src/main/java/com/emr/util/ListUtils.java b/src/main/java/com/emr/util/ListUtils.java new file mode 100644 index 0000000..17cceea --- /dev/null +++ b/src/main/java/com/emr/util/ListUtils.java @@ -0,0 +1,73 @@ +package com.emr.util; + +import org.springframework.util.CollectionUtils; + +import java.util.*; + +public final class ListUtils { + public static Map toMap(List list, FieldSelector selector) { + if (CollectionUtils.isEmpty(list)) return Collections.emptyMap(); + Map map = new HashMap<>(list.size()); + for (T t : list) { + K key = selector.select(t); + if (key != null) map.put(key, t); + } + return map; + } + + public static Map> groupBy(List list, FieldSelector selector) { + if (CollectionUtils.isEmpty(list)) return Collections.emptyMap(); + Map> map = new HashMap<>(); + for (T t : list) { + K key = selector.select(t); + if (key == null) continue; + if (!map.containsKey(key)) { + map.put(key, new ArrayList()); + } + map.get(key).add(t); + } + return map; + } + + public static List select(List list, FieldSelector selector) { + if (CollectionUtils.isEmpty(list)) return Collections.emptyList(); + List filedList = new ArrayList<>(list.size()); + for (T t : list) { + K key = selector.select(t); + if (key != null) filedList.add(key); + } + return filedList; + } + + public static List distinctSelect(List list, FieldSelector selector) { + if (CollectionUtils.isEmpty(list)) return Collections.emptyList(); + Set filedSet = new HashSet<>(); + for (T t : list) { + K key = selector.select(t); + if (key != null) filedSet.add(key); + } + return new ArrayList<>(filedSet); + } + + @SafeVarargs + public static List unionWithoutDuplicate(List... values) { + if (null == values || values.length <= 0) return Collections.emptyList(); + Set unionFiledSet = new HashSet<>(); + for (List value : values) { + if (!CollectionUtils.isEmpty(value)) { + unionFiledSet.addAll(value); + } + } + return new ArrayList<>(unionFiledSet); + } + + public static List skipDuplicateKey(List list, FieldSelector selector) { + if (CollectionUtils.isEmpty(list)) return Collections.emptyList(); + List filedList = new ArrayList<>(list.size()); + Map map = toMap(list, selector); + for (K key : map.keySet()) { + filedList.add(map.get(key)); + } + return filedList; + } +} diff --git a/src/main/resources/config/config.properties b/src/main/resources/config/config.properties index a5fb90f..dc35719 100644 --- a/src/main/resources/config/config.properties +++ b/src/main/resources/config/config.properties @@ -3,7 +3,7 @@ #POWER_PORT = 8081 POWER_IP = localhost -POWER_PORT = 8082 +POWER_PORT = 8083 #power\u6743\u9650\u7CFB\u7EDF\u7684\u670D\u52A1\u5668\u5730\u5740\u5934 POWER_URLHEAD = http://${POWER_IP}:${POWER_PORT}/power diff --git a/src/main/resources/config/jdbc.properties b/src/main/resources/config/jdbc.properties index 2b0b063..49f8c6a 100644 --- a/src/main/resources/config/jdbc.properties +++ b/src/main/resources/config/jdbc.properties @@ -1,7 +1,7 @@ #\u6570\u636E\u5E93IP dataBaseIp=localhost #\u6570\u636E\u5E93\u540D\u79F0 -dataBaseName=fs_record +dataBaseName=gm_record #\u6570\u636E\u5E93\u5BC6\u7801 dataBasePassword=admin123 diff --git a/src/main/resources/mapper/Archive_MasterMapper.xml b/src/main/resources/mapper/Archive_MasterMapper.xml index 9216f39..fde6765 100644 --- a/src/main/resources/mapper/Archive_MasterMapper.xml +++ b/src/main/resources/mapper/Archive_MasterMapper.xml @@ -1756,4 +1756,16 @@ where patient_id=#{patientId} + + + \ No newline at end of file diff --git a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js index c609946..863bdd5 100644 --- a/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js +++ b/src/main/webapp/static/js/lastVerifyList/lastVerifyList.js @@ -521,7 +521,7 @@ function approveMethod(){ $.ajax({ url: path+"/lastVerify/updateStateByArchivId", type: "POST", - data: {id: $("#archiveId").val(), remark: $("#verifyText").val(),changeReason:$("#changeReason").val(),checkedDatetime:$("#checkedDateTime").val(),status:$("#status1").val(),formToken:$("#formToken").val(), + data: {id: $("#archiveId").val(), remark: $("#verifyText").val(),changeReason:$("#changeReason").val(),checkedDatetime:$("#checkedDateTime").val(),status:128,formToken:$("#formToken").val(), paperPosition:paperPosition, paperPosition1:paperPosition1, paperPosition2:paperPosition2,