/**
|
* 代检车车检点管理初始化
|
*/
|
var TCheckCarActivity = {
|
id: "TCheckCarActivityTable", //表格id
|
seItem: null, //选中的条目
|
table: null,
|
layerIndex: -1,
|
roleType: '2',
|
};
|
|
/**
|
* 初始化表格的列
|
*/
|
TCheckCarActivity.initColumn = function () {
|
return [
|
{field: 'selectItem', radio: true},
|
{title: '序号', field: 'id', visible: true, align: 'center', valign: 'middle',
|
formatter: function (value, row, index) {
|
return index + 1;
|
}
|
},
|
{title: '活动名称', field: 'name', visible: true, align: 'center', valign: 'middle'},
|
{title: '所属分公司', field: 'branchOfficeName', visible: true, align: 'center', valign: 'middle'},
|
{title: '开始时间', field: 'startTime', visible: true, align: 'center', valign: 'middle'},
|
{title: '结束时间', field: 'endTime', visible: true, align: 'center', valign: 'middle'},
|
{title: '活动区域', field: 'provinceName', visible: true, align: 'center', valign: 'middle',
|
formatter: function (value, row, index) {
|
return row.provinceName + '-' + row.cityName + '-' + row.districtName;
|
}
|
},
|
{title: '优惠券数量', field: 'couponNum', visible: true, align: 'center', valign: 'middle'},
|
{title: '优惠券面额', field: 'couponAmount', visible: true, align: 'center', valign: 'middle',
|
formatter: function (value, row, index) {
|
return '¥' + row.couponAmount;
|
}
|
},
|
{title: '活动状态', field: 'activityStatus', visible: true, align: 'center', valign: 'middle',
|
formatter: function (value, row, index) {
|
if (row.auditStatus == 0) {
|
return '待审核';
|
} else if (row.auditStatus == 2) {
|
return '平台驳回';
|
} else {
|
return {0:"等待开始", 1:"进行中", 2:"已结束",3:"已暂停"}[row.activityStatus];
|
}
|
|
}
|
},
|
{title: '操作', field: 'operate', visible: true, align: 'center', valign: 'middle',width:'10%',
|
formatter:function (value, row) {
|
// 判断是否为平台审核页面
|
var isAuditPage = TCheckCarActivity.roleType == '1';
|
|
let btn = '<a href="#" onclick="TCheckCarActivity.openTCheckCarActivityDetail(' + row.id + ')" style="color:blue">详情</a>' + ' ';
|
|
if (isAuditPage) {
|
// 平台审核页面的操作逻辑
|
if (row.auditStatus === 0) {
|
// 待审核状态:详情 + 审核按钮
|
btn += '<a href="#" onclick="TCheckCarActivity.audit(' + row.id + ')" style="color:blue">审核</a>';
|
} else if (row.auditStatus === 2) {
|
// 平台驳回状态:详情 + 删除
|
btn += '<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>';
|
} else if (row.auditStatus === 1) {
|
// 审核通过状态:和分公司页面一样的逻辑
|
if (row.activityStatus === 0) {
|
btn += '<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>';
|
} else if (row.activityStatus === 1) {
|
btn += '<a href="#" onclick="TCheckCarActivity.pause(' + row.id + '+' + 1 + ')" style="color:blue">暂停活动</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a>';
|
} else if (row.activityStatus === 3) {
|
btn += '<a href="#" onclick="TCheckCarActivity.pause(' + row.id + '+' + 0 + ')" style="color:blue">开启活动</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a>';
|
} else if (row.activityStatus === 2) {
|
btn += '<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>';
|
}
|
}
|
} else {
|
// 分公司页面的原有逻辑
|
if (row.auditStatus === 1 && row.activityStatus === 0) {
|
btn += '<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>';
|
} else if (row.auditStatus === 1 && row.activityStatus === 1) {
|
btn += '<a href="#" onclick="TCheckCarActivity.pause(' + row.id + '+' + 1 + ')" style="color:blue">暂停活动</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a>';
|
}else if (row.auditStatus === 1 && row.activityStatus === 3) {
|
btn += '<a href="#" onclick="TCheckCarActivity.pause(' + row.id + '+' + 0 + ')" style="color:blue">开启活动</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.openQrPage(\'' + row.qrCode + '\')" style="color:blue">二维码</a>';
|
} else if (row.auditStatus === 1 && row.activityStatus === 2) {
|
btn += '<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>'
|
}else if (row.auditStatus === 2) {
|
btn += '<a href="#" onclick="TCheckCarActivity.openTCheckCarActivityUpdate(' + row.id + ')" style="color:blue">编辑</a> ' +
|
'<a href="#" onclick="TCheckCarActivity.delete(' + row.id + ')" style="color:blue">删除</a>'
|
}
|
}
|
return btn;
|
}
|
}
|
];
|
};
|
|
/**
|
* 检查是否选中
|
*/
|
TCheckCarActivity.check = function () {
|
var selected = $('#' + this.id).bootstrapTable('getSelections');
|
if(selected.length == 0){
|
Feng.info("请先选中表格中的某一记录!");
|
return false;
|
}else{
|
TCheckCarActivity.seItem = selected[0];
|
return true;
|
}
|
};
|
|
/**
|
* 点击添加代检车车检点
|
*/
|
TCheckCarActivity.openAddTCheckCarActivity = function () {
|
var index = layer.open({
|
type: 2,
|
title: '添加代检车车检点',
|
area: ['100%', '100%'], //宽高
|
fix: false, //不固定
|
maxmin: true,
|
content: Feng.ctxPath + '/tCheckCarActivity/tCheckCarActivity_add'
|
});
|
this.layerIndex = index;
|
};
|
|
/**
|
* 打开查看代检车车检点详情
|
*/
|
TCheckCarActivity.openTCheckCarActivityDetail = function (id) {
|
var index = layer.open({
|
type: 2,
|
title: '代检车活动详情',
|
area: ['100%', '100%'], //宽高
|
fix: false, //不固定
|
maxmin: true,
|
content: Feng.ctxPath + '/tCheckCarActivity/tCheckCarActivity_detail/' + id
|
});
|
this.layerIndex = index;
|
};
|
/**
|
* 打开编辑页面m
|
* @param id
|
*/
|
TCheckCarActivity.openTCheckCarActivityUpdate = function (id) {
|
var index = layer.open({
|
type: 2,
|
title: '编辑代检车活动',
|
area: ['100%', '100%'], //宽高
|
fix: false, //不固定
|
maxmin: true,
|
content: Feng.ctxPath + '/tCheckCarActivity/tCheckCarActivity_update/' + id
|
});
|
this.layerIndex = index;
|
};
|
|
/**
|
* 删除代检车车检点
|
*/
|
TCheckCarActivity.delete = function (id) {
|
swal({
|
title: "您是否确认删除" + "?",
|
text: "请谨慎操作,删除后数据无法恢复!",
|
type: "warning",
|
showCancelButton: true,
|
confirmButtonColor: "#DD6B55",
|
confirmButtonText: "删除",
|
closeOnConfirm: true
|
}, function () {
|
var ajax = new $ax(Feng.ctxPath + "/tCheckCarActivity/delete", function (data) {
|
Feng.success("删除成功!");
|
TCheckCarActivity.table.refresh();
|
}, function (data) {
|
Feng.error("删除失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set("tCheckCarActivityId", id);
|
ajax.start();
|
});
|
};
|
|
/**
|
* 查看二维码
|
* @param qrCode 二维码图片地址
|
*/
|
TCheckCarActivity.openQrPage = function (qrCode) {
|
// 验证二维码地址
|
if (!qrCode || qrCode.trim() === '') {
|
Feng.error("二维码地址为空!");
|
return;
|
}
|
|
// 构建弹窗HTML内容
|
var qrCodeHtml = '<div style="text-align: center; padding: 20px;">' +
|
'<div id="qrcode-container" style="margin-bottom: 20px;">' +
|
'<img id="qrcode-img" src="' + qrCode + '" style="width: 300px; height: 300px; border: 1px solid #ddd;" alt="二维码" />' +
|
'</div>' +
|
'<button id="download-qr-btn" type="button" class="btn btn-primary" style="margin-top: 10px;">' +
|
'下载二维码图片</button>' +
|
'</div>';
|
|
// 打开弹窗
|
var index = layer.open({
|
type: 1,
|
title: '二维码查看',
|
area: ['400px', '500px'],
|
fix: false,
|
maxmin: true,
|
content: qrCodeHtml,
|
success: function(layero, index) {
|
// 绑定下载按钮事件
|
$('#download-qr-btn').click(function() {
|
TCheckCarActivity.downloadQrCode(qrCode);
|
});
|
|
// 图片加载失败处理
|
$('#qrcode-img').on('error', function() {
|
$(this).attr('alt', '二维码加载失败');
|
$(this).css({'background-color': '#f5f5f5', 'line-height': '300px'});
|
});
|
}
|
});
|
this.layerIndex = index;
|
};
|
|
/**
|
* 下载二维码图片
|
* @param qrCode 二维码图片地址
|
*/
|
TCheckCarActivity.downloadQrCode = function(qrCode) {
|
try {
|
if (!qrCode) {
|
Feng.error("二维码地址无效,无法下载!");
|
return;
|
}
|
|
// 创建下载链接
|
var link = document.createElement('a');
|
link.download = '二维码_' + new Date().getTime() + '.png';
|
link.href = qrCode;
|
link.target = '_blank';
|
|
// 触发下载
|
document.body.appendChild(link);
|
link.click();
|
document.body.removeChild(link);
|
|
Feng.success("二维码图片下载成功!");
|
} catch (e) {
|
console.error('下载二维码失败:', e);
|
Feng.error("下载失败!请重试。");
|
}
|
};
|
|
/**
|
* 暂停/开启活动
|
* @param id 活动ID
|
*/
|
TCheckCarActivity.pause = function (id, status) {
|
if (!id) {
|
Feng.error("活动ID不能为空!");
|
return;
|
}
|
|
Feng.confirm("确定要切换活动状态吗?", function () {
|
var ajax = new $ax(Feng.ctxPath + "/tCheckCarActivity/pause", function (data) {
|
Feng.success("操作成功!");
|
TCheckCarActivity.table.refresh();
|
}, function (data) {
|
Feng.error("操作失败!" + (data.responseJSON ? data.responseJSON.message : "") + "!");
|
});
|
ajax.set("tCheckCarActivityId", id);
|
ajax.start();
|
});
|
};
|
|
/**
|
* 审核活动
|
* @param id 活动ID
|
*/
|
TCheckCarActivity.audit = function (id) {
|
if (!id) {
|
Feng.error("活动ID不能为空!");
|
return;
|
}
|
|
var index = layer.open({
|
type: 2,
|
title: '审核代检车活动',
|
area: ['100%', '100%'], //宽高
|
fix: false, //不固定
|
maxmin: true,
|
content: Feng.ctxPath + '/tCheckCarActivity/tCheckCarActivity_audit_detail/' + id
|
});
|
this.layerIndex = index;
|
};
|
|
/**
|
* 查询代检车车检点列表
|
*/
|
TCheckCarActivity.search = function () {
|
var queryData = {};
|
queryData['createTime'] = $("#createTime").val();
|
queryData['branchOfficeName'] = $("#branchOfficeName").val();
|
queryData['name'] = $("#activityName").val();
|
queryData['activityAreaCode'] = $("#activityAreaCode").val();
|
queryData['status'] = $("#status").val();
|
TCheckCarActivity.table.refresh({query: queryData});
|
};
|
/**
|
* 重置
|
*/
|
TCheckCarActivity.resetSearch = function (){
|
$("#createTime").val('');
|
$("#branchOfficeName").val('');
|
$("#name").val('');
|
$("#activityAreaCode").val('');
|
$("#status").val('');
|
TCheckCarActivity.search();
|
}
|
$(function () {
|
var defaultColunms = TCheckCarActivity.initColumn();
|
var table = new BSTable(TCheckCarActivity.id, "/tCheckCarActivity/list", defaultColunms);
|
table.setPaginationType("server");
|
TCheckCarActivity.table = table.init();
|
});
|