diff --git a/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/controller/v2/PersonTestingV2Controller.java b/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/controller/v2/PersonTestingV2Controller.java index 26ad77e..718b224 100644 --- a/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/controller/v2/PersonTestingV2Controller.java +++ b/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/controller/v2/PersonTestingV2Controller.java @@ -74,7 +74,7 @@ public class PersonTestingV2Controller { public Result save(@RequestBody PersonTestingDTO dto) throws ParseException { //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - return personTestingService.saveScanningInfo(dto); + return personTestingService.saveScanningInfoV2(dto); } @PutMapping diff --git a/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java b/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java index d753ab3..3c62725 100644 --- a/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java +++ b/epdc-cloud-custom/src/main/java/com/elink/esua/epdc/modules/epidemic/service/impl/PersonTestingServiceImpl.java @@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; import com.elink.esua.epdc.commons.tools.constant.FieldConstant; import com.elink.esua.epdc.commons.tools.enums.UserSexEnum; +import com.elink.esua.epdc.commons.tools.exception.RenException; 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.Result; @@ -164,7 +165,7 @@ public class PersonTestingServiceImpl extends BaseServiceImpl uploadResult = ossFeignClient.uploadBase64(form); if (!uploadResult.success()) { - return new Result().error("上传图片错误"); + throw new RenException("上传图片错误"); } if (StringUtils.isNotBlank(uploadResult.getData())) { entity.setImgUrl(uploadResult.getData()); @@ -186,24 +187,26 @@ public class PersonTestingServiceImpl extends BaseServiceImpl uploadResult = ossFeignClient.uploadBase64(form); - if (!uploadResult.success()) { - return new Result().error("上传图片错误"); - } - if (StringUtils.isNotBlank(uploadResult.getData())) { - entity.setImgUrl(uploadResult.getData()); - } entity.setTestingTime(date); + if (StringUtils.isNotBlank(dto.getImgCode())) { + UploadFormDTO form = new UploadFormDTO(); + form.setBase64String("data:image/png;base64," + dto.getImgCode()); + Result uploadResult = ossFeignClient.uploadBase64(form); + if (!uploadResult.success()) { + throw new RenException("上传图片错误"); + } + if (StringUtils.isNotBlank(uploadResult.getData())) { + entity.setImgUrl(uploadResult.getData()); + } + } insert(entity); return new Result().ok("录入成功"); } @@ -248,26 +251,6 @@ public class PersonTestingServiceImpl extends BaseServiceImpl> + * @describe: 接种信息列表 + * @author wangtong + * @date 2021/4/15 16:40 + * @params [params] + */ + @GetMapping("getEpidemicPage") + public Result> getEpidemicPage(@RequestParam Map params) { + // 按人员录入时间倒序排列 + PageData page = epidemicUserInfoService.getEpidemicPageV2(params); + return new Result>().ok(page); + } + + @GetMapping("getinfo/{id}") + public Result getinfo(@PathVariable("id") String id) { + VaccinationInfoResultV2DTO data = epidemicUserInfoService.getInfoV2(id); + return new Result().ok(data); + } +} diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java index faa1cce..5458f60 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java @@ -6,7 +6,9 @@ import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicRecordDetailDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicRecordListDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicUserInfoDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.result.EpidemicPageResultDTO; +import com.elink.esua.epdc.vaccine.epidemic.dto.result.EpidemicPageResultV2DTO; import com.elink.esua.epdc.vaccine.epidemic.dto.result.VaccinationInfoResultDTO; +import com.elink.esua.epdc.vaccine.epidemic.dto.result.VaccinationInfoResultV2DTO; import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -71,12 +73,12 @@ public interface EpidemicUserInfoDao extends BaseDao { EpidemicUserInfoEntity selectByIdCard(@Param("id") Long id); /** - * @describe: 根据身份证号查询信息 - * @author wangtong - * @date 2021/8/21 16:15 - * @params [idCard] - * @return com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity - */ + * @return com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity + * @describe: 根据身份证号查询信息 + * @author wangtong + * @date 2021/8/21 16:15 + * @params [idCard] + */ EpidemicUserInfoEntity selectInfoByIdCard(@Param("idCard") String idCard); /** @@ -97,6 +99,15 @@ public interface EpidemicUserInfoDao extends BaseDao { */ List getEpidemicPage(Map params); + /** + * @return List + * @describe: 接种信息列表 + * @author rongchao + * @date 2021/8/30 + * @params params + */ + List getEpidemicPageV2(Map params); + /** * 查询接种信息 * @@ -107,6 +118,15 @@ public interface EpidemicUserInfoDao extends BaseDao { */ VaccinationInfoResultDTO selectInfo(Long id); + /** + * @return VaccinationInfoResultDTO + * @describe: 查询接种信息 + * @author rongchao + * @date 2021/8/31 + * @params id + */ + VaccinationInfoResultV2DTO selectInfoV2(String id); + /** * 查询异类接种信息 * diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/EpidemicUserInfoDTOV2.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/EpidemicUserInfoDTOV2.java new file mode 100644 index 0000000..98e390e --- /dev/null +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/EpidemicUserInfoDTOV2.java @@ -0,0 +1,82 @@ +package com.elink.esua.epdc.vaccine.epidemic.dto; + +// import io.swagger.annotations.ApiModel; +// import io.swagger.annotations.ApiModelProperty; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 疫情防控信息表 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 2021-01-26 + */ +@Data +// @ApiModel(value = "疫情防控信息表") +public class EpidemicUserInfoDTOV2 implements Serializable { + private static final long serialVersionUID = 1L; + + // @ApiModelProperty(value = "主键") + private String id; + + // @ApiModelProperty(value = "姓名") + private String userName; + + // @ApiModelProperty(value = "身份证号") + private String idCard; + + // @ApiModelProperty(value = "户籍地code") + private String householdRegisterCode; + + // @ApiModelProperty(value = "户籍地名称") + private String householdRegisterName; + + // @ApiModelProperty(value = "户籍地详细地址") + private String householdRegisterDetail; + + // @ApiModelProperty(value = "乐观锁") + private Integer revision; + + // @ApiModelProperty(value = "创建人") + private String createdBy; + + // @ApiModelProperty(value = "创建时间") + private Date createdTime; + + // @ApiModelProperty(value = "更新人") + private String updatedBy; + + // @ApiModelProperty(value = "更新时间") + private Date updatedTime; + + // @ApiModelProperty(value = "逻辑删除标识") + private String delFlag; + + // @ApiModelProperty(value = "接种次数") + private Integer vaccinationNum; + + // @ApiModelProperty(value = "接种状态") + private Integer vaccinationState; + + // @ApiModelProperty(value = "是否接种") + private String isInoculate; + + private Integer maxDose; + + /** + * 县内居住地名称 + */ + private String liveAddressName; + /** + * 社区/村庄 + */ + private String community; + /** + * 网格名称 + */ + private String gridName; +} \ No newline at end of file diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/EpidemicPageResultV2DTO.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/EpidemicPageResultV2DTO.java new file mode 100644 index 0000000..79e3732 --- /dev/null +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/EpidemicPageResultV2DTO.java @@ -0,0 +1,66 @@ +package com.elink.esua.epdc.vaccine.epidemic.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author rongchao + * @since 2021/8/31 + */ +@Data +public class EpidemicPageResultV2DTO implements Serializable { + /** + * + */ + private String id; + /** + * 姓名 + */ + private String residentsName; + /** + * 性别 + */ + private String residentsSex; + /** + * 手机号 + */ + private String residentsPhone; + /** + * 身份证号 + */ + private String residentsIdentityNo; + /** + * + */ + private String residentsNation; + /** + * 户籍 + */ + private String householdRegistrationPlace; + /** + * + */ + private String helpStatus; + + /** + * 出生年月 + */ + private String residentsBirthday; + /** + * + */ + private String familyCategory; + /** + * 疫苗接种状态 + */ + private String vaccinationState; + /** + * 疫苗接种次数 + */ + private String vaccinationNum; + /** + * 房屋地址 + */ + private String houseAddress; +} \ No newline at end of file diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/VaccinationInfoResultV2DTO.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/VaccinationInfoResultV2DTO.java new file mode 100644 index 0000000..526bd53 --- /dev/null +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dto/result/VaccinationInfoResultV2DTO.java @@ -0,0 +1,36 @@ +package com.elink.esua.epdc.vaccine.epidemic.dto.result; + +// import io.swagger.annotations.ApiModel; +// import io.swagger.annotations.ApiModelProperty; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 接种信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 2021-04-16 + */ +@Data +public class VaccinationInfoResultV2DTO implements Serializable { + private static final long serialVersionUID = 1L; + + private String id; + private String residentsName; + private String residentsIdentityNo; + private String residentsPhone; + private String residentsSex; + private String residentsBirthday; + private Integer vaccinationNum; + private String vaccinationState; + private String companyId; + private String siteId; + private Integer dose; + private String batchNo; + + +} \ No newline at end of file diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java index 1deedfd..dce5649 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java @@ -9,9 +9,12 @@ import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicRecordListDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicReportUserInfoDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicUserInfoDTO; import com.elink.esua.epdc.vaccine.epidemic.dto.result.EpidemicPageResultDTO; +import com.elink.esua.epdc.vaccine.epidemic.dto.result.EpidemicPageResultV2DTO; import com.elink.esua.epdc.vaccine.epidemic.dto.result.VaccinationInfoResultDTO; +import com.elink.esua.epdc.vaccine.epidemic.dto.result.VaccinationInfoResultV2DTO; import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity; import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoDTO; +import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoV2DTO; import java.util.List; import java.util.Map; @@ -100,6 +103,15 @@ public interface EpidemicUserInfoService extends CrudService getEpidemicPage(Map params); + /** + * @return PageData + * @describe: 接种信息列表 + * @author rongchao + * @date 2021/8/30 + * @params params + */ + PageData getEpidemicPageV2(Map params); + /** * 查询接种信息 * @@ -110,6 +122,15 @@ public interface EpidemicUserInfoService extends CrudService getEpiPageV2(Map params) { + //分页参数 + long curPage = 1; + long limit = 10; + + if (params.get(Constant.PAGE) != null) { + curPage = Long.parseLong((String) params.get(Constant.PAGE)); + } + if (params.get(Constant.LIMIT) != null) { + limit = Long.parseLong((String) params.get(Constant.LIMIT)); + } + + //分页对象 + Page page = new Page<>(curPage, limit); + + //分页参数 + params.put(Constant.PAGE, page); + + return page; + } + @Override public PageData getEpidemicPage(Map params) { IPage page = getEpiPage(params); @@ -473,6 +504,21 @@ public class EpidemicUserInfoServiceImpl extends CrudServiceImpl(list, page.getTotal()); } + @Override + public PageData getEpidemicPageV2(Map params) { + IPage page = getEpiPageV2(params); + + UserDetail user = SecurityUser.getUser(); + if (user == null) { + throw new RenException("用户未登录"); + } + Map authParams = vaccinationUserRoleService.getVaccinationAuthParams(user.getId()); + params.putAll(authParams); + + List list = baseDao.getEpidemicPageV2(params); + return new PageData<>(list, page.getTotal()); + } + @Override public VaccinationInfoResultDTO getInfo(Long id) { VaccinationInfoResultDTO dto = baseDao.selectInfo(id); @@ -489,6 +535,12 @@ public class EpidemicUserInfoServiceImpl extends CrudServiceImpl>().ok(page); } + @GetMapping("pageV2") + public Result> pageV2(@RequestParam Map params) { + PageData page = populationInformationService.listPageV2(params); + return new Result>().ok(page); + } + @GetMapping("{id}") public Result get(@PathVariable("id") String id) { PopulationInformationDTO populationInformationDTOS = populationInformationService.get(id); @@ -89,6 +97,19 @@ public class PopulationInformationController { return populationInformationService.save(dto); } + @PutMapping("updatePopulationInformation") + public Result updatePopulationInformation(@RequestBody PopulationInformationDTO dto) { + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + PopulationInformationEntity entity = new PopulationInformationEntity(); + BeanUtils.copyProperties(dto, entity); + boolean success = populationInformationService.updateById(entity); + if (success) { + return new Result(); + } + return new Result().error(); + } + @PutMapping public Result update(@RequestBody PopulationInformationDTO dto) { //效验数据 diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/dao/PopulationInformationDao.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/dao/PopulationInformationDao.java index 3a398ee..73fff0f 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/dao/PopulationInformationDao.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/dao/PopulationInformationDao.java @@ -23,6 +23,7 @@ import com.elink.esua.epdc.dto.house.PopulationInformationDTO; import com.elink.esua.epdc.dto.house.form.*; import com.elink.esua.epdc.dto.house.result.*; import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicUserInfoDTO; +import com.elink.esua.epdc.vaccine.epidemic.dto.EpidemicUserInfoDTOV2; import com.elink.esua.epdc.vaccine.house.entity.PopulationInformationEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -54,7 +55,7 @@ public interface PopulationInformationDao extends BaseDao selectListByIdentityNos(@Param("residentsIdentityNos") List residentsIdentityNos); + List selectListByIdentityNos(@Param("residentsIdentityNos") List residentsIdentityNos); /** * @return com.elink.esua.epdc.dto.PopulationInformationDTO @@ -74,6 +75,15 @@ public interface PopulationInformationDao extends BaseDao selectListOfPopulationInformationDTO(Map params); + /** + * @return List + * @describe: + * @author rongchao + * @date 2021/8/28 + * @params params + */ + List selectListOfPopulationInformationDTOV2(Map params); + /** * @return java.util.List * @Description 人口信息详细列表 @@ -244,4 +254,6 @@ public interface PopulationInformationDao extends BaseDao + * @Description 人口信息列表 * @Author songyunpeng - * @Date 2020/8/25 + * @Date 2020/8/25 * @Param [params] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ PageData listPage(Map params); + /** - * @Description 获取机动车列表信息 + * @return PageData + * @describe: 人口信息列表 + * @author rongchao + * @date 2021/8/28 + * @params params + */ + PageData listPageV2(Map params); + + /** + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Description 获取机动车列表信息 * @Author songyunpeng - * @Date 2020/8/26 + * @Date 2020/8/26 * @Param [params] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ PageData motorVehiclePage(Map params); /** - * @Description 获取机动车列表信息 --导出查询 + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Description 获取机动车列表信息 --导出查询 * @Author songyunpeng - * @Date 2020/8/26 + * @Date 2020/8/26 * @Param [params] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ List motorVehicleList(Map params); + /** - * @Description 获取居民信息采集总览数据 + * @return com.elink.esua.epdc.dto.PopulationInfoOverviewDTO + * @Description 获取居民信息采集总览数据 * @Author songyunpeng - * @Date 2020/8/28 + * @Date 2020/8/28 * @Param [] - * @return com.elink.esua.epdc.dto.PopulationInfoOverviewDTO **/ PopulationInfoOverviewDTO getPopulationInfoOverview(); + /** - * @Description 获取居民信息采集总览 + * @return com.elink.esua.epdc.dto.PopulationInfoOverviewDTO + * @Description 获取居民信息采集总览 * @Author songyunpeng - * @Date 2021/6/23 + * @Date 2021/6/23 * @Param [communityId] - * @return com.elink.esua.epdc.dto.PopulationInfoOverviewDTO **/ PopulationInfoOverviewDTO getPopulationInfoOverviewForScreen(String communityId); + /** - * @Description 清空入党时间 + * @return void + * @Description 清空入党时间 * @Author songyunpeng - * @Date 2020/9/4 + * @Date 2020/9/4 * @Param [id] - * @return void **/ void setJionTimeToNull(String id); + /** - * @Description 清空失业登记时间 + * @return void + * @Description 清空失业登记时间 * @Author songyunpeng - * @Date 2020/9/4 + * @Date 2020/9/4 * @Param [id] - * @return void **/ void setUnemploymentRegisterTimeToNull(String id); + /** - * @Description 大屏找人接口 + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Description 大屏找人接口 * @Author songyunpeng - * @Date 2020/9/14 + * @Date 2020/9/14 * @Param [epdcScreenSelectPeopleFormDTO] - * @return com.elink.esua.epdc.commons.tools.utils.Result> **/ PageData selectPeople(EpdcScreenSelectPeopleFormDTO epdcScreenSelectPeopleFormDTO); + /** - * @Description 大屏找人详情接口 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @Description 大屏找人详情接口 * @Author songyunpeng - * @Date 2020/9/14 + * @Date 2020/9/14 * @Param [dto] - * @return com.elink.esua.epdc.commons.tools.utils.Result **/ Result selectPeopleDetail(EpdcScreenSelectPeopleDetailFormDTO dto); + /** - * @Description 房屋用途数据接口 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @Description 房屋用途数据接口 * @Author songyunpeng - * @Date 2020/9/15 + * @Date 2020/9/15 * @Param [] - * @return com.elink.esua.epdc.commons.tools.utils.Result **/ Result housingUse(); + /** - * @Description 网格排名 + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @Description 网格排名 * @Author songyunpeng - * @Date 2020/9/15 + * @Date 2020/9/15 * @Param [dto] - * @return com.elink.esua.epdc.commons.tools.utils.Result **/ PageData gridRanking(EpdcScreenGridRankingFormDTO dto); + /** - * @Description 一人找房接口 + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Description 一人找房接口 * @Author songyunpeng - * @Date 2020/9/19 + * @Date 2020/9/19 * @Param [dto] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ PageData selectHouseByPeople(EpdcScreenHouseInfoByPeopleFormDTO dto); + /** - * @Description 以房找人接口 + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Description 以房找人接口 * @Author songyunpeng - * @Date 2020/9/19 + * @Date 2020/9/19 * @Param [dto] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ PageData selectPeopleByHouse(EpdcScreenPopulationInfoByHouseFormDTO dto); + /** - * @Description 以城找人 + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Description 以城找人 * @Author songyunpeng - * @Date 2020/9/19 + * @Date 2020/9/19 * @Param [dto] - * @return com.elink.esua.epdc.commons.tools.page.PageData **/ PageData selectPeopleByCurrentAddress(EpdcScreenResidentInfoByCurrentAddressFormDTO dto); /** + * @return java.util.List * @Description 以城找人 - pc * @Author songyunpeng - * @Date 2021/1/4 + * @Date 2021/1/4 * @Param [params] - * @return java.util.List **/ List selectPeopleByCurrentAddressForPc(Map params); + /** * 以城找人 - pc导出 * @@ -243,12 +270,23 @@ public interface PopulationInformationService extends BaseService selectPeopleByCurrentAddressExportList(Map params); + /** + * @return java.util.List * @Description 以城找人 - pc - count * @Author songyunpeng - * @Date 2021/1/4 + * @Date 2021/1/4 * @Param [params] - * @return java.util.List **/ Integer selectCountPeopleByCurrentAddressForPc(Map params); + + /** + * @return Result + * @describe: + * @author rongchao + * @date 2021/8/31 + * @params dto + * @params methodFlag + */ + Result updateVaccinationInfo(VaccinationInfoV2DTO dto, boolean methodFlag); } diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/service/impl/HousingInformationServiceImpl.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/service/impl/HousingInformationServiceImpl.java index 20184d6..14d7075 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/service/impl/HousingInformationServiceImpl.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/house/service/impl/HousingInformationServiceImpl.java @@ -450,7 +450,7 @@ public class HousingInformationServiceImpl extends BaseServiceImpl(list, page.getTotal()); } + @Override + public PageData listPageV2(Map params) { + IPage page = getPage(params); + List list = baseDao.selectListOfPopulationInformationDTOV2(params); + return new PageData<>(list, page.getTotal()); + } + @Override public PageData motorVehiclePage(Map params) { IPage page = getPage(params); @@ -583,4 +596,60 @@ public class PopulationInformationServiceImpl extends BaseServiceImpl 0) { + // 如果还有接种记录那么就是接种中 + // 虽然更新接种剂次为最大值-1,但实际上不一定能查到最大值-1条数据,数据不对应时需要补录 + entity.setVaccinationNum(dose - 1); + entity.setVaccinationState(1); + } else { + // 如果库里没有接种记录了,直接归为未接种,数据需要补录 + entity.setVaccinationNum(0); + entity.setVaccinationState(0); + } + + } + int successNum = baseDao.updateById(entity); + if (successNum == 0) { + return new Result(); + } else { + return new Result().error(); + } + } } diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/controller/v2/VaccinationInfoV2Controller.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/controller/v2/VaccinationInfoV2Controller.java new file mode 100644 index 0000000..ab1f0ee --- /dev/null +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/controller/v2/VaccinationInfoV2Controller.java @@ -0,0 +1,50 @@ +package com.elink.esua.epdc.vaccine.vim.controller.v2; + +import com.elink.esua.epdc.commons.api.version.ApiVersion; +import com.elink.esua.epdc.commons.tools.annotation.LogOperation; +import com.elink.esua.epdc.commons.tools.constant.Constant; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.ExcelUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.commons.tools.validator.AssertUtils; +import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; +import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; +import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; +import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup; +import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoDTO; +import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoV2DTO; +import com.elink.esua.epdc.vaccine.vim.dto.result.EpdcAppVimInfoResultDTO; +import com.elink.esua.epdc.vaccine.vim.excel.VaccinationInfoExcel; +import com.elink.esua.epdc.vaccine.vim.service.VaccinationInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 接种信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 2021-04-16 + */ +@ApiVersion(2) +@RestController +@RequestMapping("vaccinationinfo" + Constant.VERSION_CONTROL) +public class VaccinationInfoV2Controller { + @Autowired + private VaccinationInfoService vaccinationInfoService; + + + @PostMapping + @LogOperation("保存") + public Result save(@RequestBody VaccinationInfoV2DTO dto) { + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + + return vaccinationInfoService.saveNewV2(dto); + } +} \ No newline at end of file diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dao/VaccinationInfoDao.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dao/VaccinationInfoDao.java index 80847c3..51919b2 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dao/VaccinationInfoDao.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dao/VaccinationInfoDao.java @@ -2,6 +2,7 @@ package com.elink.esua.epdc.vaccine.vim.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoDTO; +import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoV2DTO; import com.elink.esua.epdc.vaccine.vim.dto.result.EpdcAppVimInfoResultDTO; import com.elink.esua.epdc.vaccine.vim.entity.VaccinationInfoEntity; import org.apache.ibatis.annotations.Mapper; @@ -39,6 +40,16 @@ public interface VaccinationInfoDao extends BaseDao { */ List checkVaccination(VaccinationInfoDTO dto); + /** + * 检验接种情况 + * + * @param dto + * @return java.util.List + * @author zhy + * @date 2021/4/22 18:35 + */ + List checkVaccinationV2(VaccinationInfoV2DTO dto); + /** * 查询地址为空的记录 * diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dto/VaccinationInfoV2DTO.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dto/VaccinationInfoV2DTO.java new file mode 100644 index 0000000..54628cd --- /dev/null +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/dto/VaccinationInfoV2DTO.java @@ -0,0 +1,110 @@ +package com.elink.esua.epdc.vaccine.vim.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 接种信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 2021-04-16 + */ +@Data +// @ApiModel(value = "接种信息") +public class VaccinationInfoV2DTO implements Serializable { + private static final long serialVersionUID = 1L; + + // @ApiModelProperty(value = "ID") + private String id; + + // @ApiModelProperty(value = "真实姓名") + private String residentsName; + + // @ApiModelProperty(value = "身份证号") + private String residentsIdentityNo; + + // @ApiModelProperty(value = "手机号") + private String residentsPhone; + + // @ApiModelProperty(value = "性别(女性-0,男性-1)") + private String sex; + + // @ApiModelProperty(value = "接种人县/区") + private String county; + + // @ApiModelProperty(value = "接种人街道/乡镇") + private String street; + + // @ApiModelProperty(value = "接种人街道/乡镇ID") + private String streetId; + + // @ApiModelProperty(value = "接种人社区/村") + private String community; + + // @ApiModelProperty(value = "接种人网格") + private String grid; + + // @ApiModelProperty(value = "小区名称") + private String villageName; + + // @ApiModelProperty(value = "住处(楼栋-单元-房间)") + private String dwellingPlace; + + // @ApiModelProperty(value = "接种时间") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private String vaccinationTime; + + // @ApiModelProperty(value = "接种时年龄") + private Integer age; + + // @ApiModelProperty(value = "剂次,第几针") + private Integer dose; + + private Integer maxDose; + + // @ApiModelProperty(value = "疫苗种类id") + private Long vaccineId; + + // @ApiModelProperty(value = "生产企业id") + private Long companyId; + private String company; + + // @ApiModelProperty(value = "接种单位/地点ID") + private Long siteId; + private String site; + + // @ApiModelProperty(value = "疫苗生成批次、批号") + private String batchNo; + + // @ApiModelProperty(value = "接种状态") + private Integer vaccinationState; + + // @ApiModelProperty(value = "删除标识 0:未删除,1:已删除") + private String delFlag; + + // @ApiModelProperty(value = "乐观锁") + private Integer revision; + + // @ApiModelProperty(value = "创建人") + private String createdBy; + + // @ApiModelProperty(value = "创建时间") + private Date createdTime; + + // @ApiModelProperty(value = "更新人") + private String updatedBy; + + // @ApiModelProperty(value = "更新时间") + private Date updatedTime; + + // @ApiModelProperty(value = "创建人姓名") + private String creatorName; + + +} \ No newline at end of file diff --git a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/VaccinationInfoService.java b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/VaccinationInfoService.java index 0be039b..2d8e558 100644 --- a/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/VaccinationInfoService.java +++ b/epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/vim/service/VaccinationInfoService.java @@ -4,6 +4,7 @@ package com.elink.esua.epdc.vaccine.vim.service; import com.elink.esua.epdc.commons.mybatis.service.CrudService; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoDTO; +import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoV2DTO; import com.elink.esua.epdc.vaccine.vim.dto.result.EpdcAppVimInfoResultDTO; import com.elink.esua.epdc.vaccine.vim.entity.VaccinationInfoEntity; import org.springframework.web.multipart.MultipartFile; @@ -29,6 +30,15 @@ public interface VaccinationInfoService extends CrudService checkVaccination(VaccinationInfoDTO dto); + /** + * @return List + * @describe: 检验接种情况 + * @author rongchao + * @date 2021/8/31 + * @params dto + */ + List checkVaccinationV2(VaccinationInfoV2DTO dto); + /** * 获取接种信息 * @@ -59,6 +69,15 @@ public interface VaccinationInfoService extends CrudService checkVaccinationV2(VaccinationInfoV2DTO dto) { + return baseDao.checkVaccinationV2(dto); + } + @Override public boolean beforeDelete(VaccinationInfoDTO dto) { VaccinationInfoDTO checkDto = new VaccinationInfoDTO(); @@ -155,6 +165,24 @@ public class VaccinationInfoServiceImpl extends BaseVimCurdServiceImpl updateList = Lists.newArrayList(); -// List existUserList = epidemicUserInfoDao.selectByIdCards(idCards); - List existUserList = populationInformationDao.selectListByIdentityNos(idCards); - for (EpidemicUserInfoDTO item : existUserList) { + List existUserList = populationInformationDao.selectListByIdentityNos(idCards); + for (EpidemicUserInfoDTOV2 item : existUserList) { if (null == item) { continue; } @@ -246,7 +272,6 @@ public class VaccinationInfoServiceImpl extends BaseVimCurdServiceImpl UPDATE epidemic_user_info set DEL_FLAG = '1' - WHERE - ID_CARD = #{idCard} + WHERE ID_CARD = #{idCard} UPDATE epidemic_user_info @@ -30,7 +29,7 @@ ,VACCINATION_STATE = #{vaccinationState} WHERE - ID_CARD = #{idCard} + ID_CARD = #{idCard} + + + + + + + + UPDATE epidemic_user_info + SET age = IFNULL( + ( + YEAR (now()) - IFNULL(substring (ID_CARD, 7, 4), 0) + ), + 0 + ) + WHERE DEL_FLAG = '0' + AND ID_CARD IS NOT NULL + AND REVISION = '0' + AND LENGTH(ID_CARD) = 18 + + + + + - - - - - - - - UPDATE epidemic_user_info - SET age = IFNULL( + - select * from epidemic_user_info - where ID_CARD=#{idCard} - and del_flag='0' + select + id, + MAX(DOSE) DOSE, + COMPANY_ID, + SITE_ID, + BATCH_NO, + IDENTITY_NO + from + vaccination_info + group by + IDENTITY_NO) + + t on + i.RESIDENTS_IDENTITY_NO = t.IDENTITY_NO + where + i.DEL_FLAG = '0' + and i.id = #{id} diff --git a/epdc-cloud-vim-yushan/src/main/resources/mapper/house/PopulationInformationDao.xml b/epdc-cloud-vim-yushan/src/main/resources/mapper/house/PopulationInformationDao.xml index cf6093c..d32814b 100644 --- a/epdc-cloud-vim-yushan/src/main/resources/mapper/house/PopulationInformationDao.xml +++ b/epdc-cloud-vim-yushan/src/main/resources/mapper/house/PopulationInformationDao.xml @@ -145,6 +145,90 @@ group by t.ID order by t.CREATED_TIME desc + + + @@ -662,7 +746,7 @@ + UPDATE epdc_population_information diff --git a/epdc-cloud-vim-yushan/src/main/resources/mapper/vim/VaccinationInfoDao.xml b/epdc-cloud-vim-yushan/src/main/resources/mapper/vim/VaccinationInfoDao.xml index 9842da5..419a201 100644 --- a/epdc-cloud-vim-yushan/src/main/resources/mapper/vim/VaccinationInfoDao.xml +++ b/epdc-cloud-vim-yushan/src/main/resources/mapper/vim/VaccinationInfoDao.xml @@ -90,6 +90,19 @@ v.CREATED_TIME DESC + +