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

Commit f3b69670 authored by jiangxiulong's avatar jiangxiulong

活动list

parent 7a65a54d
......@@ -7,10 +7,10 @@ import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.zhengzai.sweet.service.ISweetIntegralActivityService;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.vo.admin.SweetIntegralActivityVo;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
......@@ -112,7 +112,7 @@ public class SweetIntegralActivityController extends BaseController {
@PostMapping("list")
@ResponseBody
public TableDataInfo list(SweetIntegralActivityListSearchParam listParam) {
PageInfo<SweetIntegralActivity> result = iSweetIntegralActivityService.list(listParam);
PageInfo<SweetIntegralActivityDto> result = iSweetIntegralActivityService.list(listParam);
return getDataTable(result.getList());
}
......
......@@ -39,13 +39,15 @@
<script th:inline="javascript">
var updateFlag = [[${@permission.hasPermi('sweet:integralActivity:create')}]];
var isOnlineFlag = [[${@permission.hasPermi('sweet:integralActivity:isOnline')}]];
var drawListFlag = [[${@permission.hasPermi('sweet:integralActivityDraw:list')}]];
var prefix = ctx + "sweet/integralActivity";
$(function () {
var options = {
url: prefix + "/list",
updateUrl: prefix + "/update/{id}",
updateUrl: prefix + "/formView", // /update/{id}
createUrl: prefix + "/formView",
detailUrl: prefix + "/sweet/integralActivityDraw/drawList/{id}",
modalName: "积分活动",
columns: [{
checkbox: true
......@@ -61,6 +63,49 @@
return $.table.imageView(value,"300", "600");
}
},
{
field: 'activityType',
title: '活动类型',
formatter: function (value, row) {
var activityType = row.activityType;
if (row.activityType == 1) {
activityType = "转盘";
} else {
activityType = "未知";
}
return activityType;
}
},
{
field: 'prizeNum',
title: '奖品数量'
},
{
field: 'drawNum',
title: '已发出'
},
{
field: '',
title: '奖品剩余',
formatter: function (value, row) {
var prizeNum = row.prizeNum;
var drawNum = row.drawNum;
return prizeNum - drawNum;
}
},
{
field: 'isOnline',
title: '活动状态',
formatter: function (value, row) {
var isOnline = row.isOnline;
if (row.isOnline == 1) {
isOnline = "未上线";
} else {
isOnline = "已上线";
}
return isOnline;
}
},
{
field: 'createdAt',
title: '创建时间'
......@@ -70,6 +115,7 @@
align: 'center',
formatter: function (value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + drawListFlag + '" href="javascript:void(0)" onclick="$.operate.detailTab(\'' + row.integralActivityId + '\')"><i class="fa fa-edit"></i>查看中奖名单</a> ');
actions.push('<a class="btn btn-success btn-xs ' + updateFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.integralActivityId + '\')"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + isOnlineFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.integralActivityId + '\')"></i>上下线</a> ');
return actions.join('');
......
......@@ -2,6 +2,7 @@ package com.liquidnet.client.admin.zhengzai.sweet.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.vo.admin.SweetIntegralActivityVo;
......@@ -25,6 +26,6 @@ public interface ISweetIntegralActivityService extends IService<SweetIntegralAct
SweetIntegralActivityVo detail(String integralActivityId);
PageInfo<SweetIntegralActivity> list(SweetIntegralActivityListSearchParam listParam);
PageInfo<SweetIntegralActivityDto> list(SweetIntegralActivityListSearchParam listParam);
}
package com.liquidnet.client.admin.zhengzai.sweet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.liquidnet.client.admin.zhengzai.sweet.service.ISweetIntegralActivityService;
import com.liquidnet.commons.lang.util.BeanUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeFormParam;
......@@ -24,7 +25,6 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
/**
......@@ -138,15 +138,10 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
}
@Override
public PageInfo<SweetIntegralActivity> list(SweetIntegralActivityListSearchParam listParam) {
public PageInfo<SweetIntegralActivityDto> list(SweetIntegralActivityListSearchParam listParam) {
PageHelper.startPage(listParam.getPageNum(), listParam.getPageSize());
LambdaQueryWrapper<SweetIntegralActivity> lambdaQueryWrapper = Wrappers.lambdaQuery(SweetIntegralActivity.class);
if (!listParam.getActivityTitle().isEmpty()) {
lambdaQueryWrapper.like(SweetIntegralActivity::getActivityTitle, listParam.getActivityTitle());
}
List<SweetIntegralActivity> sweetIntegralActivities = sweetIntegralActivityMapper.selectList(lambdaQueryWrapper);
// TODO: 2021/10/20 查询奖品数量 中奖数量计算展示 返回vo
return new PageInfo(sweetIntegralActivities);
List<SweetIntegralActivityDto> voList = sweetIntegralActivityMapper.searchActivityList(listParam.getActivityTitle());
return new PageInfo(voList);
}
}
......@@ -126,7 +126,7 @@ mybatis:
# 搜索指定包别名
typeAliasesPackage: com.liquidnet.service.kylin.**.entity,com.liquidnet.client.admin.**.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath*:mapper/**/*Mapper.xml,classpath:com.liquidnet.service.kylin.mapper/*Mapper.xml,classpath:com.liquidnet.service.adam.mapper/*Mapper.xml
mapperLocations: classpath*:mapper/**/*Mapper.xml,**mapper/**/*Mapper.xml,classpath:com.liquidnet.service.kylin.mapper/*Mapper.xml,classpath:com.liquidnet.service.adam.mapper/*Mapper.xml
# 加载全局的配置文件
configLocation: classpath:mybatis/mybatis-config.xml
......
......@@ -10,5 +10,19 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>liquidnet-service-sweet-do</artifactId>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.10.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.liquidnet</groupId>
<artifactId>liquidnet-common-base</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
\ No newline at end of file
package com.liquidnet.service.sweet.dto;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import java.time.LocalDateTime;
@Data
public class SweetIntegralActivityDto {
/**
* 活动id
*/
private String integralActivityId;
/**
* 活动名称
*/
private String activityTitle;
/**
* 活动图片
*/
private String activityImg;
/**
* 活动类型 1转盘
*/
private Integer activityType;
/**
* 活动时间类型 1长期 2开始结束时间
*/
private Integer timeType;
/**
* 如果活动有时间限制 开始时间
*/
private LocalDateTime startTime;
/**
* 如果活动有时间限制 结束时间
*/
private LocalDateTime endTime;
/**
* 快递费用类型 1包邮 2到付
*/
private Integer expressFeeType;
/**
* 活动规则
*/
private String activityRules;
/**
* 是否上线 1未上线 2已上线
*/
private Integer isOnline;
/**
* 创建时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt;
/**
* 更新时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime updatedAt;
private Integer prizeNum;
private Integer drawNum;
}
package com.liquidnet.service.sweet.mapper;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
......@@ -13,4 +17,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface SweetIntegralActivityMapper extends BaseMapper<SweetIntegralActivity> {
List<SweetIntegralActivityDto> searchActivityList(@Param("activityTitle") String activityTitle);
}
......@@ -2,4 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.liquidnet.service.sweet.mapper.SweetIntegralActivityMapper">
<select id="searchActivityList" resultType="com.liquidnet.service.sweet.dto.SweetIntegralActivityDto">
select a.*,
sum(b.prize_num) as prize_num,
count(c.prize_id) as draw_num
from sweet_integral_activity as a
left join sweet_integral_activity_prize as b on a.integral_activity_id = b.integral_activity_id
left join sweet_integral_activity_draw as c on b.prize_id = c.prize_id
<where>
<if test="activityTitle != null and activityTitle != ''">
and kot.activity_title like concat('%', #{activityTitle}, '%')
</if>
</where>
group by a.integral_activity_id
ORDER BY a.mid DESC
</select>
</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