TBSupervisionController.java 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373
  1. package cn.com.lzt.sign.controller;
  2. import cn.com.lzt.arrangedutyoperate.dto.UserAndUserPersonnelDto;
  3. import cn.com.lzt.common.util.DateUtil;
  4. import cn.com.lzt.schedule.service.impl.ScheduleSuperivseRecordServiceImpl;
  5. import cn.com.lzt.schedule.service.impl.ScheduleSuperivseServiceImpl;
  6. import cn.com.lzt.sign.entity.*;
  7. import cn.com.lzt.sign.service.TBSupervisionService;
  8. import java.text.SimpleDateFormat;
  9. import java.util.*;
  10. import java.util.logging.Logger;
  11. import java.util.regex.Matcher;
  12. import java.util.regex.Pattern;
  13. import java.util.stream.Collectors;
  14. import javax.annotation.Resource;
  15. import javax.servlet.http.HttpServletRequest;
  16. import javax.servlet.http.HttpServletResponse;
  17. import javax.servlet.http.HttpSession;
  18. import cn.com.lzt.useroptions.entity.TBusUserOptionsEntity;
  19. import cn.hutool.core.bean.BeanUtil;
  20. import com.alibaba.fastjson.JSONObject;
  21. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  22. import com.daju.common.util.DataPage;
  23. import com.daju.mix.dao.entity.TBScheduleSuperivse;
  24. import com.daju.mix.dao.entity.TBScheduleSuperivseRecord;
  25. import com.daju.mix.dao.mapper.TBCarScheduleTaskArrangeMapper;
  26. import com.daju.mix.dao.service.ITBCarScheduleTaskArrangeService;
  27. import com.daju.mix.dao.service.ITSBaseUserService;
  28. import com.daju.mix.dao.service.impl.ScheduleStatisticsServiceImpl;
  29. import com.daju.mix.dao.service.impl.TSBaseUserServiceImpl;
  30. import org.apache.commons.lang.StringUtils;
  31. import org.jeecgframework.core.common.controller.BaseController;
  32. import org.jeecgframework.core.common.exception.BusinessException;
  33. import org.jeecgframework.core.common.hibernate.qbc.CriteriaQuery;
  34. import org.jeecgframework.core.common.model.json.AjaxJson;
  35. import org.jeecgframework.core.common.model.json.DataGrid;
  36. import org.jeecgframework.core.extend.hqlsearch.HqlGenerateUtil;
  37. import org.jeecgframework.core.util.ContextHolderUtils;
  38. import org.jeecgframework.core.util.ResourceUtil;
  39. import org.jeecgframework.core.util.StringUtil;
  40. import org.jeecgframework.tag.core.easyui.TagUtil;
  41. import org.jeecgframework.tag.vo.datatable.SortDirection;
  42. import org.jeecgframework.web.system.pojo.base.TSBaseUser;
  43. import org.jeecgframework.web.system.pojo.base.TSDepart;
  44. import org.jeecgframework.web.system.pojo.base.TSUser;
  45. import org.jeecgframework.web.system.service.SystemService;
  46. import org.springframework.beans.factory.annotation.Autowired;
  47. import org.springframework.stereotype.Controller;
  48. import org.springframework.web.bind.annotation.RequestBody;
  49. import org.springframework.web.bind.annotation.RequestMapping;
  50. import org.springframework.web.bind.annotation.ResponseBody;
  51. import org.springframework.web.servlet.ModelAndView;
  52. /**
  53. * 督查奖惩签报 controller
  54. */
  55. @Controller
  56. @RequestMapping({"/tBSupervisionController"})
  57. public class TBSupervisionController
  58. extends BaseController {
  59. private static final Logger logger = Logger.getLogger(String.valueOf(cn.com.lzt.sign.controller.TBSupervisionController.class));
  60. @Autowired
  61. private TBSupervisionService tBSupervisionService;
  62. //督查单据
  63. @Resource
  64. private ScheduleSuperivseServiceImpl superivseService;
  65. @Resource
  66. private ScheduleStatisticsServiceImpl scheduleStatisticsService;
  67. @Resource
  68. private ScheduleSuperivseRecordServiceImpl superivseRecordService;
  69. @Resource
  70. private TSBaseUserServiceImpl itsBaseUserService;
  71. @Resource
  72. private SystemService systemService;
  73. @RequestMapping(params = {"list"})
  74. public ModelAndView list(HttpServletRequest request) {
  75. /* 39 */
  76. return new ModelAndView("cn/com/lzt/sign/tbsupervision/tBSupervisionList");
  77. }
  78. /**
  79. * 获取当前登录人的审批权限集合
  80. *
  81. * @return
  82. * @author刘梦祥
  83. * @Date 2021年11月29日00:42:57
  84. */
  85. public Map<String, List<String>> getUserRuleMap() {
  86. // 获取当前操作人的信息
  87. TSUser user = ResourceUtil.getSessionUser();
  88. TSBaseUser tsBaseUser = this.systemService.getEntity(TSBaseUser.class, user.getId());
  89. DataGrid dataGrid1 = new DataGrid();
  90. CriteriaQuery criteriaQuery1 = new CriteriaQuery(UserAndUserPersonnelDto.class, dataGrid1);
  91. criteriaQuery1.eq("userid", user.getId());
  92. criteriaQuery1.add();
  93. List<UserAndUserPersonnelDto> userAndUserPersonnelDtoList = this.systemService.getListByCriteriaQuery(criteriaQuery1, true);
  94. Map<String, List<String>> ruleMap = new HashMap<>();
  95. // 得到登录人的职位
  96. List<String> departidList = new ArrayList<>();
  97. if (tsBaseUser != null && tsBaseUser.getDepartid() != null) {
  98. departidList.add(tsBaseUser.getDepartid());
  99. }
  100. // 得到操作人的岗位
  101. List<String> inPostidList = new ArrayList<>();
  102. if (userAndUserPersonnelDtoList != null && userAndUserPersonnelDtoList.size() > 0) {
  103. for (UserAndUserPersonnelDto userInfoDto : userAndUserPersonnelDtoList) {
  104. if (StringUtil.isNotEmpty(userInfoDto.getInPostid())) {
  105. if (!inPostidList.contains(userInfoDto.getInPostid())) {
  106. inPostidList.add(userInfoDto.getInPostid());
  107. }
  108. }
  109. }
  110. }
  111. ruleMap.put("departId", departidList);
  112. ruleMap.put("inPostid", inPostidList);
  113. return ruleMap;
  114. }
  115. @RequestMapping(params = {"datagrid"})
  116. public void datagrid(HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {
  117. StringBuffer queryStr = new StringBuffer();
  118. queryStr.append(" where 1 = 1 ");
  119. // 封装督查单据人员查询条件
  120. if(StringUtil.isNotEmpty(request.getParameter("supervisionBillUser"))){
  121. queryStr.append(" and supervision_bill_user in (select tsbu.id as userIds from t_s_base_user tsbu where tsbu.realname like \"%" + request.getParameter("supervisionBillUser") + "%\" group by tsbu.id ) ");
  122. }
  123. // 封装业务类型查询条件
  124. if (StringUtil.isNotEmpty(request.getParameter("supervisionType"))) {
  125. queryStr.append(" and supervision_type = \"" + request.getParameter("supervisionType") + "\"");
  126. }
  127. // 封装督查单据区域查询条件
  128. if (StringUtil.isNotEmpty(request.getParameter("supervisionBillRegion"))) {
  129. queryStr.append(" and supervision_bill_region = \"" + request.getParameter("supervisionBillRegion") + "\"");
  130. }
  131. // 封装责任人查询条件
  132. if (StringUtil.isNotEmpty(request.getParameter("supervisionDutyUser"))) {
  133. queryStr.append(" and supervision_duty_user in (select tsbu.id as userIds from t_s_base_user tsbu where tsbu.realname like \"%" + request.getParameter("supervisionDutyUser") + "%\" group by tsbu.id ) ");
  134. }
  135. // 封装奖惩内容查询条件
  136. if (StringUtil.isNotEmpty(request.getParameter("supervisionCont"))) {
  137. queryStr.append(" and supervision_cont like \"%" + request.getParameter("supervisionCont") + "%\"");
  138. }
  139. // 封装奖惩处理查询条件
  140. if (StringUtil.isNotEmpty(request.getParameter("supervisionRes"))) {
  141. queryStr.append(" and supervision_res like \"%" + request.getParameter("supervisionRes") + "%\"");
  142. }
  143. // 封装审批状态查询条件
  144. if (StringUtil.isNotEmpty(request.getParameter("supervisionApprove"))) {
  145. queryStr.append(" and supervision_approve = \"" + request.getParameter("supervisionApprove") + "\"");
  146. }
  147. List<Map<String, Object>> dataGridList = this.systemService.toDataGridByDataGrid(" t_b_supervision ", "supervision_spare_two", "request_id", "create_date", dataGrid, queryStr.toString());
  148. dataGrid.setResults(dataGridList);
  149. TagUtil.datagrid(response, dataGrid);
  150. }
  151. @RequestMapping(params = {"goAdd"})
  152. public ModelAndView goAdd(HttpServletRequest request) {
  153. return new ModelAndView("cn/com/lzt/sign/tbsupervision/supervisionList-add");
  154. }
  155. @RequestMapping(params = {"getSuperivseList"})
  156. public ModelAndView getSuperivseList(HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {
  157. return new ModelAndView("cn/com/lzt/sign/tbsupervision/selectsuperivseList");
  158. }
  159. @RequestMapping(params = {"getUserName"})
  160. @ResponseBody
  161. public AjaxJson getUserName(HttpServletRequest request) {
  162. String name = itsBaseUserService.warningDetailDto(request.getParameter("id"));
  163. AjaxJson j = new AjaxJson();
  164. j.setSuccess(true);
  165. j.setObj(name);
  166. return j;
  167. }
  168. @RequestMapping(params = {"doAdd"})
  169. @ResponseBody
  170. public AjaxJson doAdd(TBSupervisionAddReq tbSupervisionEntity, HttpServletRequest request) {
  171. HttpSession session = ContextHolderUtils.getSession();
  172. TSUser tuser = (TSUser) session.getAttribute("LOCAL_CLINET_USER");
  173. AjaxJson j = new AjaxJson();
  174. String message = "添加成功";
  175. try {
  176. String res = tbSupervisionEntity.getSupervisionRes();
  177. if (tbSupervisionEntity.getPunishMoney() != null) {
  178. res = "罚款" + tbSupervisionEntity.getPunishMoney() + "元";
  179. }else if (tbSupervisionEntity.getAwardMoney() != null) {
  180. res = "奖励" + tbSupervisionEntity.getAwardMoney() + "元";
  181. }/*else if (tbSupervisionEntity.getSubSalary() != null) {
  182. res = "扣工资" + tbSupervisionEntity.getSubSalary() + "元";
  183. } else if (tbSupervisionEntity.getSubAwardMoney() != null) {
  184. res = "扣奖金" + tbSupervisionEntity.getSubAwardMoney() + "元";
  185. } */
  186. TBScheduleSuperivse common = superivseService.getById(tbSupervisionEntity.getSupervisionBillId());
  187. TBSupervisionEntity save = new TBSupervisionEntity();
  188. save.setSupervisionBillId(Integer.toString(common.getId()));
  189. save.setSupervisionBillCode(common.getCode());
  190. save.setSupervisionBillDate(DateUtil.changeStrToDate2(common.getSuperviseDate()));
  191. save.setSupervisionBillUser(common.getUserId());
  192. save.setSupervisionType(common.getType());
  193. save.setSupervisionBillRegion(common.getArea());
  194. save.setSupervisionAddress(common.getLocation());
  195. save.setSupervisionProCont(common.getContext());
  196. save.setSupervisionOneImgUrl(common.getImgUrl());
  197. save.setSupervisionDutyUser(common.getResponsibleUserId());
  198. save.setSupervisionClassUser(common.getLeaderUserId());
  199. save.setSupervisionCont(tbSupervisionEntity.getSupervisionCont());
  200. save.setSupervisionRes(res);
  201. save.setSupervisionResType(tbSupervisionEntity.getSupervisionResType());
  202. //审批用的
  203. save.setSupervisionSpareTwo(tuser.getId());
  204. save.setSupervisionApprove("待提交");
  205. //end
  206. TBSupervisionEntity entity = (TBSupervisionEntity) this.tBSupervisionService.getEntity(TBSupervisionEntity.class, tbSupervisionEntity.getId());
  207. if (Objects.isNull(entity)) {
  208. this.tBSupervisionService.save(save);
  209. } else {
  210. tBSupervisionService.deleteEntityById(TBSupervisionEntity.class,tbSupervisionEntity.getId());
  211. this.tBSupervisionService.save(save);
  212. }
  213. } catch (Exception e) {
  214. e.printStackTrace();
  215. message = "添加失败";
  216. throw new BusinessException(e.getMessage());
  217. }
  218. j.setMsg(message);
  219. return j;
  220. }
  221. @RequestMapping(params = {"goUpdate"})
  222. public ModelAndView goUpdate(TBSupervisionEntity supervisionEntity, HttpServletRequest request) {
  223. String id = supervisionEntity.getId();
  224. supervisionEntity = (TBSupervisionEntity) this.tBSupervisionService.getEntity(TBSupervisionEntity.class, id);
  225. String user = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionBillUser());
  226. String dutyUser = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionDutyUser());
  227. String classUser = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionClassUser());
  228. supervisionEntity.setSupervisionBillUser(user);
  229. supervisionEntity.setSupervisionDutyUser(dutyUser);
  230. supervisionEntity.setSupervisionClassUser(classUser);
  231. TBSupervisionAddReq req = new TBSupervisionAddReq();
  232. BeanUtil.copyProperties(supervisionEntity, req);
  233. if (supervisionEntity.getSupervisionResType().equals("经济")) {
  234. String regEx="[^0-9]";
  235. Pattern p = Pattern.compile(regEx);
  236. Matcher m = p.matcher(supervisionEntity.getSupervisionRes());
  237. String money = m.replaceAll("").trim();
  238. if (supervisionEntity.getSupervisionRes().contains("罚款")) {
  239. req.setPunishMoney(Integer.valueOf(money));
  240. }else if (supervisionEntity.getSupervisionRes().contains("奖励")) {
  241. req.setAwardMoney(Integer.valueOf(money));
  242. }/*else if (supervisionEntity.getSupervisionRes().contains("扣工资")) {
  243. req.setSubSalary(Integer.valueOf(money));
  244. } else if (supervisionEntity.getSupervisionRes().contains("扣奖金")) {
  245. req.setSubAwardMoney(Integer.valueOf(money));
  246. } */
  247. }
  248. // 整改照片路由兼容处理
  249. if(req.getSupervisionOneImgUrl() != null){
  250. if (req.getSupervisionOneImgUrl() != null && StringUtils.isNotEmpty(req.getSupervisionOneImgUrl())) {
  251. if (req.getSupervisionOneImgUrl().contains("http") && req.getSupervisionOneImgUrl().length() > 10) {
  252. try {
  253. List<String> imgUrlList = JSONObject.parseArray(req.getSupervisionOneImgUrl(), String.class);
  254. req.setSupervisionOneImgUrl(imgUrlList.get(0));
  255. } catch (Exception e) {
  256. e.printStackTrace();
  257. }
  258. } else {
  259. List<String> imgUrlList = new ArrayList<>();
  260. if (!"[null]".equals(req.getSupervisionOneImgUrl()) && !"[]".equals(req.getSupervisionOneImgUrl())) {
  261. imgUrlList.add("http://47.100.210.233/" + req.getSupervisionOneImgUrl());
  262. req.setSupervisionOneImgUrl(imgUrlList.get(0));
  263. }
  264. }
  265. }
  266. }
  267. String supervisionBillDateStr = "";
  268. SimpleDateFormat simpleDateFormatYMD = new SimpleDateFormat("yyyy-MM-dd");
  269. supervisionBillDateStr = simpleDateFormatYMD.format(req.getSupervisionBillDate());
  270. request.setAttribute("supervisionBillDateStr", supervisionBillDateStr);
  271. request.setAttribute("supervision", req);
  272. return new ModelAndView("cn/com/lzt/sign/tbsupervision/supervisionList-update");
  273. }
  274. @RequestMapping(params = {"goEdit"})
  275. public ModelAndView goEdit(TBSupervisionEntity supervisionEntity, HttpServletRequest request) {
  276. String id = supervisionEntity.getId();
  277. supervisionEntity = (TBSupervisionEntity) this.tBSupervisionService.getEntity(TBSupervisionEntity.class, id);
  278. String user = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionBillUser());
  279. String dutyUser = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionDutyUser());
  280. String classUser = itsBaseUserService.warningDetailDto(supervisionEntity.getSupervisionClassUser());
  281. supervisionEntity.setSupervisionBillUser(user);
  282. supervisionEntity.setSupervisionDutyUser(dutyUser);
  283. supervisionEntity.setSupervisionClassUser(classUser);
  284. TBSupervisionAddReq req = new TBSupervisionAddReq();
  285. BeanUtil.copyProperties(supervisionEntity, req);
  286. if (supervisionEntity.getSupervisionResType().equals("经济")) {
  287. String regEx="[^0-9]";
  288. Pattern p = Pattern.compile(regEx);
  289. Matcher m = p.matcher(supervisionEntity.getSupervisionRes());
  290. String money = m.replaceAll("").trim();
  291. if (supervisionEntity.getSupervisionRes().contains("罚款")) {
  292. req.setPunishMoney(Integer.valueOf(money));
  293. }else if (supervisionEntity.getSupervisionRes().contains("奖励")) {
  294. req.setAwardMoney(Integer.valueOf(money));
  295. } /*else if (supervisionEntity.getSupervisionRes().contains("扣工资")) {
  296. req.setSubSalary(Integer.valueOf(money));
  297. } else if (supervisionEntity.getSupervisionRes().contains("扣奖金")) {
  298. req.setSubAwardMoney(Integer.valueOf(money));
  299. } */
  300. }
  301. // 整改照片路由兼容处理
  302. if(req.getSupervisionOneImgUrl() != null){
  303. if (req.getSupervisionOneImgUrl() != null && StringUtils.isNotEmpty(req.getSupervisionOneImgUrl())) {
  304. if (req.getSupervisionOneImgUrl().contains("http") && req.getSupervisionOneImgUrl().length() > 10) {
  305. try {
  306. List<String> imgUrlList = JSONObject.parseArray(req.getSupervisionOneImgUrl(), String.class);
  307. req.setSupervisionOneImgUrl(imgUrlList.get(0));
  308. } catch (Exception e) {
  309. e.printStackTrace();
  310. }
  311. } else {
  312. List<String> imgUrlList = new ArrayList<>();
  313. if (!"[null]".equals(req.getSupervisionOneImgUrl()) && !"[]".equals(req.getSupervisionOneImgUrl())) {
  314. imgUrlList.add("http://47.100.210.233/" + req.getSupervisionOneImgUrl());
  315. req.setSupervisionOneImgUrl(imgUrlList.get(0));
  316. }
  317. }
  318. }
  319. }
  320. String supervisionBillDateStr = "";
  321. SimpleDateFormat simpleDateFormatYMD = new SimpleDateFormat("yyyy-MM-dd");
  322. supervisionBillDateStr = simpleDateFormatYMD.format(req.getSupervisionBillDate());
  323. request.setAttribute("supervisionBillDateStr", supervisionBillDateStr);
  324. request.setAttribute("supervision", req);
  325. return new ModelAndView("cn/com/lzt/sign/tbsupervision/supervisionList-edit");
  326. }
  327. @RequestMapping(params = "doDel")
  328. @ResponseBody
  329. public AjaxJson doDel(HttpServletRequest request) {
  330. AjaxJson j = new AjaxJson();
  331. String message = "添加成功";
  332. j.setSuccess(true);
  333. try{
  334. TBSupervisionEntity entity = new TBSupervisionEntity();
  335. entity.setId(request.getParameter("id"));
  336. tBSupervisionService.delete(entity);
  337. }catch(Exception e){
  338. e.printStackTrace();
  339. message = "添加失败";
  340. j.setSuccess(false);
  341. throw new BusinessException(e.getMessage());
  342. }
  343. j.setMsg(message);
  344. return j;
  345. }
  346. }
  347. /* Location: C:\Users\86152\Desktop\qwe\!\controller\TBSupervisionController.class
  348. * Java compiler version: 8 (52.0)
  349. * JD-Core Version: 1.1.3
  350. */