|
@@ -20,6 +20,7 @@ import com.caimei365.order.utils.ImageUtil;
|
|
import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageHelper;
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.github.pagehelper.PageInfo;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
+import org.apache.commons.lang.RandomStringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.http.HttpHeaders;
|
|
import org.springframework.http.HttpHeaders;
|
|
@@ -28,10 +29,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
import org.springframework.util.CollectionUtils;
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
-import java.util.Date;
|
|
|
|
-import java.util.HashMap;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
import static com.alibaba.fastjson.JSON.parseArray;
|
|
import static com.alibaba.fastjson.JSON.parseArray;
|
|
|
|
|
|
@@ -636,6 +634,52 @@ public class ShipServiceImpl implements ShipService {
|
|
return ResponseJson.success(null);
|
|
return ResponseJson.success(null);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 小程序分享发货-获取分享码
|
|
|
|
+ *
|
|
|
|
+ * @param shopOrderId 子订单Id
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public ResponseJson<String> getShipShareCode(Integer shopOrderId) {
|
|
|
|
+ // 子订单所属供应商Id
|
|
|
|
+ Integer dbShopId = shipMapper.getShopIdByShopOrderId(shopOrderId);
|
|
|
|
+ if (null == dbShopId) {
|
|
|
|
+ return ResponseJson.error("订单异常", null);
|
|
|
|
+ }
|
|
|
|
+ // 生成分享码
|
|
|
|
+ String shareCode = RandomStringUtils.random(4, false, true);
|
|
|
|
+ // 过期时间
|
|
|
|
+ Date date = new Date();
|
|
|
|
+ Calendar calendar = Calendar.getInstance();
|
|
|
|
+ calendar.setTime(date);
|
|
|
|
+ calendar.add(Calendar.DATE, 3);
|
|
|
|
+ // 获取数据库已有分享码
|
|
|
|
+ OrderShareCodeVo orderCodeVo = shipMapper.getShipShareCode(null, shopOrderId);
|
|
|
|
+ if (orderCodeVo != null && orderCodeVo.getExpiredTime().compareTo(date) >= 0 ) {
|
|
|
|
+ // 旧分享码还未过期,直接返回
|
|
|
|
+ return ResponseJson.success(orderCodeVo.getShareCode());
|
|
|
|
+ } else if (orderCodeVo != null) {
|
|
|
|
+ // 如果旧分享码已经过期,删除分享码使用记录
|
|
|
|
+ shipMapper.deleteShipShareCodeRecord(shopOrderId);
|
|
|
|
+ // 更新数据库的分享码
|
|
|
|
+ orderCodeVo.setShareCode(shareCode);
|
|
|
|
+ orderCodeVo.setExpiredTime(calendar.getTime());
|
|
|
|
+ orderCodeVo.setDelFlag(0);
|
|
|
|
+ shipMapper.updateShipShareCode(orderCodeVo);
|
|
|
|
+ } else {
|
|
|
|
+ // 如果没有分享记录,新增数据库的分享码
|
|
|
|
+ OrderShareCodeVo newShareCodeVo = new OrderShareCodeVo();
|
|
|
|
+ newShareCodeVo.setOrderId(shopOrderId);
|
|
|
|
+ newShareCodeVo.setShareCode(shareCode);
|
|
|
|
+ newShareCodeVo.setExpiredTime(calendar.getTime());
|
|
|
|
+ newShareCodeVo.setAddTime(date);
|
|
|
|
+ newShareCodeVo.setDelFlag(0);
|
|
|
|
+ shipMapper.insertShipShareCode(newShareCodeVo);
|
|
|
|
+ }
|
|
|
|
+ // 返回新生成的分享码
|
|
|
|
+ return ResponseJson.success(shareCode);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 小程序分享发货-分享权限控制
|
|
* 小程序分享发货-分享权限控制
|
|
*
|
|
*
|
|
@@ -697,14 +741,14 @@ public class ShipServiceImpl implements ShipService {
|
|
// 分享码进入
|
|
// 分享码进入
|
|
resultMap.put("resultCode", 3);
|
|
resultMap.put("resultCode", 3);
|
|
// 获取采美供应商发货分享码使用记录
|
|
// 获取采美供应商发货分享码使用记录
|
|
- Integer shareCodeRecordId = shipMapper.getConsignmentShareRecordId(openId, shopOrderId);
|
|
|
|
|
|
+ Integer shareCodeRecordId = shipMapper.getShipShareCodeRecordId(openId, shopOrderId);
|
|
if (null != shareCodeRecordId && shareCodeRecordId > 0) {
|
|
if (null != shareCodeRecordId && shareCodeRecordId > 0) {
|
|
return ResponseJson.success("分享码人员权限", resultMap);
|
|
return ResponseJson.success("分享码人员权限", resultMap);
|
|
}
|
|
}
|
|
if (StringUtils.isBlank(shareCode)) {
|
|
if (StringUtils.isBlank(shareCode)) {
|
|
return ResponseJson.error("请联系分享人获取分享码", null);
|
|
return ResponseJson.error("请联系分享人获取分享码", null);
|
|
}
|
|
}
|
|
- OrderShareCodeVo orderCodeVo = shipMapper.getConsignmentShare(shareCode, shopOrderId);
|
|
|
|
|
|
+ OrderShareCodeVo orderCodeVo = shipMapper.getShipShareCode(shareCode, shopOrderId);
|
|
Date date = new Date();
|
|
Date date = new Date();
|
|
if (null == orderCodeVo) {
|
|
if (null == orderCodeVo) {
|
|
return ResponseJson.error("分享码错误", null);
|
|
return ResponseJson.error("分享码错误", null);
|
|
@@ -718,7 +762,7 @@ public class ShipServiceImpl implements ShipService {
|
|
codeRecord.setOrderId(shopOrderId);
|
|
codeRecord.setOrderId(shopOrderId);
|
|
codeRecord.setDelFlag(0);
|
|
codeRecord.setDelFlag(0);
|
|
codeRecord.setShareCodeId(orderCodeVo.getId());
|
|
codeRecord.setShareCodeId(orderCodeVo.getId());
|
|
- shipMapper.insertConsignmentShareRecord(codeRecord);
|
|
|
|
|
|
+ shipMapper.insertShipShareCodeRecord(codeRecord);
|
|
return ResponseJson.success("分享码人员权限", resultMap);
|
|
return ResponseJson.success("分享码人员权限", resultMap);
|
|
}
|
|
}
|
|
}
|
|
}
|