PickUpCodeController.java 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. package com.kmall.admin.controller;
  2. import java.text.DateFormat;
  3. import java.text.SimpleDateFormat;
  4. import java.util.Date;
  5. import java.util.List;
  6. import java.util.Map;
  7. import java.util.regex.Matcher;
  8. import java.util.regex.Pattern;
  9. import com.kmall.admin.entity.PickUpCodeEntity;
  10. import com.kmall.admin.service.PickUpCodeService;
  11. import com.kmall.admin.utils.ParamUtils;
  12. import com.kmall.admin.utils.ShiroUtils;
  13. import com.kmall.common.utils.PageUtils;
  14. import com.kmall.common.utils.Query;
  15. import com.kmall.common.utils.R;
  16. import org.apache.shiro.authz.annotation.RequiresPermissions;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.stereotype.Controller;
  19. import org.springframework.web.bind.annotation.*;
  20. /**
  21. * 取货码信息表Controller
  22. *
  23. * @author emato
  24. * @email admin@qhdswl.com
  25. * @date 2020-05-19 09:11:26
  26. */
  27. @Controller
  28. @RequestMapping("pickupcode")
  29. public class PickUpCodeController {
  30. @Autowired
  31. private PickUpCodeService pickUpCodeService;
  32. /**
  33. * 查看列表
  34. */
  35. @RequestMapping("/list")
  36. @RequiresPermissions("pickupcode:list")
  37. @ResponseBody
  38. public R list(@RequestParam Map<String, Object> params) {
  39. ParamUtils.setName(params, "name");
  40. String name = (String)params.get("name");
  41. if(org.apache.commons.lang3.StringUtils.isNotEmpty(name)){
  42. params.put("orderSn", name);
  43. }
  44. //查询列表数据
  45. Query query = new Query(params);
  46. List<PickUpCodeEntity> pickUpCodeList = pickUpCodeService.queryList(query);
  47. int total = pickUpCodeService.queryTotal(query);
  48. PageUtils pageUtil = new PageUtils(pickUpCodeList, total, query.getLimit(), query.getPage());
  49. return R.ok().put("page", pageUtil);
  50. }
  51. @RequestMapping("/queryByPickTime")
  52. @RequiresPermissions("pickupcode:list")
  53. @ResponseBody
  54. public R queryByPickTime(@RequestParam Map<String, Object> params) {
  55. String pickTime = (String)params.get("pickTime");
  56. //有日期检查格式,没有生成当天日期
  57. if (org.apache.commons.lang3.StringUtils.isNotEmpty(pickTime)){
  58. try{
  59. String regEx = "\\d{4}(\\-)\\d{2}\\1\\d{2}";
  60. // 编译正则表达式
  61. Pattern pattern = Pattern.compile(regEx);
  62. Matcher matcher = pattern.matcher(pickTime);
  63. // 字符串是否与正则表达式相匹配
  64. boolean rs = matcher.matches();
  65. if (!rs){
  66. throw new Exception();
  67. }
  68. }catch(Exception e){
  69. return R.error("传入日期格式错误,请修改日期格式为'yyyy-MM-dd'!");
  70. }
  71. } else {
  72. DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
  73. pickTime = formatter.format(new Date());
  74. }
  75. params.put("pickUpCodeCreatetime", pickTime);
  76. //查询列表数据
  77. Query query = new Query(params);
  78. List<PickUpCodeEntity> pickUpCodeList = pickUpCodeService.queryList(query);
  79. int total = pickUpCodeService.queryTotal(query);
  80. PageUtils pageUtil = new PageUtils(pickUpCodeList, total, query.getLimit(), query.getPage());
  81. return R.ok().put("page", pageUtil);
  82. }
  83. /**
  84. * 查看信息
  85. */
  86. @RequestMapping("/info/{orderSn}")
  87. @RequiresPermissions("pickupcode:info")
  88. @ResponseBody
  89. public R info(@PathVariable("orderSn") String orderSn) {
  90. PickUpCodeEntity pickUpCode = pickUpCodeService.queryObject(orderSn);
  91. return R.ok().put("pickUpCode", pickUpCode);
  92. }
  93. /**
  94. * 生成取货码
  95. */
  96. @RequestMapping("/save")
  97. @RequiresPermissions("pickupcode:save")
  98. @ResponseBody
  99. public R save(@RequestBody PickUpCodeEntity pickUpCode) {
  100. if(org.apache.commons.lang3.StringUtils.isEmpty(pickUpCode.getOrderSn())){
  101. return R.error("订单编号为空!");
  102. }
  103. int result = pickUpCodeService.save(pickUpCode);
  104. if (result <= 0 ){
  105. return R.error("生成取货码失败!");
  106. }
  107. return R.ok().put("pickUpCode",pickUpCode );
  108. }
  109. /**
  110. * 取货码核销
  111. */
  112. @RequestMapping("/verification")
  113. @RequiresPermissions("pickupcode:update")
  114. @ResponseBody
  115. public R Verification(@RequestBody PickUpCodeEntity pickUpCode) {
  116. if(org.apache.commons.lang3.StringUtils.isEmpty(pickUpCode.getOrderSn())){
  117. return R.error("订单编号为空!");
  118. }
  119. String status = pickUpCodeService.queryPickUpCodeStatus(pickUpCode.getOrderSn());
  120. if(status.equals("1")){
  121. return R.error("取货码已核销过!");
  122. }
  123. pickUpCode.setPickUpCodeStatus("1");
  124. if (pickUpCode.getPickUpCodeCreatetime()==null){
  125. SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
  126. pickUpCode.setPickUpCodeVerificationtime(df.format(new Date()));// new Date()为获取当前系统时间
  127. }
  128. pickUpCode.setModerSn(ShiroUtils.getUserEntity().getUserId().toString());
  129. pickUpCode.setModTime(new Date());
  130. int result = pickUpCodeService.update(pickUpCode);
  131. if (result <= 0 ){
  132. return R.error("取货码核销失败!");
  133. }
  134. PickUpCodeEntity pickUpCodeEntity = pickUpCodeService.queryObject(pickUpCode.getOrderSn());
  135. return R.ok().put("pickUpCode",pickUpCodeEntity );
  136. }
  137. /**
  138. * 删除
  139. */
  140. @RequestMapping("/delete")
  141. @RequiresPermissions("pickupcode:delete")
  142. @ResponseBody
  143. public R delete(@RequestBody String[]orderSns) {
  144. int result = pickUpCodeService.deleteBatch(orderSns);
  145. return R.ok().put("result", result);
  146. }
  147. /**
  148. * 查看所有列表
  149. */
  150. @RequestMapping("/queryAll")
  151. @ResponseBody
  152. public R queryAll(@RequestParam Map<String, Object> params) {
  153. List<PickUpCodeEntity> list = pickUpCodeService.queryList(params);
  154. return R.ok().put("list", list);
  155. }
  156. }