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

Commit 4758bc93 authored by 刘喆's avatar 刘喆

Merge branch 'pre' into 'master'

Pre

See merge request !114
parents 3086b75c 5d0794fd
...@@ -25,6 +25,8 @@ public class RefundSearchParam implements Serializable { ...@@ -25,6 +25,8 @@ public class RefundSearchParam implements Serializable {
private String orderRefundCode; private String orderRefundCode;
private String orderCode; private String orderCode;
private String getTicketType;
private Integer type;
private String status; private String status;
private List<String> statusStr; private List<String> statusStr;
......
package com.liquidnet.service.kylin.dto.vo.returns;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.kylin.dao.KylinOrderRefundsEntitiesDao;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderRefundEntitiesVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderRefundPicVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
* <p>
* refund返回给前端的数据字段
* </p>
*
* @author jiangxiulong
* @since 2021-05-31 11:19 上午
*/
@Data
@ApiModel
public class KylinOrderRefundsAdminVo implements Serializable,Cloneable {
private static final long serialVersionUID = -7910948111093638877L;
@ApiModelProperty(value = "主键ID")
private String orderRefundsId;
@ApiModelProperty(value = "票务订单id")
private String orderTicketsId;
@ApiModelProperty(value = "退款编号")
private String orderRefundCode;
@ApiModelProperty(value = "批量退款id")
private String orderRefundBatchesId;
@ApiModelProperty(value = "退款中心退款编号")
private String refundCode;
@ApiModelProperty(value = "成功退款时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime refundAt;
@ApiModelProperty(value = "第三方退款编号")
private String refundId;
@ApiModelProperty(value = "退款失败原因")
private String refundError;
@ApiModelProperty(value = "退款票总金额")
private BigDecimal price;
@ApiModelProperty(value = "退款快递总金额")
private BigDecimal priceExpress;
@ApiModelProperty(value = "退款扣除的手续费金额")
private BigDecimal priceCharges;
@ApiModelProperty(value = "退款状态: 0请求退款 2取消退款 1审核通过 5驳回退款 7等待退款 3正在退款 4完成退款 6退款失败")
private Integer status;
private String statusName;
private Integer refundCate;
@ApiModelProperty(value = "退款差异: 0申请退款返还库存 1自动退款无法取消退款不返还库存")
private Integer type;
@ApiModelProperty(value = "退款差异: 0申请退款返还库存 1自动退款无法取消退款不返还库存")
private String typeName;
@ApiModelProperty(value = "申请人id")
private String applicantId;
@ApiModelProperty(value = "申请人名称")
private String applicantName;
@ApiModelProperty(value = "申请时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime applicantAt;
@ApiModelProperty(value = "退款原因")
private String reason;
@ApiModelProperty(value = "审核人id")
private String auditorId;
@ApiModelProperty(value = "审核人名称")
private String auditorName;
@ApiModelProperty(value = "审核时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime auditorAt;
@ApiModelProperty(value = "驳回原因")
private String reject;
@ApiModelProperty(value = "执行人id")
private String executorId;
@ApiModelProperty(value = "执行人名称")
private String executorName;
@ApiModelProperty(value = "执行时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime executorAt;
@ApiModelProperty(value = "回绝原因")
private String refuse;
@ApiModelProperty(value = "票务审核人id")
private String ticketAuditId;
@ApiModelProperty(value = "票务审核人名称")
private String ticketAuditName;
@ApiModelProperty(value = "票务审核时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime ticketAuditAt;
@ApiModelProperty(value = "票务审核备注")
private String ticketAuditRemark;
@ApiModelProperty(value = "票务/快递费/票和快递费")
private String refundType;
@ApiModelProperty(value = "添加时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt;
@ApiModelProperty(value = "更新时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime updatedAt;
List<KylinOrderRefundsEntitiesDao> entities;
private List<KylinOrderRefundEntitiesVo> orderRefundEntitiesVoList;
private List<KylinOrderRefundPicVo> orderRefundPicVos;
private List<String> picList;
private String payType;
private String getTicketType;
public void setStatus(Integer status){
try {
this.status = status;
switch (status) {
case 0:
this.statusName = "请求退款";
break;
case 1:
this.statusName = "运营审核通过";
break;
case 2:
this.statusName = "取消退款";
break;
case 3:
this.statusName = "正在退款";
break;
case 4:
this.statusName = "完成退款";
break;
case 5:
this.statusName = "运营审核驳回退款";
break;
case 6:
this.statusName = "退款失败";
break;
case 7:
this.statusName = "财务通过等待退款";
break;
case 8:
this.statusName = "财务驳回退款";
break;
default:
this.statusName = "其他";
break;
}
}catch (Exception e){
e.printStackTrace();
this.statusName = "其他";
}
}
private static final KylinOrderRefundsAdminVo obj = new KylinOrderRefundsAdminVo();
public static KylinOrderRefundsAdminVo getNew() {
try {
return (KylinOrderRefundsAdminVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new KylinOrderRefundsAdminVo();
}
}
}
...@@ -15,6 +15,7 @@ import com.liquidnet.service.kylin.constant.KylinTableStatusConst; ...@@ -15,6 +15,7 @@ import com.liquidnet.service.kylin.constant.KylinTableStatusConst;
import com.liquidnet.service.kylin.dao.OrderRefundDao; import com.liquidnet.service.kylin.dao.OrderRefundDao;
import com.liquidnet.service.kylin.dto.param.RefundApplyParam; import com.liquidnet.service.kylin.dto.param.RefundApplyParam;
import com.liquidnet.service.kylin.dto.param.RefundSearchParam; import com.liquidnet.service.kylin.dto.param.RefundSearchParam;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsAdminVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo; import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.service.IKylinOrderRefundsService; import com.liquidnet.service.kylin.service.IKylinOrderRefundsService;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
...@@ -55,13 +56,13 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -55,13 +56,13 @@ public class KylinOrderRefundAdminController extends BaseController {
return prefix + "/refund"; return prefix + "/refund";
} }
@Log(title = "订单退款列表", businessType = BusinessType.DETAIL) @Log(title = "订单退款详情", businessType = BusinessType.DETAIL)
@RequiresPermissions("kylin:refund:detail") @RequiresPermissions("kylin:refund:detail")
@GetMapping(value = "/details/{orderRefundId}") @GetMapping(value = "/details/{orderRefundId}")
public String detail(@PathVariable("orderRefundId") String orderRefundId, ModelMap mmap) { public String detail(@PathVariable("orderRefundId") String orderRefundId, ModelMap mmap) {
KylinOrderRefundsVo result = null; KylinOrderRefundsAdminVo result = null;
result = kylinOrderRefundsServiceImpl.detail(orderRefundId); result = kylinOrderRefundsServiceImpl.detail(orderRefundId);
mmap.put("KylinOrderRefundsVo", result); mmap.put("KylinOrderRefundsAdminVo", result);
return prefix + "/details"; return prefix + "/details";
} }
...@@ -79,14 +80,14 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -79,14 +80,14 @@ public class KylinOrderRefundAdminController extends BaseController {
return prefix + "/applyView"; return prefix + "/applyView";
} }
@Log(title = "订单退款列表", businessType = BusinessType.DETAIL) @Log(title = "申请退款检测详情", businessType = BusinessType.DETAIL)
@PostMapping("applyOrder") @PostMapping("applyOrder")
@ResponseBody @ResponseBody
public AjaxResult applyOrder(RefundApplyParam refundApplyParam) { public AjaxResult applyOrder(RefundApplyParam refundApplyParam) {
return kylinOrderRefundsServiceImpl.orderDetails(refundApplyParam.getOrderCode()); return kylinOrderRefundsServiceImpl.orderDetails(refundApplyParam.getOrderCode());
} }
@Log(title = "订单退款列表", businessType = BusinessType.INSERT) @Log(title = "申请退款", businessType = BusinessType.INSERT)
@RequiresPermissions("kylin:refund:apply") @RequiresPermissions("kylin:refund:apply")
@PostMapping("apply") @PostMapping("apply")
@ResponseBody @ResponseBody
...@@ -105,7 +106,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -105,7 +106,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
} }
@Log(title = "订单退款列表", businessType = BusinessType.CANCEL) @Log(title = "取消退款", businessType = BusinessType.CANCEL)
@RequiresPermissions("kylin:refund:cancel") @RequiresPermissions("kylin:refund:cancel")
@PostMapping("cancel") @PostMapping("cancel")
@ResponseBody @ResponseBody
...@@ -125,7 +126,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -125,7 +126,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
} }
@Log(title = "订单退款列表", businessType = BusinessType.REAPPLY) @Log(title = "重新提交退款", businessType = BusinessType.REAPPLY)
@RequiresPermissions("kylin:refund:reapply") @RequiresPermissions("kylin:refund:reapply")
@PostMapping("reapply") @PostMapping("reapply")
@ResponseBody @ResponseBody
...@@ -146,7 +147,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -146,7 +147,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
// 运营审核 // 运营审核
@Log(title = "订单退款列表", businessType = BusinessType.AUDIT) @Log(title = "运营审核", businessType = BusinessType.AUDIT)
@RequiresPermissions("kylin:refund:review") @RequiresPermissions("kylin:refund:review")
@PostMapping("review") @PostMapping("review")
@ResponseBody @ResponseBody
...@@ -175,7 +176,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -175,7 +176,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
// 票务审核 // 票务审核
@Log(title = "票务审核退款", businessType = BusinessType.AUDIT3) @Log(title = "票务审核", businessType = BusinessType.AUDIT3)
@RequiresPermissions("kylin:refund:ticketAudit") @RequiresPermissions("kylin:refund:ticketAudit")
@PostMapping("ticketAudit") @PostMapping("ticketAudit")
@ResponseBody @ResponseBody
...@@ -198,7 +199,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -198,7 +199,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
// 财务审核 // 财务审核
@Log(title = "订单退款列表", businessType = BusinessType.AUDIT2) @Log(title = "财务审核", businessType = BusinessType.AUDIT2)
@RequiresPermissions("kylin:refund:execute") @RequiresPermissions("kylin:refund:execute")
@PostMapping("execute") @PostMapping("execute")
@ResponseBody @ResponseBody
...@@ -240,7 +241,7 @@ public class KylinOrderRefundAdminController extends BaseController { ...@@ -240,7 +241,7 @@ public class KylinOrderRefundAdminController extends BaseController {
} }
// 主动完成退款 没有批量 // 主动完成退款 没有批量
@Log(title = "订单退款列表", businessType = BusinessType.COMPLETE_REFUND) @Log(title = "主动完成退款", businessType = BusinessType.COMPLETE_REFUND)
@RequiresPermissions("kylin:refund:completed") @RequiresPermissions("kylin:refund:completed")
@PostMapping("completed") @PostMapping("completed")
@ResponseBody @ResponseBody
......
...@@ -78,6 +78,25 @@ ...@@ -78,6 +78,25 @@
position: absolute; position: absolute;
} }
.notice{
width: 50px;
height: 50px;
margin-left: 10px;
background-color: #9b9b9b;
}
.imgwid{
/*width: 100%;*/
padding: 0 20px;
/*border: #9b9b9b solid 2px;*/
overflow: auto;
height: 650px;
}
.imgwid img{
width: 100%;
}
.ibox { .ibox {
margin-bottom: 25px; margin-bottom: 25px;
background-color: #fff; background-color: #fff;
......
...@@ -5,8 +5,12 @@ ...@@ -5,8 +5,12 @@
</head> </head>
<style> <style>
.img-details{ .img-details{
width: 30%; width: 300px;
height: 40%; height: 400px;
}
.img-Approval{
width-max:300px;
height: 400px;
} }
</style> </style>
...@@ -63,138 +67,142 @@ ...@@ -63,138 +67,142 @@
<form class="form-horizontal m" id="form-performances-edit" <form class="form-horizontal m" id="form-performances-edit"
th:object="${kylinPerformanceMisVo}"> th:object="${kylinPerformanceMisVo}">
<div> <div>
<p>演出封面:</p> <h4>演出封面:</h4>
<img class="img-details" name="img" th:src="*{imgPoster}" th:onclick="click_big([[*{imgPoster}]])"> <img class="img-details" name="img" th:src="*{imgPoster}" th:onclick="click_big([[*{imgPoster}]])">
</div> </div>
<div> </br>
<label>演出名称:</label> <div class="panel panel-info">
<span th:text="*{title}"></span> <div class="panel-heading">
</div> <label>演出名称:</label>
<div> <span th:text="*{title}"></span>
<label>是否实名:</label> </div>
<span th:if="*{isTrueName==1}"></span> <div class="panel-footer">
<span th:if="*{isTrueName==0}"></span> <label>是否实名:</label>
</div> <span th:if="*{isTrueName==1}"></span>
<div> <span th:if="*{isTrueName==0}"></span>
<label>时间:</label> </div>
<span th:text="*{timeStart}"></span> <div class="panel-footer">
<span> - </span> <label>时间:</label>
<span th:text="*{timeEnd}"></span> <span th:text="*{timeStart}"></span>
</div> <span> - </span>
<div> <span th:text="*{timeEnd}"></span>
<label>演出类型:</label> </div>
<span th:if="*{type==101}">音乐节</span> <div class="panel-footer">
<span th:if="*{type==102}">小型演出</span> <label>演出类型:</label>
<span th:if="*{type==103}">巡演</span> <span th:if="*{type==101}">音乐节</span>
</div> <span th:if="*{type==102}">小型演出</span>
<div> <span th:if="*{type==103}">巡演</span>
<label>场地:</label> </div>
<span th:text="*{fieldName}"></span> <div class="panel-footer">
</div> <label>场地:</label>
<div> <span th:text="*{fieldName}"></span>
<label>价格:</label> </div>
<span th:text="*{price}"></span> <div class="panel-footer">
</div> <label>价格:</label>
<div> <span th:text="*{price}"></span>
<label>停售时间:</label> </div>
<span th:text="*{stopSellTime}"></span> <div class="panel-footer">
</div> <label>停售时间:</label>
<div> <span th:text="*{stopSellTime}"></span>
<label>主办方:</label> </div>
<span th:text="*{sponsor}"></span> <div class="panel-footer">
</div> <label>主办方:</label>
<div> <span th:text="*{sponsor}"></span>
<label>联系人:</label> <div>
<span th:text="*{contacts}"></span> <label>联系人:</label>
</div> <span th:text="*{contacts}"></span>
<div> <label style="margin-left: 15px; padding-left: 15px; border-left: #1a2226 solid 1px">联系电话:</label>
<label>联系电话:</label> <span th:text="*{mobile}"></span>
<span th:text="*{mobile}"></span> </div>
</div>
</div> </div>
<div> <div>
<p>演出批文:</p> <h4>演出批文:</h4>
<img class="img-details" name="img" th:src="*{approvalUrl}" th:onclick="click_big([[*{approvalUrl}]])"> <img class="img-Approval" name="img" th:src="*{approvalUrl}" th:onclick="click_big([[*{approvalUrl}]])">
</div> </div>
</br>
<div class="ibox-content" id="eg"> <h4>演出详情:</h4>
<div class="click2edit wrapper" id="subText"> <div class="ibox float-e-margins" id="eg">
<div class="click2edit wrapper imgwid" id="subText">
</div> </div>
</div> </div>
<div id="noticeImg"> <div id="noticeImg" class="ibox float-e-margins ">
<span>购票须知:</span> <h4 class="ibox-title">购票须知:</h4>
<div th:each="dict : ${kylinPerformanceMisVo.noticeImageList}"> <div class="form-group" th:each="dict : ${kylinPerformanceMisVo.noticeImageList}">
<span th:text="${dict.title}"></span> <div class="col-sm-1 b-r" style="text-align: center">
<img th:src="${dict.imgUrl}"/> <img class="img-circle notice" th:src="${dict.imgUrl}"/>
<span th:text="${dict.message}"></span> </div>
<div class="col-sm-11">
<h5 th:text="${dict.title}"></h5>
<p th:text="${dict.message}"></p>
</div>
</div> </div>
</div> </div>
<div th:each="dict : ${kylinPerformanceMisVo.ticketTimes}" >
<div th:each="dict : ${kylinPerformanceMisVo.ticketTimes}"> <div th:each="dict2 : ${dict.ticket}" class="panel panel-info">
<div th:each="dict2 : ${dict.ticket}"> <div class="panel-heading">
<br/>
<div>
<span>票种名称:</span> <span>票种名称:</span>
<span th:text="${dict2.title}"></span> <span th:text="${dict2.title}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>适用日期:</span> <span>适用日期:</span>
<span th:text="${dict2.useStart}"></span> <span th:text="${dict2.useStart}"></span>
<span> - </span> <span> - </span>
<span th:text="${dict2.useEnd}"></span> <span th:text="${dict2.useEnd}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>价格:</span> <span>价格:</span>
<span th:text="${dict2.price}"></span> <span th:text="${dict2.price}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>票种说明:</span> <span>票种说明:</span>
<span th:text="${dict2.describes}"></span> <span th:text="${dict2.describes}"></span>
</div> </div>
<div th:if="${dict2.isElectronic==1}"> <div class="panel-footer" th:if="${dict2.isElectronic==1}">
<span>电子票说明:</span> <span>电子票说明:</span>
<span th:text="${dict2.describeElectronic}"></span> <span th:text="${dict2.describeElectronic}"></span>
</div> </div>
<div th:if="${dict2.isExpress==1}"> <div class="panel-footer" th:if="${dict2.isExpress==1}">
<span>快递票说明:</span> <span>快递票说明:</span>
<span th:text="${dict2.describeExpress}"></span> <span th:text="${dict2.describeExpress}"></span>
</div> </div>
<div th:if="${dict2.limitCount == 0}"> <div class="panel-footer" th:if="${dict2.limitCount == 0}">
<span>限购:</span> <span>限购:</span>
<span>不限购</span> <span>不限购</span>
</div> </div>
<div th:if="${dict2.limitCount != 0}"> <div class="panel-footer" th:if="${dict2.limitCount != 0}">
<span>限购:</span> <span>限购:</span>
<span th:text="${dict2.limitCount}">不限购</span> <span th:text="${dict2.limitCount}">不限购</span>
</div> </div>
<div> <div class="panel-footer">
<span>库存总量:</span> <span>库存总量:</span>
<span th:text="${dict2.totalGeneral}"></span> <span th:text="${dict2.totalGeneral}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>开始售票时间:</span> <span>开始售票时间:</span>
<span th:text="${dict2.timeStart}"></span> <span th:text="${dict2.timeStart}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>是否学生票:</span> <span>是否学生票:</span>
<span th:if="${dict2.isStudent==1}"></span> <span th:if="${dict2.isStudent==1}"></span>
<span th:if="${dict2.isStudent==0}"></span> <span th:if="${dict2.isStudent==0}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>是否显示二维码:</span> <span>是否显示二维码:</span>
<span th:if="${dict2.isShowCode==1}"></span> <span th:if="${dict2.isShowCode==1}"></span>
<span th:if="${dict2.isShowCode==0}"></span> <span th:if="${dict2.isShowCode==0}"></span>
</div> </div>
<div th:if="${dict2.isShowCode==1}"> <div class="panel-footer" th:if="${dict2.isShowCode==1}">
<span>二维码显示时间:</span> <span>二维码显示时间:</span>
<span th:text="${dict2.qrCodeShowTime}"></span> <span th:text="${dict2.qrCodeShowTime}"></span>
</div> </div>
<div> <div class="panel-footer">
<span>取票方式:</span> <span>取票方式:</span>
<span th:if="${dict2.isElectronic==1}">电子票</span> <span th:if="${dict2.isElectronic==1}">电子票</span>
<span th:if="${dict2.isExpress==1}">快递票</span> <span th:if="${dict2.isExpress==1}">快递票</span>
</div> </div>
<div th:if="${dict2.isExpress==1}"> <div class="panel-footer" th:if="${dict2.isExpress==1}">
<span>快递票停售时间:</span> <span>快递票停售时间:</span>
<span th:text="${dict2.timeEndExpress}"></span> <span th:text="${dict2.timeEndExpress}"></span>
</div> </div>
...@@ -258,8 +266,6 @@ ...@@ -258,8 +266,6 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
...@@ -357,7 +363,7 @@ ...@@ -357,7 +363,7 @@
// 演出详情 购票须知 // 演出详情 购票须知
var subText = document.getElementById("subText") var subText = document.getElementById("subText")
subText.innerHTML = "演出详情:" + '[[${kylinPerformanceMisVo.details}]]'.replaceAll("\"", ""); subText.innerHTML = '[[${kylinPerformanceMisVo.details}]]'.replaceAll("\"", "");
//会员详情 //会员详情
function memberInfo() { function memberInfo() {
...@@ -402,7 +408,7 @@ ...@@ -402,7 +408,7 @@
var json = { var json = {
"data": [ //相册包含的图片,数组格式 "data": [ //相册包含的图片,数组格式
{ {
"alt": "演出封面", "alt": "图片",
"src": img_url, //原图地址 "src": img_url, //原图地址
} }
] ]
......
...@@ -112,61 +112,65 @@ ...@@ -112,61 +112,65 @@
<form class="form-horizontal m-t" id="signupForm"> <form class="form-horizontal m-t" id="signupForm">
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">退款单id:</label> <label class="col-sm-2 control-label">退款单id:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.orderRefundsId}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.orderRefundsId}"></div>
<label class="col-sm-2 control-label">票务订单id:</label> <label class="col-sm-2 control-label">票务订单id:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.orderTicketsId}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.orderTicketsId}"></div>
<label class="col-sm-2 control-label">实际支付方式:</label> <label class="col-sm-2 control-label">实际支付方式:</label>
<div class="form-control-static" th:text="*{@dict.getLabel('zhengzai_pay_type',KylinOrderRefundsVo.payType)}"/> <div class="form-control-static" th:text="*{@dict.getLabel('zhengzai_pay_type',KylinOrderRefundsAdminVo.payType)}"/>
<label class="col-sm-2 control-label">取票方式:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.typeName}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">申请退款类型:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.getTicketType}"></div>
<label class="col-sm-2 control-label">退款编号:</label> <label class="col-sm-2 control-label">退款编号:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.orderRefundCode}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.orderRefundCode}"></div>
<label class="col-sm-2 control-label">退款中心退款编号:</label> <label class="col-sm-2 control-label">退款中心退款编号:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.RefundCode}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.RefundCode}"></div>
<label class="col-sm-2 control-label">第三方退款编号:</label> <label class="col-sm-2 control-label">第三方退款编号:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.RefundId}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.RefundId}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">退款票总金额:</label> <label class="col-sm-2 control-label">退款票总金额:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.price}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.price}"></div>
<label class="col-sm-2 control-label">退款快递费总金额:</label> <label class="col-sm-2 control-label">退款快递费总金额:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.priceExpress}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.priceExpress}"></div>
<label class="col-sm-2 control-label">退款状态:</label> <label class="col-sm-2 control-label">退款状态:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.statusName}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.statusName}"></div>
<label class="col-sm-2 control-label">成功退款时间:</label> <label class="col-sm-2 control-label">成功退款时间:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.RefundAt}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.RefundAt}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">申请人名称:</label> <label class="col-sm-2 control-label">申请人名称:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.applicantName}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.applicantName}"></div>
<label class="col-sm-2 control-label">申请时间:</label> <label class="col-sm-2 control-label">申请时间:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.applicantAt}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.applicantAt}"></div>
<label class="col-sm-2 control-label">申请备注:</label> <label class="col-sm-2 control-label">申请备注:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.reason}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.reason}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">审核人名称:</label> <label class="col-sm-2 control-label">审核人名称:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.auditorName}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.auditorName}"></div>
<label class="col-sm-2 control-label">审核时间:</label> <label class="col-sm-2 control-label">审核时间:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.auditorAt}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.auditorAt}"></div>
<label class="col-sm-2 control-label">审核备注:</label> <label class="col-sm-2 control-label">审核备注:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.reject}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.reject}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">确认收货人名称:</label> <label class="col-sm-2 control-label">确认收货人名称:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.ticketAuditName}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.ticketAuditName}"></div>
<label class="col-sm-2 control-label">确认收货执行时间:</label> <label class="col-sm-2 control-label">确认收货执行时间:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.ticketAuditAt}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.ticketAuditAt}"></div>
<label class="col-sm-2 control-label">确认收货执行备注:</label> <label class="col-sm-2 control-label">确认收货执行备注:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.ticketAuditRemark}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.ticketAuditRemark}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-sm-2 control-label">执行人名称:</label> <label class="col-sm-2 control-label">执行人名称:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.executorName}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.executorName}"></div>
<label class="col-sm-2 control-label">执行时间:</label> <label class="col-sm-2 control-label">执行时间:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.executorAt}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.executorAt}"></div>
<label class="col-sm-2 control-label">执行备注:</label> <label class="col-sm-2 control-label">执行备注:</label>
<div class="form-control-static" th:text="${KylinOrderRefundsVo.refuse}"></div> <div class="form-control-static" th:text="${KylinOrderRefundsAdminVo.refuse}"></div>
</div> </div>
<div class="form-group"> <div class="form-group">
...@@ -176,7 +180,7 @@ ...@@ -176,7 +180,7 @@
<table class="col-sm-8 select-table table-bordered"> <table class="col-sm-8 select-table table-bordered">
<tbody> <tbody>
<tr> <tr>
<td th:each="str : ${KylinOrderRefundsVo.picList}" style="float: left"> <td th:each="str : ${KylinOrderRefundsAdminVo.picList}" style="float: left">
<img th:src="${str}" onclick="showPic(this)" width="25%"> <img th:src="${str}" onclick="showPic(this)" width="25%">
</td> </td>
</tr> </tr>
...@@ -199,7 +203,7 @@ ...@@ -199,7 +203,7 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr th:each="v : ${KylinOrderRefundsVo.entities}"> <tr th:each="v : ${KylinOrderRefundsAdminVo.entities}">
<td th:text="${v.title}"></td> <td th:text="${v.title}"></td>
<td th:text="${v.useStart}"></td> <td th:text="${v.useStart}"></td>
<td th:text="${v.enterName}"></td> <td th:text="${v.enterName}"></td>
......
...@@ -18,6 +18,24 @@ ...@@ -18,6 +18,24 @@
<label>订单编号:</label> <label>订单编号:</label>
<input type="text" name="orderCode"/> <input type="text" name="orderCode"/>
</li> </li>
<li>
<label>取票方式:</label>
<select name="getTicketType">
<option value="">全部</option>
<option value="electronic">电子票</option>
<option value="express">快递票</option>
</select>
</li>
<li>
<label>申请退款类型:</label>
<select name="type">
<option value="">全部</option>
<option value="0">客服申请</option>
<option value="1">超时退款</option>
<option value="2">用户申请普通退款</option>
<option value="3">用户申请快递退款</option>
</select>
</li>
<li> <li>
<label>退款状态:</label> <label>退款状态:</label>
<select name="status"> <select name="status">
...@@ -114,7 +132,8 @@ ...@@ -114,7 +132,8 @@
<a class="btn btn-primary multiple disabled" onclick="execute()" shiro:hasPermission="kylin:refund:execute"> <a class="btn btn-primary multiple disabled" onclick="execute()" shiro:hasPermission="kylin:refund:execute">
财务审核 财务审核
</a> </a>
<a class="btn btn-success multiple disabled" onclick="ticketAudit()" shiro:hasPermission="kylin:refund:ticketAudit"> <a class="btn btn-success multiple disabled" onclick="ticketAudit()"
shiro:hasPermission="kylin:refund:ticketAudit">
票务审核 票务审核
</a> </a>
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll('确定取消选中的退款申请吗?', 'refund/cancel')" <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll('确定取消选中的退款申请吗?', 'refund/cancel')"
...@@ -225,7 +244,8 @@ ...@@ -225,7 +244,8 @@
$.operate.save(prefix + "/ticketAudit", data); $.operate.save(prefix + "/ticketAudit", data);
layer.close(index) layer.close(index)
}, },
btn2: function (index, layero) {} btn2: function (index, layero) {
}
}); });
} }
...@@ -286,6 +306,37 @@ ...@@ -286,6 +306,37 @@
field: 'orderCode', field: 'orderCode',
title: '订单编号' title: '订单编号'
}, },
{
field: 'getTicketType',
title: '取票方式',
formatter: function (value, row, index) {
if (row.getTicketType == "electronic") {
return "电子票";
} else {
return '快递票';
}
},
},
{
field: 'type',
title: '申请退款类型',
formatter: function (value, row, index) {
switch (row.type) {
case 0:
return "客服申请";
break;
case 1:
return "超时退款";
break;
case 2:
return "用户申请普通退款";
break;
case 3:
return "用户申请快递退款";
break;
}
},
},
{ {
field: 'price', field: 'price',
title: '退票金额' title: '退票金额'
......
...@@ -24,6 +24,7 @@ import com.liquidnet.service.kylin.dto.param.RefundCallbackParam; ...@@ -24,6 +24,7 @@ import com.liquidnet.service.kylin.dto.param.RefundCallbackParam;
import com.liquidnet.service.kylin.dto.param.RefundSearchParam; import com.liquidnet.service.kylin.dto.param.RefundSearchParam;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinOrderTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsAdminVo;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo; import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo;
import com.liquidnet.service.kylin.dto.vo.returns.RefundOrderDetailsVo; import com.liquidnet.service.kylin.dto.vo.returns.RefundOrderDetailsVo;
import com.liquidnet.service.kylin.entity.*; import com.liquidnet.service.kylin.entity.*;
...@@ -370,12 +371,13 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM ...@@ -370,12 +371,13 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
} }
} }
public KylinOrderRefundsVo detail(String orderRefundId) { public KylinOrderRefundsAdminVo detail(String orderRefundId) {
// 退款订单数据
KylinOrderRefunds data = kylinOrderRefundsMapper.selectOne( KylinOrderRefunds data = kylinOrderRefundsMapper.selectOne(
new QueryWrapper<KylinOrderRefunds>() new QueryWrapper<KylinOrderRefunds>()
.eq("order_refunds_id", orderRefundId) .eq("order_refunds_id", orderRefundId)
); );
// 退款票种
List<KylinOrderRefundEntities> refundEntities = kylinOrderRefundsEntitiesMapper.selectList( List<KylinOrderRefundEntities> refundEntities = kylinOrderRefundsEntitiesMapper.selectList(
new QueryWrapper<KylinOrderRefundEntities>().eq("order_refunds_id", orderRefundId) new QueryWrapper<KylinOrderRefundEntities>().eq("order_refunds_id", orderRefundId)
); );
...@@ -384,8 +386,8 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM ...@@ -384,8 +386,8 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
for (KylinOrderRefundsEntitiesDao item : entities) { for (KylinOrderRefundsEntitiesDao item : entities) {
item.setPaymentName(item.getIsPayment()); item.setPaymentName(item.getIsPayment());
} }
// 退款申请图片
KylinOrderRefundsVo kylinOrderRefundsVo = new KylinOrderRefundsVo(); KylinOrderRefundsAdminVo kylinOrderRefundsVo = KylinOrderRefundsAdminVo.getNew();
kylinOrderRefundsVo.setEntities(entities); kylinOrderRefundsVo.setEntities(entities);
BeanUtils.copyProperties(data, kylinOrderRefundsVo); BeanUtils.copyProperties(data, kylinOrderRefundsVo);
KylinOrderRefundPic kylinOrderRefundPic = kylinOrderRefundPicMapper.selectOne(new UpdateWrapper<KylinOrderRefundPic>().eq("order_refunds_id", orderRefundId)); KylinOrderRefundPic kylinOrderRefundPic = kylinOrderRefundPicMapper.selectOne(new UpdateWrapper<KylinOrderRefundPic>().eq("order_refunds_id", orderRefundId));
...@@ -395,10 +397,31 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM ...@@ -395,10 +397,31 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
}); });
kylinOrderRefundsVo.setPicList(strList); kylinOrderRefundsVo.setPicList(strList);
} }
// 订单表
KylinOrderTickets kylinOrderTickets = kylinOrderTicketsMapper.selectOne( KylinOrderTickets kylinOrderTickets = kylinOrderTicketsMapper.selectOne(
Wrappers.lambdaQuery(KylinOrderTickets.class).eq(KylinOrderTickets::getOrderTicketsId, data.getOrderTicketsId()) Wrappers.lambdaQuery(KylinOrderTickets.class).eq(KylinOrderTickets::getOrderTicketsId, data.getOrderTicketsId())
); );
if (kylinOrderTickets.getGetTicketType().equals("express")) {
kylinOrderRefundsVo.setGetTicketType("快递票");
} else {
kylinOrderRefundsVo.setGetTicketType("电子票");
}
String typeName = "";
switch (kylinOrderRefundsVo.getType()) {
case 0:
typeName = "客服申请";
break;
case 1:
typeName = "超时退款";
break;
case 2:
typeName = "用户申请普通退款";
break;
case 3:
typeName = "用户申请快递退款";
break;
}
kylinOrderRefundsVo.setTypeName(typeName);
kylinOrderRefundsVo.setPayType(kylinOrderTickets.getPayType()); kylinOrderRefundsVo.setPayType(kylinOrderTickets.getPayType());
return kylinOrderRefundsVo; return kylinOrderRefundsVo;
......
...@@ -76,6 +76,8 @@ public class OrderRefundDao implements Serializable { ...@@ -76,6 +76,8 @@ public class OrderRefundDao implements Serializable {
private String performanceTitle; private String performanceTitle;
private String getTicketType;
private String mailno; private String mailno;
public void setStatusName(Integer status){ public void setStatusName(Integer status){
......
...@@ -80,7 +80,7 @@ ...@@ -80,7 +80,7 @@
</select> </select>
<select id="misRefundList" resultType="com.liquidnet.service.kylin.dao.OrderRefundDao" resultMap="misRefundListResult"> <select id="misRefundList" resultType="com.liquidnet.service.kylin.dao.OrderRefundDao" resultMap="misRefundListResult">
select t.*, b.order_code, b.performance_title from select t.*, b.order_code, b.performance_title, b.get_ticket_type from
(select a.*, d.mailno (select a.*, d.mailno
from kylin_order_refunds a from kylin_order_refunds a
LEFT JOIN kylin_order_express AS d ON d.order_refunds_id = a.order_refunds_id LEFT JOIN kylin_order_express AS d ON d.order_refunds_id = a.order_refunds_id
...@@ -88,6 +88,9 @@ ...@@ -88,6 +88,9 @@
<if test="orderTicketsId!=''"> <if test="orderTicketsId!=''">
AND a.order_tickets_id = #{orderTicketsId} AND a.order_tickets_id = #{orderTicketsId}
</if> </if>
<if test="type!=''">
AND a.type = #{type}
</if>
<choose> <choose>
<when test="roleType!=''"> <when test="roleType!=''">
<if test="roleType == 1"> <if test="roleType == 1">
...@@ -126,6 +129,9 @@ ...@@ -126,6 +129,9 @@
<if test="orderCode!=''"> <if test="orderCode!=''">
AND b.order_code = #{orderCode} AND b.order_code = #{orderCode}
</if> </if>
<if test="getTicketType!=''">
AND b.get_ticket_type = #{getTicketType}
</if>
</where> </where>
</select> </select>
......
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