Browse Source

我的家庭相关接口

feature/user_house_import
wanggongfeng 3 years ago
parent
commit
c73b3512e0
  1. 19
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java
  2. 32
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java
  3. 62
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java
  4. 123
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/AppFamilyController.java
  5. 30
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java
  6. 2
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/PlotBuildingController.java
  7. 2
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/PlotCoordinateController.java
  8. 32
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/dao/EpidemicBuildingUnitDao.java
  9. 10
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/dao/EpidemicUnitOwnerDao.java
  10. 30
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/EpidemicBuildingUnitService.java
  11. 30
      epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java
  12. 37
      epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml
  13. 40
      epdc-cloud-vim-yushan/src/main/resources/mapper/personroom/EpidemicBuildingUnitDao.xml
  14. 34
      epdc-cloud-vim-yushan/src/main/resources/mapper/personroom/EpidemicUnitOwnerDao.xml

19
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/dao/EpidemicUserInfoDao.java

@ -3,14 +3,10 @@ package com.elink.esua.epdc.vaccine.epidemic.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO;
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.EpidemicUserDeptInfoDTO;
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.dto.personroom.form.GetMemberListFormDTO;
import com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO;
import com.elink.esua.epdc.vaccine.epidemic.dto.*;
import com.elink.esua.epdc.vaccine.epidemic.dto.result.*;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -263,4 +259,11 @@ public interface EpidemicUserInfoDao extends BaseDao<EpidemicUserInfoEntity> {
* @date 2022/5/30 9:27
*/
EpidemicUnitOwnerDTO getOwner(Map<String, Object> params);
/**
* 获取成员信息
* @param formDTO
* @return
*/
FamilyMemberInfoResultDTO getFamilyMember(GetMemberListFormDTO formDTO);
}

32
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/EpidemicUserInfoService.java

@ -5,13 +5,15 @@ import com.elink.esua.epdc.commons.mybatis.service.CrudService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO;
import com.elink.esua.epdc.dto.personroom.form.FamilyMemberInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.form.GetMemberListFormDTO;
import com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO;
import com.elink.esua.epdc.vaccine.epidemic.dto.*;
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.dto.result.*;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity;
import com.elink.esua.epdc.vaccine.vim.dto.VaccinationInfoDTO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@ -205,4 +207,26 @@ public interface EpidemicUserInfoService extends CrudService<EpidemicUserInfoEnt
* @date 2022/5/30 9:27
*/
Result<EpidemicUnitOwnerDTO> getOwner(Map<String, Object> params);
/**
* 获取成员信息
* @param formDTO
* @return
*/
Result<FamilyMemberInfoResultDTO> getFamilyMember(GetMemberListFormDTO formDTO);
/**
* 添加成员
* @param formDTO
* @return
*/
Result addFamilyMember(FamilyMemberInfoFormDTO formDTO);
/**
* 修改成员
* @param formDTO
* @return
*/
Result updateFamilyMember(FamilyMemberInfoFormDTO formDTO);
}

62
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/epidemic/service/impl/EpidemicUserInfoServiceImpl.java

@ -24,21 +24,27 @@ import com.elink.esua.epdc.dto.house.SysPopulationSimpleDictDTO;
import com.elink.esua.epdc.dto.house.form.SysPopulationSimpleDictFormDTO;
import com.elink.esua.epdc.dto.house.result.EpdcPopulationErrorResultDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO;
import com.elink.esua.epdc.dto.personroom.form.FamilyMemberInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.form.GetMemberListFormDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicPlotBuildingResultDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicUnitInfoResultDTO;
import com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO;
import com.elink.esua.epdc.vaccine.constant.ImageConstant;
import com.elink.esua.epdc.vaccine.epidemic.dao.EpidemicUserInfoDao;
import com.elink.esua.epdc.vaccine.epidemic.dao.EpidemicUserInoutRecordDao;
import com.elink.esua.epdc.vaccine.epidemic.dto.*;
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.dto.result.*;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserErrorEntity;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInoutRecordEntity;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicReportUserInfoService;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserErrorService;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserInfoService;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserInoutRecordService;
import com.elink.esua.epdc.vaccine.feign.VimAdminFeignClient;
import com.elink.esua.epdc.vaccine.house.excel.BaseResidentInformationUpdateExcel;
import com.elink.esua.epdc.vaccine.personroom.dao.EpidemicUnitOwnerDao;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicUnitOwnerEntity;
import com.elink.esua.epdc.vaccine.personroom.service.EpidemicBuildingUnitService;
import com.elink.esua.epdc.vaccine.personroom.service.EpidemicPlotBuildingService;
import com.elink.esua.epdc.vaccine.personroom.service.EpidemicUnitOwnerService;
@ -100,6 +106,12 @@ public class EpidemicUserInfoServiceImpl extends CrudServiceImpl<EpidemicUserInf
@Autowired
private EpidemicUnitOwnerService epidemicUnitOwnerService;
@Autowired
private EpidemicUserInoutRecordDao epidemicUserInoutRecordDao;
@Autowired
private EpidemicUnitOwnerDao epidemicUnitOwnerDao;
@Override
public QueryWrapper<EpidemicUserInfoEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get("id");
@ -1612,4 +1624,46 @@ public class EpidemicUserInfoServiceImpl extends CrudServiceImpl<EpidemicUserInf
return new Result<EpidemicUnitOwnerDTO>().ok(baseDao.getOwner(params));
}
@Override
public Result<FamilyMemberInfoResultDTO> getFamilyMember(GetMemberListFormDTO formDTO) {
FamilyMemberInfoResultDTO dto = baseDao.getFamilyMember(formDTO);
return new Result<FamilyMemberInfoResultDTO>().ok(dto);
}
@Override
public Result addFamilyMember(FamilyMemberInfoFormDTO formDTO) {
// 新增epidemic_user_info
EpidemicUserInfoEntity epidemicUserInfoEntity = ConvertUtils.sourceToTarget(formDTO, EpidemicUserInfoEntity.class);
baseDao.insert(epidemicUserInfoEntity);
// 新增epidemic_user_inout_record
EpidemicUserInoutRecordEntity epidemicUserInoutRecordEntity = ConvertUtils.sourceToTarget(formDTO, EpidemicUserInoutRecordEntity.class);
epidemicUserInoutRecordDao.insert(epidemicUserInoutRecordEntity);
// 新增人员房屋关系
EpidemicUnitOwnerEntity epidemicUnitOwnerEntity = ConvertUtils.sourceToTarget(formDTO, EpidemicUnitOwnerEntity.class);
epidemicUnitOwnerEntity.setOwnerName(formDTO.getUserName());
epidemicUnitOwnerEntity.setAddress(formDTO.getOutLiveAddressDetail());
epidemicUnitOwnerDao.insert(epidemicUnitOwnerEntity);
return new Result();
}
@Override
public Result updateFamilyMember(FamilyMemberInfoFormDTO formDTO) {
// 更新epidemic_user_info
EpidemicUserInfoEntity epidemicUserInfoEntity = ConvertUtils.sourceToTarget(formDTO, EpidemicUserInfoEntity.class);
epidemicUserInfoEntity.setId(formDTO.getUserId());
baseDao.updateById(epidemicUserInfoEntity);
// 更新epidemic_user_inout_record
EpidemicUserInoutRecordEntity epidemicUserInoutRecordEntity = ConvertUtils.sourceToTarget(formDTO, EpidemicUserInoutRecordEntity.class);
epidemicUserInoutRecordEntity.setId(formDTO.getRecordId());
epidemicUserInoutRecordDao.updateById(epidemicUserInoutRecordEntity);
return new Result();
}
}

123
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/AppFamilyController.java

@ -0,0 +1,123 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.vaccine.personroom.controller;
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.dto.epidemic.DictOptionDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicPlotCoordinateDTO;
import com.elink.esua.epdc.dto.personroom.form.EpidemicPlotCoordinateFormDTO;
import com.elink.esua.epdc.dto.personroom.form.FamilyMemberInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.form.GetMemberListFormDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicPlotCoordinateResultDTO;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserInfoService;
import com.elink.esua.epdc.vaccine.personroom.excel.EpidemicPlotCoordinateExcel;
import com.elink.esua.epdc.vaccine.personroom.service.EpidemicBuildingUnitService;
import com.elink.esua.epdc.vaccine.personroom.service.EpidemicPlotCoordinateService;
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 zhangyuan qu@elink-cn.com
* @since v1.0.0 2021-07-09
*/
@RestController
@RequestMapping("family")
public class AppFamilyController {
@Autowired
private EpidemicUserInfoService epidemicUserInfoService;
@Autowired
private EpidemicBuildingUnitService epidemicBuildingUnitService;
/**
* 获取成员信息
*
* @param formDTO
* @return
* @Author wanggongfeng
*/
@GetMapping("getFamilyMember")
public Result getFamilyMember(@RequestBody GetMemberListFormDTO formDTO){
//效验数据
ValidatorUtils.validateEntity(formDTO, UpdateGroup.class, DefaultGroup.class);
return epidemicUserInfoService.getFamilyMember(formDTO);
}
/**
* 新增成员信息
*
* @param formDTO
* @return
* @Author wanggongfeng
*/
@PostMapping("addFamilyMember")
public Result addFamilyMember(@RequestBody FamilyMemberInfoFormDTO formDTO){
//效验数据
ValidatorUtils.validateEntity(formDTO, UpdateGroup.class, DefaultGroup.class);
return epidemicUserInfoService.addFamilyMember(formDTO);
}
/**
* 修改成员信息
*
* @param formDTO
* @return
* @Author wanggongfeng
*/
@PostMapping("updateFamilyMember")
public Result updateFamilyMember(@RequestBody FamilyMemberInfoFormDTO formDTO){
//效验数据
ValidatorUtils.validateEntity(formDTO, UpdateGroup.class, DefaultGroup.class);
return epidemicUserInfoService.updateFamilyMember(formDTO);
}
/**
* 获取房屋信息
*
* @param formDTO
* @return
* @Author wanggongfeng
*/
@GetMapping("getHouseInfo")
public Result getHouseInfo(@RequestBody GetHouseInfoFormDTO formDTO){
//效验数据
ValidatorUtils.validateEntity(formDTO, UpdateGroup.class, DefaultGroup.class);
return epidemicBuildingUnitService.getHouseInfo(formDTO);
}
}

30
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/BuildingUnitController.java

@ -29,7 +29,9 @@ 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.config.QrCodeProperties;
import com.elink.esua.epdc.dto.epidemic.DictOptionDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicPlotBuildingDTO;
import com.elink.esua.epdc.dto.personroom.form.HouseQrcodeFormDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicBuildingUnitDetailResultDTO;
import com.elink.esua.epdc.vaccine.epidemic.utils.HouseQRcodeUtils;
@ -163,4 +165,32 @@ public class BuildingUnitController {
}
}
/**
* 单元下拉框
*
* @param formDTO
* @return io.pingyin.common.utils.Result<java.util.List < io.pingyin.modules.epidemic.dto.DictOptionDTO>>
* @author wgf
* @date 2022/6/9 8:47
*/
@GetMapping("getUnitOption")
public Result<List<DictOptionDTO>> getUnitOption(@RequestBody EpidemicBuildingUnitDTO formDTO) {
List<DictOptionDTO> list = epidemicBuildingUnitService.getUnitOption(formDTO);
return new Result<List<DictOptionDTO>>().ok(list);
}
/**
* 房间号下拉框
*
* @param formDTO
* @return io.pingyin.common.utils.Result<java.util.List < io.pingyin.modules.epidemic.dto.DictOptionDTO>>
* @author wgf
* @date 2022/6/9 8:47
*/
@GetMapping("getHouseOption")
public Result<List<DictOptionDTO>> getHouseOption(@RequestBody EpidemicBuildingUnitDTO formDTO) {
List<DictOptionDTO> list = epidemicBuildingUnitService.getHouseOption(formDTO);
return new Result<List<DictOptionDTO>>().ok(list);
}
}

2
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/PlotBuildingController.java

@ -104,7 +104,7 @@ public class PlotBuildingController {
* @date 2022/4/2 14:47
*/
@GetMapping("getBuildingOption")
public Result<List<DictOptionDTO>> getBuildingOption(EpidemicPlotBuildingDTO formDTO) {
public Result<List<DictOptionDTO>> getBuildingOption(@RequestBody EpidemicPlotBuildingDTO formDTO) {
List<DictOptionDTO> list = epidemicPlotBuildingService.getBuildingOption(formDTO);
return new Result<List<DictOptionDTO>>().ok(list);
}

2
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/controller/PlotCoordinateController.java

@ -123,7 +123,7 @@ public class PlotCoordinateController {
* @date 2022/4/2 14:47
*/
@GetMapping("getPlotOption")
public Result<List<DictOptionDTO>> getPlotOption(EpidemicPlotCoordinateDTO formDTO) {
public Result<List<DictOptionDTO>> getPlotOption(@RequestBody EpidemicPlotCoordinateDTO formDTO) {
List<DictOptionDTO> list = epidemicPlotCoordinateService.getPlotOption(formDTO);
return new Result<List<DictOptionDTO>>().ok(list);
}

32
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/dao/EpidemicBuildingUnitDao.java

@ -18,9 +18,13 @@
package com.elink.esua.epdc.vaccine.personroom.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.epidemic.DictOptionDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicPlotBuildingDTO;
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicBuildingUnitDetailResultDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicUnitInfoResultDTO;
import com.elink.esua.epdc.dto.personroom.result.HouseInfoResultDTO;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicBuildingUnitEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -89,4 +93,32 @@ public interface EpidemicBuildingUnitDao extends BaseDao<EpidemicBuildingUnitEnt
Integer getMaxCode();
/**
* 单元列表下拉框
*
* @param formDTO
* @return java.util.List<io.pingyin.modules.epidemic.dto.DictOptionDTO>
* @author wgf
* @date 2022/2/15 13:38
*/
List<DictOptionDTO> getUnitOption(EpidemicBuildingUnitDTO formDTO);
/**
* 房屋列表下拉框
*
* @param formDTO
* @return java.util.List<io.pingyin.modules.epidemic.dto.DictOptionDTO>
* @author wgf
* @date 2022/2/15 13:38
*/
List<DictOptionDTO> getHouseOption(EpidemicBuildingUnitDTO formDTO);
/**
* 获取房屋信息
* @param formDTO
* @return
*/
HouseInfoResultDTO getHouseInfo(GetHouseInfoFormDTO formDTO);
}

10
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/dao/EpidemicUnitOwnerDao.java

@ -18,10 +18,13 @@
package com.elink.esua.epdc.vaccine.personroom.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicUnitOwnerEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 房屋-房主信息
*
@ -61,4 +64,11 @@ public interface EpidemicUnitOwnerDao extends BaseDao<EpidemicUnitOwnerEntity> {
*/
int deleteByIdCard(@Param("idCard") String idCard);
/**
* 获取成员列表根据房屋ID
* @param unitId
* @return
*/
List<FamilyMemberInfoResultDTO> getFamilyMemberInfoByUnitId(@Param("unitId") Long unitId);
}

30
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/EpidemicBuildingUnitService.java

@ -20,7 +20,10 @@ package com.elink.esua.epdc.vaccine.personroom.service;
import com.elink.esua.epdc.commons.mybatis.service.CrudService;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epidemic.DictOptionDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicPlotBuildingDTO;
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicBuildingUnitDetailResultDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicUnitInfoResultDTO;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicBuildingUnitEntity;
@ -109,4 +112,31 @@ public interface EpidemicBuildingUnitService extends CrudService<EpidemicBuildin
int getMaxCode();
/**
* 单元列表下拉框
*
* @param formDTO
* @return java.util.List<io.pingyin.modules.epidemic.dto.DictOptionDTO>
* @author wgf
* @date 2022/2/15 13:38
*/
List<DictOptionDTO> getUnitOption(EpidemicBuildingUnitDTO formDTO);
/**
* 房屋列表下拉框
*
* @param formDTO
* @return java.util.List<io.pingyin.modules.epidemic.dto.DictOptionDTO>
* @author wgf
* @date 2022/2/15 13:38
*/
List<DictOptionDTO> getHouseOption(EpidemicBuildingUnitDTO formDTO);
/**
* 获取房屋信息
* @param formDTO
* @return
*/
Result getHouseInfo(GetHouseInfoFormDTO formDTO);
}

30
epdc-cloud-vim-yushan/src/main/java/com/elink/esua/epdc/vaccine/personroom/service/impl/EpidemicBuildingUnitServiceImpl.java

@ -31,12 +31,12 @@ import com.elink.esua.epdc.commons.tools.utils.IdentityNoUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.utils.StreamUtils;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.epidemic.DictOptionDTO;
import com.elink.esua.epdc.dto.house.result.EpdcPopulationErrorResultDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicBuildingUnitDTO;
import com.elink.esua.epdc.dto.personroom.EpidemicUnitOwnerDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicBuildingUnitDetailResultDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicPlotBuildingResultDTO;
import com.elink.esua.epdc.dto.personroom.result.EpidemicUnitInfoResultDTO;
import com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO;
import com.elink.esua.epdc.dto.personroom.result.*;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserErrorEntity;
import com.elink.esua.epdc.vaccine.epidemic.entity.EpidemicUserInfoEntity;
import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserErrorService;
@ -44,6 +44,7 @@ import com.elink.esua.epdc.vaccine.epidemic.service.EpidemicUserInfoService;
import com.elink.esua.epdc.vaccine.feign.VimAdminFeignClient;
import com.elink.esua.epdc.vaccine.house.excel.BaseResidentInformationUpdateExcel;
import com.elink.esua.epdc.vaccine.personroom.dao.EpidemicBuildingUnitDao;
import com.elink.esua.epdc.vaccine.personroom.dao.EpidemicUnitOwnerDao;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicBuildingUnitEntity;
import com.elink.esua.epdc.vaccine.personroom.entity.EpidemicUnitOwnerEntity;
import com.elink.esua.epdc.vaccine.personroom.redis.EpidemicBuildingUnitRedis;
@ -87,6 +88,9 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui
@Autowired
private VimAdminFeignClient adminVimFeignClient;
@Autowired
private EpidemicUnitOwnerDao epidemicUnitOwnerDao;
@Override
public PageData<EpidemicBuildingUnitDTO> page(Map<String, Object> params) {
IPage<EpidemicBuildingUnitDTO> page = getPage(params);
@ -516,4 +520,24 @@ public class EpidemicBuildingUnitServiceImpl extends CrudServiceImpl<EpidemicBui
return orgId.concat(String.format("%05d", buildingMaCode).concat(String.format("%05d", roomMaCode)));
}
@Override
public List<DictOptionDTO> getUnitOption(EpidemicBuildingUnitDTO formDTO) {
return baseDao.getUnitOption(formDTO);
}
@Override
public List<DictOptionDTO> getHouseOption(EpidemicBuildingUnitDTO formDTO) {
return baseDao.getHouseOption(formDTO);
}
@Override
public Result<HouseInfoResultDTO> getHouseInfo(GetHouseInfoFormDTO formDTO) {
HouseInfoResultDTO houseInfoResultDTO = baseDao.getHouseInfo(formDTO);
List<FamilyMemberInfoResultDTO> members = epidemicUnitOwnerDao.getFamilyMemberInfoByUnitId(houseInfoResultDTO.getId());
houseInfoResultDTO.setMembers(members);
return new Result<HouseInfoResultDTO>().ok(houseInfoResultDTO);
}
}

37
epdc-cloud-vim-yushan/src/main/resources/mapper/epidemic/EpidemicUserInfoDao.xml

@ -660,4 +660,41 @@
AND i.ID_CARD = #{idCard}
LIMIT 1
</select>
<select id="getFamilyMember" parameterType="com.elink.esua.epdc.dto.personroom.form.GetMemberListFormDTO"
resultType="com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO">
SELECT
ui.ID userId,
ur.ID recordId,
ui.USER_NAME,
ui.MOBILE,
ui.ID_CARD,
ui.GENDER,
ui.BIRTHDAY,
ui.NATION,
ui.HOUSEHOLD_REGISTER_CODE,
ui.HOUSEHOLD_REGISTER_NAME,
ui.HOUSEHOLD_REGISTER_DETAIL,
ui.RELATION,
ur.OUT_LIVE_ADDRESS_CODE,
ur.OUT_LIVE_ADDRESS_NAME,
ur.OUT_LIVE_ADDRESS_DETAIL
from epidemic_user_info ui
left join (
select
uir.ID,
uir.OUT_LIVE_ADDRESS_CODE,
uir.OUT_LIVE_ADDRESS_NAME,
uir.OUT_LIVE_ADDRESS_DETAIL,
uir.ID_CARD
from epidemic_user_inout_record uir
where uir.DEL_FLAG = '0'
and uir.ID_CARD = #{idCard}
limit 1
) ur on ur.ID_CARD = ui.ID_CARD
where ui.DEL_FLAG = '0'
and ui.ID_CARD = #{idCard}
limit 1
</select>
</mapper>

40
epdc-cloud-vim-yushan/src/main/resources/mapper/personroom/EpidemicBuildingUnitDao.xml

@ -152,4 +152,44 @@
epidemic_building_unit
</select>
<select id="getUnitOption" resultType="com.elink.esua.epdc.dto.epidemic.DictOptionDTO">
SELECT
u.UNIT AS dictValue,
u.UNIT AS dictName
FROM
epidemic_building_unit u
WHERE u.DEL_FLAG = '0'
<if test="buildingId != null and buildingId !=''">
and u.BUILDING_ID = #{buildingId}
</if>
group by u.BUILDING_ID,u.UNIT
</select>
<select id="getHouseOption" resultType="com.elink.esua.epdc.dto.epidemic.DictOptionDTO">
SELECT
u.ID AS dictValue,
u.ROOM_NO AS dictName
FROM
epidemic_building_unit u
WHERE u.DEL_FLAG = '0'
<if test="buildingId != null and buildingId !=''">
and u.BUILDING_ID = #{buildingId}
</if>
<if test="unit != null and unit !=''">
and u.UNIT = #{unit}
</if>
</select>
<select id="getHouseInfo" resultType="com.elink.esua.epdc.dto.personroom.result.HouseInfoResultDTO"
parameterType="com.elink.esua.epdc.dto.personroom.form.GetHouseInfoFormDTO">
SELECT
u.*
FROM
epidemic_building_unit u
WHERE u.DEL_FLAG = '0'
<if test="roomCode != null and roomCode !=''">
and u.ROOM_CODE = #{roomCode}
</if>
</select>
</mapper>

34
epdc-cloud-vim-yushan/src/main/resources/mapper/personroom/EpidemicUnitOwnerDao.xml

@ -42,4 +42,38 @@
UNIT_ID = #{unitId}
AND ID_CARD = #{idCard}
</delete>
<select id="getFamilyMemberInfoByUnitId" resultType="com.elink.esua.epdc.dto.personroom.result.FamilyMemberInfoResultDTO">
SELECT
ui.ID userId,
ur.ID recordId,
ui.USER_NAME,
ui.MOBILE,
ui.ID_CARD,
ui.GENDER,
ui.BIRTHDAY,
ui.NATION,
ui.HOUSEHOLD_REGISTER_CODE,
ui.HOUSEHOLD_REGISTER_NAME,
ui.HOUSEHOLD_REGISTER_DETAIL,
ui.RELATION,
ur.OUT_LIVE_ADDRESS_CODE,
ur.OUT_LIVE_ADDRESS_NAME,
ur.OUT_LIVE_ADDRESS_DETAIL
from epidemic_user_info ui
left join (
select
uir.ID,
uir.OUT_LIVE_ADDRESS_CODE,
uir.OUT_LIVE_ADDRESS_NAME,
uir.OUT_LIVE_ADDRESS_DETAIL,
uir.ID_CARD
from epidemic_user_inout_record uir
where uir.DEL_FLAG = '0'
and uir.ID_CARD in (select euo.ID_CARD from epidemic_unit_owner euo where euo.DEL_FLAG = '0' and euo.UNIT_ID = #{unitId})
group by uir.ID_CARD
) ur on ur.ID_CARD = ui.ID_CARD
where ui.DEL_FLAG = '0'
and ui.ID_CARD in (select euo.ID_CARD from epidemic_unit_owner euo where euo.DEL_FLAG = '0' and euo.UNIT_ID = #{unitId})
</select>
</mapper>

Loading…
Cancel
Save