Browse Source

我要提建议,接口开发

origin/dept_screen
zhangyongzhangyong 4 years ago
parent
commit
f3903d251a
  1. 75
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiCustomController.java
  2. 59
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/CustomFeignClient.java
  3. 29
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/CustomFeignClientFallback.java
  4. 57
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/CustomService.java
  5. 56
      epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java

75
epdc-cloud-api/src/main/java/com/elink/esua/epdc/controller/ApiCustomController.java

@ -5,14 +5,20 @@ import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.TypeNode;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppPidemicCompleteInfoFromDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcSentryPostInfoResultDTO;
import com.elink.esua.epdc.dto.suggestion.form.MySuggestionFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.SuggestionMakeFormDTO;
import com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO;
import com.elink.esua.epdc.service.CustomService;
import com.elink.esua.epdc.service.MessageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author yinzuomei
* @Description 疫情管理
@ -91,4 +97,73 @@ public class ApiCustomController {
ValidatorUtils.validateEntity(completeInfoFromDto);
return customService.createPidemicInfo(completeInfoFromDto, userDetail);
}
/**
* 获取 建议类别 树结构
*
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.TypeOption>
* @Author zhangyong
* @Date 14:15 2021-09-14
**/
@GetMapping("getSuggestionTypeTree")
public Result<List<TypeNode>> getSuggestionTypeTree() {
return customService.getSuggestionTypeTree();
}
/**
* 新增建议
*
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
@PostMapping("insertSuggestion")
public Result insertSuggestion(@RequestBody SuggestionMakeFormDTO formDTO, @LoginUser TokenDto userDetail) {
ValidatorUtils.validateEntity(formDTO);
return customService.insertSuggestion(formDTO, userDetail);
}
/**
* 修改建议
*
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
@PostMapping("updateSuggestion")
public Result updateSuggestion(@RequestBody SuggestionMakeFormDTO formDTO, @LoginUser TokenDto userDetail) {
ValidatorUtils.validateEntity(formDTO);
return customService.updateSuggestion(formDTO, userDetail);
}
/**
* 我提出的建议
*
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>>
* @Author zhangyong
* @Date 15:58 2021-09-14
**/
@GetMapping("mySuggestion")
public Result<List<MySuggestionResultDTO>> mySuggestion(@RequestBody MySuggestionFormDTO formDTO, @LoginUser TokenDto userDetail) {
return customService.getMySuggestion(formDTO, userDetail);
}
/**
* 建议详情
* @param id
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>
* @Author zhangyong
* @Date 09:37 2021-09-15
**/
@GetMapping("detailSuggestion/{id}")
public Result<MySuggestionResultDTO> detailSuggestion(@PathVariable String id) {
return customService.getDetailSuggestion(id);
}
}

59
epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/CustomFeignClient.java

@ -1,8 +1,10 @@
package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.EpidemicSentryPostDTO;
import com.elink.esua.epdc.dto.TypeNode;
import com.elink.esua.epdc.dto.consult.result.CheckStateResultDTO;
import com.elink.esua.epdc.dto.consult.form.GridOperatorListFormDTO;
import com.elink.esua.epdc.dto.consult.result.GridOperatorListResultDTO;
@ -10,6 +12,9 @@ import com.elink.esua.epdc.dto.enterprise.form.EnterpriseInfoFormDTO;
import com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO;
import com.elink.esua.epdc.dto.form.CompleteRequisiteInfoDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.MySuggestionFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.SuggestionMakeFormDTO;
import com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO;
import com.elink.esua.epdc.feign.fallback.CustomFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
@ -128,4 +133,58 @@ public interface CustomFeignClient {
*/
@GetMapping("custom/vaccinationinfo/epdc-app/query")
Result<Object> getUserVimInfo(@RequestParam("userName") String userName, @RequestParam("idCard") String idCard);
/**
* 获取 建议类别 树结构
*
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.TypeOption>
* @Author zhangyong
* @Date 14:15 2021-09-14
**/
@GetMapping("custom/suggestiontype/getSuggestionTypeTree")
Result<List<TypeNode>> getSuggestionTypeTree();
/**
* 新增建议
*
* @param formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
@PostMapping(value = "custom/suggestionmake/insertSuggestion", consumes = MediaType.APPLICATION_JSON_VALUE)
Result insertSuggestion(SuggestionMakeFormDTO formDTO);
/**
* 修改建议
*
* @param formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
@PostMapping(value = "custom/suggestionmake/updateSuggestion", consumes = MediaType.APPLICATION_JSON_VALUE)
Result updateSuggestion(SuggestionMakeFormDTO formDTO);
/**
* 我提出的建议
*
* @param formDTO
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>>
* @Author zhangyong
* @Date 15:59 2021-09-14
**/
@GetMapping(value = "custom/suggestionmake/mySuggestion", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<MySuggestionResultDTO>> getMySuggestion(MySuggestionFormDTO formDTO);
/**
* 建议详情
* @param id
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>
* @Author zhangyong
* @Date 09:37 2021-09-15
**/
@GetMapping("custom/suggestionmake/detailSuggestion/{id}")
Result<MySuggestionResultDTO> getDetailSuggestion(@PathVariable("id") String id);
}

29
epdc-cloud-api/src/main/java/com/elink/esua/epdc/feign/fallback/CustomFeignClientFallback.java

@ -4,6 +4,7 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.EpidemicSentryPostDTO;
import com.elink.esua.epdc.dto.TypeNode;
import com.elink.esua.epdc.dto.consult.result.CheckStateResultDTO;
import com.elink.esua.epdc.dto.consult.form.GridOperatorListFormDTO;
import com.elink.esua.epdc.dto.consult.result.GridOperatorListResultDTO;
@ -11,6 +12,9 @@ import com.elink.esua.epdc.dto.enterprise.form.EnterpriseInfoFormDTO;
import com.elink.esua.epdc.dto.enterprise.result.EnterpriseInfoResultDTO;
import com.elink.esua.epdc.dto.form.CompleteRequisiteInfoDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.MySuggestionFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.SuggestionMakeFormDTO;
import com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO;
import com.elink.esua.epdc.feign.CustomFeignClient;
import org.springframework.stereotype.Component;
@ -73,4 +77,29 @@ public class CustomFeignClientFallback implements CustomFeignClient {
public Result<Object> getUserVimInfo(String userName, String idCard) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getUserVimInfo", userName, idCard);
}
@Override
public Result<List<TypeNode>> getSuggestionTypeTree() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "getSuggestionTypeTree");
}
@Override
public Result insertSuggestion(SuggestionMakeFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "insertSuggestion", formDTO);
}
@Override
public Result updateSuggestion(SuggestionMakeFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "updateSuggestion", formDTO);
}
@Override
public Result<List<MySuggestionResultDTO>> getMySuggestion(MySuggestionFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "getMySuggestion", formDTO);
}
@Override
public Result<MySuggestionResultDTO> getDetailSuggestion(String id) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "getDetailSuggestion", id);
}
}

57
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/CustomService.java

@ -3,9 +3,15 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.TypeNode;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppPidemicCompleteInfoFromDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcSentryPostInfoResultDTO;
import com.elink.esua.epdc.dto.suggestion.form.MySuggestionFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.SuggestionMakeFormDTO;
import com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO;
import java.util.List;
/**
* @Description 疫情管理
@ -50,4 +56,55 @@ public interface CustomService {
Result createPidemicInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoFromDto, TokenDto userDetail);
void completeSentryPostUserInfo(EpdcAppPidemicCompleteInfoFromDTO completeInfoDto);
/**
* 获取 建议类别 树结构
*
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.TypeOption>
* @Author zhangyong
* @Date 14:15 2021-09-14
**/
Result<List<TypeNode>> getSuggestionTypeTree();
/**
* 新增建议
*
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
Result insertSuggestion(SuggestionMakeFormDTO formDTO, TokenDto userDetail);
/**
* 修改建议
*
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result
* @Author zhangyong
* @Date 15:21 2021-09-14
**/
Result updateSuggestion(SuggestionMakeFormDTO formDTO, TokenDto userDetail);
/**
* 我提出的建议
* @param formDTO
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>>
* @Author zhangyong
* @Date 15:58 2021-09-14
**/
Result<List<MySuggestionResultDTO>> getMySuggestion(MySuggestionFormDTO formDTO, TokenDto userDetail);
/**
* 建议详情
* @param id
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO>
* @Author zhangyong
* @Date 09:37 2021-09-15
**/
Result<MySuggestionResultDTO> getDetailSuggestion(String id);
}

56
epdc-cloud-api/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java

@ -8,13 +8,13 @@ import com.elink.esua.epdc.commons.tools.redis.RedisChannels;
import com.elink.esua.epdc.commons.tools.redis.RedisKeys;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.EpidemicSentryPostDTO;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.*;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppPidemicCompleteInfoFromDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcSentryPostInfoResultDTO;
import com.elink.esua.epdc.dto.suggestion.form.MySuggestionFormDTO;
import com.elink.esua.epdc.dto.suggestion.form.SuggestionMakeFormDTO;
import com.elink.esua.epdc.dto.suggestion.result.MySuggestionResultDTO;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.feign.CustomFeignClient;
import com.elink.esua.epdc.feign.UserFeignClient;
@ -25,6 +25,8 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Description 疫情管理实现
* @Author yinzuomei
@ -187,4 +189,50 @@ public class CustomServiceImpl implements CustomService {
}
return epidemicSentryResult.getData();
}
@Override
public Result<List<TypeNode>> getSuggestionTypeTree() {
return customFeignClient.getSuggestionTypeTree();
}
@Override
public Result insertSuggestion(SuggestionMakeFormDTO formDTO, TokenDto userDetail) {
this.collectUserInfo(formDTO, userDetail);
return customFeignClient.insertSuggestion(formDTO);
}
@Override
public Result updateSuggestion(SuggestionMakeFormDTO formDTO, TokenDto userDetail) {
this.collectUserInfo(formDTO, userDetail);
return customFeignClient.updateSuggestion(formDTO);
}
private void collectUserInfo(SuggestionMakeFormDTO formDTO, TokenDto userDetail) {
formDTO.setUserId(userDetail.getUserId());
formDTO.setNickname(userDetail.getNickname());
formDTO.setFaceImg(userDetail.getFaceImg());
formDTO.setMobile(userDetail.getMobile());
formDTO.setDeptId(userDetail.getGridId());
if (null != formDTO.getDeptId()) {
Result<ParentAndAllDeptDTO> pidInfoResult = adminFeignClient.getParentAndAllDept(formDTO.getDeptId());
if (pidInfoResult.success() && null != pidInfoResult.getData()) {
formDTO.setParentDeptIds(pidInfoResult.getData().getParentDeptIds());
formDTO.setParentDeptNames(pidInfoResult.getData().getParentDeptNames());
formDTO.setAllDeptIds(pidInfoResult.getData().getAllDeptIds());
formDTO.setAllDeptNames(pidInfoResult.getData().getAllDeptNames());
formDTO.setDeptName(pidInfoResult.getData().getGrid());
}
}
}
@Override
public Result<List<MySuggestionResultDTO>> getMySuggestion(MySuggestionFormDTO formDTO, TokenDto userDetail) {
formDTO.setUserId(userDetail.getUserId());
return customFeignClient.getMySuggestion(formDTO);
}
@Override
public Result<MySuggestionResultDTO> getDetailSuggestion(String id) {
return customFeignClient.getDetailSuggestion(id);
}
}

Loading…
Cancel
Save