package com.epmet.controller; import com.epmet.commons.tools.annotation.MaskResponse; import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.enums.DictTypeEnum; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.PovertyManageDTO; import com.epmet.dto.form.povertyManage.PovertyManageFormDto; import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.service.PovertyManageService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; /** * @author generator generator@elink-cn.com * @since v1.0.0 2023-06-16 */ @RestController @RequestMapping("povertyManage") public class PovertyManageController { @Autowired private PovertyManageService povertyManageService; @Autowired private EpmetAdminOpenFeignClient adminOpenFeignClient; @RequestMapping("page") @MaskResponse(fieldNames = {"mobile", "idCard"}, fieldsMaskType = {MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD}) public Result> page(@RequestParam Map params) { PageData page = povertyManageService.page(params); if (null != page && page.getList().size() > 0) { buildData(page.getList()); } return new Result>().ok(page); } @RequestMapping(value = "{id}", method = {RequestMethod.POST, RequestMethod.GET}) public Result get(@PathVariable("id") String id) { PovertyManageDTO data = povertyManageService.get(id); return new Result().ok(data); } @NoRepeatSubmit @PostMapping("save") public Result save(@RequestBody PovertyManageFormDto dto) { //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); povertyManageService.save(dto); return new Result(); } @NoRepeatSubmit @PostMapping("update") public Result update(@RequestBody PovertyManageFormDto dto) { //效验数据 ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); povertyManageService.update(dto); return new Result(); } @PostMapping("delete") public Result delete(@RequestBody String[] ids) { //效验数据 AssertUtils.isArrayEmpty(ids, "id"); povertyManageService.delete(ids); return new Result(); } @PostMapping("search") @MaskResponse(fieldNames = {"mobile", "idCard"}, fieldsMaskType = {MaskResponse.MASK_TYPE_MOBILE, MaskResponse.MASK_TYPE_ID_CARD}) public Result> search(@RequestBody PovertyManageFormDto formDto) { PageData page = povertyManageService.search(formDto); if (null != page && page.getList().size() > 0) { buildData(page.getList()); } return new Result>().ok(page); } private void buildData(List dtoList) { Result> dictMapRes = adminOpenFeignClient.dictMap(DictTypeEnum.POVERTY_TYPE.getCode()); if (null != dictMapRes.getData() && dictMapRes.getData().size() > 0) { Map dictMap = dictMapRes.getData(); for (PovertyManageDTO dto : dtoList) { if (null != dto.getPovertyType()) { dto.setPovertyType(dictMap.get(dto.getPovertyType())); } } } } }