73 lines
3.2 KiB
Java
73 lines
3.2 KiB
Java
package com.example.survey.controller;
|
|
|
|
import com.example.survey.dto.respondent.*;
|
|
import com.example.survey.enumeration.ResultEnum;
|
|
import com.example.survey.service.RespondentService;
|
|
import com.example.survey.vo.ResultVO;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* @author Pope
|
|
*/
|
|
@RestController
|
|
@RequestMapping("/respondent")
|
|
public class RespondentController {
|
|
|
|
@Autowired
|
|
private RespondentService respondentService;
|
|
|
|
@PostMapping("/respondent")
|
|
public ResultVO addRespondent(@RequestBody CreateRespondentDTO createRespondentDTO) {
|
|
respondentService.createRespondent(createRespondentDTO);
|
|
return new ResultVO(ResultEnum.SUCCESS);
|
|
}
|
|
|
|
@GetMapping("/respondentList")
|
|
public ResultVO listRespondent(@RequestParam(value = "userPhone", required = false) String userPhone,
|
|
@RequestParam(value = "projectName", required = false) String projectName,
|
|
@RequestParam(value = "state", required = false) String state,
|
|
@RequestParam(value = "idNumber", required = false) String idNumber,
|
|
@RequestParam(value = "name", required = false) String name,
|
|
@RequestParam(value = "phone", required = false) String phone,
|
|
@RequestParam(value = "province", required = false) String province,
|
|
@RequestParam(value = "city", required = false) String city,
|
|
@RequestParam(value = "county", required = false) String county,
|
|
@RequestParam(value = "currentPage") int currentPage,
|
|
@RequestParam(value = "pageSize", defaultValue = "30") int pageSize
|
|
) {
|
|
Map<String, Object> resultMap = new HashMap<>(16, 0.75F);
|
|
resultMap.put("totalCount", respondentService.countRespondent(userPhone, state, idNumber, name, phone, province, city, county, projectName));
|
|
resultMap.put("currentPage", currentPage);
|
|
resultMap.put("pageSize", pageSize);
|
|
resultMap.put("data", respondentService.listRespondentLimit(userPhone, state, idNumber, name, phone, province, city, county, projectName, currentPage, pageSize));
|
|
|
|
ResultVO resultVo = new ResultVO(ResultEnum.SUCCESS);
|
|
resultVo.setData(resultMap);
|
|
|
|
return resultVo;
|
|
}
|
|
|
|
@PutMapping("/respondent")
|
|
public ResultVO modifyRespondent(@RequestBody ModifyRespondentDTO modifyRespondentDTO) {
|
|
respondentService.modifyRespondent(modifyRespondentDTO);
|
|
return new ResultVO(ResultEnum.SUCCESS);
|
|
}
|
|
|
|
@DeleteMapping("/respondent")
|
|
public ResultVO deleteRespondent(@RequestBody DeleteRespondentDTO deleteRespondentDTO) {
|
|
respondentService.deleteRespondent(deleteRespondentDTO);
|
|
return new ResultVO(ResultEnum.SUCCESS);
|
|
}
|
|
|
|
@PutMapping("/user")
|
|
public ResultVO modifyUser(@RequestBody ModifyRespondentUserDTO modifyRespondentUserDTO) {
|
|
respondentService.modifyUser(modifyRespondentUserDTO);
|
|
return new ResultVO(ResultEnum.SUCCESS);
|
|
}
|
|
|
|
}
|