TbBusinessController.java 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. package com.pj.project.tb_business;
  2. import java.util.Date;
  3. import java.util.List;
  4. import cn.dev33.satoken.stp.StpUtil;
  5. import cn.hutool.core.util.StrUtil;
  6. import com.pj.constants.UserTypeEnum;
  7. import com.pj.project.tb_business_item.TbBusinessItem;
  8. import com.pj.project.tb_business_item.TbBusinessItemService;
  9. import com.pj.utils.so.SoMap;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.transaction.annotation.Transactional;
  12. import org.springframework.web.bind.annotation.*;
  13. import com.pj.utils.sg.*;
  14. import com.pj.project4sp.SP;
  15. import com.pj.current.satoken.StpUserUtil;
  16. import cn.dev33.satoken.annotation.SaCheckPermission;
  17. import javax.annotation.Resource;
  18. /**
  19. * Controller: tb_business -- 入境登记
  20. * @author qzy
  21. */
  22. @RestController
  23. @RequestMapping("/TbBusiness/")
  24. public class TbBusinessController {
  25. /** 底层 Service 对象 */
  26. @Autowired
  27. TbBusinessService tbBusinessService;
  28. @Resource
  29. private TbBusinessItemService tbBusinessItemService;
  30. /** 增 */
  31. @RequestMapping("add")
  32. @SaCheckPermission(TbBusiness.PERMISSION_CODE)
  33. @Transactional(rollbackFor = Exception.class)
  34. public AjaxJson add(TbBusiness t){
  35. return tbBusinessService.addOrUpdate(t);
  36. }
  37. /** 删 */
  38. @RequestMapping("delete")
  39. @SaCheckPermission(TbBusiness.PERMISSION_CODE)
  40. @Transactional(rollbackFor = Exception.class)
  41. public AjaxJson delete(String id){
  42. tbBusinessService.removeById(id);
  43. tbBusinessItemService.removeByBusinessId(id);
  44. return AjaxJson.getSuccess();
  45. }
  46. /** 删 - 根据id列表 */
  47. @RequestMapping("deleteByIds")
  48. @SaCheckPermission(TbBusiness.PERMISSION_CODE)
  49. @Transactional(rollbackFor = Exception.class)
  50. public AjaxJson deleteByIds(){
  51. List<Long> ids = SoMap.getRequestSoMap().getListByComma("ids", long.class);
  52. ids.forEach(id->{
  53. tbBusinessItemService.removeByBusinessId(id+"");
  54. });
  55. int line = SP.publicMapper.deleteByIds(TbBusiness.TABLE_NAME, ids);
  56. return AjaxJson.getByLine(line);
  57. }
  58. /** 改 */
  59. @RequestMapping("update")
  60. @SaCheckPermission(TbBusiness.PERMISSION_CODE)
  61. public AjaxJson update(TbBusiness t){
  62. tbBusinessService.addOrUpdate(t);
  63. return AjaxJson.getSuccess();
  64. }
  65. /** 确认业务 */
  66. @RequestMapping("confirm")
  67. @Transactional(rollbackFor = Exception.class)
  68. public AjaxJson confirm(){
  69. if (!StpUtil.hasPermissionAnd(TbBusiness.PERMISSION_CONFIRM)&&!
  70. StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  71. return AjaxJson.getError("无确认业务权限");
  72. }
  73. SoMap so = SoMap.getRequestSoMap();
  74. List<String>ids=so.getListByComma("ids",String.class);
  75. tbBusinessService.confirm(ids);
  76. return AjaxJson.getSuccess();
  77. }
  78. /** 确认业务 */
  79. @RequestMapping("adminConfirmPay")
  80. @Transactional(rollbackFor = Exception.class)
  81. public AjaxJson adminConfirmPay(){
  82. if (!StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  83. return AjaxJson.getError("无确认支付权限");
  84. }
  85. SoMap so = SoMap.getRequestSoMap();
  86. List<String>ids=so.getListByComma("ids",String.class);
  87. String ticket=so.getString("payTicket");
  88. tbBusinessService.adminConfirmPay(ids,ticket);
  89. return AjaxJson.getSuccess();
  90. }
  91. /** 手动入场确认 */
  92. @RequestMapping("adminConfirmIn")
  93. @Transactional(rollbackFor = Exception.class)
  94. public AjaxJson adminConfirmIn(){
  95. if (!StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  96. return AjaxJson.getError("无确认入场权限");
  97. }
  98. SoMap so = SoMap.getRequestSoMap();
  99. String id=so.getString("id");
  100. String inChannel=so.getString("inChannel");
  101. tbBusinessService.adminConfirmIn(id,inChannel);
  102. return AjaxJson.getSuccess();
  103. }
  104. /** 查 - 根据id */
  105. @RequestMapping("getById")
  106. public AjaxJson getById(String id){
  107. TbBusiness t = tbBusinessService.getById(id);
  108. List<TbBusinessItem>items=tbBusinessItemService.findByBusinessId(id);
  109. t.setItems(items);
  110. return AjaxJson.getSuccessData(t);
  111. }
  112. /** 查集合 - 根据条件(参数为空时代表忽略指定条件) */
  113. @RequestMapping("getList")
  114. public AjaxJson getList() {
  115. SoMap so = SoMap.getRequestSoMap();
  116. String currentCustomerId=StpUserUtil.getCustomerId();
  117. if (!currentCustomerId.equals(UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  118. so.put("customerId",currentCustomerId);
  119. }
  120. List<TbBusiness> list = tbBusinessService.getList(so.startPage());
  121. return AjaxJson.getPageData(so.getDataCount(), list);
  122. }
  123. /** 改 */
  124. @RequestMapping("pay")
  125. public AjaxJson pay(){
  126. if (!StpUtil.hasPermissionAnd("tb-business-pay")&&!
  127. StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  128. return AjaxJson.getError("无支付权限");
  129. }
  130. SoMap so = SoMap.getRequestSoMap();
  131. String id=so.getString("id");
  132. String payTicket=so.getString("payTicket");
  133. tbBusinessService.pay(id,payTicket);
  134. return AjaxJson.getSuccess();
  135. }
  136. @RequestMapping("adminSetIn")
  137. public AjaxJson adminSetIn(){
  138. if (!StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  139. return AjaxJson.getError("无入场权限");
  140. }
  141. SoMap so = SoMap.getRequestSoMap();
  142. String id=so.getString("id");
  143. TbBusiness tbBusiness=tbBusinessService.getById(id);
  144. tbBusiness.setRealInTime(new Date()).setInChannel(so.getString("inChannel"));
  145. tbBusinessService.updateById(tbBusiness);
  146. return AjaxJson.getSuccess();
  147. }
  148. @RequestMapping("adminOut")
  149. public AjaxJson adminOut()throws Exception{
  150. if (!StrUtil.equals(StpUserUtil.getCustomerId(), UserTypeEnum.PLATFORM_ADMIN.getCustomerId())) {
  151. return AjaxJson.getError("无离场权限");
  152. }
  153. SoMap so = SoMap.getRequestSoMap();
  154. String id=so.getString("id");
  155. tbBusinessService.adminOut(id,so.getDateTime("outDayTime"),so.getString("outChannel"));
  156. return AjaxJson.getSuccess();
  157. }
  158. // ------------------------- 前端接口 -------------------------
  159. }