diff --git a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/KidInoculationRecords.java b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/KidInoculationRecords.java index a207284..aca0c79 100644 --- a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/KidInoculationRecords.java +++ b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/KidInoculationRecords.java @@ -18,6 +18,15 @@ public class KidInoculationRecords { private String vaccineNameTitle; private String vaccineType; private Integer cnt; + private String vaccineNameId; + + public String getVaccineNameId() { + return vaccineNameId; + } + + public void setVaccineNameId(String vaccineNameId) { + this.vaccineNameId = vaccineNameId; + } public String getBirthday() { return birthday; diff --git a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrder.java b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrder.java index 7065acf..65093bf 100644 --- a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrder.java +++ b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrder.java @@ -11,6 +11,15 @@ public class MedInoculateOrder { private String ioInoculateTime; private String ioOrderOPer; private String ioOrderTime; + private String ioIsDelete; + + public String getIoIsDelete() { + return ioIsDelete; + } + + public void setIoIsDelete(String ioIsDelete) { + this.ioIsDelete = ioIsDelete; + } public String getIoId() { return ioId; diff --git a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrderQuery.java b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrderQuery.java index 3f3f183..a92db29 100644 --- a/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrderQuery.java +++ b/mainData/src/main/java/com/lymsh/yimiao/main/data/model/MedInoculateOrderQuery.java @@ -14,6 +14,16 @@ public class MedInoculateOrderQuery extends BaseQuery{ private String ioOrderOPer; private String ioOrderTime; + public String getIoIsDelete() { + return ioIsDelete; + } + + public void setIoIsDelete(String ioIsDelete) { + this.ioIsDelete = ioIsDelete; + } + + private String ioIsDelete; + private List ids;//多个id情况 public List getIds() { diff --git a/mainData/src/main/resources/mainOrm/MedInoculateorder.xml b/mainData/src/main/resources/mainOrm/MedInoculateorder.xml index 8c41d8a..c9e1a0d 100644 --- a/mainData/src/main/resources/mainOrm/MedInoculateorder.xml +++ b/mainData/src/main/resources/mainOrm/MedInoculateorder.xml @@ -11,10 +11,11 @@ + @@ -58,13 +59,16 @@ and io_orderOper = #{ioOrderOPer,jdbcType=VARCHAR} and io_orderTime = #{ioOrderTime,jdbcType=VARCHAR} + + and io_isDelete = #{ioIsDelete,jdbcType=VARCHAR} + @@ -121,6 +122,7 @@ select count(1) from med_kids B.IC_JICI, C.VI_NAME, A.VN_NAME, + A.VN_ID, A.VN_VACCINETYPE, CCC.CNT FROM med_InoculateRecord B @@ -134,7 +136,8 @@ select count(1) from med_kids GROUP BY AA.VN_NAME) CCC ON A.VN_NAME=CCC.VN_NAME WHERE B.IC_DELETE = 1 AND B.IC_KIDID= #{recordKidId,jdbcType=VARCHAR} - + ORDER BY IC_INOCULATETIME DESC + diff --git a/webApi/src/main/java/com/lyms/yimiao/web/controller/v1/KidsController.java b/webApi/src/main/java/com/lyms/yimiao/web/controller/v1/KidsController.java index 956feb6..6083e94 100644 --- a/webApi/src/main/java/com/lyms/yimiao/web/controller/v1/KidsController.java +++ b/webApi/src/main/java/com/lyms/yimiao/web/controller/v1/KidsController.java @@ -302,35 +302,65 @@ public class KidsController extends BaseController { map.put("birthday", DateUtil.getSecond(DateUtil.parseYMD(kids.getBirthday()))); map.put("avatar", null);//先给默认头像 + //下次接种疫苗 MedInoculateOrderQuery inoculateorderQuery = new MedInoculateOrderQuery(); inoculateorderQuery.setIoKidId(kids.getId()); - //时间倒序 - inoculateorderQuery.setSort("io_inoculateDate desc"); + inoculateorderQuery.setIoIsDelete(isDelete); List inoculateorderList = medInoculateorderService.queryMedInoculateOrder(inoculateorderQuery); - if (CollectionUtils.isNotEmpty(inoculateorderList)) { - //取出离现在日期最近的一个预约接种 - MedInoculateOrder medInoculateorder = inoculateorderList.get(0); - //下次接种时间 - map.put("ioInoculateDate", DateUtil.getSecond(DateUtil.parseYMD(medInoculateorder.getIoInoculateDate()))); - //下次接种疫苗 - map.put("vaccineId", medInoculateorder.getIoVaccineId()); - MedVaccineName medVaccineName = medVaccineNameService.getMedVaccineName(medInoculateorder.getIoVaccineId()); - map.put("vaccineName", medVaccineName == null ? "" : medVaccineName.getVnName()); - //剂次 - int sum = medVaccineName.getVnMonthAge().split(",").length; + List list = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(inoculateorderList)) { //接种地点 - map.put("organizationId", medInoculateorder.getIoOrganizationId()); - MedOrganization medOrganization = medOrganizationService.getMedOrganization(medInoculateorder.getIoOrganizationId()); + MedInoculateOrder order = inoculateorderList.get(0); + map.put("organizationId", order.getIoOrganizationId()); + MedOrganization medOrganization = medOrganizationService.getMedOrganization(order.getIoOrganizationId()); map.put("organizationName", medOrganization == null ? "" : medOrganization.getoName()); + + for (MedInoculateOrder data : inoculateorderList){ + Map orderMap = new HashMap<>(); + //下次接种时间 + orderMap.put("ioInoculateDate", DateUtil.getSecond(DateUtil.parseYMD(data.getIoInoculateDate()))); + //下次接种疫苗ID + orderMap.put("vaccineId", data.getIoVaccineId()); + //下次接种疫苗名称 + MedVaccineName medVaccineName = medVaccineNameService.getMedVaccineName(data.getIoVaccineId()); + orderMap.put("vaccineName", medVaccineName == null ? "" : medVaccineName.getVnName()); + //剂次 + if (medVaccineName != null) { + //总针数 + int sum = medVaccineName.getVnMonthAge().split(",").length; + //预约打第几针 + int jiCi = 1; + + if (CollectionUtils.isNotEmpty(recordsList)) { + for (KidInoculationRecords records : recordsList) { + if (data.getIoVaccineId().equals(records.getVaccineNameId())) { + if (records.getJiCi() < sum) { + jiCi = jiCi + records.getJiCi(); + } + } + } + } + orderMap.put("sum",sum); + orderMap.put("jiCi",jiCi); + } + list.add(orderMap); + } + map.put("inoculate",list); + } else { - map.put("ioInoculateDate", null); - map.put("vaccineId", null); - map.put("vaccineName", null); map.put("organizationId", null); map.put("organizationName", null); + Map orderMap = new HashMap<>(); + orderMap.put("ioInoculateDate", null); + orderMap.put("vaccineId", null); + orderMap.put("vaccineName", null); + orderMap.put("sum",""); + orderMap.put("jiCi",""); + list.add(orderMap); + map.put("inoculate",list); } } else { ResultUtils.buildParameterErrorResultAndWrite(response, "宝宝信息不存在");