package com.xkrs.microservice.controller; import com.xkrs.microservice.common.encapsulation.PromptMessageEnum; import com.xkrs.microservice.model.entity.IndependentCheckEntity; import com.xkrs.microservice.model.qo.IndependentCheckQo; import com.xkrs.microservice.model.validation.IndependentCheckQoInsert; import com.xkrs.microservice.service.IndependentCheckService; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Locale; import java.util.Optional; import static com.xkrs.microservice.common.encapsulation.OutputEncapsulation.outputEncapsulationErrorList; import static com.xkrs.microservice.common.encapsulation.OutputEncapsulation.outputEncapsulationObject; import static com.xkrs.microservice.common.tool.TokenUtil.getTokenUserName; /** * 自主核查表管理 * @author tajochen */ @RestController @RequestMapping("/api/independent-check") public class IndependentCheckController { /** * 获取区域信息 */ Locale locale = LocaleContextHolder.getLocale(); @Resource private IndependentCheckService independentCheckService; @RequestMapping(value="/get/all",method = RequestMethod.GET) @CrossOrigin public String getAllRecord() { Iterable list = independentCheckService.getAllRecord(); return outputEncapsulationObject(PromptMessageEnum.SUCCESS,list,locale); } @RequestMapping(value="/get/qxdm",method = RequestMethod.GET) @CrossOrigin public String getByCountyCode(@RequestParam("qxdm") Integer qxdm) { Iterable list = independentCheckService.getByCountyCode(qxdm); return outputEncapsulationObject(PromptMessageEnum.SUCCESS,list,locale); } @RequestMapping(value="/get/user-name",method = RequestMethod.GET) @CrossOrigin public String getByUserName(@RequestParam("userName") String userName) { Iterable list = independentCheckService.getByUserName(userName); return outputEncapsulationObject(PromptMessageEnum.SUCCESS,list,locale); } @RequestMapping(value="/add",method = RequestMethod.POST) @PreAuthorize("hasAnyAuthority('auth_system_manager','auth_general_user','auth_administor')") @CrossOrigin public String dataAdd(@Validated({IndependentCheckQoInsert.class}) @RequestBody IndependentCheckQo independentCheckQo, BindingResult bindingResult,@RequestHeader(value="Authorization") String token) { // 验证数据合法性 if(bindingResult.hasErrors()){ return outputEncapsulationErrorList(bindingResult.getFieldErrors(),locale); } // 获取当前用户名 String userName = getTokenUserName(token); independentCheckService.add(independentCheckQo,userName); return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"",locale); } @RequestMapping(value="/delete",method = RequestMethod.DELETE) @PreAuthorize("hasAnyAuthority('auth_system_manager','auth_administor')") @CrossOrigin public String dataDelete(@RequestParam("id") Integer id) { Optional independentCheckEntity = independentCheckService.getById(id); if(independentCheckEntity.isEmpty()){ return outputEncapsulationObject(PromptMessageEnum.PARAM_ILLEGAL,"参数错误",locale); } independentCheckService.delete(id); return outputEncapsulationObject(PromptMessageEnum.SUCCESS,"",locale); } }