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

Commit f5d0da8d authored by anjiabin's avatar anjiabin

提交演出日历

parent 542e1e62
...@@ -42,3 +42,13 @@ logs ...@@ -42,3 +42,13 @@ logs
*.orig *.orig
temp/ temp/
### Example user template template
### Example user template
# IntelliJ project files
.idea
*.iml
out
gen
/Users/anjiabin/mdsky_gitlab/liquidnet-bus-v1/liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/kylin/performances/details.html
...@@ -5,7 +5,6 @@ import com.github.pagehelper.PageInfo; ...@@ -5,7 +5,6 @@ import com.github.pagehelper.PageInfo;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.PerformanceAdminListParam; import com.liquidnet.service.kylin.dto.param.PerformanceAdminListParam;
import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam; import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam;
import com.liquidnet.service.kylin.dto.param.PerformanceRecommendAdminParam;
import com.liquidnet.service.kylin.dto.param.SysDamaiParam; import com.liquidnet.service.kylin.dto.param.SysDamaiParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.entity.KylinPerformances; import com.liquidnet.service.kylin.entity.KylinPerformances;
...@@ -168,4 +167,6 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc ...@@ -168,4 +167,6 @@ public interface IKylinPerformancesAdminService extends IService<KylinPerformanc
* @return * @return
*/ */
boolean changeSysDamai(List<SysDamaiParam> params); boolean changeSysDamai(List<SysDamaiParam> params);
List<PerformanceOrderStatisticalDao> getPerformanceOrderStatisticalList(String performancesId);
} }
...@@ -7,6 +7,7 @@ import com.liquidnet.client.admin.common.core.page.TableDataInfo; ...@@ -7,6 +7,7 @@ import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinPerformancesAdminServiceImpl; import com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinPerformancesAdminServiceImpl;
import com.liquidnet.service.kylin.dao.PerformanceAdminListDao; import com.liquidnet.service.kylin.dao.PerformanceAdminListDao;
import com.liquidnet.service.kylin.dao.PerformanceMemberAuditDao; import com.liquidnet.service.kylin.dao.PerformanceMemberAuditDao;
import com.liquidnet.service.kylin.dao.PerformanceOrderStatisticalDao;
import com.liquidnet.service.kylin.dto.param.PerformanceAdminListParam; import com.liquidnet.service.kylin.dto.param.PerformanceAdminListParam;
import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam; import com.liquidnet.service.kylin.dto.param.PerformanceMemberAuditParam;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
...@@ -16,6 +17,8 @@ import org.springframework.stereotype.Controller; ...@@ -16,6 +17,8 @@ import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
/** /**
* 演出Controller * 演出Controller
...@@ -88,4 +91,12 @@ public class KylinPerformancesController extends BaseController { ...@@ -88,4 +91,12 @@ public class KylinPerformancesController extends BaseController {
boolean result = kylinPerformancesService.performanceMemberChange(performanceMemberAuditParam); boolean result = kylinPerformancesService.performanceMemberChange(performanceMemberAuditParam);
return toAjax(result); return toAjax(result);
} }
@RequiresPermissions("kylin:performances:performanceStatic")
@GetMapping(value = "/performanceStatic/{performancesId}")
public String performanceStatic(@PathVariable("performancesId") String performancesId, ModelMap mmap) {
List<PerformanceOrderStatisticalDao> result = kylinPerformancesService.getPerformanceOrderStatisticalList(performancesId);
mmap.put("perOrderStaticList", result);
return prefix + "/performancesStatic";
}
} }
...@@ -132,7 +132,7 @@ public class PerformanceCalendarController extends BaseController{ ...@@ -132,7 +132,7 @@ public class PerformanceCalendarController extends BaseController{
//查询条件 //查询条件
LambdaQueryWrapper<KylinPerformances> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<KylinPerformances> wrapper = new LambdaQueryWrapper<>();
if (!StringUtils.isNotNull(performanceCalendarReq.getPerformanceIimeBegin())) { if (!StringUtils.isNotNull(performanceCalendarReq.getPerformanceIimeBegin())) {
wrapper.ge(KylinPerformances::getTimeStart, DateUtil.parse(performanceCalendarReq.getPerformanceIimeBegin(),DateUtil.DATE_SMALL_STR)); wrapper.ge(KylinPerformances::getTimeStart, DateUtil.asLocalDate(DateUtil.parse(performanceCalendarReq.getPerformanceIimeBegin(),DateUtil.DATE_SMALL_STR)));
} }
if (!StringUtils.isNotNull(performanceCalendarReq.getPerformanceIimeend())) { if (!StringUtils.isNotNull(performanceCalendarReq.getPerformanceIimeend())) {
wrapper.le(KylinPerformances::getTimeStart, DateUtil.addDay(DateUtil.parse(performanceCalendarReq.getPerformanceIimeend(),DateUtil.DATE_SMALL_STR),1)); wrapper.le(KylinPerformances::getTimeStart, DateUtil.addDay(DateUtil.parse(performanceCalendarReq.getPerformanceIimeend(),DateUtil.DATE_SMALL_STR),1));
...@@ -148,7 +148,7 @@ public class PerformanceCalendarController extends BaseController{ ...@@ -148,7 +148,7 @@ public class PerformanceCalendarController extends BaseController{
PerformanceCalendarResp.PerformanceVo performanceVo = new PerformanceCalendarResp.PerformanceVo(); PerformanceCalendarResp.PerformanceVo performanceVo = new PerformanceCalendarResp.PerformanceVo();
performanceVo.setTitle(kylinPerformances.getTitle()); performanceVo.setTitle(kylinPerformances.getTitle());
performanceVo.setCityName(kylinPerformances.getCityName()); performanceVo.setCityName(kylinPerformances.getCityName());
performanceVo.setTimeStart(DateUtil.format(kylinPerformances.getTimeStart(),DateUtil.Formatter.ddHHmmssTrim)); performanceVo.setTimeStart(DateUtil.format(kylinPerformances.getTimeStart(),DateUtil.Formatter.yyyyMMddHHmmss));
//页面行循环 //页面行循环
for(int i = 0;i< dateArray2.length;i++){ for(int i = 0;i< dateArray2.length;i++){
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<ul class="nav nav-tabs"> <ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#tab-2" aria-expanded="false">演出详情</a> <li class="active"><a data-toggle="tab" href="#tab-2" aria-expanded="false">演出详情</a>
</li> </li>
<li class=""><a data-toggle="tab" href="#tab-1" aria-expanded="true"> 演出数据</a> <li class=""><a data-toggle="tab" href="#tab-1" aria-expanded="true" id="tab-nav-1"> 演出数据</a>
</li> </li>
<li class=""><a data-toggle="tab" href="#tab-2" aria-expanded="false">校园分销</a> <li class=""><a data-toggle="tab" href="#tab-2" aria-expanded="false">校园分销</a>
</li> </li>
...@@ -31,8 +31,10 @@ ...@@ -31,8 +31,10 @@
<div class="tab-content"> <div class="tab-content">
<div id="tab-1" class="tab-pane"> <div id="tab-1" class="tab-pane">
<div class="panel-body"> <div class="panel-body">
<strong>HTML5 文档类型</strong> <div id="tab-1" class="tab-pane">
<p>Bootstrap 使用到的某些 HTML 元素和 CSS 属性需要将页面设置为 HTML5 文档类型。在你项目中的每个页面都要参照下面的格式进行设置。</p> <!-- <th:block th:include="../templates/zhengzai/kylin/performances/performancesStatic :: performancesStatic"/>-->
<iframe id="tab_iframe_1" name="tab_iframe_1" marginwidth=0 marginheight=0 width=100% height=800px frameborder=0></iframe>
</div>
</div> </div>
</div> </div>
<div id="tab-2" class="tab-pane active"> <div id="tab-2" class="tab-pane active">
...@@ -284,6 +286,10 @@ ...@@ -284,6 +286,10 @@
document.getElementById("content_iframe").src="../memberInfo/"+'[[${kylinPerformanceMisVo.performancesId}]]'.replaceAll("\"", ""); document.getElementById("content_iframe").src="../memberInfo/"+'[[${kylinPerformanceMisVo.performancesId}]]'.replaceAll("\"", "");
} }
$("#tab-nav-1").bind("click",function(){
$("#tab_iframe_1").attr("src",prefix + "/performanceStatic/"+'[[${kylinPerformanceMisVo.performancesId}]]'.replaceAll("\"", ""));
});
</script> </script>
</body> </body>
</html> </html>
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('演出列表')" />
</head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 select-table table-bordered">
<div class="row">
<div class="col-lg-12">
<div>
<div>我用什么把你留住(二)——福禄寿FloruitShow音乐会上海(7月24日)</div>
</div>
</div>
</div>
<div class="row"></div>
<div class="row">
<div class="col-lg-1">
<div>
<div>总销售票款(元)</div>
<div>28700</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>实销总数(张)</div>
<div>55</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>销售库存(张)</div>
<div>80</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>已兑换总数(张)</div>
<div>0</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>兑换库存(张)</div>
<div>0</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>购买人数(人)</div>
<div>39</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>小家伙分销(元)</div>
<div>0</div>
</div>
</div>
<div class="col-lg-1">
<div>
<div>退票数量(张)</div>
<div>24</div>
</div>
</div>
</div>
<button type="button" class="el-button main el-button--primary el-button--medium"><!---->
<!----><span>查看数据统计图表</span></button> <!---->
<div style="display: none;">
<div class="main" style="display: none;">暂无省份/年龄/性别统计数据</div>
<div class="chart-main">
<div>
<button type="button" class="el-button el-button--primary el-button--mini"><!---->
<!----><span>导出统计数据表格</span></button>
</div>
<div id="provinceChart" class="chartProvince"></div>
<div id="cityChart" class="chartAge"></div>
<div id="timeChart" class="chartSex"></div>
<div id="ageChart" class="chartAge"></div>
<div id="sexChart" class="chartSex"></div>
</div>
</div>
</div>
<table class="col-sm-12 select-table table-bordered">
<thead>
<tr>
<th colspan="1" rowspan="1" class="el-table_5_column_32 is-leaf">
<div class="cell">票种名</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_33 is-leaf">
<div class="cell">单价</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_34 is-leaf">
<div class="cell">类型</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_35 is-leaf">
<div class="cell">适用时间</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_36 is-leaf">
<div class="cell">销售总数量</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_37 is-leaf">
<div class="cell">会员销售数量</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_38 is-leaf">
<div class="cell">库存数量</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_39 is-leaf">
<div class="cell">正在支付数量</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_40 is-leaf">
<div class="cell">退票数量</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_41 is-leaf">
<div class="cell">销售额(元)</div>
</th>
<th colspan="1" rowspan="1" class="el-table_5_column_42 is-leaf">
<div class="cell">兑换数量</div>
</th>
<th class="gutter" style="width: 0px; display: none;"></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<div class="cell">180元区</div>
</td>
<td>
<div class="cell">180.00</div>
</td>
<td>
<div class="cell">单日票</div>
</td>
<td>
<div class="cell">2021-03-06</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
<td>
<div class="cell">0</div>
</td>
</tr>
<tr class="el-table__row el-table__row--striped">
<td rowspan="1" colspan="1" class="el-table_5_column_32 ">
<div class="cell">680元区</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_33 ">
<div class="cell">680.00</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_34 ">
<div class="cell">单日票</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_35 ">
<div class="cell">2021-03-06</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_36 ">
<div class="cell">19</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_37 ">
<div class="cell">9</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_38 ">
<div class="cell">1</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_39 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_40 ">
<div class="cell">10</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_41 ">
<div class="cell">12920</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_42 ">
<div class="cell">0</div>
</td>
</tr>
<tr class="el-table__row">
<td rowspan="1" colspan="1" class="el-table_5_column_32 ">
<div class="cell">480元区</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_33 ">
<div class="cell">480.00</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_34 ">
<div class="cell">单日票</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_35 ">
<div class="cell">2021-03-06</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_36 ">
<div class="cell">21</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_37 ">
<div class="cell">3</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_38 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_39 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_40 ">
<div class="cell">9</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_41 ">
<div class="cell">10080</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_42 ">
<div class="cell">0</div>
</td>
</tr>
<tr class="el-table__row el-table__row--striped">
<td rowspan="1" colspan="1" class="el-table_5_column_32 ">
<div class="cell">380元区</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_33 ">
<div class="cell">380.00</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_34 ">
<div class="cell">单日票</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_35 ">
<div class="cell">2021-03-06</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_36 ">
<div class="cell">15</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_37 ">
<div class="cell">8</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_38 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_39 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_40 ">
<div class="cell">5</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_41 ">
<div class="cell">5700</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_42 ">
<div class="cell">0</div>
</td>
</tr>
<tr class="el-table__row">
<td rowspan="1" colspan="1" class="el-table_5_column_32 ">
<div class="cell">总计</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_33 ">
<div class="cell"></div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_34 ">
<div class="cell"></div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_35 ">
<div class="cell"></div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_36 ">
<div class="cell">55</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_37 ">
<div class="cell">20</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_38 ">
<div class="cell">25</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_39 ">
<div class="cell">0</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_40 ">
<div class="cell">24</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_41 ">
<div class="cell">28700</div>
</td>
<td rowspan="1" colspan="1" class="el-table_5_column_42 ">
<div class="cell">0</div>
</td>
</tr><!---->
</tbody>
</table>
<div style="display: none;"></div>
</div>
</div>
<th:block th:include="include :: footer" />
</body>
</html>
\ No newline at end of file
...@@ -13,7 +13,6 @@ import com.liquidnet.service.kylin.dto.vo.KylinPerformanceVo; ...@@ -13,7 +13,6 @@ import com.liquidnet.service.kylin.dto.vo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.KylinTicketVo; import com.liquidnet.service.kylin.dto.vo.KylinTicketVo;
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.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformancePartnerListVo;
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.entity.*; import com.liquidnet.service.kylin.entity.*;
...@@ -632,4 +631,9 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -632,4 +631,9 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
return false; return false;
} }
} }
@Override
public List<PerformanceOrderStatisticalDao> getPerformanceOrderStatisticalList(String performancesId) {
return performancesMapper.getPerformanceOrderStatisticalList(performancesId);
}
} }
package com.liquidnet.service.kylin.dao;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* @author AnJiabin <anjiabin@zhengzai.tv>
* @version V1.0
* @Description: TODO
* @class: PerformanceOrderStatisticalDao
* @Package com.liquidnet.service.kylin.dao
* @Copyright: LightNet @ Copyright (c) 2021
* @date 2021/6/3 16:39
*/
@Data
public class PerformanceOrderStatisticalDao {
private String performancesId;
private String ticketsId;
private String title;
private BigDecimal price;
private Integer type;
private LocalDateTime useStart;
private BigDecimal totalGeneral;
private BigDecimal saleGeneral;
private BigDecimal surplusGeneral;
private BigDecimal totalSalePrice;
private BigDecimal totalExchange;
private BigDecimal totalRefundGeneral;
private BigDecimal totalRefundPrice;
private BigDecimal totalMemberNumber;
private BigDecimal totalpayingNumber;
}
...@@ -41,4 +41,6 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> { ...@@ -41,4 +41,6 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> {
//演出 会员票相关信息 //演出 会员票相关信息
PerformanceRecommendDao getRecommend(String performancesId); PerformanceRecommendDao getRecommend(String performancesId);
List<PerformanceOrderStatisticalDao> getPerformanceOrderStatisticalList(String performancesId);
} }
...@@ -73,6 +73,19 @@ ...@@ -73,6 +73,19 @@
<result column="is_exclusive" property="isExclusive"/> <result column="is_exclusive" property="isExclusive"/>
</resultMap> </resultMap>
<resultMap id="performanceOrderStatisticalDaoResult" type="com.liquidnet.service.kylin.dao.PerformanceOrderStatisticalDao">
<result column="tickets_id" property="ticketsId"/>
<result column="title" property="title"/>
<result column="use_start" property="useStart"/>
<result column="status" property="status"/>
<result column="time_start" property="timeStart"/>
<result column="price" property="price"/>
<result column="price_discount_member" property="priceDiscountMember"/>
<result column="advance_minute_member" property="advanceMinuteMember"/>
<result column="member_limit_count" property="memberLimitCount"/>
<result column="is_member" property="isMember"/>
<result column="is_exclusive" property="isExclusive"/>
</resultMap>
<!-- 第三方演出列表 (不包含退票信息) --> <!-- 第三方演出列表 (不包含退票信息) -->
<select id="partnerPerformanceList" parameterType="java.util.Map" resultMap="partnerPerformanceListResult"> <select id="partnerPerformanceList" parameterType="java.util.Map" resultMap="partnerPerformanceListResult">
...@@ -320,4 +333,58 @@ ...@@ -320,4 +333,58 @@
where ttr.performance_id = ${performancesId}; where ttr.performance_id = ${performancesId};
</select> </select>
<!-- 演出订单统计-->
<select id="getPerformanceOrderStatisticalList" parameterType="java.lang.String" resultMap="performanceOrderStatisticalDaoResult">
SELECT
kp.performances_id ,
kt.tickets_id,
kt.title,
kt.price,
kt.type,
kt.use_start,
IFNULL(kts.total_general , 0) AS 'total_general' ,
IFNULL(ot.total_sale_general , 0) AS 'sale_general' ,
IFNULL((kts.total_general - ot.total_sale_general),0) AS 'surplus_general',
IFNULL(ot.total_sale_price , 0) AS 'total_sale_price' ,
IFNULL(kts.total_exchange , 0) AS 'total_exchange',
IFNULL(ot.total_refund_general , 0) AS 'total_refund_general',
IFNULL(ot.total_refund_price , 0) AS 'total_refund_price',
IFNULL(ot.total_member_number , 0) AS 'total_member_number',
IFNULL(ot.total_member_number , 0) AS 'total_paying_number'
FROM
(select t.performances_id from kylin_performances t where t.performances_id = ${performancesId}) AS kp
inner JOIN(
SELECT
kote.performance_id AS 'performance_id',
kotr.ticket_id,
sum(kot.number) AS 'total_sale_general' ,
sum(kot.price_actual) AS 'total_sale_price',
sum(kot.refund_number) as 'total_refund_general',
sum(kot.price_refund) as 'total_refund_price',
sum(case when kotr.is_member = 1 then kot.number else 0 end) total_member_number,
sum(case when kots.`status` = 0 then kot.number else 0 end) total_paying_number
FROM
kylin_order_ticket_relations kotr
inner join kylin_order_tickets AS kot on kotr.ticket_id = kot.order_tickets_id
inner JOIN kylin_order_ticket_status AS kots ON kots.order_id = kot.order_tickets_id
inner JOIN kylin_order_ticket_entities AS kote ON kote.order_id = kot.order_tickets_id
WHERE kotr.performance_id = ${performancesId} and (kots.`status` = 0 OR kots.`status` = 1)
) AS ot ON ot.performance_id = kp.performances_id
inner join kylin_tickets kt on kt.tickets_id = ot.ticket_id
inner join kylin_ticket_status kts on kts.ticket_id = kt.tickets_id
inner JOIN(
select t.performance_id,count(t.user_id) from(
SELECT
kotr.performance_id,
kot.user_id
FROM
kylin_order_ticket_relations kotr
inner join kylin_order_tickets AS kot on kotr.ticket_id = kot.order_tickets_id
inner JOIN kylin_order_ticket_status AS kots ON kots.order_id = kot.order_tickets_id
inner JOIN kylin_order_ticket_entities AS kote ON kote.order_id = kot.order_tickets_id
WHERE kotr.performance_id = ${performancesId} and (kots.`status` = 0 OR kots.`status` = 1)
group by kotr.performance_id,kot.user_id
) t
) AS ut ON ut.performance_id = kp.performances_id
</select>
</mapper> </mapper>
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