diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java index 4e6de0f..7e396b8 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java @@ -449,7 +449,7 @@ public class EpidemicUserInfoServiceImpl extends CrudServiceImpl { + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author zhy + * @date 2021/5/18 10:29 + */ + List getVaccinationInfoList(Map params); + /** * 检验接种情况 * diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/impl/VaccinationInfoServiceImpl.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/impl/VaccinationInfoServiceImpl.java index 0d79cee..4e06b38 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/impl/VaccinationInfoServiceImpl.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/impl/VaccinationInfoServiceImpl.java @@ -4,7 +4,10 @@ import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.constant.NumConstant; +import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; import com.elink.esua.epdc.commons.tools.utils.FileUtils; import com.elink.esua.epdc.commons.tools.utils.Result; @@ -81,14 +84,12 @@ public class VaccinationInfoServiceImpl extends BaseVimCurdServiceImpl page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, VaccinationInfoDTO.class); - }*/ + IPage page = getPage(params, FieldConstant.CREATED_TIME, false); + List list = baseDao.getVaccinationInfoList(params); + return new PageData<>(list, page.getTotal()); + } @Override public List checkVaccination(VaccinationInfoDTO dto) { diff --git a/epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml b/epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml index e420708..cf6264f 100644 --- a/epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml +++ b/epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml @@ -234,8 +234,8 @@ select i.id as infoId, r.id as inoutId, '平阴县' as city, - '榆山街道' as street, - '370124001'as streetId, + r.LIVE_ADDRESS_NAME as street, + r.LIVE_ADDRESS_CODE as streetId, r.COMMUNITY, r.GRID_NAME, r.PLOT, @@ -251,11 +251,7 @@ IFNULL(i.VACCINATION_STATE, 0) AS VACCINATION_STATE, r.CREATED_TIME from epidemic_user_info i - left join (select * - from epidemic_user_inout_record as b - where DEL_FLAG='0' - and not exists(select 1 from epidemic_user_inout_record where ID_CARD= b.ID_CARD - and b.CREATED_TIME<CREATED_TIME ))r on r.ID_CARD=i.ID_CARD + LEFT JOIN epidemic_user_inout_record r ON i.ID_CARD = r.ID_CARD where i.DEL_FLAG='0' and r.DEL_FLAG='0' @@ -267,6 +263,7 @@ and i.USER_NAME like '%${userName}%' + GROUP BY i.ID ORDER BY i.CREATED_TIME DESC + SELECT + v.* + FROM + vaccination_info v + + INNER JOIN ( + SELECT + IDENTITY_NO, + max(DOSE) AS maxDose + FROM + vaccination_info + WHERE + DEL_FLAG = '0' + GROUP BY + IDENTITY_NO + ) vi ON vi.IDENTITY_NO = v.IDENTITY_NO + AND vi.maxDose = v.DOSE + + WHERE + v.DEL_FLAG = '0' + + AND v.REAL_NAME LIKE concat('%', #{realName}, '%') + + + AND v.IDENTITY_NO LIKE concat('%', #{identityNo}, '%') + + + AND v.MOBILE LIKE concat('%', #{mobile}, '%') + + + AND v.COMPANY_ID = #{companyId} + + + AND datediff(NOW(), v.CREATED_TIME) >= #{vaccTime} + + + AND v.DOSE = #{vaccNo} + + +