|
@@ -0,0 +1,205 @@
|
|
|
+package com.kmall.admin.controller;
|
|
|
+
|
|
|
+import java.text.DateFormat;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.Calendar;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
+
|
|
|
+import com.kmall.admin.entity.PickUpCodeEntity;
|
|
|
+import com.kmall.admin.service.PickUpCodeService;
|
|
|
+import com.kmall.admin.utils.ParamUtils;
|
|
|
+import com.kmall.admin.utils.ShiroUtils;
|
|
|
+import com.kmall.common.utils.PageUtils;
|
|
|
+import com.kmall.common.utils.Query;
|
|
|
+import com.kmall.common.utils.R;
|
|
|
+import org.apache.commons.lang.RandomStringUtils;
|
|
|
+import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Controller;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * 取货码信息表Controller
|
|
|
+ *
|
|
|
+ * @author emato
|
|
|
+ * @email admin@qhdswl.com
|
|
|
+ * @date 2020-05-19 09:11:26
|
|
|
+ */
|
|
|
+@Controller
|
|
|
+@RequestMapping("pickupcode")
|
|
|
+public class PickUpCodeController {
|
|
|
+ @Autowired
|
|
|
+ private PickUpCodeService pickUpCodeService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查看列表
|
|
|
+ */
|
|
|
+ @RequestMapping("/list")
|
|
|
+ @RequiresPermissions("pickupcode:list")
|
|
|
+ @ResponseBody
|
|
|
+ public R list(@RequestParam Map<String, Object> params) {
|
|
|
+ ParamUtils.setName(params, "name");
|
|
|
+ String name = (String)params.get("name");
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isNotEmpty(name)){
|
|
|
+ params.put("orderSn", name);
|
|
|
+ }
|
|
|
+
|
|
|
+ //查询列表数据
|
|
|
+ Query query = new Query(params);
|
|
|
+
|
|
|
+ List<PickUpCodeEntity> pickUpCodeList = pickUpCodeService.queryList(query);
|
|
|
+ int total = pickUpCodeService.queryTotal(query);
|
|
|
+
|
|
|
+ PageUtils pageUtil = new PageUtils(pickUpCodeList, total, query.getLimit(), query.getPage());
|
|
|
+
|
|
|
+ return R.ok().put("page", pageUtil);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @RequestMapping("/queryByPickTime")
|
|
|
+ @RequiresPermissions("pickupcode:list")
|
|
|
+ @ResponseBody
|
|
|
+ public R queryByPickTime(@RequestParam Map<String, Object> params) {
|
|
|
+ String pickTime = (String)params.get("pickTime");
|
|
|
+ //有日期检查格式,没有生成当天日期
|
|
|
+ if (org.apache.commons.lang3.StringUtils.isNotEmpty(pickTime)){
|
|
|
+ try{
|
|
|
+ String regEx = "\\d{4}(\\-)\\d{2}\\1\\d{2}";
|
|
|
+ // 编译正则表达式
|
|
|
+ Pattern pattern = Pattern.compile(regEx);
|
|
|
+ Matcher matcher = pattern.matcher(pickTime);
|
|
|
+ // 字符串是否与正则表达式相匹配
|
|
|
+ boolean rs = matcher.matches();
|
|
|
+
|
|
|
+ if (!rs){
|
|
|
+ throw new Exception();
|
|
|
+ }
|
|
|
+ }catch(Exception e){
|
|
|
+ return R.error("传入日期格式错误,请修改日期格式为'yyyy-MM-dd'!");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ pickTime = formatter.format(new Date());
|
|
|
+ }
|
|
|
+ params.put("pickUpCodeCreatetime", pickTime);
|
|
|
+
|
|
|
+ //查询列表数据
|
|
|
+ Query query = new Query(params);
|
|
|
+
|
|
|
+ List<PickUpCodeEntity> pickUpCodeList = pickUpCodeService.queryList(query);
|
|
|
+ int total = pickUpCodeService.queryTotal(query);
|
|
|
+
|
|
|
+ PageUtils pageUtil = new PageUtils(pickUpCodeList, total, query.getLimit(), query.getPage());
|
|
|
+
|
|
|
+ return R.ok().put("page", pageUtil);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查看信息
|
|
|
+ */
|
|
|
+ @RequestMapping("/info/{orderSn}")
|
|
|
+ @RequiresPermissions("pickupcode:info")
|
|
|
+ @ResponseBody
|
|
|
+ public R info(@PathVariable("orderSn") String orderSn) {
|
|
|
+ PickUpCodeEntity pickUpCode = pickUpCodeService.queryObject(orderSn);
|
|
|
+
|
|
|
+ return R.ok().put("pickUpCode", pickUpCode);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 生成取货码
|
|
|
+ */
|
|
|
+ @RequestMapping("/save")
|
|
|
+ @RequiresPermissions("pickupcode:save")
|
|
|
+ @ResponseBody
|
|
|
+ public R save(@RequestBody PickUpCodeEntity pickUpCode) {
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isEmpty(pickUpCode.getOrderSn())){
|
|
|
+ return R.error("订单编号为空!");
|
|
|
+ }
|
|
|
+
|
|
|
+ //生成一个 5 位的随机字符串
|
|
|
+ String randomCode = RandomStringUtils.randomAlphanumeric(5).toUpperCase();
|
|
|
+ //K: 跨境电商 , Y:一般贸易
|
|
|
+ pickUpCode.setPickUpCodeSn("K-"+randomCode);
|
|
|
+ // pickUpCode.setPickUpCodeSn("Y-");
|
|
|
+ pickUpCode.setPickUpCodeStatus("0");
|
|
|
+ if (pickUpCode.getPickUpCodeCreatetime()==null){
|
|
|
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
|
|
|
+ pickUpCode.setPickUpCodeCreatetime(df.format(new Date()));// new Date()为获取当前系统时间
|
|
|
+ }
|
|
|
+ pickUpCode.setModerSn(ShiroUtils.getUserEntity().getUserId().toString());
|
|
|
+ pickUpCode.setCreateTime(new Date());
|
|
|
+ pickUpCode.setModTime(new Date());
|
|
|
+
|
|
|
+
|
|
|
+ int result = pickUpCodeService.save(pickUpCode);
|
|
|
+ if (result <= 0 ){
|
|
|
+ return R.error("生成取货码失败!");
|
|
|
+ }
|
|
|
+
|
|
|
+ return R.ok().put("pickUpCode",pickUpCode );
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 取货码核销
|
|
|
+ */
|
|
|
+ @RequestMapping("/verification")
|
|
|
+ @RequiresPermissions("pickupcode:update")
|
|
|
+ @ResponseBody
|
|
|
+ public R Verification(@RequestBody PickUpCodeEntity pickUpCode) {
|
|
|
+ if(org.apache.commons.lang3.StringUtils.isEmpty(pickUpCode.getOrderSn())){
|
|
|
+ return R.error("订单编号为空!");
|
|
|
+ }
|
|
|
+
|
|
|
+ String status = pickUpCodeService.queryPickUpCodeStatus(pickUpCode.getOrderSn());
|
|
|
+ if(status.equals("1")){
|
|
|
+ return R.error("取货码已核销过!");
|
|
|
+ }
|
|
|
+
|
|
|
+ pickUpCode.setPickUpCodeStatus("1");
|
|
|
+ if (pickUpCode.getPickUpCodeCreatetime()==null){
|
|
|
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
|
|
|
+ pickUpCode.setPickUpCodeVerificationtime(df.format(new Date()));// new Date()为获取当前系统时间
|
|
|
+ }
|
|
|
+ pickUpCode.setModerSn(ShiroUtils.getUserEntity().getUserId().toString());
|
|
|
+ pickUpCode.setModTime(new Date());
|
|
|
+
|
|
|
+ int result = pickUpCodeService.update(pickUpCode);
|
|
|
+ if (result <= 0 ){
|
|
|
+ return R.error("取货码核销失败!");
|
|
|
+ }
|
|
|
+ PickUpCodeEntity pickUpCodeEntity = pickUpCodeService.queryObject(pickUpCode.getOrderSn());
|
|
|
+
|
|
|
+ return R.ok().put("pickUpCode",pickUpCodeEntity );
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除
|
|
|
+ */
|
|
|
+ @RequestMapping("/delete")
|
|
|
+ @RequiresPermissions("pickupcode:delete")
|
|
|
+ @ResponseBody
|
|
|
+ public R delete(@RequestBody String[]orderSns) {
|
|
|
+ int result = pickUpCodeService.deleteBatch(orderSns);
|
|
|
+
|
|
|
+ return R.ok().put("result", result);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 查看所有列表
|
|
|
+ */
|
|
|
+ @RequestMapping("/queryAll")
|
|
|
+ @ResponseBody
|
|
|
+ public R queryAll(@RequestParam Map<String, Object> params) {
|
|
|
+
|
|
|
+ List<PickUpCodeEntity> list = pickUpCodeService.queryList(params);
|
|
|
+
|
|
|
+ return R.ok().put("list", list);
|
|
|
+ }
|
|
|
+}
|