退款列表、部分接口修改
This commit is contained in:
parent
19e9d547fa
commit
eaf16c48c4
@ -0,0 +1,65 @@
|
|||||||
|
package com.ycwl.basic.controller.pc;
|
||||||
|
|
||||||
|
import com.github.pagehelper.PageInfo;
|
||||||
|
import com.ycwl.basic.model.mobile.order.RefundOrderReq;
|
||||||
|
import com.ycwl.basic.model.pc.order.entity.OrderEntity;
|
||||||
|
import com.ycwl.basic.model.pc.order.req.OrderReqQuery;
|
||||||
|
import com.ycwl.basic.model.pc.order.resp.OrderRespVO;
|
||||||
|
import com.ycwl.basic.service.pc.OrderService;
|
||||||
|
import com.ycwl.basic.utils.ApiResponse;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
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;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author:longbinbin
|
||||||
|
* @Date:2024/12/3 13:49
|
||||||
|
*/
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/api/refund/v1")
|
||||||
|
@Api(tags = "退款订单管理")
|
||||||
|
public class RefundController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private OrderService orderService;
|
||||||
|
|
||||||
|
@ApiOperation(value = "审核退款", notes = "审核退款")
|
||||||
|
@PostMapping("/auditRefundOrder")
|
||||||
|
public ApiResponse<?> auditRefundOrder(@RequestBody RefundOrderReq refundOrderReq) {
|
||||||
|
return orderService.auditRefundOrder(refundOrderReq);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("分页查询订单")
|
||||||
|
@PostMapping("page")
|
||||||
|
public ApiResponse<PageInfo<OrderRespVO>> pageQuery(@RequestBody OrderReqQuery query) {
|
||||||
|
return orderService.refundPageQuery(query);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("订单列表查询")
|
||||||
|
@PostMapping("list")
|
||||||
|
public ApiResponse<List<OrderRespVO>> list(@RequestBody OrderReqQuery query) {
|
||||||
|
return orderService.list(query);
|
||||||
|
}
|
||||||
|
@ApiOperation("订单详情查询")
|
||||||
|
@GetMapping("detail/{id}")
|
||||||
|
public ApiResponse<OrderRespVO> detail(@PathVariable("id") Long orderId) {
|
||||||
|
return orderService.detail(orderId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("订单备注")
|
||||||
|
@PostMapping("remark/{id}")
|
||||||
|
public ApiResponse<?> updateRemark(@PathVariable("id") Long orderId, @RequestBody OrderEntity query) {
|
||||||
|
orderService.remarkOrder(orderId, query);
|
||||||
|
return ApiResponse.success(null);
|
||||||
|
}
|
||||||
|
}
|
@ -36,4 +36,6 @@ public interface OrderMapper {
|
|||||||
List<OrderAppRespVO> appList(OrderAppPageReq orderReqQuery);
|
List<OrderAppRespVO> appList(OrderAppPageReq orderReqQuery);
|
||||||
|
|
||||||
OrderAppRespVO appDetail(Long id);
|
OrderAppRespVO appDetail(Long id);
|
||||||
|
|
||||||
|
List<OrderRespVO> refundList(OrderReqQuery query);
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
package com.ycwl.basic.mapper;
|
package com.ycwl.basic.mapper;
|
||||||
|
|
||||||
|
import com.ycwl.basic.model.mobile.scenic.content.ContentPageVO;
|
||||||
import com.ycwl.basic.model.pc.template.entity.TemplateConfigEntity;
|
import com.ycwl.basic.model.pc.template.entity.TemplateConfigEntity;
|
||||||
import com.ycwl.basic.model.pc.template.entity.TemplateEntity;
|
import com.ycwl.basic.model.pc.template.entity.TemplateEntity;
|
||||||
import com.ycwl.basic.model.pc.template.req.TemplateReqQuery;
|
import com.ycwl.basic.model.pc.template.req.TemplateReqQuery;
|
||||||
import com.ycwl.basic.model.pc.template.resp.TemplateRespVO;
|
import com.ycwl.basic.model.pc.template.resp.TemplateRespVO;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -30,4 +32,6 @@ public interface TemplateMapper {
|
|||||||
int deleteConfigByTemplateId(Long templateId);
|
int deleteConfigByTemplateId(Long templateId);
|
||||||
int deleteConfigById(Long id);
|
int deleteConfigById(Long id);
|
||||||
List<TemplateEntity> listByScenicId(Long scenicId);
|
List<TemplateEntity> listByScenicId(Long scenicId);
|
||||||
|
|
||||||
|
List<ContentPageVO> listFor(@Param("scenicId") Long scenicId, @Param("faceId") Long faceId);
|
||||||
}
|
}
|
||||||
|
@ -45,4 +45,5 @@ public class VideoGoodsDetailVO {
|
|||||||
private Integer isBuy;
|
private Integer isBuy;
|
||||||
@ApiModelProperty("镜头数")
|
@ApiModelProperty("镜头数")
|
||||||
private Integer lensNum;
|
private Integer lensNum;
|
||||||
|
private Long faceId;
|
||||||
}
|
}
|
||||||
|
@ -15,20 +15,18 @@ import java.math.BigDecimal;
|
|||||||
public class ContentPageVO {
|
public class ContentPageVO {
|
||||||
@ApiModelProperty("内容名称")
|
@ApiModelProperty("内容名称")
|
||||||
private String name;
|
private String name;
|
||||||
// @ApiModelProperty("景区id")
|
@ApiModelProperty("景区id")
|
||||||
// private Long scenicId;
|
private Long scenicId;
|
||||||
// @ApiModelProperty("景区名称")
|
@ApiModelProperty("景区名称")
|
||||||
// private String scenicName;
|
private String scenicName;
|
||||||
// @ApiModelProperty("经度")
|
|
||||||
// private BigDecimal longitude;
|
|
||||||
// @ApiModelProperty("纬度")
|
|
||||||
// private BigDecimal latitude;
|
|
||||||
@ApiModelProperty("内容类型 0模版 1:成片视频 2:源素材 ")
|
@ApiModelProperty("内容类型 0模版 1:成片视频 2:源素材 ")
|
||||||
private Integer contentType;
|
private Integer contentType;
|
||||||
@ApiModelProperty("源素材类型 1:视频 2:图片")
|
@ApiModelProperty("源素材类型 1:视频 2:图片")
|
||||||
private Integer sourceType;
|
private Integer sourceType;
|
||||||
@ApiModelProperty("内容id contentType为0或1时才有值")
|
@ApiModelProperty("内容id contentType为0或1时才有值")
|
||||||
private Long contentId;
|
private Long contentId;
|
||||||
|
@ApiModelProperty("模版id")
|
||||||
|
private Long templateId;
|
||||||
@ApiModelProperty("模版封面图片 contentType为0或1时才有值")
|
@ApiModelProperty("模版封面图片 contentType为0或1时才有值")
|
||||||
private String templateCoverUrl;
|
private String templateCoverUrl;
|
||||||
@ApiModelProperty("是否购买:0未购买,1已购买")
|
@ApiModelProperty("是否购买:0未购买,1已购买")
|
||||||
|
@ -22,6 +22,7 @@ public class TaskRespVO {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty("执行任务的机器ID")
|
@ApiModelProperty("执行任务的机器ID")
|
||||||
private Long workerId;
|
private Long workerId;
|
||||||
|
private Long faceId;
|
||||||
/**
|
/**
|
||||||
* 用户ID,可以不和用户关联
|
* 用户ID,可以不和用户关联
|
||||||
*/
|
*/
|
||||||
|
@ -84,4 +84,6 @@ public class TemplateRespVO {
|
|||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
private Date updateTime;
|
private Date updateTime;
|
||||||
private List<TemplateRespVO> children;
|
private List<TemplateRespVO> children;
|
||||||
|
private BigDecimal price;
|
||||||
|
private Integer sort;
|
||||||
}
|
}
|
||||||
|
@ -133,46 +133,29 @@ public class AppScenicServiceImpl implements AppScenicService {
|
|||||||
@Override
|
@Override
|
||||||
public ApiResponse<List<ContentPageVO>> contentList(Long faceId) {
|
public ApiResponse<List<ContentPageVO>> contentList(Long faceId) {
|
||||||
JwtInfo worker = JwtTokenUtil.getWorker();
|
JwtInfo worker = JwtTokenUtil.getWorker();
|
||||||
//查询原素材
|
|
||||||
List<ContentPageVO> contentList = new ArrayList<>();
|
|
||||||
|
|
||||||
FaceRespVO faceRespVO = faceMapper.getById(faceId);
|
FaceRespVO faceRespVO = faceMapper.getById(faceId);
|
||||||
|
if (StringUtils.isBlank(faceRespVO.getMatchSampleIds())) {
|
||||||
|
return ApiResponse.success(new ArrayList<>());
|
||||||
|
}
|
||||||
|
|
||||||
HashMap<Long, String> videoMap = new HashMap<>();
|
List<ContentPageVO> contentList = templateMapper.listFor(faceRespVO.getScenicId(), faceId);
|
||||||
VideoReqQuery videoReqQuery = new VideoReqQuery();
|
contentList.forEach(contentPageVO -> {
|
||||||
videoReqQuery.setFaceId(faceId);
|
if (contentPageVO.getContentType() == 1) {
|
||||||
videoReqQuery.setMemberId(worker.getUserId());
|
VideoReqQuery videoReqQuery = new VideoReqQuery();
|
||||||
//查询成片vlog
|
videoReqQuery.setScenicId(contentPageVO.getScenicId());
|
||||||
List<VideoRespVO> videoList = videoMapper.list(videoReqQuery);
|
videoReqQuery.setTemplateId(contentPageVO.getTemplateId());
|
||||||
videoList.forEach(videoRespVO -> {
|
videoReqQuery.setMemberId(worker.getUserId());
|
||||||
ContentPageVO contentPageVO = new ContentPageVO();
|
List<VideoRespVO> videoList = videoMapper.list(videoReqQuery);
|
||||||
contentPageVO.setName(videoRespVO.getTemplateName());
|
if (!videoList.isEmpty()) {
|
||||||
contentPageVO.setContentType(1);
|
contentPageVO.setContentId(videoList.get(0).getId());
|
||||||
contentPageVO.setContentId(videoRespVO.getId());
|
}
|
||||||
contentPageVO.setTemplateCoverUrl(videoRespVO.getTemplateCoverUrl());
|
|
||||||
contentPageVO.setIsBuy(videoRespVO.getIsBuy());
|
|
||||||
contentList.add(contentPageVO);
|
|
||||||
videoMap.put(videoRespVO.getTemplateId(),"");
|
|
||||||
});
|
|
||||||
|
|
||||||
TemplateReqQuery templateReqQuery = new TemplateReqQuery();
|
|
||||||
templateReqQuery.setScenicId(faceRespVO.getScenicId());
|
|
||||||
List<TemplateRespVO> list = templateMapper.list(templateReqQuery);
|
|
||||||
list.forEach(templateRespVO -> {
|
|
||||||
Long templateId = templateRespVO.getId();
|
|
||||||
if (!videoMap.containsKey(templateId)) {
|
|
||||||
ContentPageVO contentPageVO = new ContentPageVO();
|
|
||||||
contentPageVO.setName(templateRespVO.getName());
|
|
||||||
contentPageVO.setContentType(0);
|
|
||||||
contentPageVO.setContentId(templateId);
|
|
||||||
contentPageVO.setTemplateCoverUrl(templateRespVO.getCoverUrl());
|
|
||||||
contentList.add(contentPageVO);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
SourceReqQuery sourceReqQuery = new SourceReqQuery();
|
SourceReqQuery sourceReqQuery = new SourceReqQuery();
|
||||||
videoReqQuery.setScenicId(faceRespVO.getScenicId());
|
sourceReqQuery.setScenicId(faceRespVO.getScenicId());
|
||||||
videoReqQuery.setMemberId(worker.getUserId());
|
sourceReqQuery.setMemberId(worker.getUserId());
|
||||||
//查询源素材
|
//查询源素材
|
||||||
List<SourceRespVO> sourceList = sourceMapper.listGroupByType(sourceReqQuery);
|
List<SourceRespVO> sourceList = sourceMapper.listGroupByType(sourceReqQuery);
|
||||||
sourceList.forEach(sourceRespVO -> {
|
sourceList.forEach(sourceRespVO -> {
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
package com.ycwl.basic.service.impl.mobile;
|
package com.ycwl.basic.service.impl.mobile;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.ycwl.basic.constant.BaseContextHandler;
|
import com.ycwl.basic.constant.BaseContextHandler;
|
||||||
import com.ycwl.basic.mapper.*;
|
import com.ycwl.basic.mapper.*;
|
||||||
import com.ycwl.basic.model.jwt.JwtInfo;
|
import com.ycwl.basic.model.jwt.JwtInfo;
|
||||||
@ -10,12 +12,14 @@ import com.ycwl.basic.model.pc.scenic.resp.ScenicRespVO;
|
|||||||
import com.ycwl.basic.model.pc.source.req.SourceReqQuery;
|
import com.ycwl.basic.model.pc.source.req.SourceReqQuery;
|
||||||
import com.ycwl.basic.model.pc.source.resp.SourceRespVO;
|
import com.ycwl.basic.model.pc.source.resp.SourceRespVO;
|
||||||
import com.ycwl.basic.model.pc.task.req.TaskReqQuery;
|
import com.ycwl.basic.model.pc.task.req.TaskReqQuery;
|
||||||
|
import com.ycwl.basic.model.pc.task.resp.TaskRespVO;
|
||||||
import com.ycwl.basic.model.pc.video.req.VideoReqQuery;
|
import com.ycwl.basic.model.pc.video.req.VideoReqQuery;
|
||||||
import com.ycwl.basic.model.pc.video.resp.VideoRespVO;
|
import com.ycwl.basic.model.pc.video.resp.VideoRespVO;
|
||||||
import com.ycwl.basic.service.mobile.GoodsService;
|
import com.ycwl.basic.service.mobile.GoodsService;
|
||||||
import com.ycwl.basic.utils.ApiResponse;
|
import com.ycwl.basic.utils.ApiResponse;
|
||||||
import com.ycwl.basic.utils.DateUtils;
|
import com.ycwl.basic.utils.DateUtils;
|
||||||
import com.ycwl.basic.utils.JwtTokenUtil;
|
import com.ycwl.basic.utils.JwtTokenUtil;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@ -23,6 +27,7 @@ import java.math.BigDecimal;
|
|||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.text.DecimalFormat;
|
import java.text.DecimalFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -197,8 +202,16 @@ public class GoodsServiceImpl implements GoodsService {
|
|||||||
DecimalFormat df = new DecimalFormat("0.00");
|
DecimalFormat df = new DecimalFormat("0.00");
|
||||||
goodsDetailVO.setPrice(templatePrice==null?"":df.format(templatePrice.setScale(2, RoundingMode.HALF_UP)));
|
goodsDetailVO.setPrice(templatePrice==null?"":df.format(templatePrice.setScale(2, RoundingMode.HALF_UP)));
|
||||||
goodsDetailVO.setIsBuy(videoRespVO.getIsBuy());
|
goodsDetailVO.setIsBuy(videoRespVO.getIsBuy());
|
||||||
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(videoRespVO.getScenicId(), -1L);
|
TaskRespVO taskRespVO = taskMapper.getById(videoRespVO.getTaskId());
|
||||||
goodsDetailVO.setLensNum(scenicDeviceCountVO.getTotalDeviceCount());
|
JSONObject paramJson = JSON.parseObject(taskRespVO.getTaskParams());
|
||||||
|
long deviceCount;
|
||||||
|
if (paramJson == null) {
|
||||||
|
deviceCount = 1;
|
||||||
|
} else {
|
||||||
|
deviceCount = paramJson.keySet().stream().filter(StringUtils::isNumeric).count();
|
||||||
|
}
|
||||||
|
goodsDetailVO.setLensNum((int) deviceCount);
|
||||||
|
goodsDetailVO.setFaceId(taskRespVO.getFaceId());
|
||||||
return ApiResponse.success(goodsDetailVO);
|
return ApiResponse.success(goodsDetailVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -342,4 +342,12 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
orderOperationMapper.add(orderOperationEntity);
|
orderOperationMapper.add(orderOperationEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResponse<PageInfo<OrderRespVO>> refundPageQuery(OrderReqQuery query) {
|
||||||
|
PageHelper.startPage(query.getPageNum(), query.getPageSize());
|
||||||
|
List<OrderRespVO> list = orderMapper.refundList(query);
|
||||||
|
PageInfo<OrderRespVO> pageInfo = new PageInfo<>(list);
|
||||||
|
return ApiResponse.success(pageInfo);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -57,4 +57,6 @@ public interface OrderService {
|
|||||||
ApiResponse<?> auditRefundOrder(RefundOrderReq refundOrderReq);
|
ApiResponse<?> auditRefundOrder(RefundOrderReq refundOrderReq);
|
||||||
|
|
||||||
void remarkOrder(Long orderId, OrderEntity query);
|
void remarkOrder(Long orderId, OrderEntity query);
|
||||||
|
|
||||||
|
ApiResponse<PageInfo<OrderRespVO>> refundPageQuery(OrderReqQuery query);
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@ spring:
|
|||||||
datasource: # 数据源的相关配置
|
datasource: # 数据源的相关配置
|
||||||
type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP
|
type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP
|
||||||
driver-class-name: com.mysql.cj.jdbc.Driver # mysql驱动
|
driver-class-name: com.mysql.cj.jdbc.Driver # mysql驱动
|
||||||
url: jdbc:mysql://106.14.162.214:3306/zt?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
|
url: jdbc:mysql://127.0.0.1:3306/zt?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
|
||||||
username: zt
|
username: zt
|
||||||
password: ZhEnTuAi2024zHeNtUaI
|
password: ZhEnTuAi2024zHeNtUaI
|
||||||
hikari:
|
hikari:
|
||||||
|
@ -1,22 +1,9 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<configuration debug="false">
|
<configuration debug="false">
|
||||||
|
|
||||||
<!-- appender是configuration的子节点,是负责写日志的组件。 -->
|
|
||||||
<!-- ConsoleAppender:把日志输出到控制台 -->
|
|
||||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
<!-- 默认情况下,每个日志事件都会立即刷新到基础输出流。 这种默认方法更安全,因为如果应用程序在没有正确关闭appender的情况下退出,则日志事件不会丢失。
|
|
||||||
但是,为了显着增加日志记录吞吐量,您可能希望将immediateFlush属性设置为false -->
|
|
||||||
<!--<immediateFlush>true</immediateFlush>-->
|
|
||||||
<encoder>
|
<encoder>
|
||||||
<!-- %37():如果字符没有37个字符长度,则左侧用空格补齐 -->
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} (%-5level) (%-40.40(%logger{40})) : %msg%n</pattern>
|
||||||
<!-- %-37():如果字符没有37个字符长度,则右侧用空格补齐 -->
|
|
||||||
<!-- %15.15():如果记录的线程字符长度小于15(第一个)则用空格在左侧补齐,如果字符长度大于15(第二个),则从开头开始截断多余的字符 -->
|
|
||||||
<!-- %-40.40():如果记录的logger字符长度小于40(第一个)则用空格在右侧补齐,如果字符长度大于40(第二个),则从开头开始截断多余的字符 -->
|
|
||||||
<!-- %msg:日志打印详情 -->
|
|
||||||
<!-- %n:换行符 -->
|
|
||||||
<!-- %highlight():转换说明符以粗体红色显示其级别为ERROR的事件,红色为WARN,BLUE为INFO,以及其他级别的默认颜色。 -->
|
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %highlight(%-5level) --- [%15.15(%thread)] %cyan(%-40.40(%logger{40})) : %msg%n</pattern>
|
|
||||||
<!-- 控制台也要使用UTF-8,不要使用GBK,否则会中文乱码 -->
|
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
</encoder>
|
</encoder>
|
||||||
</appender>
|
</appender>
|
||||||
@ -116,13 +103,7 @@
|
|||||||
</encoder>
|
</encoder>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
<!--给定记录器的每个启用的日志记录请求都将转发到该记录器中的所有appender以及层次结构中较高的appender(不用在意level值)。
|
<root level="WARN">
|
||||||
换句话说,appender是从记录器层次结构中附加地继承的。
|
|
||||||
例如,如果将控制台appender添加到根记录器,则所有启用的日志记录请求将至少在控制台上打印。
|
|
||||||
如果另外将文件追加器添加到记录器(例如L),则对L和L'子项启用的记录请求将打印在文件和控制台上。
|
|
||||||
通过将记录器的additivity标志设置为false,可以覆盖此默认行为,以便不再添加appender累积-->
|
|
||||||
<!-- configuration中最多允许一个root,别的logger如果没有设置级别则从父级别root继承 -->
|
|
||||||
<root level="INFO">
|
|
||||||
<appender-ref ref="STDOUT" />
|
<appender-ref ref="STDOUT" />
|
||||||
</root>
|
</root>
|
||||||
|
|
||||||
|
@ -131,7 +131,7 @@
|
|||||||
</delete>
|
</delete>
|
||||||
<select id="list" resultMap="PCBaseResultMap">
|
<select id="list" resultMap="PCBaseResultMap">
|
||||||
select distinct o.id, o.scenic_id, s.name as scenic_name, o.member_id,m.nickname ,m.real_name , o.openid, o.price, pay_price, remark, o.broker_id, o.promo_code,
|
select distinct o.id, o.scenic_id, s.name as scenic_name, o.member_id,m.nickname ,m.real_name , o.openid, o.price, pay_price, remark, o.broker_id, o.promo_code,
|
||||||
refund_reason, refund_status, o.`status`, refund_at, pay_at, cancel_at,oi.id oiId, o.goods_type, oi.goods_id
|
refund_reason, refund_status, o.`status`, refund_at, pay_at, cancel_at,oi.id oiId, o.goods_type, oi.goods_id, o.create_at
|
||||||
from `order` AS o
|
from `order` AS o
|
||||||
left join member m on o.member_id = m.id
|
left join member m on o.member_id = m.id
|
||||||
left join scenic s on o.scenic_id = s.id
|
left join scenic s on o.scenic_id = s.id
|
||||||
@ -324,4 +324,75 @@
|
|||||||
left join scenic sc on (o.goods_type='1' and vd.scenic_id=sc.id) or (o.goods_type='2' and sr.scenic_id=sc.id)
|
left join scenic sc on (o.goods_type='1' and vd.scenic_id=sc.id) or (o.goods_type='2' and sr.scenic_id=sc.id)
|
||||||
where o.id = #{id}
|
where o.id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
<select id="refundList" resultType="com.ycwl.basic.model.pc.order.resp.OrderRespVO">
|
||||||
|
select distinct o.id, o.scenic_id, s.name as scenic_name, o.member_id,m.nickname ,m.real_name , o.openid, o.price, pay_price, remark, o.broker_id, o.promo_code,
|
||||||
|
refund_reason, refund_status, o.`status`, refund_at, pay_at, cancel_at,oi.id oiId, o.goods_type, oi.goods_id, o.create_at
|
||||||
|
from `order` AS o
|
||||||
|
left join member m on o.member_id = m.id
|
||||||
|
left join scenic s on o.scenic_id = s.id
|
||||||
|
left join order_item oi on o.id = oi.order_id
|
||||||
|
left join source sr on o.goods_type='2' and oi.goods_id = sr.id
|
||||||
|
left join video vd on o.goods_type='1' and oi.goods_id = vd.id
|
||||||
|
<where>
|
||||||
|
o.refund_status != 0
|
||||||
|
<if test="id!= null ">
|
||||||
|
and o.id = #{id}
|
||||||
|
</if>
|
||||||
|
<if test="scenicId != null">
|
||||||
|
and o.scenic_id = #{scenicId}
|
||||||
|
</if>
|
||||||
|
<if test="memberNickname!= null and memberNickname!=''">
|
||||||
|
and m.nickname like concat('%',#{memberNickname},'%')
|
||||||
|
</if>
|
||||||
|
<if test="memberRealName!= null and memberRealName!=''">
|
||||||
|
and m.real_name like concat('%',#{memberRealName},'%')
|
||||||
|
</if>
|
||||||
|
<if test="price!= null ">
|
||||||
|
and o.price = #{price}
|
||||||
|
</if>
|
||||||
|
<if test="payPrice!= null ">
|
||||||
|
and pay_price = #{payPrice}
|
||||||
|
</if>
|
||||||
|
<if test="remark!= null and remark!= ''">
|
||||||
|
and remark like concat('%',#{remark},'%')
|
||||||
|
</if>
|
||||||
|
<if test="brokerId!= null ">
|
||||||
|
and o.broker_id = #{brokerId}
|
||||||
|
</if>
|
||||||
|
<if test="promoCode!= null and promoCode!= ''">
|
||||||
|
and o.promo_code like concat('%',#{promoCode},'%')
|
||||||
|
</if>
|
||||||
|
<if test="refundReason!= null and refundReason!= ''">
|
||||||
|
and refund_reason like concat('%',#{refundReason},'%')
|
||||||
|
</if>
|
||||||
|
<if test="status!= null ">
|
||||||
|
and o.`status` = #{status}
|
||||||
|
</if>
|
||||||
|
<if test="startCreateTime!= null ">
|
||||||
|
and o.create_at >= #{startCreateTime}
|
||||||
|
</if>
|
||||||
|
<if test="endCreateTime!= null ">
|
||||||
|
and o.create_at <= #{endCreateTime}
|
||||||
|
</if>
|
||||||
|
<if test="startPayTime!= null ">
|
||||||
|
and pay_at >= #{startPayTime}
|
||||||
|
</if>
|
||||||
|
<if test="endPayTime!= null ">
|
||||||
|
and pay_at <= #{endPayTime}
|
||||||
|
</if>
|
||||||
|
<if test="startRefundTime!= null ">
|
||||||
|
and refund_at >= #{startRefundTime}
|
||||||
|
</if>
|
||||||
|
<if test="endRefundTime!= null ">
|
||||||
|
and refund_at <= #{endRefundTime}
|
||||||
|
</if>
|
||||||
|
<if test="startCancelTime!= null ">
|
||||||
|
and cancel_at >= #{startCancelTime}
|
||||||
|
</if>
|
||||||
|
<if test="endCancelTime!= null ">
|
||||||
|
and cancel_at <= #{endCancelTime}
|
||||||
|
</if>
|
||||||
|
</where>
|
||||||
|
order by o.create_at desc
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -54,7 +54,7 @@
|
|||||||
delete from task where id = #{id}
|
delete from task where id = #{id}
|
||||||
</delete>
|
</delete>
|
||||||
<select id="list" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
<select id="list" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
||||||
select id, worker_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time, start_time, end_time
|
select id, worker_id, face_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time, start_time, end_time
|
||||||
from task
|
from task
|
||||||
<where>
|
<where>
|
||||||
<if test="workerId!= null">and worker_id = #{workerId} </if>
|
<if test="workerId!= null">and worker_id = #{workerId} </if>
|
||||||
@ -67,7 +67,7 @@ from task
|
|||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
<select id="getById" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
<select id="getById" resultType="com.ycwl.basic.model.pc.task.resp.TaskRespVO">
|
||||||
select id, worker_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time
|
select id, worker_id, face_id, member_id, template_id, scenic_id, task_params, video_url, `status`, result, create_time, update_time
|
||||||
from task
|
from task
|
||||||
where id = #{id}
|
where id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
delete from template_config where id = #{id}
|
delete from template_config where id = #{id}
|
||||||
</delete>
|
</delete>
|
||||||
<select id="list" resultType="com.ycwl.basic.model.pc.template.resp.TemplateRespVO">
|
<select id="list" resultType="com.ycwl.basic.model.pc.template.resp.TemplateRespVO">
|
||||||
select t.id, t.scenic_id, s.name as scenic_name, t.`name`, t.cover_url, t.status, t.create_time, t.update_time
|
select t.id, t.scenic_id, s.name as scenic_name, t.`name`, t.cover_url, t.status, t.create_time, t.update_time, t.price, t.sort
|
||||||
from template t left join scenic s on s.id = t.scenic_id
|
from template t left join scenic s on s.id = t.scenic_id
|
||||||
<where>
|
<where>
|
||||||
pid = 0
|
pid = 0
|
||||||
@ -79,7 +79,7 @@
|
|||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
<select id="getById" resultType="com.ycwl.basic.model.pc.template.resp.TemplateRespVO">
|
<select id="getById" resultType="com.ycwl.basic.model.pc.template.resp.TemplateRespVO">
|
||||||
select t.id, t.scenic_id, s.name as scenic_name, t.`name`, pid, is_placeholder, source_url, luts, overlays, audios, frame_rate, speed, t.cover_url, t.status, t.create_time, t.update_time
|
select t.id, t.scenic_id, s.name as scenic_name, t.`name`, pid, is_placeholder, source_url, luts, overlays, audios, frame_rate, speed, t.cover_url, t.status, t.create_time, t.update_time, t.price, t.sort
|
||||||
from template t left join scenic s on s.id = t.scenic_id
|
from template t left join scenic s on s.id = t.scenic_id
|
||||||
where t.id = #{id}
|
where t.id = #{id}
|
||||||
</select>
|
</select>
|
||||||
@ -96,4 +96,14 @@
|
|||||||
from template
|
from template
|
||||||
where scenic_id = #{scenicId} and pid = 0
|
where scenic_id = #{scenicId} and pid = 0
|
||||||
</select>
|
</select>
|
||||||
|
<select id="listFor" resultType="com.ycwl.basic.model.mobile.scenic.content.ContentPageVO">
|
||||||
|
select t.id templateId, t.scenic_id, s.name as scenic_name, t.`name`, pid, t.cover_url templateCoverUrl,
|
||||||
|
1 as sourceType,
|
||||||
|
(select IF(count(1) > 0,1,0) from video left join task on video.task_id = task.id where video.template_id=t.id and task.face_id = #{faceId}) contentType,
|
||||||
|
(select count(1) from video left join task on video.task_id = task.id where video.template_id=t.id and task.face_id = #{faceId} and video.is_buy = 1) isBuy,
|
||||||
|
t.create_time, t.price
|
||||||
|
from template t left join scenic s on s.id = t.scenic_id
|
||||||
|
where t.scenic_id = #{scenicId} and pid = 0 and t.status = 1
|
||||||
|
order by sort
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user