BusCompanyController.java 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. package com.ruoyi.web.pcApi.controller;
  2. import java.util.List;
  3. import javax.servlet.http.HttpServletResponse;
  4. import com.ruoyi.common.constant.UserConstants;
  5. import com.ruoyi.common.core.domain.entity.SysDept;
  6. import com.ruoyi.common.core.domain.entity.SysUser;
  7. import com.ruoyi.common.utils.SecurityUtils;
  8. import com.ruoyi.system.mapper.SysUserMapper;
  9. import com.ruoyi.system.service.ISysDeptService;
  10. import com.ruoyi.system.service.ISysUserService;
  11. import org.springframework.security.access.prepost.PreAuthorize;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.GetMapping;
  14. import org.springframework.web.bind.annotation.PostMapping;
  15. import org.springframework.web.bind.annotation.PutMapping;
  16. import org.springframework.web.bind.annotation.DeleteMapping;
  17. import org.springframework.web.bind.annotation.PathVariable;
  18. import org.springframework.web.bind.annotation.RequestBody;
  19. import org.springframework.web.bind.annotation.RequestMapping;
  20. import org.springframework.web.bind.annotation.RestController;
  21. import com.ruoyi.common.annotation.Log;
  22. import com.ruoyi.common.core.controller.BaseController;
  23. import com.ruoyi.common.core.domain.AjaxResult;
  24. import com.ruoyi.common.enums.BusinessType;
  25. import com.ruoyi.web.pcApi.domain.BusCompany;
  26. import com.ruoyi.web.pcApi.service.IBusCompanyService;
  27. import com.ruoyi.common.utils.poi.ExcelUtil;
  28. import com.ruoyi.common.core.page.TableDataInfo;
  29. /**
  30. * bus公司Controller
  31. *
  32. * @author lzp
  33. * @date 2022-08-26
  34. */
  35. @RestController
  36. @RequestMapping("/busCompany/busCompany")
  37. public class BusCompanyController extends BaseController
  38. {
  39. @Autowired
  40. private IBusCompanyService busCompanyService;
  41. @Autowired
  42. private ISysUserService userService;
  43. @Autowired
  44. private SysUserMapper userMapper;
  45. @Autowired
  46. private ISysDeptService deptService;
  47. /**
  48. * 查询bus公司列表
  49. */
  50. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:list')")
  51. @GetMapping("/list")
  52. public TableDataInfo list(BusCompany busCompany)
  53. {
  54. startPage();
  55. List<BusCompany> list = busCompanyService.selectBusCompanyList(busCompany);
  56. return getDataTable(list);
  57. }
  58. /**
  59. * 导出bus公司列表
  60. */
  61. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:export')")
  62. @Log(title = "bus公司", businessType = BusinessType.EXPORT)
  63. @PostMapping("/export")
  64. public void export(HttpServletResponse response, BusCompany busCompany)
  65. {
  66. List<BusCompany> list = busCompanyService.selectBusCompanyList(busCompany);
  67. ExcelUtil<BusCompany> util = new ExcelUtil<BusCompany>(BusCompany.class);
  68. util.exportExcel(response, list, "bus公司数据");
  69. }
  70. /**
  71. * 获取bus公司详细信息
  72. */
  73. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:query')")
  74. @GetMapping(value = "/{deptId}")
  75. public AjaxResult getInfo(@PathVariable("deptId") Long deptId)
  76. {
  77. return AjaxResult.success(busCompanyService.selectBusCompanyByDeptId(deptId));
  78. }
  79. /**
  80. * 新增bus公司
  81. */
  82. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:add')")
  83. @Log(title = "bus公司", businessType = BusinessType.INSERT)
  84. @PostMapping
  85. public AjaxResult add(@RequestBody BusCompany busCompany)
  86. {
  87. // 默认总公司下
  88. busCompany.setParentId(101L);
  89. // 新增bus公司管理员用户
  90. if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(busCompany.getUsername())))
  91. {
  92. return AjaxResult.error("新增用户'" + busCompany.getUsername() + "'失败,登录账号已存在");
  93. }
  94. SysUser sysUser = new SysUser();
  95. sysUser.setUserName(busCompany.getUsername());
  96. sysUser.setNickName(busCompany.getDeptName());
  97. sysUser.setPassword(SecurityUtils.encryptPassword(busCompany.getPassword()));
  98. sysUser.setRoleIds(new Long[]{2L});
  99. userService.insertUser(sysUser);
  100. SysDept dept = new SysDept();
  101. dept.setParentId(101L);
  102. dept.setDeptName(busCompany.getDeptName());
  103. if (UserConstants.NOT_UNIQUE.equals(deptService.checkDeptNameUnique(dept)))
  104. {
  105. return AjaxResult.error("新增bus公司'" + dept.getDeptName() + "'失败,公司名称已存在");
  106. }
  107. busCompany.setManager(sysUser.getUserId());
  108. busCompany.setCreateBy(getUserId().toString());
  109. busCompany.setAncestors("0,100,101");
  110. busCompanyService.insertBusCompany(busCompany);
  111. // 更新用户bus
  112. sysUser.setDeptId(busCompany.getDeptId());
  113. userMapper.updateUser(sysUser);
  114. return AjaxResult.success();
  115. }
  116. /**
  117. * 修改bus公司
  118. */
  119. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:edit')")
  120. @Log(title = "bus公司", businessType = BusinessType.UPDATE)
  121. @PutMapping
  122. public AjaxResult edit(@RequestBody BusCompany busCompany)
  123. {
  124. SysDept dept = new SysDept();
  125. dept.setParentId(101L);
  126. dept.setDeptName(busCompany.getDeptName());
  127. dept.setDeptId(busCompany.getDeptId());
  128. if (UserConstants.NOT_UNIQUE.equals(deptService.checkDeptNameUnique(dept)))
  129. {
  130. return AjaxResult.error("修改bus公司'" + dept.getDeptName() + "'失败,公司名称已存在");
  131. }
  132. busCompany.setUpdateBy(getUserId().toString());
  133. return toAjax(busCompanyService.updateBusCompany(busCompany));
  134. }
  135. /**
  136. * 重置bus公司密码
  137. */
  138. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:resetPassword')")
  139. @Log(title = "bus公司", businessType = BusinessType.UPDATE)
  140. @PutMapping("/resetPassword")
  141. public AjaxResult resetPassword(@RequestBody BusCompany busCompany)
  142. {
  143. busCompany.setPassword(SecurityUtils.encryptPassword("123456"));
  144. busCompany.setUpdateBy(getUserId().toString());
  145. return toAjax(busCompanyService.updateBusCompany(busCompany));
  146. }
  147. /**
  148. * 删除bus公司
  149. */
  150. @PreAuthorize("@ss.hasPermi('busCompany:busCompany:remove')")
  151. @Log(title = "bus公司", businessType = BusinessType.DELETE)
  152. @DeleteMapping("/{deptIds}")
  153. public AjaxResult remove(@PathVariable Long[] deptIds)
  154. {
  155. return toAjax(busCompanyService.deleteBusCompanyByDeptIds(deptIds));
  156. }
  157. }