ZhcxApiController.java 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. package com.rongwei.bsserver.controller;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.rongwei.bscommon.sys.service.BsOrganizationService;
  5. import com.rongwei.bscommon.sys.service.DmTableService;
  6. import com.rongwei.bscommon.sys.service.ZhcxApiService;
  7. import com.rongwei.bscommon.sys.utils.HwSmsUtil;
  8. import com.rongwei.bscommon.sys.utils.ZhcxCommon;
  9. import com.rongwei.bsentity.dto.RectifyApiDataDto;
  10. import com.rongwei.bsentity.vo.ZhcxOutsideInspectionVo;
  11. import com.rongwei.rwadmincommon.system.vo.SysUserVo;
  12. import com.rongwei.rwcommon.base.R;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiImplicitParam;
  15. import io.swagger.annotations.ApiImplicitParams;
  16. import io.swagger.annotations.ApiOperation;
  17. import com.rongwei.rwcommon.utils.StringUtils;
  18. import lombok.extern.slf4j.Slf4j;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.PostMapping;
  21. import org.springframework.web.bind.annotation.RequestBody;
  22. import org.springframework.web.bind.annotation.RequestMapping;
  23. import org.springframework.web.bind.annotation.RestController;
  24. import javax.servlet.http.HttpServletRequest;
  25. import java.nio.charset.StandardCharsets;
  26. import java.util.List;
  27. import java.util.Map;
  28. import java.util.Random;
  29. /**
  30. * @author zhuang
  31. */
  32. @RestController
  33. @RequestMapping("/zhcxApi")
  34. @Slf4j
  35. @Api(tags = "接口相关",description = "公共接口")
  36. public class ZhcxApiController {
  37. @Autowired
  38. private ZhcxApiService zhcxApiService;
  39. @Autowired
  40. private BsOrganizationService bsOrganizationService;
  41. @Autowired
  42. private ZhcxCommon zhcxCommon;
  43. @PostMapping("/getOutsideInspectionList")
  44. @ApiOperation("根据项目查看外部报验清单")
  45. @ApiImplicitParams({
  46. @ApiImplicitParam(name = "projectcode", value = "项目工号", dataType = "string")
  47. })
  48. public R getOutsideInspectionList(@RequestBody Map<String,Object> map){
  49. if(!map.containsKey("projectcode")){
  50. return R.error("projectcode参数必填");
  51. }
  52. List<ZhcxOutsideInspectionVo> outsideInspectionList = zhcxApiService.getOutsideInspectionList(map);
  53. return R.ok(outsideInspectionList);
  54. }
  55. @PostMapping("/sendCode")
  56. @ApiOperation("发送验证码")
  57. @ApiImplicitParams({
  58. @ApiImplicitParam(name = "loginType",required = true, value = "入口(PC/YD)", dataType = "string"),
  59. @ApiImplicitParam(name = "account",required = true, value = "账号", dataType = "string"),
  60. @ApiImplicitParam(name = "password",required = true, value = "密码", dataType = "string")
  61. })
  62. public R sendCode(@RequestBody Map<String,Object> map){
  63. R r = zhcxApiService.sendCode(map);
  64. return r;
  65. }
  66. @PostMapping("/gaiffp")
  67. @ApiOperation("忘记密码")
  68. @ApiImplicitParams({
  69. @ApiImplicitParam(name = "loginType",required = true, value = "入口(PC/YD)", dataType = "string"),
  70. @ApiImplicitParam(name = "account",required = true, value = "账号", dataType = "string"),
  71. @ApiImplicitParam(name = "code",required = true, value = "验证码", dataType = "string"),
  72. @ApiImplicitParam(name = "pwd",required = true, value = "新密码", dataType = "string")
  73. })
  74. public R getAccountInfoForForgotPassword(@RequestBody Map<String,Object> map){
  75. R r = zhcxApiService.getAccountInfoForForgotPassword(map);
  76. return r;
  77. }
  78. @PostMapping("/repw")
  79. @ApiOperation("重置密码")
  80. @ApiImplicitParams({
  81. @ApiImplicitParam(name = "loginType",required = true, value = "入口(PC/YD)", dataType = "string"),
  82. @ApiImplicitParam(name = "id",required = true, value = "用户id", dataType = "string"),
  83. @ApiImplicitParam(name = "oldpassword",required = true, value = "旧密码", dataType = "string"),
  84. @ApiImplicitParam(name = "newpassword",required = true, value = "新密码", dataType = "string")
  85. })
  86. public R resetPassword(@RequestBody Map<String,Object> map){
  87. R r = zhcxApiService.resetPassword(map);
  88. return r;
  89. }
  90. @PostMapping("/sendReviewSupervisionMail")
  91. public R sendReviewSupervisionMail(@RequestBody Map<String,Object> map){
  92. R r = zhcxApiService.sendReviewSupervisionMail(map);
  93. return r;
  94. }
  95. @PostMapping("/getCoreInspectionDetailList")
  96. @ApiOperation("核心检验指标预览")
  97. @ApiImplicitParams({
  98. @ApiImplicitParam(name = "ID",required = true, value = "核心检验指标预览ID", dataType = "string")
  99. })
  100. public R getCoreInspectionDetailList(@RequestBody Map<String,Object> map){
  101. R r = zhcxApiService.getCoreInspectionDetailList(map);
  102. return r;
  103. }
  104. @PostMapping("/forgetPwdSendSmsCode")
  105. public R forgetPwdSendSmsCode(@RequestBody Map<String,Object> map){
  106. R r = zhcxApiService.forgetPwdSendSmsCode(map);
  107. return r;
  108. }
  109. @PostMapping("/forgetResetPwd")
  110. public R forgetResetPwd(@RequestBody Map<String,Object> map){
  111. R r = zhcxApiService.forgetResetPwd(map);
  112. return r;
  113. }
  114. /**
  115. * @return 用户的监理、分包商等信息(如果存在)
  116. */
  117. @PostMapping("/gpsd")
  118. @ApiOperation("用户的监理、分包商等信息(如果存在)")
  119. @ApiImplicitParams({
  120. @ApiImplicitParam(name = "USERID",required = false, value = "用户ID", dataType = "string")
  121. })
  122. public R getProjectStaticData(@RequestBody Map<String,Object> map, HttpServletRequest request){
  123. try {
  124. SysUserVo currUser = zhcxCommon.getCurrentUser();
  125. if (currUser == null) {
  126. return R.ok();
  127. }
  128. Map<String, Object> userMap = zhcxApiService.getProjectStaticData(currUser);
  129. return R.ok(userMap);
  130. } catch (Exception e) {
  131. log.error(StringUtils.spliceErrorMsg(e), e.fillInStackTrace());
  132. return R.error("查询用户数据异常");
  133. }
  134. }
  135. @PostMapping("/syncBsOrgData")
  136. public void syncBsOrgData(){
  137. log.info("删除报送组织数据");
  138. bsOrganizationService.removeAll();
  139. log.info("删除完成");
  140. zhcxApiService.syncBsOrgData();
  141. }
  142. @PostMapping("/getRectifyData")
  143. @ApiOperation("根据项目,机号查看整改数据")
  144. @ApiImplicitParams({
  145. @ApiImplicitParam(name = "projectcode", required = true,value = "项目工号", dataType = "string"),
  146. @ApiImplicitParam(name = "machineno",required = false, value = "机号", dataType = "string")
  147. })
  148. public R getRectifyData(@RequestBody Map<String,Object> map){
  149. if(!map.containsKey("projectcode")){
  150. return R.error("projectcode参数必填");
  151. }
  152. List<RectifyApiDataDto> list = zhcxApiService.getRectifyData(map);
  153. return R.ok(list);
  154. }
  155. /**
  156. * 初始化无密码用户
  157. */
  158. @PostMapping("/initPwd")
  159. public void initPwd(){
  160. log.info("初始化密码");
  161. zhcxApiService.initPwd();
  162. log.info("初始化密码成功");
  163. }
  164. /**
  165. * 初始化无密码用户
  166. */
  167. @PostMapping("/syncUserData")
  168. public JSONObject syncUserData(String data){
  169. JSONObject result = zhcxApiService.syncUserData(data);
  170. return result;
  171. }
  172. @PostMapping("/getIp")
  173. public R getIp(@RequestBody Map<String,Object> map){
  174. Object uuip = map.get("uuip");
  175. JSONObject jsonData = new JSONObject();
  176. jsonData.put("ifReFresh", false);
  177. if (ObjectUtil.isEmpty(uuip)) {
  178. return R.ok(jsonData);
  179. }
  180. String ip = (String) uuip;
  181. int count = zhcxApiService.getIp(ip);
  182. if(count == 0){
  183. zhcxApiService.saveIp(ip);
  184. jsonData.put("ifReFresh", true);
  185. return R.ok(jsonData);
  186. }
  187. return R.ok(jsonData);
  188. }
  189. }