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

Commit 7c33a6d4 authored by jiangxiulong's avatar jiangxiulong

中奖列表 导出

parent 66f61300
package com.liquidnet.service.sweet.dto.param.admin;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* SweetIntegralActivityDrawListSearchParam
* </p>
*
* @author jiangxiulong
* @since 2021-10-22
*/
@Data
@ApiModel(value = "SweetIntegralActivityDrawListSearchParam", description = "积分活动中奖列表搜索入参")
public class SweetIntegralActivityDrawListSearchParam implements Serializable {
private static final long serialVersionUID = 1309409469948421735L;
@ApiModelProperty(value = "integralActivityId", example = "0")
private String integralActivityId;
@ApiModelProperty(value = "页数", example = "0")
private Integer pageSize;
@ApiModelProperty(value = "数量", example = "20")
private Integer pageNum;
}
package com.liquidnet.client.admin.web.controller.zhengzai.sweet;
import com.github.pagehelper.PageInfo;
import com.liquidnet.client.admin.common.annotation.Log;
import com.liquidnet.client.admin.common.core.controller.BaseController;
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.common.utils.poi.ExcelUtil;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderExpressExportExcelListDao;
import com.liquidnet.client.admin.zhengzai.sweet.service.ISweetIntegralActivityDrawService;
import com.liquidnet.service.kylin.dao.OrderExpressExportListDao;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityDrawListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityDraw;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 积分活动抽奖记录表 前端控制器
* </p>
*
* @author jiangxiulong
* @since 2021-10-22
*/
@Api(tags = "积分活动管理")
@Validated
@Controller
@RequestMapping("/sweet/IntegralActivityDraw")
public class SweetIntegralActivityDrawController extends BaseController {
private String prefix = "zhengzai/sweet/integralActivityDraw";
@Autowired
private ISweetIntegralActivityDrawService iSweetIntegralActivityDrawService;
@Log(title = "积分活动中奖列表数据", businessType = BusinessType.LIST)
@RequiresPermissions("sweet:integralActivityDraw:list")
@ApiOperation(value = "积分活动列表数据")
@PostMapping("list")
@ResponseBody
public TableDataInfo list(SweetIntegralActivityDrawListSearchParam listParam) {
PageInfo<SweetIntegralActivityDraw> result = iSweetIntegralActivityDrawService.drawList(listParam);
return getDataTable(result.getList());
}
@Log(title = "积分活动导出中奖列表数据", businessType = BusinessType.EXPORT)
@RequiresPermissions("kylin:integralActivityDraw:exportExcel")
@PostMapping("/export")
@ResponseBody
public AjaxResult export(@RequestParam("ids") String integralActivityId) {
List<OrderExpressExportListDao> list = iSweetIntegralActivityDrawService.selectExpressList(integralActivityId);
ExcelUtil<OrderExpressExportExcelListDao> excelUtil = new ExcelUtil<>(OrderExpressExportExcelListDao.class);
List<OrderExpressExportExcelListDao> excelList = new ArrayList<>();
list.forEach(r -> {
excelList.add(OrderExpressExportExcelListDao.getNew().copy(r));
});
return excelUtil.exportExcel(excelList, "积分活动导出中奖列表数据");
}
@GetMapping("listView/{id}")
@ApiOperation(value = "积分活动中奖列表view")
public String listView(@PathVariable("id") String id, ModelMap mmap) {
mmap.put("integralActivityId", id);
return prefix + "/list";
}
}
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
<th:block th:include="include :: header('添加活动')"/>
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-post-add">
<div class="form-group">
<label class="col-sm-2 control-label is-required">标题:</label>
<div class="col-sm-10">
<input class="form-control" type="text" name="activityTitle" required>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer"/>
<script type="text/javascript">
var prefix = ctx + "sweet/sweetIntegralActivity";
</script>
</body>
</html>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head> <head>
<th:block th:include="include :: header('积分活动列表')"/> <th:block th:include="include :: header('积分活动中奖列表')"/>
</head> </head>
<body class="gray-bg"> <body class="gray-bg">
<div class="container-div"> <div class="container-div">
...@@ -10,26 +10,22 @@ ...@@ -10,26 +10,22 @@
<form id="formId"> <form id="formId">
<div class="select-list"> <div class="select-list">
<ul> <ul>
<li> <input hidden type="text" name="integralActivityId" th:value="${integralActivityId}">
<!--<li>
<label>活动名称:</label> <label>活动名称:</label>
<input type="text" name="activityTitle"/> <input type="text" name="activityTitle"/>
</li> </li>-->
<li> <!--<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i
class="fa fa-search"></i>&nbsp;搜索</a> class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i
class="fa fa-refresh"></i>&nbsp;重置</a> class="fa fa-refresh"></i>&nbsp;重置</a>
</li> </li>-->
</ul> </ul>
</div> </div>
</form> </form>
</div> </div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="sweet:integralActivity:create">
<i class="fa fa-plus"></i> 添加
</a>
</div>
<div class="col-sm-12 select-table table-bordered"> <div class="col-sm-12 select-table table-bordered">
<table id="bootstrap-table"></table> <table id="bootstrap-table"></table>
</div> </div>
...@@ -37,74 +33,43 @@ ...@@ -37,74 +33,43 @@
</div> </div>
<th:block th:include="include :: footer"/> <th:block th:include="include :: footer"/>
<script th:inline="javascript"> <script th:inline="javascript">
var updateFlag = [[${@permission.hasPermi('sweet:integralActivity:create')}]]; var receivingStatusFlag = [[${@permission.hasPermi('sweet:IntegralActivityDraw:receivingStatus')}]];
var isOnlineFlag = [[${@permission.hasPermi('sweet:integralActivity:isOnline')}]];
var drawListFlag = [[${@permission.hasPermi('sweet:integralActivityDraw:list')}]];
var prefix = ctx + "sweet/integralActivity"; var prefix = ctx + "sweet/IntegralActivityDraw";
$(function () { $(function () {
var options = { var options = {
url: prefix + "/list", url: prefix + "/list",
updateUrl: prefix + "/formView", // /update/{id} modalName: "积分活动中奖记录",
createUrl: prefix + "/formView",
detailUrl: prefix + "/sweet/integralActivityDraw/drawList/{id}",
modalName: "积分活动",
columns: [{ columns: [{
checkbox: true checkbox: true
}, },
{ {
field: 'activityTitle', field: 'prizeId',
title: '活动名称' title: 'prize_id'
}, },
{ {
field: 'activityImg', field: 'userId',
title: '活动图片', title: 'user_id'
formatter: function(value, row, index) {
return $.table.imageView(value,"300", "600");
}
}, },
{ {
field: 'activityType', field: 'receivingAddressesId',
title: '活动类型', title: 'receiving_addresses_id'
formatter: function (value, row) {
var activityType = row.activityType;
if (row.activityType == 1) {
activityType = "转盘";
} else {
activityType = "未知";
}
return activityType;
}
}, },
{ {
field: 'prizeNum', field: 'receivingName',
title: '奖品数量' title: 'receiving_name'
}, },
{ {
field: 'drawNum', field: 'receivingPhone',
title: '已发出' title: 'receiving_phone'
}, },
{ {
field: '', field: 'receivingAddress',
title: '奖品剩余', title: 'receiving_address'
formatter: function (value, row) {
var prizeNum = row.prizeNum;
var drawNum = row.drawNum;
return prizeNum - drawNum;
}
}, },
{ {
field: 'isOnline', field: 'receivingStatus',
title: '活动状态', title: 'receiving_status'
formatter: function (value, row) {
var isOnline = row.isOnline;
if (row.isOnline == 1) {
isOnline = "未上线";
} else {
isOnline = "已上线";
}
return isOnline;
}
}, },
{ {
field: 'createdAt', field: 'createdAt',
...@@ -115,9 +80,7 @@ ...@@ -115,9 +80,7 @@
align: 'center', align: 'center',
formatter: function (value, row, index) { formatter: function (value, row, index) {
var actions = []; 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-danger btn-xs ' + receivingStatusFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.drawId + '\')"></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(''); return actions.join('');
} }
}] }]
......
package com.liquidnet.client.admin.zhengzai.sweet.service;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.kylin.dao.OrderExpressExportListDao;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityDrawListSearchParam;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityDraw;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* <p>
* 积分活动抽奖记录表 服务类
* </p>
*
* @author jiangxiulong
* @since 2021-10-22
*/
public interface ISweetIntegralActivityDrawService extends IService<SweetIntegralActivityDraw> {
PageInfo<SweetIntegralActivityDraw> drawList(SweetIntegralActivityDrawListSearchParam listParam);
List<OrderExpressExportListDao> selectExpressList(String integralActivityId);
}
package com.liquidnet.client.admin.zhengzai.sweet.service.impl;
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.ISweetIntegralActivityDrawService;
import com.liquidnet.service.kylin.dao.OrderExpressExportListDao;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityDrawListSearchParam;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityDraw;
import com.liquidnet.service.sweet.mapper.SweetIntegralActivityDrawMapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 积分活动抽奖记录表 服务实现类
* </p>
*
* @author jiangxiulong
* @since 2021-10-22
*/
@Service
public class SweetIntegralActivityDrawServiceImpl extends ServiceImpl<SweetIntegralActivityDrawMapper, SweetIntegralActivityDraw> implements ISweetIntegralActivityDrawService {
@Autowired
private SweetIntegralActivityDrawMapper sweetIntegralActivityDrawMapper;
@Override
public PageInfo<SweetIntegralActivityDraw> drawList(SweetIntegralActivityDrawListSearchParam listParam) {
PageHelper.startPage(listParam.getPageNum(), listParam.getPageSize());
List<SweetIntegralActivityDraw> sweetIntegralActivityDraws = sweetIntegralActivityDrawMapper.selectList(
Wrappers.lambdaQuery(SweetIntegralActivityDraw.class).eq(SweetIntegralActivityDraw::getIntegralActivityId, listParam.getIntegralActivityId())
);
return new PageInfo(sweetIntegralActivityDraws);
}
@Override
public List<OrderExpressExportListDao> selectExpressList(String integralActivityId) {
return null;
}
}
...@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.annotation.IdType; ...@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.io.Serializable; import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
...@@ -57,11 +60,13 @@ public class SweetIntegralActivityDraw implements Serializable, Cloneable { ...@@ -57,11 +60,13 @@ public class SweetIntegralActivityDraw implements Serializable, Cloneable {
/** /**
* 创建时间 * 创建时间
*/ */
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt; private LocalDateTime createdAt;
/** /**
* 更新时间 * 更新时间
*/ */
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime updatedAt; private LocalDateTime updatedAt;
private static final SweetIntegralActivityDraw obj = new SweetIntegralActivityDraw(); private static final SweetIntegralActivityDraw obj = new SweetIntegralActivityDraw();
......
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