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

Commit 79641e55 authored by jiangxiulong's avatar jiangxiulong

refund

parent 8d2e2a2a
......@@ -20,19 +20,18 @@ public class KylinTableStatusConst {
public static final Integer STATUS_TARGET_TYPE = 1; // 演出
// 退款
public static final Integer ORDER_REFUND_STATUS_APPLY = 0; // 客服(待审核),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_APPROVED = 1; // 客服(已通过),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_CANCEL = 2; // 客服(已取消),用户(取消退款,恢复正常订单)
public static final Integer ORDER_REFUND_STATUS_REFUNDING = 3; // 客服(正在退款),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_REFUNDED = 4; // 客服(退款成功),用户(完成退款,部分退款为正常订单,全额退款为退款订单)
public static final Integer ORDER_REFUND_STATUS_REJECT = 5; // 客服(被审核员驳回),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_ERROR = 6; // 客服(退款失败),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_UNFILLED = 7; // 客服(等待退款),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_REFUSE = 8; // 客服(被执行员拒绝),用户(正在退款)
public static final Integer ORDER_REFUND_STATUS_APPLY = 0; // 请求退款
public static final Integer ORDER_REFUND_STATUS_APPROVED = 1; // 一审同意 审核通过
public static final Integer ORDER_REFUND_STATUS_CANCEL = 2; // 取消退款
public static final Integer ORDER_REFUND_STATUS_REFUNDING = 3; // 正在退款
public static final Integer ORDER_REFUND_STATUS_REFUNDED = 4; // 完成退款
public static final Integer ORDER_REFUND_STATUS_REJECT = 5; // 一审驳回退款
public static final Integer ORDER_REFUND_STATUS_ERROR = 6; // 退款失败
public static final Integer ORDER_REFUND_STATUS_UNFILLED = 7; // 二审同意 等待退款
public static final Integer ORDER_REFUND_STATUS_REFUSE = 8; // 二审拒绝
public static final Integer ORDER_REFUND_TYPE_APPLY = 0; // 人工申请类型的退款,可以取消退款,退款完成需返还库存
public static final Integer ORDER_REFUND_TYPE_AUTO = 1; // 自动申请类型的退款,无法取消退款,退款完成不返还库存
/**
* 订单状态表状态
*/
......
package com.liquidnet.service.kylin.controller.admin;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.service.impl.admin.KylinOrderRefundsServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
......@@ -12,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 后台单订单退款 服务实现类
......@@ -54,7 +57,126 @@ public class KylinOrderRefundAdminController {
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
@PostMapping("cancel")
@ApiOperation("取消退款")
@ApiImplicitParams({
@ApiImplicitParam(type = "body", dataType = "Lsit", name = "orderRefundsIdList", value = "退款id 支持批量", required = true)
})
public ResponseDto<Object> refundApply(
@RequestBody List orderRefundsIdList
) {
try {
Boolean res = kylinOrderRefundsServiceImpl.refundCancel(orderRefundsIdList);
if (res) {
return ResponseDto.success();
} else {
return ResponseDto.failure("取消退款失败");
}
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
@PostMapping("reapply")
@ApiOperation("再次提交审核")
@ApiImplicitParams({
@ApiImplicitParam(type = "body", dataType = "Lsit", name = "orderRefundsIdList", value = "退款id 支持批量", required = true)
})
public ResponseDto<Object> refundReapply(
@RequestBody List orderRefundsIdList
) {
try {
Boolean res = kylinOrderRefundsServiceImpl.refundReapply(orderRefundsIdList);
if (res) {
return ResponseDto.success();
} else {
return ResponseDto.failure("再次申请退款失败");
}
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
@PostMapping("review")
@ApiOperation("一审运营 审核/驳回")
@ApiImplicitParams({
@ApiImplicitParam(type = "body", dataType = "Lsit", name = "orderRefundsIdList", value = "退款id 支持批量", required = true),
@ApiImplicitParam(type = "body", dataType = "Integer", name = "status", value = "批量id", required = true),
@ApiImplicitParam(type = "body", dataType = "String", name = "reject", value = "备注", required = true)
})
public ResponseDto<Object> refundReview(
@RequestBody List orderRefundsIdList,
@RequestBody Integer status,
@RequestBody String reject
) {
try {
Boolean res = false;
if (status == KylinTableStatusConst.ORDER_REFUND_STATUS_APPROVED) { // 通过
res = kylinOrderRefundsServiceImpl.refundApproved(orderRefundsIdList, reject);
}
if (status == KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT) { // 驳回
res = kylinOrderRefundsServiceImpl.refundReject(orderRefundsIdList, reject);
}
if (res) {
return ResponseDto.success();
} else {
return ResponseDto.failure("审核退款失败");
}
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
@PostMapping("execute")
@ApiOperation("二审财务 审核(执行退款)/驳回")
@ApiImplicitParams({
@ApiImplicitParam(type = "body", dataType = "Lsit", name = "orderRefundsIdList", value = "退款id 支持批量", required = true),
@ApiImplicitParam(type = "body", dataType = "Integer", name = "status", value = "批量id", required = true),
@ApiImplicitParam(type = "body", dataType = "String", name = "refuse", value = "备注", required = true)
})
public ResponseDto<Object> refundExecute(
@RequestBody List orderRefundsIdList,
@RequestBody Integer status,
@RequestBody String refuse
) {
try {
Boolean res = false;
if (status == KylinTableStatusConst.ORDER_REFUND_STATUS_UNFILLED) { // 通过
res = kylinOrderRefundsServiceImpl.refundUnfilled(orderRefundsIdList, refuse);
}
if (status == KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE) { // 驳回
res = kylinOrderRefundsServiceImpl.refundRefuse(orderRefundsIdList, refuse);
}
if (res) {
return ResponseDto.success();
} else {
return ResponseDto.failure("审核退款失败");
}
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
@PostMapping("refundCompleted")
@ApiOperation("主动关闭订单,完成退款")
@ApiImplicitParams({
@ApiImplicitParam(type = "body", dataType = "Integer", name = "orderRefundsId", value = "退款id", required = true)
})
public ResponseDto<Object> refundCompleted(
@RequestBody Integer orderRefundsId
) {
try {
Boolean res = kylinOrderRefundsServiceImpl.refundCompleted(orderRefundsId);
if (res) {
return ResponseDto.success();
} else {
return ResponseDto.failure("关闭订单失败");
}
} catch (Exception e) {
return ResponseDto.failure(e.getMessage());
}
}
}
package com.liquidnet.service.kylin.service.impl.admin;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.fasterxml.jackson.databind.JsonNode;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.entity.KylinOrderRefunds;
import com.liquidnet.service.kylin.entity.KylinOrderTickets;
import com.liquidnet.service.kylin.mapper.KylinOrderRefundsMapper;
......@@ -13,6 +13,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 订单退款表 服务实现类
......@@ -29,6 +31,9 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
@Autowired
private KylinRefundsStatusServiceImpl kylinRefundsStatusServiceImpl;
@Autowired
private KylinOrderRefundsMapper kylinOrderRefundsMapper;
public Boolean refundApply(String orderTicketsId, String reason, String orderRefundBatchesId, String refundData) throws Exception {
int count = 0;
count = kylinOrderTicketsMapper.selectCount(
......@@ -45,4 +50,128 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
return false;
}
}
public Boolean refundCancel(List orderRefundsIdList) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_APPLY, KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需未审核、已驳回、已回绝,非自动退款订单");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundCancel(refundList);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundReapply(List orderRefundsIdList) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需已驳回、已回绝");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundReapply(refundList);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundApproved(List orderRefundsIdList, String reject) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_APPLY, KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需未审核、已驳回、已回绝,请检查订单状态");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundApproved(refundList, reject);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundReject(List orderRefundsIdList, String reject) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_APPLY, KylinTableStatusConst.ORDER_REFUND_STATUS_APPROVED, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需未审核、已审核、已回绝,请检查订单状态");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundReject(refundList, reject);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundUnfilled(List orderRefundsIdList, String refuse) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_APPROVED, KylinTableStatusConst.ORDER_REFUND_STATUS_ERROR};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需已审核、退款失败,请检查订单状态");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundUnfilled(refundList, refuse);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundRefuse(List orderRefundsIdList, String refuse) throws Exception {
Integer[] orderRefundStatus = {KylinTableStatusConst.ORDER_REFUND_STATUS_APPROVED, KylinTableStatusConst.ORDER_REFUND_STATUS_ERROR};
List<KylinOrderRefunds> refundList = kylinOrderRefundsMapper.selectList(
new QueryWrapper<KylinOrderRefunds>()
.eq("type", KylinTableStatusConst.ORDER_REFUND_TYPE_APPLY)
.in("order_refunds_id", orderRefundsIdList)
.in("status", orderRefundStatus)
);
if (orderRefundsIdList.size() != refundList.size()) {
throw new Exception("订单需已审核、退款失败,请检查订单状态");
}
boolean res = kylinRefundsStatusServiceImpl.orderTicketRefundRefuse(refundList, refuse);
if (res) {
return true;
} else {
return false;
}
}
public Boolean refundCompleted(Integer orderRefundsId) {
return false;
}
}
......@@ -3,14 +3,11 @@ package com.liquidnet.service.kylin.service.impl.admin;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.databind.JsonNode;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.HttpUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dto.vo.KylinBannersVo;
import com.liquidnet.service.kylin.dto.vo.KylinOrderTicketEntitiesVo;
import com.liquidnet.service.kylin.dto.vo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.entity.*;
......@@ -25,16 +22,20 @@ import com.mongodb.client.model.ReturnDocument;
import org.apache.commons.lang.StringUtils;
import org.apache.http.HttpException;
import org.bson.Document;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import java.awt.print.Book;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
/**
* <p>
......@@ -62,6 +63,9 @@ public class KylinRefundsStatusServiceImpl {
@Autowired
MongoTemplate mongoTemplate;
@Autowired
private DataUtils dataUtils;
public Boolean orderTicketRefunding(String orderTicketsId, String refundData, String reason, String orderRefundBatchesId) throws HttpException {
// 处理数据
String authId = "434";
......@@ -154,7 +158,7 @@ public class KylinRefundsStatusServiceImpl {
orderObject,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
new DataUtils().delOrderTicketRedis(orderTicketsId);
dataUtils.delOrderTicketRedis(orderTicketsId);
// 入场人
......@@ -166,7 +170,7 @@ public class KylinRefundsStatusServiceImpl {
.eq("order_ticket_entities_id", v));
KylinOrderTicketEntitiesVo kylinOrderTicketEntitiesVo = new KylinOrderTicketEntitiesVo();
kylinOrderTicketEntitiesVo.setIsPayment(KylinTableStatusConst.ORDER_STATUS3);
kylinOrderTicketEntitiesVo.setIsPayment(KylinTableStatusConst.ENTITIES_IS_PAYMENT2);
BasicDBObject entitiesObject = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(kylinOrderTicketEntitiesVo)));
Document entitiesDoc = mongoTemplate.getCollection(KylinOrderTicketEntitiesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("orderTicketEntitiesId").is(v)).getQueryObject(),
......@@ -174,7 +178,7 @@ public class KylinRefundsStatusServiceImpl {
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
new DataUtils().delOrderTicketEntitiesRedis(v.toString());
dataUtils.delOrderTicketEntitiesRedis(v.toString());
}
// 退款明细
......@@ -210,4 +214,199 @@ public class KylinRefundsStatusServiceImpl {
return true;
}
public boolean orderTicketRefundCancel(List<KylinOrderRefunds> refundList) {
for (KylinOrderRefunds v : refundList) {
String orderTicketEntitiesIds = v.getOrderTicketEntitiesIds();
String[] orderTicketEntitiesIdsArr = orderTicketEntitiesIds.split(",");
String orderTicketsId = v.getOrderTicketsId();
String orderRefundsId = v.getOrderRefundsId();
// 更新数据
// 订单状态表
KylinOrderTicketStatus orderStatusTable = new KylinOrderTicketStatus();
// TODO: 2021/5/27 事物 and 部分退款
orderStatusTable.setStatus(KylinTableStatusConst.ORDER_STATUS1);
kylinOrderTicketStatusMapper.update(orderStatusTable, new UpdateWrapper<KylinOrderTicketStatus>()
.eq("order_ticket_status_id", orderTicketsId));
KylinOrderTicketVo kylinOrderTicketVo = new KylinOrderTicketVo();
kylinOrderTicketVo.setStatus(KylinTableStatusConst.ORDER_STATUS1);
BasicDBObject orderObject = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(kylinOrderTicketVo)));
Document orderDoc = mongoTemplate.getCollection(KylinOrderTicketVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("orderTicketsId").is(orderTicketsId)).getQueryObject(),
orderObject,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
dataUtils.delOrderTicketRedis(orderTicketsId);
// 入场人
for (String entitiesId : orderTicketEntitiesIdsArr) {
KylinOrderTicketEntities entitiesTable = new KylinOrderTicketEntities();
// TODO: 2021/5/27 事物 and 部分退款
entitiesTable.setIsPayment(KylinTableStatusConst.ENTITIES_IS_PAYMENT1);
kylinOrderTicketEntitiesMapper.update(entitiesTable, new UpdateWrapper<KylinOrderTicketEntities>()
.eq("order_ticket_entities_id", entitiesId)
.eq("is_payment", KylinTableStatusConst.ENTITIES_IS_PAYMENT2)
);
KylinOrderTicketEntitiesVo kylinOrderTicketEntitiesVo = new KylinOrderTicketEntitiesVo();
kylinOrderTicketEntitiesVo.setIsPayment(KylinTableStatusConst.ENTITIES_IS_PAYMENT1);
BasicDBObject entitiesObject = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(kylinOrderTicketEntitiesVo)));
Document entitiesDoc = mongoTemplate.getCollection(KylinOrderTicketEntitiesVo.class.getSimpleName()).findOneAndUpdate(
Query.query(Criteria.where("orderTicketEntitiesId").is(entitiesId)).getQueryObject(),
entitiesObject,
new FindOneAndUpdateOptions().returnDocument(ReturnDocument.AFTER)
);
dataUtils.delOrderTicketEntitiesRedis(entitiesId);
}
// 退款细节取消
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_CANCEL);
kylinOrderRefundsMapper.update(kylinOrderRefunds, new UpdateWrapper<KylinOrderRefunds>()
.eq("order_refunds_id", orderRefundsId));
}
return true;
}
public boolean orderTicketRefundReapply(List<KylinOrderRefunds> refundList) {
String authId = "434";
String authName = "sss";
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_APPLY);
kylinOrderRefunds.setApplicantId(authId);
kylinOrderRefunds.setApplicantName(authName);
kylinOrderRefunds.setApplicantAt(LocalDateTime.now());
List<String> refundIds = refundList.stream().map(KylinOrderRefunds -> KylinOrderRefunds.getOrderRefundsId()).collect(Collectors.toList());
kylinOrderRefundsMapper.update(
kylinOrderRefunds,
new UpdateWrapper<KylinOrderRefunds>().in("order_refunds_id", refundIds)
);
return true;
}
public boolean orderTicketRefundApproved(List<KylinOrderRefunds> refundList, String reject) {
String authId = "434";
String authName = "sss";
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_APPROVED);
kylinOrderRefunds.setAuditorId(authId);
kylinOrderRefunds.setAuditorName(authName);
kylinOrderRefunds.setAuditorAt(LocalDateTime.now());
kylinOrderRefunds.setReject(reject);
List<String> refundIds = refundList.stream().map(KylinOrderRefunds -> KylinOrderRefunds.getOrderRefundsId()).collect(Collectors.toList());
kylinOrderRefundsMapper.update(
kylinOrderRefunds,
new UpdateWrapper<KylinOrderRefunds>().in("order_refunds_id", refundIds)
);
return true;
}
public boolean orderTicketRefundReject(List<KylinOrderRefunds> refundList, String reject) {
String authId = "434";
String authName = "sss";
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT);
kylinOrderRefunds.setAuditorId(authId);
kylinOrderRefunds.setAuditorName(authName);
kylinOrderRefunds.setAuditorAt(LocalDateTime.now());
kylinOrderRefunds.setReject(reject);
List<String> refundIds = refundList.stream().map(KylinOrderRefunds -> KylinOrderRefunds.getOrderRefundsId()).collect(Collectors.toList());
kylinOrderRefundsMapper.update(
kylinOrderRefunds,
new UpdateWrapper<KylinOrderRefunds>().in("order_refunds_id", refundIds)
);
return true;
}
public boolean orderTicketRefundRefuse(List<KylinOrderRefunds> refundList, String refuse) {
String authId = "434";
String authName = "sss";
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE);
kylinOrderRefunds.setExecutorId(authId);
kylinOrderRefunds.setExecutorName(authName);
kylinOrderRefunds.setExecutorAt(LocalDateTime.now());
kylinOrderRefunds.setRefuse(refuse);
List<String> refundIds = refundList.stream().map(KylinOrderRefunds -> KylinOrderRefunds.getOrderRefundsId()).collect(Collectors.toList());
kylinOrderRefundsMapper.update(
kylinOrderRefunds,
new UpdateWrapper<KylinOrderRefunds>().in("order_refunds_id", refundIds)
);
return true;
}
public boolean orderTicketRefundUnfilled(List<KylinOrderRefunds> refundList, String refuse) throws Exception {
String authId = "434";
String authName = "sss";
KylinOrderRefunds kylinOrderRefunds = new KylinOrderRefunds();
kylinOrderRefunds.setStatus(KylinTableStatusConst.ORDER_REFUND_STATUS_UNFILLED);
kylinOrderRefunds.setExecutorId(authId);
kylinOrderRefunds.setExecutorName(authName);
kylinOrderRefunds.setExecutorAt(LocalDateTime.now());
kylinOrderRefunds.setRefuse(refuse);
List<String> refundIds = refundList.stream().map(KylinOrderRefunds -> KylinOrderRefunds.getOrderRefundsId()).collect(Collectors.toList());
kylinOrderRefundsMapper.update(
kylinOrderRefunds,
new UpdateWrapper<KylinOrderRefunds>().in("order_refunds_id", refundIds)
);
// 开始执行退款
/*MultiValueMap<String, String> param = new LinkedMultiValueMap();
param.put("id", refundIds);
String postUrl = "sss";
String token = "sss";
MultiValueMap<String, String> headers = new LinkedMultiValueMap();
headers.add("Authorization", token);*/
/*for (KylinOrderRefunds refund: refundList) {
KylinOrderTickets oderInfo = kylinOrderTicketsMapper.selectCount(
new QueryWrapper<KylinOrderTickets>()
.eq("order_tickets_id", orderTicketsId)
);
$params = [
'code' => $refund->pay_code,
'order_refund_code' => $refund->order_refund_code,
'price' => $refund->price,
'reason' => $refund->reason,
'notify_url' => config('currency.API_REFUND_CALLBACK_URL')
];
$result = zhengzai::payRefund($params);
}
String postResult = HttpUtil.post(postUrl, param, headers);
JsonNode postResultNew = JsonUtils.fromJson(postResult, JsonNode.class);
// 请求提审接口结果
if (postResultNew.get("message").toString() != "OK") {
throw new Exception("申请退款出错");
}*/
return true;
}
}
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