RateController.java 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package com.welampiot.controller;
  2. import com.welampiot.common.BaseResult;
  3. import com.welampiot.common.InterfaceResultEnum;
  4. import com.welampiot.dto.RateDTO;
  5. import com.welampiot.service.RateService;
  6. import com.welampiot.utils.ToolUtils;
  7. import com.welampiot.vo.RateDetailsVO;
  8. import com.welampiot.vo.RateVO;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.web.bind.annotation.CrossOrigin;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.RequestMethod;
  13. import org.springframework.web.bind.annotation.RestController;
  14. import javax.servlet.http.HttpServletRequest;
  15. import java.text.SimpleDateFormat;
  16. import java.util.Objects;
  17. /**
  18. * ClassName: RateController
  19. * Package: com.welampiot.controller
  20. * Description:
  21. *
  22. * @Author: zhj_Start
  23. * @Create: 2023/5/17 - 10:35
  24. * @Version: v1.0
  25. */
  26. @RestController
  27. @CrossOrigin
  28. @RequestMapping("/rate")
  29. public class RateController {
  30. @Autowired
  31. private RateService rateService;
  32. @Autowired
  33. private ToolUtils toolUtils;
  34. /**
  35. * 获取费率列表
  36. * @param request 用户id
  37. * @return 返回费率列表list以及总页数total
  38. */
  39. @RequestMapping(value = "/getList", method = RequestMethod.POST)
  40. public BaseResult getList(HttpServletRequest request) {
  41. int version = (int) toolUtils.getRequestContent(request,"version",1);
  42. String username = request.getParameter("username");
  43. if (username == null || username.length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
  44. int page = request.getParameter("page") == null ? 1 : Integer.parseInt(request.getParameter("page"));
  45. int count = request.getParameter("count") == null ? 16 : Integer.parseInt(request.getParameter("count"));
  46. RateDTO dto = new RateDTO();
  47. dto.setPage(count * (page - 1));
  48. dto.setCount(count);
  49. Integer userid = rateService.getUseridByUsername(username);
  50. dto.setUserid(userid);
  51. RateVO rateVO = rateService.getRateListByDTO(dto);
  52. return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,rateVO);
  53. }
  54. /**
  55. * 获取费率详情
  56. * @param request 费率id
  57. * @return 返回费率详情
  58. */
  59. @RequestMapping(value = "details", method = RequestMethod.POST)
  60. public BaseResult details(HttpServletRequest request) {
  61. int version = (int) toolUtils.getRequestContent(request,"version",1);
  62. int id = (int) toolUtils.getRequestContent(request,"id",1);
  63. if (id == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
  64. RateDetailsVO rateDetailsVO = rateService.getRateDetailsByDTO(id);
  65. if (rateDetailsVO == null) return toolUtils.response(InterfaceResultEnum.PARAM_FAIL,version);
  66. return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,rateDetailsVO);
  67. }
  68. /**
  69. * 添加编辑费率
  70. * @param request 要添加编辑的费率属性
  71. * @return 更新数据
  72. */
  73. @RequestMapping(value = "/save", method = RequestMethod.POST)
  74. public BaseResult save(HttpServletRequest request) {
  75. int version = (int) toolUtils.getRequestContent(request,"version",1);
  76. int id = (int) toolUtils.getRequestContent(request,"id",1);
  77. String username = request.getParameter("username");
  78. if (username == null || username.length() == 0)
  79. return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
  80. String name = request.getParameter("name");
  81. String rateOne = request.getParameter("rateOne");
  82. String rateTwo = request.getParameter("rateTwo");
  83. String rateThree = request.getParameter("rateThree");
  84. String rateFour = request.getParameter("rateFour");
  85. RateDTO dto = new RateDTO();
  86. dto.setName(name);
  87. dto.setRateOne(rateOne);
  88. dto.setRateTwo(rateTwo);
  89. dto.setRateThree(rateThree);
  90. dto.setRateFour(rateFour);
  91. SimpleDateFormat simpleDateFormat;
  92. Integer userid = rateService.getUseridByUsername(username);
  93. if (id == 0) { // 添加
  94. dto.setUserid(userid);
  95. simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  96. dto.setCreateTime(simpleDateFormat.format(System.currentTimeMillis()));
  97. if (name == null || name.length() == 0)
  98. return toolUtils.response(InterfaceResultEnum.LACK_RATE_NAME_ERROR,version);
  99. RateDTO rateDTO = new RateDTO();
  100. rateDTO.setName(name);
  101. rateDTO.setUserid(userid);
  102. if (rateService.finRateNameByDTO(rateDTO) > 0)
  103. return toolUtils.response(InterfaceResultEnum.RATE_NAME_UNIQUE_ERROR,version);
  104. rateService.addRateDataByDTO(dto);
  105. } else { // 编辑
  106. dto.setId(id);
  107. Integer useridById = rateService.findUseridById(id);
  108. if (!Objects.equals(useridById,userid))
  109. return toolUtils.response(InterfaceResultEnum.USER_HAS_NOT_MODIFY_PRIVILEGE,version);
  110. RateDTO rateDTO = new RateDTO();
  111. rateDTO.setId(id);
  112. rateDTO.setName(name);
  113. rateDTO.setUserid(userid);
  114. if (rateService.finRateNameByDTO(rateDTO) > 0)
  115. return toolUtils.response(InterfaceResultEnum.RATE_NAME_UNIQUE_ERROR,version);
  116. rateService.updateRateDataByDTO(dto);
  117. }
  118. return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
  119. }
  120. /**
  121. * 删除费率
  122. * @param request 要删除的费率的id
  123. * @return 删除成功
  124. */
  125. @RequestMapping(value = "/del", method = RequestMethod.POST)
  126. public BaseResult del(HttpServletRequest request){
  127. int version = (int) toolUtils.getRequestContent(request,"version",1);
  128. String id = request.getParameter("id");
  129. if (id == null || id.length() == 0) return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
  130. String[] split = id.split(",");
  131. for (String rateId : split) {
  132. int l = Integer.parseInt(rateId);
  133. rateService.deleteRateDataById(l);
  134. }
  135. return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version);
  136. }
  137. /**
  138. * 获取费率下拉列表
  139. * @param request 用户id
  140. * @return 返回费率下拉列表
  141. */
  142. @RequestMapping(value = "/nav", method = RequestMethod.POST)
  143. public BaseResult nav(HttpServletRequest request) {
  144. int version = (int) toolUtils.getRequestContent(request,"version",1);
  145. String username = request.getParameter("username");
  146. if (username == null || username.length() == 0)
  147. return toolUtils.response(InterfaceResultEnum.LACK_PARAM_ERROR,version);
  148. Integer userid = rateService.getUseridByUsername(username);
  149. RateVO rateVO = rateService.getRateDropDownListByUserid(userid);
  150. return toolUtils.response(InterfaceResultEnum.OPERATION_SUCCESS,version,rateVO);
  151. }
  152. }