记得上下班打卡 | git大法好,push需谨慎

Commit 0f16eee2 authored by Administrator's avatar Administrator 🎨

Merge branch 'pre' into 'master'

Pre

See merge request !10
parents 91a97871 3977e4b0
...@@ -33,24 +33,28 @@ public class AdamMemberOrderParam implements Serializable { ...@@ -33,24 +33,28 @@ public class AdamMemberOrderParam implements Serializable {
@Pattern(regexp = LnsRegex.Valid.DATETIME_YMD, message = "生日格式有误") @Pattern(regexp = LnsRegex.Valid.DATETIME_YMD, message = "生日格式有误")
@NotBlank(message = "生日不能为空") @NotBlank(message = "生日不能为空")
private String birthday; private String birthday;
@ApiModelProperty(position = 16, required = true, value = "支付终端", allowableValues = "app,wap,js,applet") @ApiModelProperty(position = 16, required = true, value = "收获地址")
@Size(min = 1, max = 64, message = "收获地址长度限制1-64位字符")
@NotBlank(message = "收获地址不能为空")
private String addressId;
@ApiModelProperty(position = 17, required = true, value = "支付终端", allowableValues = "app,wap,js,applet")
@Pattern(regexp = LnsRegex.Valid.TRIPLE_PF_FOR_PAY_TERMINAL, message = "支付终端类型无效") @Pattern(regexp = LnsRegex.Valid.TRIPLE_PF_FOR_PAY_TERMINAL, message = "支付终端类型无效")
@NotBlank(message = "支付终端不能为空") @NotBlank(message = "支付终端不能为空")
private String deviceFrom; private String deviceFrom;
@ApiModelProperty(position = 17, required = true, value = "支付方式", allowableValues = "alipay,wepay") @ApiModelProperty(position = 20, required = true, value = "支付方式", allowableValues = "alipay,wepay")
@Pattern(regexp = LnsRegex.Valid.TRIPLE_PF_FOR_PAY, message = "支付方式无效") @Pattern(regexp = LnsRegex.Valid.TRIPLE_PF_FOR_PAY, message = "支付方式无效")
@NotBlank(message = "支付方式不能为空") @NotBlank(message = "支付方式不能为空")
private String payType; private String payType;
@ApiModelProperty(position = 18, required = false, value = "App内Apple支付必传") @ApiModelProperty(position = 21, required = false, value = "App内Apple支付必传")
private String productId; private String productId;
@ApiModelProperty(position = 19, required = false, value = "微信内网页及小程序支付必传") @ApiModelProperty(position = 22, required = false, value = "微信内网页及小程序支付必传")
private String openId; private String openId;
@ApiModelProperty(position = 23, required = false, value = "取消支付,点击取消支付宝回调地址") @ApiModelProperty(position = 23, required = false, value = "取消支付,点击取消支付宝回调地址")
private String showUrl; private String showUrl;
@ApiModelProperty(position = 24, required = false, value = "支付成功,点击完成支付宝回调地址") @ApiModelProperty(position = 24, required = false, value = "支付成功,点击完成支付宝回调地址")
private String returnUrl; private String returnUrl;
@ApiModelProperty(position = 19, required = false, value = "姓名[未实名时必传]", example = "王武") @ApiModelProperty(position = 30, required = false, value = "姓名[未实名时必传]", example = "王武")
private String name; private String name;
@ApiModelProperty(position = 20, required = false, value = "身份证件号[未实名时必传]", example = "111111111111111111") @ApiModelProperty(position = 31, required = false, value = "身份证件号[未实名时必传]", example = "111111111111111111")
private String idCard; private String idCard;
} }
...@@ -36,8 +36,8 @@ public class AdamUserInfoParam implements java.io.Serializable { ...@@ -36,8 +36,8 @@ public class AdamUserInfoParam implements java.io.Serializable {
@ApiModelProperty(position = 16, required = true, value = "常住地/区域[100]", example = "北京 北京市 朝阳区") @ApiModelProperty(position = 16, required = true, value = "常住地/区域[100]", example = "北京 北京市 朝阳区")
// @NotBlank(message = "常住地不能为空") // @NotBlank(message = "常住地不能为空")
private String area; private String area;
@ApiModelProperty(position = 17, required = true, value = "签名[15]", example = "...................") @ApiModelProperty(position = 17, required = true, value = "签名[30]", example = "...................")
// @Size(max = 15, message = "已超出签名长度限制") // @Size(max = 30, message = "已超出签名长度限制")
private String signature; private String signature;
@ApiModelProperty(position = 18, required = true, value = "标签[500]", example = "[{\"val\":\"MMS01\",\"desc\":\"民歌\",\"tagVos\":[{\"val\":\"MMS0101\",\"desc\":\"A\"},{\"val\":\"MMS0102\",\"desc\":\"B\"}]},{\"val\":\"MMS02\",\"desc\":\"house\",\"tagVos\":[{\"val\":\"MMS0201\",\"desc\":\"C\"}]}]") @ApiModelProperty(position = 18, required = true, value = "标签[500]", example = "[{\"val\":\"MMS01\",\"desc\":\"民歌\",\"tagVos\":[{\"val\":\"MMS0101\",\"desc\":\"A\"},{\"val\":\"MMS0102\",\"desc\":\"B\"}]},{\"val\":\"MMS02\",\"desc\":\"house\",\"tagVos\":[{\"val\":\"MMS0201\",\"desc\":\"C\"}]}]")
// @NotNull // @NotNull
......
package com.liquidnet.service.adam.dto.vo; package com.liquidnet.service.adam.dto.vo;
import com.liquidnet.commons.lang.util.SensitizeUtil;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.List; import java.util.List;
@ApiModel(value = "AdamLoginInfoVo", description = "登录成功响应数据") @ApiModel(value = "AdamLoginInfoVo", description = "登录成功响应数据")
@Data
public class AdamLoginInfoVo implements Serializable, Cloneable { public class AdamLoginInfoVo implements Serializable, Cloneable {
private static final long serialVersionUID = 4209754800686327524L; private static final long serialVersionUID = 4209754800686327524L;
@ApiModelProperty(position = 11, value = "TOKEN") @ApiModelProperty(position = 11, value = "TOKEN")
...@@ -29,14 +28,84 @@ public class AdamLoginInfoVo implements Serializable, Cloneable { ...@@ -29,14 +28,84 @@ public class AdamLoginInfoVo implements Serializable, Cloneable {
@ApiModelProperty(position = 18, value = "微信用户unionid(微信小程序登录返回,用于给小程序用户推送信息)") @ApiModelProperty(position = 18, value = "微信用户unionid(微信小程序登录返回,用于给小程序用户推送信息)")
private String wechatUnionid; private String wechatUnionid;
public String getToken() {
return token;
}
public void setToken(String token) {
this.token = token;
}
public AdamUserInfoVo getUserInfo() {
return userInfo;
}
public void setUserInfo(AdamUserInfoVo userInfo) {
this.userInfo = userInfo;
}
public AdamRealInfoVo getRealNameInfo() {
return realNameInfo;
}
public void setRealNameInfo(AdamRealInfoVo realNameInfo) {
this.realNameInfo = realNameInfo;
}
public List<AdamThirdPartInfoVo> getThirdPartInfo() {
return thirdPartInfo;
}
public void setThirdPartInfo(List<AdamThirdPartInfoVo> thirdPartInfo) {
this.thirdPartInfo = thirdPartInfo;
}
public AdamMemberSimpleVo getMemberVo() {
return memberVo;
}
public void setMemberVo(AdamMemberSimpleVo memberVo) {
this.memberVo = memberVo;
}
public AdamUserMemberVo getUserMemberVo() {
return userMemberVo;
}
public void setUserMemberVo(AdamUserMemberVo userMemberVo) {
this.userMemberVo = userMemberVo;
}
public String getWechatOpenid() {
return wechatOpenid;
}
public void setWechatOpenid(String wechatOpenid) {
this.wechatOpenid = wechatOpenid;
}
public String getWechatUnionid() {
return wechatUnionid;
}
public void setWechatUnionid(String wechatUnionid) {
this.wechatUnionid = wechatUnionid;
}
private static final AdamLoginInfoVo obj = new AdamLoginInfoVo(); private static final AdamLoginInfoVo obj = new AdamLoginInfoVo();
public static AdamLoginInfoVo getNew() { public static AdamLoginInfoVo getNew() {
try { try {
return (AdamLoginInfoVo) obj.clone(); return (AdamLoginInfoVo) obj.clone();
} catch (CloneNotSupportedException e) { } catch (CloneNotSupportedException e) {
e.printStackTrace(); return new AdamLoginInfoVo();
} }
return new AdamLoginInfoVo(); }
public AdamLoginInfoVo desensitize() {
this.userInfo.setPasswd(null);
// this.userInfo.setPayCode(null);
this.userInfo.setMobile(SensitizeUtil.custom(userInfo.getMobile(), 3, 4));
return this;
} }
} }
package com.liquidnet.service.adam.dto.vo;
import com.liquidnet.service.adam.entity.AdamMemberOrderExt;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel(value = "AdamMemberOrderExtVo", description = "用户会员订单扩展信息")
@Data
public class AdamMemberOrderExtVo implements Serializable, Cloneable {
private static final long serialVersionUID = -1718738306110269600L;
@ApiModelProperty(position = 1, value = "订单号")
private String orderNo;
@ApiModelProperty(position = 2, value = "快递状态")
private Integer expressStatus;
@ApiModelProperty(position = 3, value = "收件人")
private String expressReceiver;
@ApiModelProperty(position = 4, value = "收件人电话")
private String expressPhone;
@ApiModelProperty(position = 5, value = "收件人地址")
private String expressAddress;
private static final AdamMemberOrderExtVo obj = new AdamMemberOrderExtVo();
public static AdamMemberOrderExtVo getNew() {
try {
return (AdamMemberOrderExtVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new AdamMemberOrderExtVo();
}
}
public AdamMemberOrderExtVo copy(AdamMemberOrderExt source) {
if (null == source) return this;
this.setOrderNo(source.getOrderNo());
this.setExpressStatus(source.getExpressStatus());
this.setExpressReceiver(source.getExpressReceiver());
this.setExpressPhone(source.getExpressPhone());
this.setExpressAddress(source.getExpressAddress());
return this;
}
}
...@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.dto.vo; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.dto.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.adam.entity.AdamMemberOrder; import com.liquidnet.service.adam.entity.AdamMemberOrder;
import com.liquidnet.service.adam.entity.AdamMemberOrderExt;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -61,9 +62,12 @@ public class AdamMemberOrderVo implements Serializable, Cloneable { ...@@ -61,9 +62,12 @@ public class AdamMemberOrderVo implements Serializable, Cloneable {
@ApiModelProperty(position = 20, value = "客户端版本") @ApiModelProperty(position = 20, value = "客户端版本")
private String version; private String version;
@ApiModelProperty(position = 21, value = "会员须知") @ApiModelProperty(position = 21, value = "会员订单扩展信息")
private AdamMemberOrderExtVo extendVo;
@ApiModelProperty(position = 30, value = "会员须知")
private String memberNotes; private String memberNotes;
@ApiModelProperty(position = 22, value = "会员码信息") @ApiModelProperty(position = 31, value = "会员码信息")
private AdamMemberCodeVo memberCodeVo; private AdamMemberCodeVo memberCodeVo;
public static final AdamMemberOrderVo obj = new AdamMemberOrderVo(); public static final AdamMemberOrderVo obj = new AdamMemberOrderVo();
......
package com.liquidnet.service.adam.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ApiModel(value = "AdamRscPolymer01Vo", description = "票务下单所需信息")
@Data
public class AdamRscPolymer01Vo implements java.io.Serializable, Cloneable {
private static final long serialVersionUID = -4945093532123934888L;
@ApiModelProperty(position = 1, value = "会员身份[0-非会员,1-会员]")
private int membership;
@ApiModelProperty(position = 2, value = "收货地址")
private AdamAddressesVo addressesVo;
@ApiModelProperty(position = 3, value = "入场人列表")
private List<AdamEntersVo> entersVos;
private static final AdamRscPolymer01Vo obj = new AdamRscPolymer01Vo();
public static AdamRscPolymer01Vo getNew() {
try {
return (AdamRscPolymer01Vo) obj.clone();
} catch (CloneNotSupportedException e) {
return new AdamRscPolymer01Vo();
}
}
}
...@@ -11,6 +11,7 @@ import java.time.LocalDateTime; ...@@ -11,6 +11,7 @@ import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@ApiModel(value = "AdamUserInfoVo", description = "用户详情") @ApiModel(value = "AdamUserInfoVo", description = "用户详情")
@Data
public class AdamUserInfoVo implements java.io.Serializable, Cloneable { public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
private static final long serialVersionUID = 8479869354894030303L; private static final long serialVersionUID = 8479869354894030303L;
@ApiModelProperty(position = 10, value = "用户ID[64]") @ApiModelProperty(position = 10, value = "用户ID[64]")
...@@ -66,148 +67,10 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable { ...@@ -66,148 +67,10 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
return new AdamUserInfoVo(); return new AdamUserInfoVo();
} }
public String getUid() { public AdamUserInfoVo desensitize() {
return uid; this.setPasswd(null);
} // this.userInfo.setPayCode(null);
this.setMobile(SensitizeUtil.custom(this.getMobile(), 3, 4));
public void setUid(String uid) { return this;
this.uid = uid;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getPasswd() {
// return passwd;
return "*";
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public Integer getState() {
return state;
}
public void setState(Integer state) {
this.state = state;
}
public AdamTagVo getSex() {
return sex;
}
public void setSex(AdamTagVo sex) {
this.sex = sex;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getArea() {
return area;
}
public void setArea(String area) {
this.area = area;
}
public String getSignature() {
return signature;
}
public void setSignature(String signature) {
this.signature = signature;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
public String getBackground() {
return background;
}
public void setBackground(String background) {
this.background = background;
}
public List<AdamTagParentVo> getTagMe() {
return tagMe;
}
public void setTagMe(List<AdamTagParentVo> tagMe) {
this.tagMe = tagMe;
}
public LocalDateTime getCreateAt() {
return createAt;
}
public void setCreateAt(LocalDateTime createAt) {
this.createAt = createAt;
}
public LocalDateTime getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(LocalDateTime updatedAt) {
this.updatedAt = updatedAt;
}
public LocalDateTime getClosedAt() {
return closedAt;
}
public void setClosedAt(LocalDateTime closedAt) {
this.closedAt = closedAt;
}
public Integer getIsComplete() {
return isComplete;
}
public void setIsComplete(Integer isComplete) {
this.isComplete = isComplete;
}
public String getRongCloudToken() {
return rongCloudToken;
}
public void setRongCloudToken(String rongCloudToken) {
this.rongCloudToken = rongCloudToken;
}
public String getQrCode() {
return qrCode;
}
public void setQrCode(String qrCode) {
this.qrCode = qrCode;
} }
} }
package com.liquidnet.service.adam.dto.vo.admin; package com.liquidnet.service.adam.dto.vo.admin;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderExtVo;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo; import com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo; import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo; import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
...@@ -21,4 +22,5 @@ public class MemberOrderDetailAdminVo { ...@@ -21,4 +22,5 @@ public class MemberOrderDetailAdminVo {
private AdamUser adamUser; private AdamUser adamUser;
private AdamUserInfoVo adamUserInfoVo; private AdamUserInfoVo adamUserInfoVo;
private AdamUserMemberVo adamUserMemberVo; private AdamUserMemberVo adamUserMemberVo;
private AdamMemberOrderExtVo adamMemberOrderExtVo;
} }
...@@ -15,9 +15,10 @@ public interface IAdamMemberOrderService { ...@@ -15,9 +15,10 @@ public interface IAdamMemberOrderService {
/** /**
* 购买会员或会员码 * 购买会员或会员码
* *
* @param uid
* @param param * @param param
*/ */
ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(AdamMemberOrderParam param); ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(String uid, AdamMemberOrderParam param);
/** /**
* 支付回调 * 支付回调
......
package com.liquidnet.service.kylin.dto.param; package com.liquidnet.service.kylin.dto.param;
import com.liquidnet.service.kylin.dto.vo.returns.PayResultVo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -7,7 +8,7 @@ import javax.validation.constraints.Min; ...@@ -7,7 +8,7 @@ import javax.validation.constraints.Min;
import java.math.BigDecimal; import java.math.BigDecimal;
@Data @Data
public class SyncOrderParam { public class SyncOrderParam implements Cloneable {
@ApiModelProperty(value = "status") @ApiModelProperty(value = "status")
private Integer status; private Integer status;
@ApiModelProperty(value = "type") @ApiModelProperty(value = "type")
...@@ -24,4 +25,13 @@ public class SyncOrderParam { ...@@ -24,4 +25,13 @@ public class SyncOrderParam {
private String paymentType; private String paymentType;
@ApiModelProperty(value = "paymentAt") @ApiModelProperty(value = "paymentAt")
private String paymentAt; private String paymentAt;
private static final SyncOrderParam obj = new SyncOrderParam();
public static SyncOrderParam getNew() {
try {
return (SyncOrderParam) obj.clone();
} catch (CloneNotSupportedException e) {
return new SyncOrderParam();
}
}
} }
...@@ -7,7 +7,7 @@ import java.io.Serializable; ...@@ -7,7 +7,7 @@ import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
@Data @Data
public class PayInnerResultVo implements Serializable { public class PayInnerResultVo implements Serializable,Cloneable {
private String code; private String code;
private String orderCode; private String orderCode;
...@@ -18,4 +18,12 @@ public class PayInnerResultVo implements Serializable { ...@@ -18,4 +18,12 @@ public class PayInnerResultVo implements Serializable {
private BigDecimal price; private BigDecimal price;
private PayDataVo payData; private PayDataVo payData;
private static final PayInnerResultVo obj = new PayInnerResultVo();
public static PayInnerResultVo getNew() {
try {
return (PayInnerResultVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new PayInnerResultVo();
}
}
} }
...@@ -7,11 +7,20 @@ import java.io.Serializable; ...@@ -7,11 +7,20 @@ import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
@Data @Data
public class PayResultVo implements Serializable { public class PayResultVo implements Serializable,Cloneable {
private static final long serialVersionUID = 1541552316829686035L; private static final long serialVersionUID = 1541552316829686035L;
private String code; private String code;
private String message; private String message;
private PayInnerResultVo data; private PayInnerResultVo data;
private static final PayResultVo obj = new PayResultVo();
public static PayResultVo getNew() {
try {
return (PayResultVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new PayResultVo();
}
}
} }
...@@ -65,7 +65,7 @@ ...@@ -65,7 +65,7 @@
<div class="form-group"> <div class="form-group">
<label class="col-sm-3 control-label">会员卡名称:</label> <label class="col-sm-3 control-label">会员卡名称:</label>
<div class="col-sm-8"> <div class="col-sm-8">
<input name="state" th:field="*{adamMemberOrderVo.memberName}" class="form-control" type="text" readonly> <input name="memberName" th:field="*{adamMemberOrderVo.memberName}" class="form-control" type="text" readonly>
</div> </div>
</div> </div>
<!-- <div class="form-group">--> <!-- <div class="form-group">-->
...@@ -95,6 +95,18 @@ ...@@ -95,6 +95,18 @@
<!-- <input name="version" th:field="*{version}" class="form-control" type="text">--> <!-- <input name="version" th:field="*{version}" class="form-control" type="text">-->
<!-- </div>--> <!-- </div>-->
<!-- </div>--> <!-- </div>-->
<div class="form-group">
<label class="col-sm-3 control-label">收件人:</label>
<div class="col-sm-8">
<input name="expressReceiver" th:value="|*{adamMemberOrderExtVo.expressReceiver} / *{adamMemberOrderExtVo.expressPhone}|" class="form-control" type="text" readonly>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">收件地址:</label>
<div class="col-sm-8">
<input name="expressAddress" th:value="*{adamMemberOrderExtVo.expressAddress}" class="form-control" type="text" readonly>
</div>
</div>
</form> </form>
</div> </div>
<th:block th:include="include :: footer" /> <th:block th:include="include :: footer" />
......
...@@ -158,7 +158,7 @@ ...@@ -158,7 +158,7 @@
var inputValue = $(td).find("input").val(); var inputValue = $(td).find("input").val();
if (inputName == "priceDiscountMember") {//过滤修改列 if (inputName == "priceDiscountMember") {//过滤修改列
performanceMemberAuditParam["ticketMemberAudit[" + i + "].priceDiscountMember"] = parseFloat(inputValue); performanceMemberAuditParam["ticketMemberAudit[" + i + "].priceDiscountMember"] = parseFloat(inputValue);
if (parseFloat($("td[name^='price']").text()) - parseFloat(inputValue) <= 0) { if (parseFloat($("td[name^='price']").text()) - parseFloat(inputValue) < 0) {
canSubmit = 0; canSubmit = 0;
} }
} }
......
package com.liquidnet.client.admin.zhengzai.adam.service.impl; package com.liquidnet.client.admin.zhengzai.adam.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService; import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.service.adam.dto.MemberOrderDto; import com.liquidnet.service.adam.dto.MemberOrderDto;
import com.liquidnet.service.adam.dto.param.admin.MemberOrderListReq; import com.liquidnet.service.adam.dto.param.admin.MemberOrderListReq;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderExtVo;
import com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo; import com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo; import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo; import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
import com.liquidnet.service.adam.dto.vo.admin.MemberOrderDetailAdminVo; import com.liquidnet.service.adam.dto.vo.admin.MemberOrderDetailAdminVo;
import com.liquidnet.service.adam.entity.AdamMemberOrder; import com.liquidnet.service.adam.entity.*;
import com.liquidnet.service.adam.entity.AdamUser; import com.liquidnet.service.adam.mapper.*;
import com.liquidnet.service.adam.entity.AdamUserInfo;
import com.liquidnet.service.adam.entity.AdamUserMember;
import com.liquidnet.service.adam.mapper.AdamMemberOrderMapper;
import com.liquidnet.service.adam.mapper.AdamUserInfoMapper;
import com.liquidnet.service.adam.mapper.AdamUserMapper;
import com.liquidnet.service.adam.mapper.AdamUserMemberMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -46,6 +42,8 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder ...@@ -46,6 +42,8 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder
private AdamUserInfoMapper adamUserInfoMapper; private AdamUserInfoMapper adamUserInfoMapper;
@Autowired @Autowired
private AdamUserMapper adamUserMapper; private AdamUserMapper adamUserMapper;
@Autowired
private AdamMemberOrderExtMapper adamMemberOrderExtMapper;
@Override @Override
public List<MemberOrderDto> getMemberOrderList(MemberOrderListReq memberOrderListReq) { public List<MemberOrderDto> getMemberOrderList(MemberOrderListReq memberOrderListReq) {
...@@ -90,11 +88,14 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder ...@@ -90,11 +88,14 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder
LambdaQueryWrapper<AdamUser> adamUserWrapper = new LambdaQueryWrapper(); LambdaQueryWrapper<AdamUser> adamUserWrapper = new LambdaQueryWrapper();
adamUserWrapper.eq(AdamUser::getUid,adamMemberOrderVo.getUid()); adamUserWrapper.eq(AdamUser::getUid,adamMemberOrderVo.getUid());
adamUser = adamUserMapper.selectOne(adamUserWrapper); adamUser = adamUserMapper.selectOne(adamUserWrapper);
// 查取快递信息
AdamMemberOrderExt adamMemberOrderExt = adamMemberOrderExtMapper.selectOne(Wrappers.lambdaQuery(AdamMemberOrderExt.class).eq(AdamMemberOrderExt::getOrderNo, orderNo));
detailAdminVo.setAdamMemberOrderVo(adamMemberOrderVo); detailAdminVo.setAdamMemberOrderVo(adamMemberOrderVo);
detailAdminVo.setAdamUserMemberVo(adamUserMemberVo); detailAdminVo.setAdamUserMemberVo(adamUserMemberVo);
detailAdminVo.setAdamUserInfoVo(adamUserInfoVo); detailAdminVo.setAdamUserInfoVo(adamUserInfoVo);
detailAdminVo.setAdamUser(adamUser); detailAdminVo.setAdamUser(adamUser);
detailAdminVo.setAdamMemberOrderExtVo(AdamMemberOrderExtVo.getNew().copy(adamMemberOrderExt));
return detailAdminVo; return detailAdminVo;
} }
} }
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
...@@ -8,15 +9,19 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils; ...@@ -8,15 +9,19 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils; import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.*; import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceMemberHistoryVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceMemberHistoryVo;
import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo; import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.TicketTimesTicketCreatePartnerVo;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService; import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
...@@ -83,13 +88,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -83,13 +88,7 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
private KylinTicketStatusMapper ticketStatusMapper; private KylinTicketStatusMapper ticketStatusMapper;
@Autowired @Autowired
private KylinTicketRelationsMapper ticketRelationsMapper; private KylinOrderTicketsMapper kylinOrderTicketsMapper;
@Autowired
private KylinTicketTimesMapper ticketTimesMapper;
@Autowired
private KylinTicketTimeRelationMapper ticketTimeRelationMapper;
@Override @Override
public KylinPerformanceMisVo performanceDetails(String performancesId) { public KylinPerformanceMisVo performanceDetails(String performancesId) {
...@@ -114,14 +113,13 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -114,14 +113,13 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
map.put("auditStatus", auditStatus); map.put("auditStatus", auditStatus);
map.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); map.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
BasicDBObject objectPerformanceVo = new BasicDBObject("$set", mongoConverter.convertToMongoType(map)); BasicDBObject objectPerformanceVo = new BasicDBObject("$set", mongoConverter.convertToMongoType(map));
mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).findOneAndUpdate( mongoTemplate.getCollection(PerformancePartnerVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(), Query.query(Criteria.where("performancesId").is(performancesId)).getQueryObject(),
objectPerformanceVo, objectPerformanceVo
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
); );
KylinPerformanceStatus sqlStatus = performanceStatusMapper.selectOne(new UpdateWrapper<KylinPerformanceStatus>().eq("performance_id", performancesId)); KylinPerformanceStatus sqlStatus = performanceStatusMapper.selectOne(new UpdateWrapper<KylinPerformanceStatus>().eq("performance_id", performancesId));
dataUtils.setPerformanceIsTrueName(performancesId,sqlStatus.getIsTrueName()); dataUtils.setPerformanceIsTrueName(performancesId, sqlStatus.getIsTrueName());
if (sqlStatus.getStatus() == 1) { if (sqlStatus.getStatus() == 1) {
log.info(" PERFORMANCE 演出审核 第一次"); log.info(" PERFORMANCE 演出审核 第一次");
//修改 //修改
...@@ -159,10 +157,12 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -159,10 +157,12 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
HashMap<String, Object> mapSql = new HashMap<>(); HashMap<String, Object> mapSql = new HashMap<>();
mapSql.put("status", 9); mapSql.put("status", 9);
mapSql.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); mapSql.put("updatedAt", updatedAt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
performanceVoUtils.updatePerformanceMySql(performancesId, mapSql, performanceVoUtils.getPerformanceMisVo(performancesId), updatedAt, auditStatus); KylinPerformanceMisVo vo = performanceVoUtils.getPerformanceMisVo(performancesId);
performanceVoUtils.updatePerformanceMySql(performancesId, mapSql, vo, updatedAt, auditStatus);
if (sqlStatus.getStatus() >= 6 && sqlStatus.getStatus() != 7) {//若 演出上 则 线判断状态 if (sqlStatus.getStatus() >= 6 && sqlStatus.getStatus() != 7) {//若 演出上 则 线判断状态
performanceVoUtils.performanceVoStatus(performancesId); performanceVoUtils.performanceVoStatus(performancesId);
} }
delOrderTicketsRedis(vo);
} }
dataUtils.delPerformanceRedis(performancesId); dataUtils.delPerformanceRedis(performancesId);
...@@ -575,8 +575,8 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -575,8 +575,8 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
vo.setPerformancesId(kylinPerformances.getPerformancesId()); vo.setPerformancesId(kylinPerformances.getPerformancesId());
vo.setTitle(kylinPerformances.getTitle()); vo.setTitle(kylinPerformances.getTitle());
vo.setIsCanRefund(kylinPerformanceStatus.getIsCanRefund()); vo.setIsCanRefund(kylinPerformanceStatus.getIsCanRefund());
vo.setRefundCloseTime(kylinPerformanceStatus.getRefundCloseTime()==null?"":DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundCloseTime())); vo.setRefundCloseTime(kylinPerformanceStatus.getRefundCloseTime() == null ? "" : DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundCloseTime()));
vo.setRefundOpenTime(kylinPerformanceStatus.getRefundOpenTime()==null?"":DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundOpenTime())); vo.setRefundOpenTime(kylinPerformanceStatus.getRefundOpenTime() == null ? "" : DateUtil.Formatter.yyyyMMddHHmmss.format(kylinPerformanceStatus.getRefundOpenTime()));
return vo; return vo;
} }
...@@ -648,4 +648,33 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -648,4 +648,33 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
public List<PerformanceSponsorDao> getPerformanceSponsorList(String sponsorType) { public List<PerformanceSponsorDao> getPerformanceSponsorList(String sponsorType) {
return performancesMapper.getPerformanceSponsorList(sponsorType); return performancesMapper.getPerformanceSponsorList(sponsorType);
} }
//删除演出下所有订单缓存(订单详情,订单列表)
public void delOrderTicketsRedis(KylinPerformanceMisVo vo) {
//找到所有ticketId
List<TicketTimesTicketCreatePartnerVo> timesVoList = vo.getTicketTimes();
for (TicketTimesTicketCreatePartnerVo timesVo : timesVoList) {
List<String> orderTicketRedisIdList = new ArrayList<>();
List<String> userRedisIdList = new ArrayList<>();
List<String> orderTicketIdList = new ArrayList<>();
List<OrderIdsDao> orderIdsDaoList = kylinOrderTicketsMapper.getOrderUserIdByTimesId(timesVo.getTicketTimesId());
for (OrderIdsDao item : orderIdsDaoList) {
orderTicketRedisIdList.add(KylinRedisConst.ORDER + item.getOrderTicketsId());
userRedisIdList.add(KylinRedisConst.ORDER_LIST + item.getUserId());
orderTicketIdList.add(item.getOrderTicketsId());
}
HashMap<String, Object> mapMongo = new HashMap<>();
mapMongo.put("useStart", timesVo.getUseStart());
long time1 = System.currentTimeMillis();
mongoTemplate.getCollection(KylinOrderTicketVo.class.getSimpleName()).updateMany(
Query.query(Criteria.where("orderTicketsId").in(orderTicketIdList)).getQueryObject(),
new BasicDBObject("$set", mongoConverter.convertToMongoType(mapMongo))
);
log.debug("修改场次相关 mongo time -> " + (System.currentTimeMillis() - time1) + " ms ");
time1 = System.currentTimeMillis();
dataUtils.delOrderIdUserIdRedis(orderTicketRedisIdList, userRedisIdList);
log.debug("修改场次相关 redis time -> " + (System.currentTimeMillis() - time1) + " ms ");
}
}
} }
...@@ -313,12 +313,18 @@ public class DataUtils { ...@@ -313,12 +313,18 @@ public class DataUtils {
redisUtil.del(KylinRedisConst.ORDER_REFUND.concat(id)); redisUtil.del(KylinRedisConst.ORDER_REFUND.concat(id));
} }
} }
public void delOrderRefundVoByOrderId(List<String> orderIds){ public void delOrderRefundVoByOrderId(List<String> orderIds){
for (String id : orderIds) { for (String id : orderIds) {
redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID.concat(id)); redisUtil.del(KylinRedisConst.ORDER_REFUND_BY_ORDER_ID.concat(id));
} }
} }
public void delOrderIdUserIdRedis(List<String> orderTicketIdList,List<String> userIdList){
redisUtil.delList(orderTicketIdList);
redisUtil.delList(userIdList);
}
/** /**
* Object转BigDecimal类型 * Object转BigDecimal类型
* *
......
package com.liquidnet.client.admin.zhengzai.kylin.utils;
import com.liquidnet.commons.lang.util.CollectionUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.stream.StreamRecords;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.util.HashMap;
@Component
public class QueueUtils {
@Autowired
StringRedisTemplate stringRedisTemplate;
/**
* 发送消息 - REDIS
*
* @param streamKey Redis消费Key
* @param jsonMsg Json字符串
*/
public void sendMsgByRedis(String streamKey, String jsonMsg) {
HashMap<String, String> map = CollectionUtil.mapStringString();
map.put("message", jsonMsg);
stringRedisTemplate.opsForStream().add(StreamRecords.mapBacked(map).withStreamKey(streamKey));
}
}
...@@ -2,6 +2,8 @@ config-server-git: dev111 ...@@ -2,6 +2,8 @@ config-server-git: dev111
#application-dev-begin #application-dev-begin
#这里后续添加公共参数值 #这里后续添加公共参数值
liquidnet: liquidnet:
secret:
passwd-salt: NTZiYzg4
security: security:
username: user username: user
password: user123 password: user123
......
...@@ -2,6 +2,8 @@ config-server-git: test ...@@ -2,6 +2,8 @@ config-server-git: test
#application-test-begin #application-test-begin
#这里后续添加公共参数值 #这里后续添加公共参数值
liquidnet: liquidnet:
secret:
passwd-salt: NTZiYzg4
security: security:
username: user username: user
password: user123 password: user123
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
...@@ -132,6 +132,7 @@ global-auth: ...@@ -132,6 +132,7 @@ global-auth:
- ${liquidnet.info.context}/plz/ad - ${liquidnet.info.context}/plz/ad
- ${liquidnet.info.context}/wxa/code2session - ${liquidnet.info.context}/wxa/code2session
- ${liquidnet.info.context}/wx/oauth2/access_token - ${liquidnet.info.context}/wx/oauth2/access_token
- ${liquidnet.info.context}/rsc/**
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
...@@ -121,11 +121,9 @@ spring: ...@@ -121,11 +121,9 @@ spring:
# type: org.apache.tomcat.jdbc.pool.DataSource # type: org.apache.tomcat.jdbc.pool.DataSource
driver-class-name: com.mysql.cj.jdbc.Driver driver-class-name: com.mysql.cj.jdbc.Driver
hikari: hikari:
# 迁移数据暂设500 maximum-pool-size: 50
maximum-pool-size: 500 connection-timeout: 60000
# 迁移数据暂设10分钟 minimum-idle: 10
connection-timeout: 600000
minimum-idle: 8
connection-test-query: SELECT 1 connection-test-query: SELECT 1
# ----------------------------------------------------------- # -----------------------------------------------------------
......
...@@ -14,7 +14,7 @@ knife4j: ...@@ -14,7 +14,7 @@ knife4j:
enable: true enable: true
production: ${liquidnet.knife4j.disable} production: ${liquidnet.knife4j.disable}
basic: basic:
enable: false enable: true
username: ${liquidnet.security.username} username: ${liquidnet.security.username}
password: ${liquidnet.security.password} password: ${liquidnet.security.password}
# ----------------------------------------------------------- # -----------------------------------------------------------
......
package com.liquidnet.service.adam.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 用户会员订单扩展信息表
* </p>
*
* @author liquidnet
* @since 2021-08-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class AdamMemberOrderExt implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Long mid;
private String orderNo;
/**
* 快递状态:0-待揽收|1-已揽收|2-在途中|3-已签收|4-已拒收
*/
private Integer expressStatus;
/**
* 收件人
*/
private String expressReceiver;
/**
* 收件人电话
*/
private String expressPhone;
/**
* 收件人地址
*/
private String expressAddress;
private String comment;
}
package com.liquidnet.service.adam.mapper;
import com.liquidnet.service.adam.entity.AdamMemberOrderExt;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 用户会员订单扩展信息表 Mapper 接口
* </p>
*
* @author liquidnet
* @since 2021-08-11
*/
public interface AdamMemberOrderExtMapper extends BaseMapper<AdamMemberOrderExt> {
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.liquidnet.service.adam.mapper.AdamMemberOrderExtMapper">
</mapper>
package com.liquidnet.service.kylin.dao;
import lombok.Data;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: PerformanceOrderListDao
* @Package com.liquidnet.service.kylin.dao
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/6/4 13:31
*/
@Data
public class OrderIdsDao {
String orderTicketsId;
String userId;
}
package com.liquidnet.service.kylin.mapper; package com.liquidnet.service.kylin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.kylin.dao.OrderPushDamaiDto; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dao.OrderScriptDto;
import com.liquidnet.service.kylin.dao.OrderTicketsListDao;
import com.liquidnet.service.kylin.dao.PerformanceExpressPerformanceOrderListAdminDao;
import com.liquidnet.service.kylin.entity.KylinOrderTickets; import com.liquidnet.service.kylin.entity.KylinOrderTickets;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -38,4 +35,6 @@ public interface KylinOrderTicketsMapper extends BaseMapper<KylinOrderTickets> { ...@@ -38,4 +35,6 @@ public interface KylinOrderTicketsMapper extends BaseMapper<KylinOrderTickets> {
List<KylinOrderTickets> getCanPlaceOrderList(@Param("performanceId") String performanceId, @Param("mid") int mid, @Param("limitNum") int limitNum); List<KylinOrderTickets> getCanPlaceOrderList(@Param("performanceId") String performanceId, @Param("mid") int mid, @Param("limitNum") int limitNum);
List<OrderIdsDao> getOrderUserIdByTimesId(@Param("timeId") String timeId);
} }
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
kot.user_name, kot.user_name,
kot.user_mobile, kot.user_mobile,
kot.order_type, kot.order_type,
date_format(kot.created_at, '%Y-%m-%d %H:%i:%s') created_at date_format(kot.created_at, '%Y-%m-%d %H:%i:%s') created_at
FROM kylin_order_tickets kot FROM kylin_order_tickets kot
inner join kylin_order_ticket_status kots on kot.order_tickets_id = kots.order_id inner join kylin_order_ticket_status kots on kot.order_tickets_id = kots.order_id
inner join kylin_order_ticket_relations kotr on kot.order_tickets_id = kotr.order_id inner join kylin_order_ticket_relations kotr on kot.order_tickets_id = kotr.order_id
...@@ -341,4 +341,9 @@ ...@@ -341,4 +341,9 @@
ORDER BY mid ASC ORDER BY mid ASC
LIMIT ${limitNum} LIMIT ${limitNum}
</select> </select>
<select id="getOrderUserIdByTimesId" resultType="com.liquidnet.service.kylin.dao.OrderIdsDao">
select order_tickets_id,user_id from kylin_order_tickets as kot left join kylin_order_ticket_relations as kotr on kotr.order_id = kot.order_tickets_id
where time_id =#{timeId}
</select>
</mapper> </mapper>
...@@ -325,6 +325,20 @@ create table adam_member_code ...@@ -325,6 +325,20 @@ create table adam_member_code
create unique index uidx_amember_code_id on adam_member_code (code); create unique index uidx_amember_code_id on adam_member_code (code);
# MDB.idx:code,state # MDB.idx:code,state
-- >>------------------------------------------------------------------------------------ |20210811用于会员改版前支持用户购买会员选礼包收货地址
drop table if exists adam_member_order_ext;
create table adam_member_order_ext
(
mid bigint unsigned auto_increment primary key,
order_no varchar(64) not null,
express_status tinyint comment '快递状态:0-待揽收|1-已揽收|2-在途中|3-已签收|4-已拒收',
express_receiver varchar(120) comment '收件人',
express_phone varchar(30) comment '收件人电话',
express_address text comment '收件人地址',
comment text
) engine = InnoDB comment '用户会员订单扩展信息表';
create unique index uidx_amember_order_ext_id on adam_member_order_ext (order_no);
-- >>------------------------------------------------------------------------------------ -- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------ -- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------ -- >>------------------------------------------------------------------------------------
...@@ -131,7 +131,7 @@ public class AdamAddressesController { ...@@ -131,7 +131,7 @@ public class AdamAddressesController {
return ResponseDto.success(vo); return ResponseDto.success(vo);
} }
/* ------------------------------------------------------------|API */ /* ------------------------------------------------------------|@API:RSC */
@ApiOperationSupport(order = 99) @ApiOperationSupport(order = 99)
@ApiOperation(value = "@API:收货地址", notes = "查取用户指定收货地址详情") @ApiOperation(value = "@API:收货地址", notes = "查取用户指定收货地址详情")
......
...@@ -191,8 +191,10 @@ public class AdamEntersController { ...@@ -191,8 +191,10 @@ public class AdamEntersController {
return ResponseDto.success(vo); return ResponseDto.success(vo);
} }
/* ------------------------------------------------------------|@API:RSC */
@ApiOperationSupport(order = 99) @ApiOperationSupport(order = 99)
@ApiOperation(value = "@API:入场人详情", notes = "查取用户指定入场人详情") @ApiOperation(value = "@API:入场人详情", notes = "查取用户指定入场人详情,响应说明[`success`: true-成功返回信息,false-未查询到信息]")
@GetMapping("query/depth") @GetMapping("query/depth")
public ResponseDto<AdamEntersVo> queryForDepth(@NotBlank(message = "入场人ID不能为空") @RequestParam String entersId, public ResponseDto<AdamEntersVo> queryForDepth(@NotBlank(message = "入场人ID不能为空") @RequestParam String entersId,
@NotBlank(message = "用户ID不能为空") @RequestParam String uid) { @NotBlank(message = "用户ID不能为空") @RequestParam String uid) {
......
...@@ -63,7 +63,7 @@ public class AdamMemberController { ...@@ -63,7 +63,7 @@ public class AdamMemberController {
return ResponseDto.success(adamRdmService.getMemberAgreement()); return ResponseDto.success(adamRdmService.getMemberAgreement());
} }
/* ------------------------------------------------------------|API */ /* ------------------------------------------------------------|@API:RSC */
@ApiOperationSupport(order = 99) @ApiOperationSupport(order = 99)
@ApiOperation(value = "@API:是否会员", notes = "根据UID判断用户是否会员,响应参数[`data`:true-是,false-否]") @ApiOperation(value = "@API:是否会员", notes = "根据UID判断用户是否会员,响应参数[`data`:true-是,false-否]")
......
...@@ -99,13 +99,10 @@ public class AdamMemberOrderController { ...@@ -99,13 +99,10 @@ public class AdamMemberOrderController {
if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) { if (StringUtils.isBlank(param.getName()) || StringUtils.isBlank(param.getIdCard())) {
return ResponseDto.failure(ErrorMapping.get("10101")); return ResponseDto.failure(ErrorMapping.get("10101"));
} }
AdamRealInfoVo vo = adamUserService.identity(currentUid, param.getName(), param.getIdCard()); adamUserService.identity(currentUid, param.getName(), param.getIdCard());
if (null == vo) {
return ResponseDto.failure(ErrorMapping.get("10000"));
}
} }
return adamMemberOrderService.buyMemberOrMemberCode(param); return adamMemberOrderService.buyMemberOrMemberCode(currentUid, param);
} }
/** /**
...@@ -190,6 +187,12 @@ public class AdamMemberOrderController { ...@@ -190,6 +187,12 @@ public class AdamMemberOrderController {
return ResponseDto.success(0); return ResponseDto.success(0);
} }
/**
* 购买会员黑名单校验
*
* @param uid 用户ID
* @return true-命中黑名单
*/
private boolean checkMobileOrUid(String uid) { private boolean checkMobileOrUid(String uid) {
List<String> blacklist = adamRdmService.getBlacklistForMember(); List<String> blacklist = adamRdmService.getBlacklistForMember();
return !CollectionUtils.isEmpty(blacklist) && blacklist.contains(uid); return !CollectionUtils.isEmpty(blacklist) && blacklist.contains(uid);
......
package com.liquidnet.service.adam.controller;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.service.adam.dto.vo.AdamAddressesVo;
import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.adam.dto.vo.AdamRscPolymer01Vo;
import com.liquidnet.service.adam.dto.vo.AdamUserMemberVo;
import com.liquidnet.service.adam.service.AdamRdmService;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.constraints.NotBlank;
import java.util.List;
@ApiSupport(order = 10080)
@Api(tags = "@API:RSC")
@Slf4j
@Validated
@RestController
@RequestMapping("rsc")
public class AdamRscController {
@Autowired
AdamRdmService adamRdmService;
@ApiOperationSupport(order = 10)
@ApiOperation(value = "@API:入场人列表", notes = "查取用户指定入场人列表")
@GetMapping("inquire/enters")
public ResponseDto<List<AdamEntersVo>> querysForDepth(@NotBlank(message = "入场人ID不能为空(多个ID以,分隔)") @RequestParam String entersIds,
@NotBlank(message = "用户ID不能为空") @RequestParam String uid) {
List<AdamEntersVo> vos = adamRdmService.getEntersVoByUidEntersIds(uid, entersIds.split(","));
return CollectionUtils.isEmpty(vos) ? ResponseDto.failure(ErrorMapping.get("10105")) : ResponseDto.success(vos);
}
@ApiOperationSupport(order = 20)
@ApiOperation(value = "@API:票务下单所需信息查询", notes = "包括是否会员、收货地址及入场人信息")
@GetMapping("inquire/of_buy_ticket")
public ResponseDto<AdamRscPolymer01Vo> queryForBuyTicket(@RequestParam(required = false) String addressId,
@RequestParam(required = false) String entersIds,
@NotBlank(message = "用户ID不能为空") @RequestParam String uid) {
AdamRscPolymer01Vo vo = AdamRscPolymer01Vo.getNew();
AdamUserMemberVo userMemberInfo = adamRdmService.getUserMemberVoByUid(uid);
vo.setMembership((null != userMemberInfo && userMemberInfo.isActive()) ? 1 : 0);
if (!StringUtils.isEmpty(addressId)) {
AdamAddressesVo addressesVo = adamRdmService.getAddressesVoByUidAddressesId(uid, addressId);
vo.setAddressesVo(addressesVo);
}
if (!StringUtils.isEmpty(entersIds)) {
List<AdamEntersVo> entersVos = adamRdmService.getEntersVoByUidEntersIds(uid, entersIds.split(","));
vo.setEntersVos(entersVos);
}
return ResponseDto.success(vo);
}
}
...@@ -309,8 +309,7 @@ public class AdamUserController { ...@@ -309,8 +309,7 @@ public class AdamUserController {
Map<String, Object> map = CollectionUtil.mapStringObject(); Map<String, Object> map = CollectionUtil.mapStringObject();
AdamUserInfoVo userInfoVo = adamRdmService.getUserInfoVoByUid(currentUid); AdamUserInfoVo userInfoVo = adamRdmService.getUserInfoVoByUid(currentUid);
userInfoVo.setMobile(SensitizeUtil.custom(userInfoVo.getMobile(), 3, 4)); map.put("userInfo", userInfoVo.desensitize());
map.put("userInfo", userInfoVo);
map.put("realNameInfo", adamRdmService.getRealInfoVoByUid(currentUid)); map.put("realNameInfo", adamRdmService.getRealInfoVoByUid(currentUid));
map.put("thirdPartInfo", adamRdmService.getThirdPartVoListByUid(currentUid)); map.put("thirdPartInfo", adamRdmService.getThirdPartVoListByUid(currentUid));
map.put("userMemberVo", adamRdmService.getUserMemberVoByUid(currentUid)); map.put("userMemberVo", adamRdmService.getUserMemberVoByUid(currentUid));
......
...@@ -267,19 +267,18 @@ public class AdamRdmService { ...@@ -267,19 +267,18 @@ public class AdamRdmService {
} }
public AdamEntersVo getEntersVoByUidEntersId(List<AdamEntersVo> vos, String entersId) { public AdamEntersVo getEntersVoByUidEntersId(List<AdamEntersVo> vos, String entersId) {
if (!CollectionUtils.isEmpty(vos)) { return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getEntersId().equals(entersId)).findAny().orElse(null);
return vos.stream().filter(r -> r.getEntersId().equals(entersId)).findAny().orElse(null);
}
return null;
} }
public AdamEntersVo getEntersVoByUidEntersId(String uid, String entersId) { public AdamEntersVo getEntersVoByUidEntersId(String uid, String entersId) {
return this.getEntersVoByUid(uid).stream().filter(r -> r.getEntersId().equals(entersId)).findAny().orElse(null); List<AdamEntersVo> vos = this.getEntersVoByUid(uid);
return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getEntersId().equals(entersId)).findAny().orElse(null);
} }
public List<AdamEntersVo> getEntersVoByUidEntersIds(String uid, String... entersIds) { public List<AdamEntersVo> getEntersVoByUidEntersIds(String uid, String... entersIds) {
List<String> entersIdList = Arrays.asList(entersIds); List<String> entersIdList = Arrays.asList(entersIds);
return this.getEntersVoByUid(uid).stream().filter(r -> entersIdList.contains(r.getEntersId())).collect(Collectors.toList()); List<AdamEntersVo> vos = this.getEntersVoByUid(uid);
return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> entersIdList.contains(r.getEntersId())).collect(Collectors.toList());
} }
public void delEntersVoByUid(String uid) { public void delEntersVoByUid(String uid) {
...@@ -327,14 +326,12 @@ public class AdamRdmService { ...@@ -327,14 +326,12 @@ public class AdamRdmService {
} }
public AdamAddressesVo getAddressesVoByUidAddressesId(List<AdamAddressesVo> vos, String addressesId) { public AdamAddressesVo getAddressesVoByUidAddressesId(List<AdamAddressesVo> vos, String addressesId) {
if (!CollectionUtils.isEmpty(vos)) { return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getAddressesId().equals(addressesId)).findAny().orElse(null);
return vos.stream().filter(r -> r.getAddressesId().equals(addressesId)).findAny().orElse(null);
}
return null;
} }
public AdamAddressesVo getAddressesVoByUidAddressesId(String uid, String addressesId) { public AdamAddressesVo getAddressesVoByUidAddressesId(String uid, String addressesId) {
return this.getAddressesVoByUid(uid).stream().filter(r -> r.getAddressesId().equals(addressesId)).findAny().orElse(null); List<AdamAddressesVo> vos = this.getAddressesVoByUid(uid);
return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getAddressesId().equals(addressesId)).findAny().orElse(null);
} }
public void delAddressesVoByUid(String uid) { public void delAddressesVoByUid(String uid) {
...@@ -453,15 +450,7 @@ public class AdamRdmService { ...@@ -453,15 +450,7 @@ public class AdamRdmService {
public AdamMemberPriceVo getMemberPriceVoByPriceId(String memberId, String memberPriceId) { public AdamMemberPriceVo getMemberPriceVoByPriceId(String memberId, String memberPriceId) {
List<AdamMemberPriceVo> vos = this.getMemberPriceVoByMemberId(memberId); List<AdamMemberPriceVo> vos = this.getMemberPriceVoByMemberId(memberId);
if (!CollectionUtils.isEmpty(vos)) { return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getMemberPriceId().equals(memberPriceId)).findAny().orElse(null);
// for (AdamMemberPriceVo r : vos) {
// if (memberPriceId.equals(r.getMemberPriceId())) {
// return r;
// }
// }
return vos.stream().filter(r -> r.getMemberPriceId().equals(memberPriceId)).findAny().orElse(null);
}
return null;
} }
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | <MEMBER_ID, List<AdamMemberRightsVo>> */ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | <MEMBER_ID, List<AdamMemberRightsVo>> */
...@@ -530,10 +519,7 @@ public class AdamRdmService { ...@@ -530,10 +519,7 @@ public class AdamRdmService {
} }
public AdamMemberOrderVo getMemberOrderVoByOrderNo(List<AdamMemberOrderVo> vos, String orderNo) { public AdamMemberOrderVo getMemberOrderVoByOrderNo(List<AdamMemberOrderVo> vos, String orderNo) {
if (!CollectionUtils.isEmpty(vos)) { return CollectionUtils.isEmpty(vos) ? null : vos.stream().filter(r -> r.getOrderNo().equals(orderNo)).findAny().orElse(null);
return vos.stream().filter(r -> r.getOrderNo().equals(orderNo)).findAny().orElse(null);
}
return null;
} }
public void delMemberOrderVoByUid(String uid) { public void delMemberOrderVoByUid(String uid) {
......
...@@ -48,7 +48,11 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService { ...@@ -48,7 +48,11 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
@Override @Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) // @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(AdamMemberOrderParam param) { public ResponseDto<AdamMemberOrderResult> buyMemberOrMemberCode(String currentUid, AdamMemberOrderParam param) {
AdamAddressesVo addressesVo = adamRdmService.getAddressesVoByUidAddressesId(currentUid, param.getAddressId());
if (null == addressesVo) {
return ResponseDto.failure(ErrorMapping.get("10106"));
}
AdamMemberVo memberVo = adamRdmService.getMemberVoByMemberId(param.getMemberId()); AdamMemberVo memberVo = adamRdmService.getMemberVoByMemberId(param.getMemberId());
if (null == memberVo) { if (null == memberVo) {
return ResponseDto.failure(ErrorMapping.get("10201")); return ResponseDto.failure(ErrorMapping.get("10201"));
...@@ -124,13 +128,24 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService { ...@@ -124,13 +128,24 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
memberOrderVo.setDeviceFrom(param.getDeviceFrom()); memberOrderVo.setDeviceFrom(param.getDeviceFrom());
memberOrderVo.setPayType(param.getPayType()); memberOrderVo.setPayType(param.getPayType());
memberOrderVo.setState(0);// 0-待支付 memberOrderVo.setState(0);// 0-待支付
memberOrderVo.setUid(CurrentUtil.getCurrentUid()); memberOrderVo.setUid(currentUid);
memberOrderVo.setPrice(param.getPrice()); memberOrderVo.setPrice(param.getPrice());
memberOrderVo.setClientIp(clientIp); memberOrderVo.setClientIp(clientIp);
String headerCliVersion = CurrentUtil.getHeaderCliVersion(), headerCliSource = CurrentUtil.getHeaderCliSource(); String headerCliVersion = CurrentUtil.getHeaderCliVersion(), headerCliSource = CurrentUtil.getHeaderCliSource();
memberOrderVo.setSource(null == headerCliSource ? "" : headerCliSource); memberOrderVo.setSource(null == headerCliSource ? "" : headerCliSource);
memberOrderVo.setVersion(null == headerCliVersion ? "" : headerCliVersion); memberOrderVo.setVersion(null == headerCliVersion ? "" : headerCliVersion);
AdamMemberOrderExtVo memberOrderExtVo = AdamMemberOrderExtVo.getNew();
memberOrderExtVo.setOrderNo(orderNo);
memberOrderExtVo.setExpressStatus(-1);
memberOrderExtVo.setExpressReceiver(addressesVo.getName());
memberOrderExtVo.setExpressPhone(addressesVo.getPhone());
memberOrderExtVo.setExpressAddress(addressesVo.getProvince() + addressesVo.getCity() + addressesVo.getCounty() + addressesVo.getAddress());
memberOrderVo.setExtendVo(memberOrderExtVo);
if (!adamRdmService.setShotMemberOrderVoByOrderNo(orderNo, memberOrderVo)) { if (!adamRdmService.setShotMemberOrderVoByOrderNo(orderNo, memberOrderVo)) {
log.warn("###购买会员创建订单失败[memberOrderVo:{}]", JsonUtils.toJson(memberOrderVo)); log.warn("###购买会员创建订单失败[memberOrderVo:{}]", JsonUtils.toJson(memberOrderVo));
return ResponseDto.failure(ErrorMapping.get("10210")); return ResponseDto.failure(ErrorMapping.get("10210"));
...@@ -201,7 +216,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService { ...@@ -201,7 +216,8 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
BeanUtils.copyProperties(shotMemberOrderVo, handleMemberOrderVo); BeanUtils.copyProperties(shotMemberOrderVo, handleMemberOrderVo);
LinkedList<String> toMqSqls = CollectionUtil.linkedListString(); LinkedList<String> toMqSqls = CollectionUtil.linkedListString();
LinkedList<Object[]> operationObjs = CollectionUtil.linkedListObjectArr(), LinkedList<Object[]> operationObjs = CollectionUtil.linkedListObjectArr(),
updateMemberOrderObjs = CollectionUtil.linkedListObjectArr(); updateMemberOrderObjs = CollectionUtil.linkedListObjectArr(),
initMemberOrderExtObjs = CollectionUtil.linkedListObjectArr();
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
if (0 == handleMemberOrderVo.getMode()) {// 购买会员回调 if (0 == handleMemberOrderVo.getMode()) {// 购买会员回调
existUserMemberVo = adamRdmService.getUserMemberVoByUid(handleMemberOrderVo.getUid()); existUserMemberVo = adamRdmService.getUserMemberVoByUid(handleMemberOrderVo.getUid());
...@@ -293,12 +309,28 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService { ...@@ -293,12 +309,28 @@ public class AdamMemberOrderServiceImpl implements IAdamMemberOrderService {
handleMemberOrderVo.getDeviceFrom(), handleMemberOrderVo.getPayType(), handleMemberOrderVo.getPayNo(), handleMemberOrderVo.getPaymentAt(), handleMemberOrderVo.getDeviceFrom(), handleMemberOrderVo.getPayType(), handleMemberOrderVo.getPayNo(), handleMemberOrderVo.getPaymentAt(),
handleMemberOrderVo.getCreatedAt(), handleMemberOrderVo.getClientIp(), handleMemberOrderVo.getSource(), handleMemberOrderVo.getVersion() handleMemberOrderVo.getCreatedAt(), handleMemberOrderVo.getClientIp(), handleMemberOrderVo.getSource(), handleMemberOrderVo.getVersion()
}); });
s = System.currentTimeMillis();
queueUtils.sendMsgByRedis( AdamMemberOrderExtVo memberOrderExtVo = handleMemberOrderVo.getExtendVo();
MQConst.AdamQueue.SQL_UMEMBER.getKey(), if (null != memberOrderExtVo) {
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs) toMqSqls.add(SqlMapping.get("adam_member_order_ext.add"));
); initMemberOrderExtObjs.add(new Object[]{
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s); memberOrderExtVo.getOrderNo(), memberOrderExtVo.getExpressStatus(), memberOrderExtVo.getExpressReceiver(),
memberOrderExtVo.getExpressPhone(), memberOrderExtVo.getExpressAddress()
});
s = System.currentTimeMillis();
queueUtils.sendMsgByRedis(
MQConst.AdamQueue.SQL_UMEMBER.getKey(),
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs, initMemberOrderExtObjs)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
} else {
s = System.currentTimeMillis();
queueUtils.sendMsgByRedis(
MQConst.AdamQueue.SQL_UMEMBER.getKey(),
SqlMapping.gets(toMqSqls, operationObjs, updateMemberOrderObjs)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
return ResponseDto.success(); return ResponseDto.success();
} catch (Exception e) { } catch (Exception e) {
......
...@@ -3,12 +3,11 @@ ...@@ -3,12 +3,11 @@
40003=登录已过期 40003=登录已过期
# ------------------------ 4开头错误码作系统保留 # ------------------------ 4开头错误码作系统保留
10000=请求频繁,稍后再试 10000=操作过于频繁,请稍后再试
10001=授权失败
10001=授权失败 10001=授权失败
10002=验证码发送失败 10002=验证码发送失败
10003=发送过于频繁,请稍后再试 10003=请输入正确手机号
10004=验证码错误,请重新输入 10004=请输入正确验证码
10005=手机号获取失败,请更换登录方式 10005=手机号获取失败,请更换登录方式
10006=第三方账号未注册 10006=第三方账号未注册
10007=该第三方账号已经被其他用户绑定 10007=该第三方账号已经被其他用户绑定
...@@ -17,7 +16,7 @@ ...@@ -17,7 +16,7 @@
10010=该手机号已被其它账号绑定 10010=该手机号已被其它账号绑定
10011=性别标签无效 10011=性别标签无效
10012=音乐风格标签无效 10012=音乐风格标签无效
10013= 10013=账号与密码不匹配
10014= 10014=
10015=入场人ID不能为空 10015=入场人ID不能为空
10016=收货地址ID不能为空 10016=收货地址ID不能为空
......
...@@ -48,6 +48,9 @@ adam_member_code.exchange=UPDATE adam_member_code SET `state`=?, updated_at=?, u ...@@ -48,6 +48,9 @@ adam_member_code.exchange=UPDATE adam_member_code SET `state`=?, updated_at=?, u
adam_member_order.add=INSERT INTO adam_member_order (order_no, `uid`, `mode`, price, price_paid, member_name, member_id, member_price_id, `days`, `state`, member_no, birthday, device_from, pay_type, pay_no, payment_at, created_at, client_ip, `source`, version) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) adam_member_order.add=INSERT INTO adam_member_order (order_no, `uid`, `mode`, price, price_paid, member_name, member_id, member_price_id, `days`, `state`, member_no, birthday, device_from, pay_type, pay_no, payment_at, created_at, client_ip, `source`, version) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
adam_member_order.update=UPDATE adam_member_order SET `state`=?, member_no=?, payment_at=?, updated_at=? WHERE order_no=? adam_member_order.update=UPDATE adam_member_order SET `state`=?, member_no=?, payment_at=?, updated_at=? WHERE order_no=?
# ----------------------------------------------------
adam_member_order_ext.add=INSERT INTO adam_member_order_ext (order_no, express_status, express_receiver, express_phone, express_address) values (?,?,?,?,?)
# ---------------------------------------------------- # ----------------------------------------------------
adam_user_member.add=INSERT INTO adam_user_member (`uid`, member_id, member_no, `state`, expiry_at, created_at) VALUES (?,?,?,?,?,?) adam_user_member.add=INSERT INTO adam_user_member (`uid`, member_id, member_no, `state`, expiry_at, created_at) VALUES (?,?,?,?,?,?)
adam_user_member.update=UPDATE adam_user_member SET `state`=?, expiry_at=?, updated_at=? WHERE `uid`=? adam_user_member.update=UPDATE adam_user_member SET `state`=?, expiry_at=?, updated_at=? WHERE `uid`=?
......
...@@ -39,12 +39,12 @@ public class KylinOrderTicketsController { ...@@ -39,12 +39,12 @@ public class KylinOrderTicketsController {
@Autowired @Autowired
IKylinOrderTicketsOrderService orderTicketsOrderService; IKylinOrderTicketsOrderService orderTicketsOrderService;
// @PostMapping("pre") @PostMapping("fc7bce6d6c2213b866f76493f92224b7")
// @ApiOperation("下单") @ApiOperation("fc7bce6d6c2213b866f76493f92224b7")
// @ApiResponse(code = 200, message = "接口返回对象参数") @ApiResponse(code = 200, message = "接口返回对象参数")
// public ResponseDto<PayInnerResultVo> checkCanOrder(@RequestBody @Valid PayOrderParam payOrderParam) { public ResponseDto<PayInnerResultVo> checkCanOrder(@RequestBody @Valid PayOrderParam payOrderParam) {
// return orderTicketsOrderService.checkCanOrder(payOrderParam); return orderTicketsOrderService.checkCanOrder(payOrderParam);
// } }
@DecryptAndVerify(decryptedClass = PayOrderParam.class) @DecryptAndVerify(decryptedClass = PayOrderParam.class)
@PostMapping("pre") @PostMapping("pre")
......
...@@ -487,51 +487,62 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -487,51 +487,62 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
log.debug("redis 修改限购 -> time:" + (currentTime) + "毫秒"); log.debug("redis 修改限购 -> time:" + (currentTime) + "毫秒");
} }
} }
// 调用支付
String time1 = DateUtil.format(DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketData.getUseStart()), DateUtil.Formatter.MM_dd_zh);
String time2 = DateUtil.format(DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketData.getUseEnd()), DateUtil.Formatter.MM_dd_zh);
String useTime = ticketData.getType() == 2 ? time1 + "~" + time2 : time2;
LinkedMultiValueMap<String, String> httpData = ObjectUtil.cloneLinkedMultiValueMapStringAndString();
httpData.add("type", "TICKET");
httpData.add("price", orderTickets.getPriceActual().toString());
httpData.add("name", useTime + ticketData.getTitle() + "-" + performanceData.getTitle());
httpData.add("detail", performanceData.getTitle() + "-" + ticketData.getTitle() + "-" + useTime);
httpData.add("orderCode", orderTickets.getOrderCode());
httpData.add("clientIp", CurrentUtil.getCliIpAddr());
httpData.add("notifyUrl", synUrl);
httpData.add("createDate", orderTickets.getCreatedAt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
httpData.add("expireTime", (orderTickets.getPayCountdownMinute()) + "");
httpData.add("payType", payOrderParam.getPayType());
httpData.add("deviceFrom", payOrderParam.getDeviceFrom());
if (payOrderParam.getDeviceFrom().equals("js") || payOrderParam.getDeviceFrom().equals("applet")) {
httpData.add("openId", payOrderParam.getOpenId());
}
if (payOrderParam.getPayType().equals("alipay") && payOrderParam.getDeviceFrom().equals("wap")) { //是否免费
httpData.add("showUrl", payOrderParam.getShowUrl() + orderTicketId); boolean isFree=false;
httpData.add("returnUrl", payOrderParam.getReturnUrl() + orderTicketId); PayResultVo payResultVo;
if(orderTickets.getPriceActual().compareTo(BigDecimal.valueOf(0))>0){
// 调用支付
String time1 = DateUtil.format(DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketData.getUseStart()), DateUtil.Formatter.MM_dd_zh);
String time2 = DateUtil.format(DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketData.getUseEnd()), DateUtil.Formatter.MM_dd_zh);
String useTime = ticketData.getType() == 2 ? time1 + "~" + time2 : time2;
LinkedMultiValueMap<String, String> httpData = ObjectUtil.cloneLinkedMultiValueMapStringAndString();
httpData.add("type", "TICKET");
httpData.add("price", orderTickets.getPriceActual().toString());
httpData.add("name", useTime + ticketData.getTitle() + "-" + performanceData.getTitle());
httpData.add("detail", performanceData.getTitle() + "-" + ticketData.getTitle() + "-" + useTime);
httpData.add("orderCode", orderTickets.getOrderCode());
httpData.add("clientIp", CurrentUtil.getCliIpAddr());
httpData.add("notifyUrl", synUrl);
httpData.add("createDate", orderTickets.getCreatedAt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
httpData.add("expireTime", (orderTickets.getPayCountdownMinute()) + "");
httpData.add("payType", payOrderParam.getPayType());
httpData.add("deviceFrom", payOrderParam.getDeviceFrom());
if (payOrderParam.getDeviceFrom().equals("js") || payOrderParam.getDeviceFrom().equals("applet")) {
httpData.add("openId", payOrderParam.getOpenId());
}
if (payOrderParam.getPayType().equals("alipay") && payOrderParam.getDeviceFrom().equals("wap")) {
httpData.add("showUrl", payOrderParam.getShowUrl() + orderTicketId);
httpData.add("returnUrl", payOrderParam.getReturnUrl() + orderTicketId);
}
currentTime = System.currentTimeMillis();
String returnData = HttpUtil.post(payUrl, httpData);
currentTime = System.currentTimeMillis() - currentTime;
log.info("调用 DRAGON 支付 -> time:" + (currentTime) + "毫秒");
log.info("调用 DRAGON 结果 = " + returnData);
payResultVo = JsonUtils.fromJson(returnData, PayResultVo.class);
payResultVo.getData().setOrderId(orderTicketId);
payResultVo.getData().setPrice(orderTickets.getPriceActual());
orderTickets.setPayCode(payResultVo.getData().getCode());
if (payOrderParam.getPayType().equals("alipay") && payOrderParam.getDeviceFrom().equals("wap")) {
payResultVo.getData().setShowUrl(payOrderParam.getShowUrl() + orderTicketId);
payResultVo.getData().setReturnUrl(payOrderParam.getReturnUrl() + orderTicketId);
}
}else{
isFree=true;
orderTickets.setPayType("FREE");
orderTickets.setPayCode("FREE_PAY_CODE");
payResultVo = PayResultVo.getNew();
PayInnerResultVo payInnerResultVo = PayInnerResultVo.getNew();
payInnerResultVo.setPrice(BigDecimal.valueOf(0));
payInnerResultVo.setOrderId(orderTickets.getOrderTicketsId());
payResultVo.setData(payInnerResultVo);
} }
currentTime = System.currentTimeMillis();
String returnData = HttpUtil.post(payUrl, httpData);
currentTime = System.currentTimeMillis() - currentTime;
log.info("调用 DRAGON 支付 -> time:" + (currentTime) + "毫秒");
log.info("调用 DRAGON 结果 = " + returnData);
PayResultVo payResultVo = JsonUtils.fromJson(returnData, PayResultVo.class);
payResultVo.getData().setOrderId(orderTicketId);
payResultVo.getData().setPrice(orderTickets.getPriceActual());
orderTickets.setPayCode(payResultVo.getData().getCode());
sqls.add(SqlMapping.get("kylin_order_ticket.add")); sqls.add(SqlMapping.get("kylin_order_ticket.add"));
LinkedList<Object[]> sqlsDataA = ObjectUtil.cloneLinkedListObj(); LinkedList<Object[]> sqlsDataA = ObjectUtil.cloneLinkedListObj();
sqlsDataA.add(orderTickets.getAddObject()); sqlsDataA.add(orderTickets.getAddObject());
if (payOrderParam.getPayType().equals("alipay") && payOrderParam.getDeviceFrom().equals("wap")) {
payResultVo.getData().setShowUrl(payOrderParam.getShowUrl() + orderTicketId);
payResultVo.getData().setReturnUrl(payOrderParam.getReturnUrl() + orderTicketId);
}
// 生成vo // 生成vo
KylinOrderTicketVo orderTicketVo = KylinOrderTicketVo.getNew(); KylinOrderTicketVo orderTicketVo = KylinOrderTicketVo.getNew();
orderTicketVo.setOrderTicket(orderTickets); orderTicketVo.setOrderTicket(orderTickets);
...@@ -562,7 +573,20 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ ...@@ -562,7 +573,20 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
currentTime = System.currentTimeMillis() - currentTime; currentTime = System.currentTimeMillis() - currentTime;
log.debug("MQ 发送 -> time:" + (currentTime) + "毫秒"); log.debug("MQ 发送 -> time:" + (currentTime) + "毫秒");
log.info(UserPathDto.setData("下单(唤起支付)", payOrderParam, payResultVo.getData())); log.info(UserPathDto.setData("下单(唤起支付)", payOrderParam, payResultVo.getData()));
return ResponseDto.success(payResultVo.getData()); if(isFree){
SyncOrderParam syncOrderParam = SyncOrderParam.getNew();
syncOrderParam.setOrderCode(orderTickets.getOrderCode());
syncOrderParam.setPaymentAt(DateUtil.format(LocalDateTime.now(),DateUtil.Formatter.yyyyMMddHHmmss));
syncOrderParam.setCode(orderTickets.getPayCode());
syncOrderParam.setPrice(orderTickets.getPrice());
syncOrderParam.setPaymentId("FREE_PAYMENT_ID");
syncOrderParam.setPaymentType(orderTickets.getPaymentType());
syncOrderParam.setStatus(1);
syncOrder(syncOrderParam);
return ResponseDto.success(payResultVo.getData());
}else {
return ResponseDto.success(payResultVo.getData());
}
} }
@Override @Override
......
...@@ -14,7 +14,7 @@ import java.util.List; ...@@ -14,7 +14,7 @@ import java.util.List;
public abstract class DataMigrationProcessorService { public abstract class DataMigrationProcessorService {
public static final String MEMBER_NAME = "摩登天空会员"; public static final String MEMBER_NAME = "摩登天空会员";
public static final String MEMBER_ID = "1"; public static final String MEMBER_ID = "1";
public static final String DG_MBL = "'13753596360','17701223310','18518013286','18548596019','15901093014','17382319723','13631444097','13671737873','15116988001','18611238122','18618244266','15810953641','18844355048','15600619088','15910772493','18511002336','13552662400','15011554195'"; public static final String DG_MBL = "'18634375237','18800114459','13724286255','13753596360','17701223310','18518013286','18548596019','15901093014','17382319723','13631444097','13671737873','15116988001','18611238122','18618244266','15810953641','18844355048','15600619088','15910772493','18511002336','13552662400','15011554195'";
public static final String DG_UID = "'2026628','544327','1997335','773650','809406','1167451','423063','677171','2199391','1837426','2109356','2322832','2337671','2334986','522474','2147432','2337752','2337199'"; public static final String DG_UID = "'2026628','544327','1997335','773650','809406','1167451','423063','677171','2199391','1837426','2109356','2322832','2337671','2334986','522474','2147432','2337752','2337199'";
public static List<String> reUidList = new ArrayList<>(); public static List<String> reUidList = new ArrayList<>();
static { static {
......
...@@ -60,8 +60,8 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService { ...@@ -60,8 +60,8 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService {
if (null != dg) { if (null != dg) {
sqlCount = sqlCount + " and uid%" + dG + "=" + dg; sqlCount = sqlCount + " and uid%" + dG + "=" + dg;
} }
String field = "uid,mobile,username,sex,birthday,area,sign,face_url,back_url,created_at,updated_at,is_complete,rong_cloud_token,rong_cloud_tag"; String field = "uid,mobile,username,sex,birthday,area,sign,face_url,back_url,created_at,updated_at,is_complete,rong_cloud_token,rong_cloud_tag,password";
// 1-uid,2-mobile,3-username,4-sex,5-birthday,6-area,7-sign,8-face_url,9-back_url,10-created_at,11-updated_at,12-is_complete,13-rong_cloud_token,14-rong_cloud_tag // 1-uid,2-mobile,3-username,4-sex,5-birthday,6-area,7-sign,8-face_url,9-back_url,10-created_at,11-updated_at,12-is_complete,13-rong_cloud_token,14-rong_cloud_tag,15-password
String sql = sqlCount.replace("count(1)", field); String sql = sqlCount.replace("count(1)", field);
boolean smFlg = "1".equals(flg); boolean smFlg = "1".equals(flg);
if (smFlg) { if (smFlg) {
...@@ -103,6 +103,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService { ...@@ -103,6 +103,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService {
user.setUid(uid); user.setUid(uid);
String mobile = row.getString(2); String mobile = row.getString(2);
user.setMobile(mobile); user.setMobile(mobile);
user.setPasswd(row.getString(15));
LocalDateTime createdAt = row.getLocalDateTime(10), updatedAt = row.getLocalDateTime(11); LocalDateTime createdAt = row.getLocalDateTime(10), updatedAt = row.getLocalDateTime(11);
user.setIsComplete(row.getInt(12)); user.setIsComplete(row.getInt(12));
user.setCreatedAt(createdAt); user.setCreatedAt(createdAt);
...@@ -125,6 +126,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService { ...@@ -125,6 +126,7 @@ public class DMUserInformationProcessor extends DataMigrationProcessorService {
AdamUserInfoVo vo = AdamUserInfoVo.getNew(); AdamUserInfoVo vo = AdamUserInfoVo.getNew();
vo.setUid(user.getUid()); vo.setUid(user.getUid());
vo.setMobile(user.getMobile()); vo.setMobile(user.getMobile());
vo.setPasswd(user.getPasswd());
vo.setNickname(userInfo.getNickname()); vo.setNickname(userInfo.getNickname());
vo.setState(user.getState()); vo.setState(user.getState());
vo.setSex(sex); vo.setSex(sex);
......
...@@ -86,7 +86,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser ...@@ -86,7 +86,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser
public ResponseDto<String> create(String merchantId, String name, String pwd, String mobile) { public ResponseDto<String> create(String merchantId, String name, String pwd, String mobile) {
try { try {
int count = checkUserMapper.selectCount(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile)); int count = checkUserMapper.selectCount(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile).eq(KylinCheckUser::getStatus,1));
if(count>0){ if(count>0){
return ResponseDto.failure("手机号已存在"); return ResponseDto.failure("手机号已存在");
} }
...@@ -114,7 +114,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser ...@@ -114,7 +114,7 @@ public class KylinCheckUserPartnerServiceImpl extends ServiceImpl<KylinCheckUser
@Override @Override
public ResponseDto<String> change(String merchantId, String checkUserId, String name, String pwd, String mobile) { public ResponseDto<String> change(String merchantId, String checkUserId, String name, String pwd, String mobile) {
try { try {
KylinCheckUser kylinCheckUser = checkUserMapper.selectOne(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile)); KylinCheckUser kylinCheckUser = checkUserMapper.selectOne(Wrappers.lambdaQuery(KylinCheckUser.class).eq(KylinCheckUser::getMobile,mobile).eq(KylinCheckUser::getStatus,1));
if(kylinCheckUser!=null && !kylinCheckUser.getCheckUserId().equals(checkUserId)){ if(kylinCheckUser!=null && !kylinCheckUser.getCheckUserId().equals(checkUserId)){
return ResponseDto.failure("手机号已存在"); return ResponseDto.failure("手机号已存在");
} }
......
...@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ErrorMapping; ...@@ -10,6 +10,7 @@ import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.UserPathDto; import com.liquidnet.service.base.UserPathDto;
import com.liquidnet.service.kylin.dto.param.CreateTicketTimesParam; import com.liquidnet.service.kylin.dto.param.CreateTicketTimesParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketTimesPartnerVo;
import com.liquidnet.service.kylin.entity.KylinPerformanceStatus; import com.liquidnet.service.kylin.entity.KylinPerformanceStatus;
import com.liquidnet.service.kylin.entity.KylinTicketTimeRelation; import com.liquidnet.service.kylin.entity.KylinTicketTimeRelation;
...@@ -234,6 +235,16 @@ public class KylinTicketTimesPartnerServiceImpl extends ServiceImpl<KylinTicketT ...@@ -234,6 +235,16 @@ public class KylinTicketTimesPartnerServiceImpl extends ServiceImpl<KylinTicketT
object, object,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER) new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
); );
HashMap<String,Object> ticketMap = new HashMap<>();
ticketMap.put("useEnd",kylinTicketTimesPartnerVo.getUseEnd());
ticketMap.put("useStart",kylinTicketTimesPartnerVo.getUseStart());
BasicDBObject ticketObject = ObjectUtil.cloneBasicDBObject().append("$set", ticketMap);
mongoTemplate.getCollection(KylinTicketPartnerVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("timesId").is(createTicketTimesParam.getTicketTimesId())).getQueryObject(),
ticketObject
);
log.info(UserPathDto.setPartnerData("0","changeTimes", createTicketTimesParam,JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class))); log.info(UserPathDto.setPartnerData("0","changeTimes", createTicketTimesParam,JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class)));
return ResponseDto.success(JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class)); return ResponseDto.success(JsonUtils.fromJson(doc.toJson(), KylinTicketTimesPartnerVo.class));
} catch (Exception e) { } catch (Exception e) {
......
...@@ -423,6 +423,17 @@ public class PerformanceVoTask { ...@@ -423,6 +423,17 @@ public class PerformanceVoTask {
for (int i = 0; i < misVo.getTicketTimes().size(); i++) { for (int i = 0; i < misVo.getTicketTimes().size(); i++) {
TicketTimesTicketCreatePartnerVo times = misVo.getTicketTimes().get(i); TicketTimesTicketCreatePartnerVo times = misVo.getTicketTimes().get(i);
KylinTicketTimesVo timesVo = mongoVo.getTicketTimeList().get(i); KylinTicketTimesVo timesVo = mongoVo.getTicketTimeList().get(i);
if(!times.getUseStart().equals(timesVo.getUseStart())){
log.debug("NEED CHANGE TIMES USE_START");
return true;
}
if(!times.getUseEnd().equals(timesVo.getUseEnd())){
log.debug("NEED CHANGE TIMES USE_END");
return true;
}
boolean exists2 = mongoTemplate.exists(Query.query(Criteria.where("status").is(-2).and("timesId").is(times.getTicketTimesId())), KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName()); boolean exists2 = mongoTemplate.exists(Query.query(Criteria.where("status").is(-2).and("timesId").is(times.getTicketTimesId())), KylinTicketPartnerVo.class, KylinTicketPartnerVo.class.getSimpleName());
if (exists2) { if (exists2) {
log.debug("NEED CHANGE NEW TICKET"); log.debug("NEED CHANGE NEW TICKET");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment