Merge remote-tracking branch 'origin/master'
This commit is contained in:
24
README.md
24
README.md
@@ -19,17 +19,11 @@ https://docs.pickmall.cn
|
|||||||
|
|
||||||
#### 欢迎交流需求,交流业务,交流技术(基础问题自行解决,其他问题先看文档后提问)
|
#### 欢迎交流需求,交流业务,交流技术(基础问题自行解决,其他问题先看文档后提问)
|
||||||
|
|
||||||
#### 不用削尖脑袋往老群里加,老群活跃度较低,很多潜水党,新群相对而言活跃一些 :tw-1f606: :tw-1f606: :tw-1f606: :tw-1f606: :tw-1f606: :tw-1f606:
|
|
||||||
|
|
||||||
#### 开发新手或者不熟悉的同学在群内提问或新开Issue提问前,请先阅读[【提问的智慧】](https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md),并确保已查阅过 [【在线文档】](https://docs.pickmall.cn/) ,避免浪费大家的宝贵时间;
|
#### 开发新手或者不熟悉的同学在群内提问或新开Issue提问前,请先阅读[【提问的智慧】](https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md),并确保已查阅过 [【在线文档】](https://docs.pickmall.cn/) ,避免浪费大家的宝贵时间;
|
||||||
|
|
||||||
##### 交流 qq 1群 961316482(已满)
|
##### 交流 微信群 1群
|
||||||
##### 交流 qq 2群 875294241(已满)
|

|
||||||
##### 交流 qq 3群 263785057(已满)
|
|
||||||
##### 交流 qq 4群 674617534(已满)
|
|
||||||
##### 交流 qq 5群 594675235(已满)
|
|
||||||
##### 交流 qq 6群 917026848(已满)
|
|
||||||
##### 交流 qq 7群 936344822
|
|
||||||
|
|
||||||
##### 体验 公众号/小程序/APP 体验,扫描二维码
|
##### 体验 公众号/小程序/APP 体验,扫描二维码
|
||||||
|
|
||||||
@@ -171,7 +165,7 @@ PS:手机验证码为 ‘111111’
|
|||||||
### 商业授权
|
### 商业授权
|
||||||
商业版本与开源版本代码一致,没有区分
|
商业版本与开源版本代码一致,没有区分
|
||||||
|
|
||||||
商业使用需要授权,授权方式可选择联系官网客服,或者qq群联系群主。
|
商业使用需要授权,授权方式可选择联系官网客服。
|
||||||
|
|
||||||
商业授权模式为永久授权,支持永久升级。
|
商业授权模式为永久授权,支持永久升级。
|
||||||
|
|
||||||
@@ -185,18 +179,10 @@ PS:手机验证码为 ‘111111’
|
|||||||
|
|
||||||
3.软件受国家计算机软件著作权保护(登记号:2021SR0805085)。
|
3.软件受国家计算机软件著作权保护(登记号:2021SR0805085)。
|
||||||
|
|
||||||
4.限制商用,如果需要商业使用请联系我们。QQ3409056806.或者加入qq群联系群主。
|
4.限制商用,如果需要商业使用请联系我们。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 交流群
|
|
||||||
|
|
||||||
##### 交流 qq 1群 961316482(已满)
|
|
||||||
##### 交流 qq 2群 875294241(已满)
|
|
||||||
##### 交流 qq 3群 263785057(已满)
|
|
||||||
##### 交流 qq 4群 674617534(已满)
|
|
||||||
##### 交流 qq 5群 594675235(已满)
|
|
||||||
|
|
||||||
### 附录
|
### 附录
|
||||||
有人有自己的学习视频、学习记录文档、希望宣传关联开源项目等均可以私聊仓库所有者。
|
有人有自己的学习视频、学习记录文档、希望宣传关联开源项目等均可以私聊仓库所有者。
|
||||||
|
|
||||||
|
|||||||
@@ -131,4 +131,13 @@ public class ResultUtil<T> {
|
|||||||
return this.resultMessage;
|
return this.resultMessage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 返回失败
|
||||||
|
*
|
||||||
|
* @return 消息
|
||||||
|
*/
|
||||||
|
public static <T> ResultMessage<T> error() {
|
||||||
|
return new ResultUtil<T>().setErrorMsg(ResultCode.ERROR);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package cn.lili.common.exception;
|
package cn.lili.common.exception;
|
||||||
|
|
||||||
|
import cn.hutool.core.text.CharSequenceUtil;
|
||||||
import cn.lili.common.enums.ResultCode;
|
import cn.lili.common.enums.ResultCode;
|
||||||
import cn.lili.common.enums.ResultUtil;
|
import cn.lili.common.enums.ResultUtil;
|
||||||
import cn.lili.common.vo.ResultMessage;
|
import cn.lili.common.vo.ResultMessage;
|
||||||
@@ -42,26 +43,21 @@ public class GlobalControllerExceptionHandler {
|
|||||||
@ResponseStatus(value = HttpStatus.BAD_REQUEST)
|
@ResponseStatus(value = HttpStatus.BAD_REQUEST)
|
||||||
public ResultMessage<Object> handleServiceException(HttpServletRequest request, final Exception e, HttpServletResponse response) {
|
public ResultMessage<Object> handleServiceException(HttpServletRequest request, final Exception e, HttpServletResponse response) {
|
||||||
|
|
||||||
|
|
||||||
//如果是自定义异常,则获取异常,返回自定义错误消息
|
//如果是自定义异常,则获取异常,返回自定义错误消息
|
||||||
if (e instanceof ServiceException) {
|
if (e instanceof ServiceException) {
|
||||||
|
|
||||||
ServiceException serviceException = ((ServiceException) e);
|
ServiceException serviceException = ((ServiceException) e);
|
||||||
ResultCode resultCode = serviceException.getResultCode();
|
ResultCode resultCode = serviceException.getResultCode();
|
||||||
|
|
||||||
Integer code = null;
|
Integer code = resultCode.code();
|
||||||
String message = null;
|
String message = resultCode.message();
|
||||||
|
|
||||||
if (resultCode != null) {
|
|
||||||
code = resultCode.code();
|
|
||||||
message = resultCode.message();
|
|
||||||
}
|
|
||||||
//如果有扩展消息,则输出异常中,跟随补充异常
|
//如果有扩展消息,则输出异常中,跟随补充异常
|
||||||
if (!serviceException.getMsg().equals(ServiceException.DEFAULT_MESSAGE)) {
|
if (message != null) {
|
||||||
message += ":" + serviceException.getMsg();
|
message = appendErrorMessage(message, serviceException.getMsg());
|
||||||
}
|
}
|
||||||
|
|
||||||
// 对一些特殊异常处理,不再打印error级别的日志
|
// 对一些特殊异常处理,不再打印error级别的日志
|
||||||
assert serviceException.getResultCode() != null;
|
|
||||||
if (serviceException.getResultCode().equals(ResultCode.DEMO_SITE_EXCEPTION)) {
|
if (serviceException.getResultCode().equals(ResultCode.DEMO_SITE_EXCEPTION)) {
|
||||||
log.debug("[DEMO_SITE_EXCEPTION]:{}", serviceException.getResultCode().message(), e);
|
log.debug("[DEMO_SITE_EXCEPTION]:{}", serviceException.getResultCode().message(), e);
|
||||||
return ResultUtil.error(code, message);
|
return ResultUtil.error(code, message);
|
||||||
@@ -103,7 +99,30 @@ public class GlobalControllerExceptionHandler {
|
|||||||
|
|
||||||
log.error("全局异常[RuntimeException]:", e);
|
log.error("全局异常[RuntimeException]:", e);
|
||||||
|
|
||||||
return ResultUtil.error(ResultCode.ERROR);
|
// 检查异常链是否包含 ServiceException
|
||||||
|
ServiceException serviceException = findServiceException(e);
|
||||||
|
|
||||||
|
if (serviceException != null) {
|
||||||
|
ResultCode resultCode = serviceException.getResultCode();
|
||||||
|
Integer code = resultCode.code();
|
||||||
|
String message = resultCode.message();
|
||||||
|
if (message != null) {
|
||||||
|
message = appendErrorMessage(message, serviceException.getMsg());
|
||||||
|
}
|
||||||
|
return ResultUtil.error(code, message);
|
||||||
|
}
|
||||||
|
return ResultUtil.error();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 遍历异常链,查找 ServiceException
|
||||||
|
private ServiceException findServiceException(Throwable ex) {
|
||||||
|
while (ex != null) {
|
||||||
|
if (ex instanceof ServiceException) {
|
||||||
|
return (ServiceException) ex;
|
||||||
|
}
|
||||||
|
ex = ex.getCause();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// /**
|
// /**
|
||||||
@@ -168,4 +187,41 @@ public class GlobalControllerExceptionHandler {
|
|||||||
ConstraintViolationException exception = (ConstraintViolationException) e;
|
ConstraintViolationException exception = (ConstraintViolationException) e;
|
||||||
return ResultUtil.error(ResultCode.PARAMS_ERROR.code(), exception.getMessage());
|
return ResultUtil.error(ResultCode.PARAMS_ERROR.code(), exception.getMessage());
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 拼接错误消息
|
||||||
|
*
|
||||||
|
* @param message 原始消息
|
||||||
|
* @param appendMessage 需要拼接的消息
|
||||||
|
* @return 拼接后的消息
|
||||||
|
*/
|
||||||
|
private String appendErrorMessage(String message, String appendMessage) {
|
||||||
|
|
||||||
|
//这里的代码看起来有点乱,简单解释一下
|
||||||
|
//场景1:服务A,服务B=》
|
||||||
|
// 服务A调用服务B=》
|
||||||
|
// 服务B抛出异常{扩展消息},拼接后成为{默认消息}:{扩展消息}
|
||||||
|
// 异常被服务A捕获=》
|
||||||
|
// 最终消息拼接过程中,当前方法体参数message是{默认消息},参数appendMessage是服务A给的{默认消息}+{扩展消息},最终会形成{默认消息}+{默认消息}+{扩展消息}
|
||||||
|
//场景2:只有服务A=》
|
||||||
|
// 服务A抛出异常{扩展消息}=》
|
||||||
|
// 当前方法体拼接{默认消息}:{扩展消息} 并输出返回。
|
||||||
|
//
|
||||||
|
//总的来说,由于消息拼接是一个流式传递,由服务间传递,所以这里的消息可能存在A包含B,也可能出现B包含A,
|
||||||
|
// 所以这里需要双重判定,A包含B=》返回A,B包含A=》返回B,否则返回拼接后的消息
|
||||||
|
|
||||||
|
if (message.contains(appendMessage)) {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
if (appendMessage.contains(message)) {
|
||||||
|
return appendMessage;
|
||||||
|
}
|
||||||
|
//忽略默认错误信息,如果有其他错误消息体就不再返回默认的错误消息
|
||||||
|
if (message.equals(ResultCode.ERROR.message())) {
|
||||||
|
return appendMessage;
|
||||||
|
}
|
||||||
|
if (appendMessage.equals(ResultCode.ERROR.message())) {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
return CharSequenceUtil.format("{}-{}", message, appendMessage);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,12 +15,11 @@ public class ServiceException extends RuntimeException {
|
|||||||
|
|
||||||
private static final long serialVersionUID = 3447728300174142127L;
|
private static final long serialVersionUID = 3447728300174142127L;
|
||||||
|
|
||||||
public static final String DEFAULT_MESSAGE = "网络错误,请稍后重试!";
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 异常消息
|
* 异常消息
|
||||||
*/
|
*/
|
||||||
private String msg = DEFAULT_MESSAGE;
|
private String msg = ResultCode.ERROR.message();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 错误码
|
* 错误码
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class BaseAuthWeChatPCRequest extends BaseAuthRequest {
|
|||||||
|
|
||||||
return ConnectAuthUser.builder()
|
return ConnectAuthUser.builder()
|
||||||
.rawUserInfo(object)
|
.rawUserInfo(object)
|
||||||
.username(object.getString("nickname"))
|
.username(object.getString("unionid"))
|
||||||
.nickname(object.getString("nickname"))
|
.nickname(object.getString("nickname"))
|
||||||
.avatar(object.getString("headimgurl"))
|
.avatar(object.getString("headimgurl"))
|
||||||
.location(location)
|
.location(location)
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ public class BaseAuthWeChatRequest extends BaseAuthRequest {
|
|||||||
|
|
||||||
return ConnectAuthUser.builder()
|
return ConnectAuthUser.builder()
|
||||||
.rawUserInfo(object)
|
.rawUserInfo(object)
|
||||||
.username(object.getString("nickname"))
|
.username(object.getString("unionid"))
|
||||||
.nickname(object.getString("nickname"))
|
.nickname(object.getString("nickname"))
|
||||||
.avatar(object.getString("headimgurl"))
|
.avatar(object.getString("headimgurl"))
|
||||||
.location(location)
|
.location(location)
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import com.kuaidi100.sdk.request.labelV2.OrderReq;
|
|||||||
import com.kuaidi100.sdk.response.QueryTrackData;
|
import com.kuaidi100.sdk.response.QueryTrackData;
|
||||||
import com.kuaidi100.sdk.response.QueryTrackMapResp;
|
import com.kuaidi100.sdk.response.QueryTrackMapResp;
|
||||||
import com.kuaidi100.sdk.response.QueryTrackResp;
|
import com.kuaidi100.sdk.response.QueryTrackResp;
|
||||||
|
import com.kuaidi100.sdk.response.labelV2.OrderResult;
|
||||||
import com.kuaidi100.sdk.response.samecity.OrderResp;
|
import com.kuaidi100.sdk.response.samecity.OrderResp;
|
||||||
import com.kuaidi100.sdk.utils.SignUtils;
|
import com.kuaidi100.sdk.utils.SignUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -140,25 +141,74 @@ public class Kuaidi100Plugin implements LogisticsPlugin {
|
|||||||
StoreLogistics storeLogistics = labelOrderDTO.getStoreLogistics();
|
StoreLogistics storeLogistics = labelOrderDTO.getStoreLogistics();
|
||||||
|
|
||||||
|
|
||||||
ManInfo recManInfo = new ManInfo();
|
|
||||||
recManInfo.setName(order.getConsigneeName());
|
|
||||||
recManInfo.setMobile(order.getConsigneeMobile());
|
|
||||||
recManInfo.setPrintAddr(consigneeAddress[0] + consigneeAddress[1] + consigneeAddress[2] + consigneeAddress[3] + order.getConsigneeDetail());
|
|
||||||
|
|
||||||
ManInfo sendManInfo = new ManInfo();
|
|
||||||
sendManInfo.setName(storeDeliverGoodsAddressDTO.getSalesConsignorName());
|
|
||||||
sendManInfo.setMobile(storeDeliverGoodsAddressDTO.getSalesConsignorMobile());
|
|
||||||
sendManInfo.setPrintAddr(consignorAddress[0] + consignorAddress[1] + consignorAddress[2] + consignorAddress[3] + storeDeliverGoodsAddressDTO.getSalesConsignorDetail());
|
|
||||||
|
|
||||||
OrderReq orderReq = new OrderReq();
|
OrderReq orderReq = new OrderReq();
|
||||||
|
//打印类型,NON:只下单不打印(默认); IMAGE:生成图片短链;HTML:生成html短链; CLOUD:使用快递100云打印机打印,使用CLOUD时siid必填
|
||||||
|
orderReq.setPrintType(PrintType.HTML);
|
||||||
|
//电子面单客户账户或月结账号,需贵司向当地快递公司网点申请(参考电子面单申请指南); 是否必填该属性,请查看参数字典
|
||||||
|
orderReq.setPartnerId(storeLogistics.getCustomerName());
|
||||||
|
//电子面单密码,需贵司向当地快递公司网点申请; 是否必填该属性,请查看参数字典
|
||||||
|
if(storeLogistics.getCustomerPwd()!=null){
|
||||||
|
orderReq.setPartnerKey(storeLogistics.getCustomerPwd());
|
||||||
|
}
|
||||||
|
|
||||||
|
//电子面单密钥,需贵司向当地快递公司网点申请; 是否必填该属性,请查看参数字典
|
||||||
|
if(storeLogistics.getMonthCode()!=null) {
|
||||||
|
orderReq.setPartnerSecret(storeLogistics.getMonthCode());
|
||||||
|
}
|
||||||
|
//电子面单客户账户名称,需贵司向当地快递公司网点申请; 是否必填该属性,请查看参数字典
|
||||||
|
if(storeLogistics.getPartnerName()!=null) {
|
||||||
|
orderReq.setPartnerName(storeLogistics.getPartnerName());
|
||||||
|
}
|
||||||
|
// orderReq.setNet();
|
||||||
|
// 电子面单承载编号,需贵司向当地快递公司网点申请; 是否必填该属性,请查看参数字典
|
||||||
|
if(storeLogistics.getSendSite()!=null) {
|
||||||
|
orderReq.setCode(storeLogistics.getSendSite());
|
||||||
|
}
|
||||||
|
//电子面单承载快递员名,需贵司向当地快递公司网点申请; 是否必填该属性,请查看参数字典
|
||||||
|
if(storeLogistics.getSendStaff()!=null) {
|
||||||
|
orderReq.setCheckMan(storeLogistics.getSendStaff());
|
||||||
|
}
|
||||||
|
|
||||||
|
//快递公司的编码,一律用小写字母,请查看参数字典
|
||||||
orderReq.setKuaidicom(logistics.getCode());
|
orderReq.setKuaidicom(logistics.getCode());
|
||||||
orderReq.setCount(1);
|
//收件人信息
|
||||||
|
ManInfo manInfo=new ManInfo();
|
||||||
|
//收件人姓名
|
||||||
|
manInfo.setName(order.getConsigneeName());
|
||||||
|
//收件人的手机号,手机号和电话号二者其一必填
|
||||||
|
manInfo.setMobile(order.getConsigneeMobile());
|
||||||
|
//收件人的电话号,手机号和电话号二者其一必填
|
||||||
|
// manInfo.setTel("");
|
||||||
|
//收件人所在完整地址,如广东深圳市南山区科技南十二路金蝶软件园B10
|
||||||
|
manInfo.setPrintAddr(consigneeAddress[0]+consigneeAddress[1]+consigneeAddress[2]+consigneeAddress[3]+order.getConsigneeDetail());
|
||||||
|
orderReq.setRecMan(manInfo);
|
||||||
|
ManInfo sendMan=new ManInfo();
|
||||||
|
// 寄件人信息
|
||||||
|
sendMan.setName(storeDeliverGoodsAddressDTO.getSalesConsignorName());
|
||||||
|
// 寄件人的手机号,手机号和电话号二者其一必填
|
||||||
|
sendMan.setMobile(storeDeliverGoodsAddressDTO.getSalesConsignorMobile());
|
||||||
|
//寄件人的电话号,手机号和电话号二者其一必填
|
||||||
|
// sendMan.setTel("");
|
||||||
|
//寄件人所在的完整地址,如广东深圳市南山区科技南十二路金蝶软件园B10
|
||||||
|
sendMan.setPrintAddr(consignorAddress[0]+consignorAddress[1]+consignorAddress[2]+consignorAddress[3]+storeDeliverGoodsAddressDTO.getSalesConsignorDetail());
|
||||||
|
//寄件人所在公司名称
|
||||||
|
// sendMan.setCompany("");
|
||||||
|
orderReq.setSendMan(sendMan);
|
||||||
|
//物品名称,例:文件
|
||||||
|
String goodsName="";
|
||||||
|
for (OrderItem orderItem : orderItems) {
|
||||||
|
goodsName+=orderItem.getGoodsName() + "',";
|
||||||
|
}
|
||||||
|
|
||||||
|
orderReq.setCargo(goodsName);
|
||||||
|
// 包裹总数量。
|
||||||
|
orderReq.setCount(orderItems.size());
|
||||||
|
//打印设备,通过打印机输出的设备码进行获取,printType为CLOUD时必填
|
||||||
|
// orderReq.setSiid("");
|
||||||
|
|
||||||
// orderReq.setSiid(siid);
|
// orderReq.setSiid(siid);
|
||||||
//orderReq.setTempId("60f6c17c7c223700131d8bc3");
|
//orderReq.setTempId("60f6c17c7c223700131d8bc3");
|
||||||
orderReq.setSendMan(sendManInfo);
|
|
||||||
orderReq.setRecMan(recManInfo);
|
|
||||||
|
|
||||||
orderReq.setPrintType(PrintType.CLOUD);
|
|
||||||
|
|
||||||
String param = new Gson().toJson(orderReq);
|
String param = new Gson().toJson(orderReq);
|
||||||
String t = System.currentTimeMillis() + "";
|
String t = System.currentTimeMillis() + "";
|
||||||
@@ -167,14 +217,19 @@ public class Kuaidi100Plugin implements LogisticsPlugin {
|
|||||||
printReq.setT(t);
|
printReq.setT(t);
|
||||||
printReq.setKey(logisticsSetting.getKuaidi100Key());
|
printReq.setKey(logisticsSetting.getKuaidi100Key());
|
||||||
printReq.setSign(SignUtils.printSign(param, t, logisticsSetting.getKuaidi100Key(), logisticsSetting.getKuaidi100Customer()));
|
printReq.setSign(SignUtils.printSign(param, t, logisticsSetting.getKuaidi100Key(), logisticsSetting.getKuaidi100Customer()));
|
||||||
printReq.setMethod(ApiInfoConstant.ORDER);
|
printReq.setMethod(ApiInfoConstant.NEW_TEMPLATE_URL);
|
||||||
printReq.setParam(param);
|
printReq.setParam(param);
|
||||||
|
|
||||||
IBaseClient baseClient = new LabelV2();
|
IBaseClient baseClient = new LabelV2();
|
||||||
HttpResult result = baseClient.execute(printReq);
|
HttpResult result = baseClient.execute(printReq);
|
||||||
System.out.println(result.getBody());
|
System.out.println(result.getBody());
|
||||||
QueryTrackMapResp queryTrackMapResp = new Gson().fromJson(result.getBody(), QueryTrackMapResp.class);
|
|
||||||
OrderResp orderResp = new Gson().fromJson(result.getBody(), OrderResp.class);
|
|
||||||
|
|
||||||
|
OrderResult orderResult = new Gson().fromJson(result.getBody(), OrderResult.class);
|
||||||
|
log.info("电子面单响应:{}", orderResult);
|
||||||
|
System.out.println("快递单号:"+orderResult.getKdComOrderNum());
|
||||||
|
System.out.println("面单短链:"+orderResult.getLabel());
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|||||||
@@ -33,16 +33,16 @@ public class StoreLogistics extends BaseEntity {
|
|||||||
@NotNull
|
@NotNull
|
||||||
private String logisticsId;
|
private String logisticsId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "客户代码")
|
@ApiModelProperty(value = "电子面单客户账户、月结账号、客户代码")
|
||||||
private String customerName;
|
private String customerName;
|
||||||
|
|
||||||
@ApiModelProperty(value = "客户密码")
|
@ApiModelProperty(value = "客户密码、电子面单密码")
|
||||||
private String customerPwd;
|
private String customerPwd;
|
||||||
|
|
||||||
@ApiModelProperty(value = "密钥")
|
@ApiModelProperty(value = "电子面单密钥")
|
||||||
private String monthCode;
|
private String monthCode;
|
||||||
|
|
||||||
@ApiModelProperty(value = "归属网点/网点编码")
|
@ApiModelProperty(value = "归属网点/网点编码,电子面单承载编号")
|
||||||
private String sendSite;
|
private String sendSite;
|
||||||
|
|
||||||
@ApiModelProperty(value = "收件快递员")
|
@ApiModelProperty(value = "收件快递员")
|
||||||
@@ -57,6 +57,11 @@ public class StoreLogistics extends BaseEntity {
|
|||||||
@ApiModelProperty(value = "快递类型")
|
@ApiModelProperty(value = "快递类型")
|
||||||
private String expType;
|
private String expType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "电子面单客户账户名称")
|
||||||
|
private String partnerName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public StoreLogistics(StoreLogisticsCustomerDTO storeLogisticsCustomerDTO){
|
public StoreLogistics(StoreLogisticsCustomerDTO storeLogisticsCustomerDTO){
|
||||||
this.customerName=storeLogisticsCustomerDTO.getCustomerName();
|
this.customerName=storeLogisticsCustomerDTO.getCustomerName();
|
||||||
this.customerPwd=storeLogisticsCustomerDTO.getCustomerPwd();
|
this.customerPwd=storeLogisticsCustomerDTO.getCustomerPwd();
|
||||||
@@ -66,6 +71,7 @@ public class StoreLogistics extends BaseEntity {
|
|||||||
this.faceSheetFlag=storeLogisticsCustomerDTO.isFaceSheetFlag();
|
this.faceSheetFlag=storeLogisticsCustomerDTO.isFaceSheetFlag();
|
||||||
this.payType = storeLogisticsCustomerDTO.getPayType();
|
this.payType = storeLogisticsCustomerDTO.getPayType();
|
||||||
this.expType = storeLogisticsCustomerDTO.getExpType();
|
this.expType = storeLogisticsCustomerDTO.getExpType();
|
||||||
|
this.partnerName = storeLogisticsCustomerDTO.getPartnerName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -38,4 +38,7 @@ public class StoreLogisticsCustomerDTO {
|
|||||||
@ApiModelProperty(value = "快递类型")
|
@ApiModelProperty(value = "快递类型")
|
||||||
private String expType;
|
private String expType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "电子面单客户账户名称")
|
||||||
|
private String partnerName;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user