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

Commit 8dbed3ac authored by 胡佳晨's avatar 胡佳晨

admin 接口增加 candy redis增copy

parent bfc68603
package com.liquidnet.service.kylin.service.admin; package com.liquidnet.service.kylin.service.admin;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo; 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;
...@@ -10,7 +9,6 @@ import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo; ...@@ -10,7 +9,6 @@ import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo; import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo;
import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo; import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo;
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 java.util.List; import java.util.List;
...@@ -66,6 +64,15 @@ public interface IKylinPerformancesAdminService { ...@@ -66,6 +64,15 @@ public interface IKylinPerformancesAdminService {
*/ */
List<PerformanceTitleDao> getListByStatus(String status,String title); List<PerformanceTitleDao> getListByStatus(String status,String title);
/**
* 根据演出状态 查询演出列表 演出全量场次票
*
* @param status 演出状态
* @return 20个 sql 数据
*/
List<PerformanceSimpleAllDao> getListDetailByStatus(String status, String title);
/** /**
* 修改演出的巡演关联 * 修改演出的巡演关联
* *
......
package com.liquidnet.client.admin.web.controller.zhengzai.kylin;
import com.liquidnet.client.admin.common.core.controller.BaseController;
import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.zhengzai.kylin.service.impl.KylinPerformancesAdminServiceImpl;
import com.liquidnet.service.kylin.dao.PerformanceSimpleAllDao;
import com.liquidnet.service.kylin.dao.PerformanceTitleDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
@RequestMapping("/kylin/base")
public class KylinBaseController extends BaseController {
@Autowired
private KylinPerformancesAdminServiceImpl kylinPerformancesService;
@GetMapping(value = "/performance/status")
@ResponseBody
public AjaxResult listByStatus(@RequestParam(value = "status") String status, @RequestParam(value = "title",required = false) String title) {
List<PerformanceSimpleAllDao> result = kylinPerformancesService.getListDetailByStatus(status,title);
AjaxResult ajax = new AjaxResult();
ajax.put("value", result);
return ajax;
}
}
package com.liquidnet.client.admin.zhengzai.kylin.service.impl; package com.liquidnet.client.admin.zhengzai.kylin.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
...@@ -9,14 +8,10 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils; ...@@ -9,14 +8,10 @@ import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils; import com.liquidnet.client.admin.zhengzai.kylin.utils.PerformanceVoUtils;
import com.liquidnet.commons.lang.util.BeanUtil; import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.DateUtil; import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.kylin.constant.KylinRedisConst; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dao.*; import com.liquidnet.service.kylin.dao.*;
import com.liquidnet.service.kylin.dto.param.*; import com.liquidnet.service.kylin.dto.param.*;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceAgentVo; import com.liquidnet.service.kylin.dto.vo.admin.*;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceDamaiVo;
import com.liquidnet.service.kylin.dto.vo.admin.KylinPerformanceMemberHistoryVo;
import com.liquidnet.service.kylin.dto.vo.admin.PerformanceRefundConfigVo;
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.partner.KylinPerformanceMisVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinPerformanceMisVo;
import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo; import com.liquidnet.service.kylin.dto.vo.partner.KylinTicketPartnerVo;
...@@ -26,10 +21,7 @@ import com.liquidnet.service.kylin.entity.*; ...@@ -26,10 +21,7 @@ import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*; import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService; import com.liquidnet.service.kylin.service.admin.IKylinPerformancesAdminService;
import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObject;
import com.mongodb.client.model.FindOneAndUpdateOptions;
import com.mongodb.client.model.ReturnDocument;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.bson.Document;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
...@@ -40,13 +32,13 @@ import org.springframework.data.mongodb.core.query.Criteria; ...@@ -40,13 +32,13 @@ import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* <p> * <p>
...@@ -246,6 +238,14 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma ...@@ -246,6 +238,14 @@ public class KylinPerformancesAdminServiceImpl extends ServiceImpl<KylinPerforma
return voList; return voList;
} }
@Override
public List<PerformanceSimpleAllDao> getListDetailByStatus(String status, String title) {
List<PerformanceTitleDao> dto1List = performancesMapper.misTitleByStatusList(status, title);
List<String> performanceIdList = dto1List.stream().map(PerformanceTitleDao::getPerformancesId).collect(Collectors.toList());
List<PerformanceSimpleAllDao> dto2List = performancesMapper.misPerformanceDetail(performanceIdList);
return dto2List;
}
@Override @Override
public boolean changeRoadShowId(String performancesId, String roadShowId) { public boolean changeRoadShowId(String performancesId, String roadShowId) {
try { try {
......
...@@ -138,4 +138,36 @@ public class CandyUserCouponBasicDto implements Serializable ,Cloneable{ ...@@ -138,4 +138,36 @@ public class CandyUserCouponBasicDto implements Serializable ,Cloneable{
this.setUseRules(couponInfoDto.getUseRules()); this.setUseRules(couponInfoDto.getUseRules());
return this; return this;
} }
public CandyUserCouponBasicDto copyToRedisCommonBaseCoupon(String uCouponId,String uid, CandyCommonCouponBasicDto commonCouponBasicDto) {
this.setCouponId(commonCouponBasicDto.getCouponId());
this.setTitle(commonCouponBasicDto.getTitle());
this.setLabel(commonCouponBasicDto.getLabel());
this.setNotice(commonCouponBasicDto.getNotice());
this.setExclusive(commonCouponBasicDto.getExclusive());
this.setBusiType(commonCouponBasicDto.getBusiType());
this.setCouType(commonCouponBasicDto.getCouType());
this.setBindType(commonCouponBasicDto.getBindType());
this.setDiscount(commonCouponBasicDto.getDiscount());
this.setValFace(commonCouponBasicDto.getValFace());
this.setValOver(commonCouponBasicDto.getValOver());
this.setValMinus(commonCouponBasicDto.getValMinus());
this.setOverlay(commonCouponBasicDto.getOverlay());
this.setOverlayLevel(commonCouponBasicDto.getOverlayLevel());
this.setValidity(commonCouponBasicDto.getValidity());
this.setRedeemValidity(commonCouponBasicDto.getRedeemValidity());
this.setRedeemStart(commonCouponBasicDto.getRedeemStart());
this.setRedeemStop(commonCouponBasicDto.getRedeemStop());
this.setEffectAt(commonCouponBasicDto.getEffectAt());
this.setExpireAt(commonCouponBasicDto.getExpireAt());
this.setUcouponId(uCouponId);
this.setUid(uid);
this.setState(1);
this.setBindAt(LocalDateTime.now());
this.setUseRules(commonCouponBasicDto.getUseRules());
return this;
}
} }
package com.liquidnet.service.kylin.dao;
import lombok.Data;
@Data
public class PerformanceSimpleAllDao {
// //演出数据
private String performancesId;
// private String performanceTitle;
//场次数据
private String timeId;
private String timeTitle;
//票务数据
private String ticketId;
private String ticketTitle;
}
...@@ -30,6 +30,9 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> { ...@@ -30,6 +30,9 @@ public interface KylinPerformancesMapper extends BaseMapper<KylinPerformances> {
//根据巡演查询 通过审核演出列表 //根据巡演查询 通过审核演出列表
List<PerformanceTitleDao> misTitleByStatusList(@Param("status") String status, @Param("title") String title); List<PerformanceTitleDao> misTitleByStatusList(@Param("status") String status, @Param("title") String title);
//根据演出id 搜索到下面全部场次票
List<PerformanceSimpleAllDao> misPerformanceDetail(List<String> performanceList);
//推荐列表 //推荐列表
List<PerformanceRecommendAdminDao> reCommendPerformanceList(); List<PerformanceRecommendAdminDao> reCommendPerformanceList();
......
...@@ -47,6 +47,15 @@ ...@@ -47,6 +47,15 @@
<result column="title" property="title"/> <result column="title" property="title"/>
</resultMap> </resultMap>
<resultMap id="PerformanceSimpleAllDaoResult" type="com.liquidnet.service.kylin.dao.PerformanceSimpleAllDao">
<result column="performances_id" property="performancesId"/>
<result column="title" property="title"/>
<result column="tickets_id" property="ticketId"/>
<result column="ticket_title" property="ticketTitle"/>
<result column="ticket_times_id" property="timeId"/>
<result column="time_title" property="timeTitle"/>
</resultMap>
<resultMap id="performanceRecommendDaoResult" type="com.liquidnet.service.kylin.dao.PerformanceRecommendDao"> <resultMap id="performanceRecommendDaoResult" type="com.liquidnet.service.kylin.dao.PerformanceRecommendDao">
<result column="performances_id" property="performancesId"/> <result column="performances_id" property="performancesId"/>
<result column="title" property="title"/> <result column="title" property="title"/>
...@@ -321,6 +330,30 @@ ...@@ -321,6 +330,30 @@
</where> </where>
LIMIT 20 LIMIT 20
</select> </select>
<!-- Mis 根据状态查询演出列表复杂 -->
<select id="misPerformanceDetail" resultMap="PerformanceSimpleAllDaoResult">
SELECT
performances_id,
p.title,
tt.ticket_times_id,
tt.title,
t.tickets_id,
t.title
FROM kylin_performances AS p
INNER JOIN kylin_performance_status AS ps ON ps.performance_id = p.performances_id
INNER JOIN kylin_performance_relations AS pr ON pr.performance_id = p.performances_id
INNER JOIN kylin_ticket_time_relation AS ttr ON ttr.performance_id = p.performances_id
INNER JOIN kylin_ticket_times AS tt ON tt.ticket_times_id = ttr.times_id
INNER JOIN kylin_ticket_relations AS tr ON tr.times_id = ttr.times_id
INNER JOIN kylin_tickets AS t ON t.tickets_id = tr.ticket_id
<where>
<foreach collection="performanceList" item="performanceIds" index="index" open="(" close=")" separator=",">
${performanceIds}
</foreach>
</where>
ORDER BY performances_id desc
LIMIT 20
</select>
<!-- Mis演出推荐列表 --> <!-- Mis演出推荐列表 -->
<select id="reCommendPerformanceList" resultMap="PerformanceRecommendAdminDaoResult"> <select id="reCommendPerformanceList" resultMap="PerformanceRecommendAdminDaoResult">
SELECT performances_id, SELECT performances_id,
......
...@@ -3,6 +3,7 @@ package com.liquidnet.service.candy.util; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.candy.util;
import com.liquidnet.common.cache.redis.util.RedisUtil; import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.candy.constant.CandyRedisConst; import com.liquidnet.service.candy.constant.CandyRedisConst;
import com.liquidnet.service.candy.dto.CandyCommonCouponBasicDto;
import com.liquidnet.service.candy.dto.CandyCouponCodeDto; import com.liquidnet.service.candy.dto.CandyCouponCodeDto;
import com.liquidnet.service.candy.dto.CandyCouponInfoDto; import com.liquidnet.service.candy.dto.CandyCouponInfoDto;
import com.liquidnet.service.candy.dto.CandyUserCouponBasicDto; import com.liquidnet.service.candy.dto.CandyUserCouponBasicDto;
...@@ -28,7 +29,7 @@ public class RedisDataUtils { ...@@ -28,7 +29,7 @@ public class RedisDataUtils {
Object obj2 = redisUtil.get(publicRedisKey); Object obj2 = redisUtil.get(publicRedisKey);
List<CandyUserCouponBasicDto> userDto; List<CandyUserCouponBasicDto> userDto;
List<CandyUserCouponBasicDto> pubDto; List<CandyCommonCouponBasicDto> pubDto;
if (obj == null) { if (obj == null) {
//降级 //降级
userDto = new ArrayList(); userDto = new ArrayList();
...@@ -40,16 +41,16 @@ public class RedisDataUtils { ...@@ -40,16 +41,16 @@ public class RedisDataUtils {
//降级 //降级
pubDto = new ArrayList(); pubDto = new ArrayList();
} else { } else {
pubDto = (List<CandyUserCouponBasicDto>) obj2; pubDto = (List<CandyCommonCouponBasicDto>) obj2;
} }
List<String> userIds = userDto.stream().map(CandyUserCouponBasicDto::getCcouponId).collect(Collectors.toList()); List<String> userIds = userDto.stream().map(CandyUserCouponBasicDto::getCcouponId).collect(Collectors.toList());
for (CandyUserCouponBasicDto item : pubDto) { for (CandyCommonCouponBasicDto item : pubDto) {
if (userIds.contains(item.getCcouponId())) { if (userIds.contains(item.getCcouponId())) {
continue; continue;
} else { } else {
item.setUcouponId(IDGenerator.get32UUID()); CandyUserCouponBasicDto userCouponBasicDto = CandyUserCouponBasicDto.getNew().copyToRedisCommonBaseCoupon(IDGenerator.get32UUID(),uid,item);
userDto.add(item); userDto.add(userCouponBasicDto);
} }
} }
return userDto; return userDto;
......
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