Commit 95ffddb5 by 曾经

集团后台 到期提醒 商户到期

parent a4fef048
<template> <template>
<el-dialog title="查看服务到期时间" :visible.sync="visible" width="600px" @close="onClose"> <el-dialog title="查看服务到期时间" :visible.sync="visible" width="600px" @close="onClose">
<el-table :data="list" max-height="700"> <el-table :data="list" max-height="700">
<el-table-column label="服务" prop="serviceName"></el-table-column> <el-table-column label="服务" prop="enterpriseName"></el-table-column>
<el-table-column label="到期时间" prop="expireDayStr"></el-table-column> <el-table-column label="到期时间" prop="expireDayStr"></el-table-column>
</el-table> </el-table>
</el-dialog> </el-dialog>
......
...@@ -17,13 +17,13 @@ ...@@ -17,13 +17,13 @@
</div> </div>
</div> </div>
</el-alert> </el-alert>
<expire-dialog :visible.sync="showDialog" :list="otherExpireServices"></expire-dialog> <expire-dialog :visible.sync="showDialog" :list="expireEnterprises"></expire-dialog>
</div> </div>
</template> </template>
<script> <script>
import ExpireDialog from './expire-dialog.vue'; import ExpireDialog from './expire-dialog.vue';
import { getAccountStateInfo, getExpireData } from './request.js'; import { getAccountStateInfo, getExpireExterprise } from './request.js';
export default { export default {
name: 'Notice', name: 'Notice',
inject: ['projectName'], inject: ['projectName'],
...@@ -39,7 +39,7 @@ export default { ...@@ -39,7 +39,7 @@ export default {
show: false show: false
}, },
showDialog: false, showDialog: false,
otherExpireServices: [] enterpriseSubExpireInfos: []
}; };
}, },
created() { created() {
...@@ -66,38 +66,79 @@ export default { ...@@ -66,38 +66,79 @@ export default {
}); });
}, },
loadExpireData() { loadExpireData() {
let service = { let dmUserInfo = JSON.parse(localStorage.getItem('dmUserInfo')) || {};
serviceType: 11, if(!dmUserInfo.superAdmin){
serviceName: '集团商户' return;
}; }
let serviceType = service.serviceType; getExpireExterprise().then((res) => {
getExpireData({
serviceType
}).then((res) => {
const { errorCode, result } = res.data || {}; const { errorCode, result } = res.data || {};
if (errorCode != 0) return; if (errorCode != 0) return;
let { otherExpireServices, expireStatus, expireDayStr, allExpire, clique } = result; let { totalCount, expireEnterprises } = result;
otherExpireServices = otherExpireServices || []; expireEnterprises = expireEnterprises || [];
let name = serviceType == 11 ? (clique ? (allExpire ? '集团商户' : '集团下部分商户') : service.serviceName) : service.serviceName; if(!expireEnterprises.length){
if (expireStatus == 1) { return;
this.expireTip.content = `${name}将于 ${expireDayStr || ''} 到期,到期后将被冻结无法登录,请及时联系运营人员续费。`; }
this.expireTip.show = true; let name = '集团商户';
} else if (otherExpireServices.length) { let expireDayStr;
this.expireTip.content = `${otherExpireServices[0].serviceName}将于 ${otherExpireServices[0].expireDayStr} 到期,到期后功能无法使用,请及时联系运营人员续费。`; let all = 1;
this.expireTip.show = true; expireEnterprises.forEach(item=>{
if(!expireDayStr){
expireDayStr = item.expireDayStr;
return
}
if(item.expireDayStr != expireDayStr){
all = 0;
}
if(item.expireDayStr < expireDayStr){
expireDayStr = item.expireDayStr;
}
})
if(!all || totalCount > expireEnterprises.length){
name = '集团下部分商户';
} }
this.expireTip.showButton = otherExpireServices.length && serviceType == 11; if(!expireDayStr){
this.otherExpireServices = otherExpireServices || []; return;
let dmUserInfo = JSON.parse(localStorage.getItem('dmUserInfo')) || {};
if (serviceType == 11 && !dmUserInfo.superAdmin) {
this.expireTip.show = false;
} }
let expireDate = new Date(expireDayStr);
expireDayStr = this.formatDate(expireDate,'yyyy-MM-dd');
expireDayStr = (expireDayStr == this.formatDate(new Date(),'yyyy-MM-dd') ? '今日 23:59:59' : expireDayStr);
this.expireTip = {
content: `${name}将于 ${expireDayStr || ''} 到期,到期后将被冻结无法登录,请及时联系运营人员续费。`,
show: dmUserInfo.superAdmin ? true : false,
showButton: expireEnterprises.length,
};
this.expireEnterprises = expireEnterprises;
if (this.expireTip.show) { if (this.expireTip.show) {
this.updateNoticeShow(); this.updateNoticeShow();
} }
console.log('this.expireTip----->', this.expireTip);
}); });
}, },
formatDate(date,fmt){
var o = {
"M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日
"H+": date.getHours(), //小时
"m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒
"q+": Math.floor((date.getMonth() + 3) / 3), //季度
S: date.getMilliseconds(), //毫秒
};
if (/(y+)/.test(fmt)){
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + "").substr(4 - RegExp.$1.length)
);
}
for (let k in o){
if (new RegExp("(" + k + ")").test(fmt)){
fmt = fmt.replace(
RegExp.$1,
RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)
);
}
}
return fmt;
},
updateNoticeShow() { updateNoticeShow() {
if (this.showNotice) return; if (this.showNotice) return;
this.showNotice = true; this.showNotice = true;
......
...@@ -43,6 +43,12 @@ function getUserInfo() { ...@@ -43,6 +43,12 @@ function getUserInfo() {
}); });
} }
export function getExpireExterprise(){
return getRequest('/api-admin/get_expire_enterprise', {
requestProject: 'gic-clique'
})
}
export function getExpireData(params) { export function getExpireData(params) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getUserInfo() getUserInfo()
......
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