CcExtNumController.java 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. package com.ruoyi.cc.controller;
  2. import java.util.List;
  3. import com.ruoyi.common.utils.StringUtils;
  4. import org.apache.shiro.authz.annotation.RequiresPermissions;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.stereotype.Controller;
  7. import org.springframework.ui.ModelMap;
  8. import org.springframework.web.bind.annotation.GetMapping;
  9. import org.springframework.web.bind.annotation.PathVariable;
  10. import org.springframework.web.bind.annotation.PostMapping;
  11. import org.springframework.web.bind.annotation.RequestMapping;
  12. import org.springframework.web.bind.annotation.ResponseBody;
  13. import com.ruoyi.common.annotation.Log;
  14. import com.ruoyi.common.enums.BusinessType;
  15. import com.ruoyi.cc.domain.CcExtNum;
  16. import com.ruoyi.cc.service.ICcExtNumService;
  17. import com.ruoyi.common.core.controller.BaseController;
  18. import com.ruoyi.common.core.domain.AjaxResult;
  19. import com.ruoyi.common.utils.poi.ExcelUtil;
  20. import com.ruoyi.common.core.page.TableDataInfo;
  21. /**
  22. * 分机管理Controller
  23. *
  24. * @author ruoyi
  25. * @date 2024-12-22
  26. */
  27. @Controller
  28. @RequestMapping("/cc/extnum")
  29. public class CcExtNumController extends BaseController
  30. {
  31. private String prefix = "cc/extnum";
  32. @Autowired
  33. private ICcExtNumService ccExtNumService;
  34. @RequiresPermissions("cc:extnum:view")
  35. @GetMapping()
  36. public String extNum()
  37. {
  38. return prefix + "/extnum";
  39. }
  40. /**
  41. * 查询分机管理列表
  42. */
  43. @RequiresPermissions("cc:extnum:list")
  44. @PostMapping("/list")
  45. @ResponseBody
  46. public TableDataInfo list(CcExtNum ccExtNum)
  47. {
  48. startPage();
  49. List<CcExtNum> list = ccExtNumService.selectCcExtNumList(ccExtNum);
  50. return getDataTable(list);
  51. }
  52. /**
  53. * 导出分机管理列表
  54. */
  55. @RequiresPermissions("cc:extnum:export")
  56. @Log(title = "分机管理", businessType = BusinessType.EXPORT)
  57. @PostMapping("/export")
  58. @ResponseBody
  59. public AjaxResult export(CcExtNum ccExtNum)
  60. {
  61. List<CcExtNum> list = ccExtNumService.selectCcExtNumList(ccExtNum);
  62. ExcelUtil<CcExtNum> util = new ExcelUtil<CcExtNum>(CcExtNum.class);
  63. return util.exportExcel(list, "分机管理数据");
  64. }
  65. /**
  66. * 新增分机管理
  67. */
  68. @GetMapping("/add")
  69. public String add()
  70. {
  71. return prefix + "/add";
  72. }
  73. /**
  74. * 新增保存分机管理
  75. */
  76. @RequiresPermissions("cc:extnum:add")
  77. @Log(title = "分机管理", businessType = BusinessType.INSERT)
  78. @PostMapping("/add")
  79. @ResponseBody
  80. public AjaxResult addSave(CcExtNum ccExtNum) {
  81. // 校验分机号唯一
  82. CcExtNum checkExtNum = ccExtNumService.selectCcExtNumByExtNum(ccExtNum.getExtNum());
  83. if (null != checkExtNum) {
  84. return AjaxResult.error("分机号已存在!");
  85. }
  86. // 一个工号只能绑定一个分机
  87. if (StringUtils.isNotEmpty(ccExtNum.getUserCode())) {
  88. // todo 校验工号是否存在
  89. CcExtNum checkUserCode = ccExtNumService.selectCcExtNumByUserCode(ccExtNum.getUserCode());
  90. if (null != checkUserCode) {
  91. return AjaxResult.error("该工号已经绑定分机" + checkUserCode.getExtNum() + ",不允许重复绑定!");
  92. }
  93. }
  94. return toAjax(ccExtNumService.insertCcExtNum(ccExtNum));
  95. }
  96. /**
  97. * 修改分机管理
  98. */
  99. @RequiresPermissions("cc:extnum:edit")
  100. @GetMapping("/edit/{extId}")
  101. public String edit(@PathVariable("extId") Long extId, ModelMap mmap)
  102. {
  103. CcExtNum ccExtNum = ccExtNumService.selectCcExtNumByExtId(extId);
  104. mmap.put("ccExtNum", ccExtNum);
  105. return prefix + "/edit";
  106. }
  107. /**
  108. * 修改保存分机管理
  109. */
  110. @RequiresPermissions("cc:extnum:edit")
  111. @Log(title = "分机管理", businessType = BusinessType.UPDATE)
  112. @PostMapping("/edit")
  113. @ResponseBody
  114. public AjaxResult editSave(CcExtNum ccExtNum) {
  115. // 一个工号只能绑定一个分机
  116. if (StringUtils.isNotEmpty(ccExtNum.getUserCode())) {
  117. // todo 校验工号是否存在
  118. CcExtNum checkUserCode = ccExtNumService.selectCcExtNumByUserCode(ccExtNum.getUserCode());
  119. if (null != checkUserCode
  120. && !ccExtNum.getExtNum().equals(checkUserCode.getExtNum())) {
  121. return AjaxResult.error("该工号已经绑定分机" + checkUserCode.getExtNum() + ",不允许重复绑定!");
  122. }
  123. }
  124. return toAjax(ccExtNumService.updateCcExtNum(ccExtNum));
  125. }
  126. /**
  127. * 删除分机管理
  128. */
  129. @RequiresPermissions("cc:extnum:remove")
  130. @Log(title = "分机管理", businessType = BusinessType.DELETE)
  131. @PostMapping( "/remove")
  132. @ResponseBody
  133. public AjaxResult remove(String ids)
  134. {
  135. return toAjax(ccExtNumService.deleteCcExtNumByExtIds(ids));
  136. }
  137. @GetMapping("/all")
  138. @ResponseBody
  139. public AjaxResult all()
  140. {
  141. List<CcExtNum> list = ccExtNumService.selectCcExtNumList(new CcExtNum());
  142. return AjaxResult.success(list);
  143. }
  144. }