272 lines
11 KiB
JavaScript
272 lines
11 KiB
JavaScript
import {boroughList, layuiObj,schoolBasicInfo } from "../index.js";
|
||
import { schoolStarRatingHistoryGetlist } from "../orgApi/starRatingHistoryData.js";
|
||
import { getYearOption } from "../centerPage.js";
|
||
let starRatingHistoryList=[];
|
||
function showStarRatingHistoryData(){
|
||
layuiObj.layer.open({
|
||
type: 1,
|
||
title: '星级评定-历史数据', //不显示标题栏
|
||
area: ['1360px', '600px'],
|
||
shade: 0.6,
|
||
id:new Date().getTime(), //设定一个id,防止重复弹出
|
||
btnAlign: 'c',
|
||
moveType: 1, //拖拽模式,0或者1
|
||
content: `<div style="padding:10px;color:#fff;background:#032357;height:calc(100% - 20px);overflow-y:auto;">
|
||
<div class="legalitySchoolInfo">
|
||
<form class="layui-form" action="" id="legalitySchoolForm" lay-filter="legalitySchoolForm" >
|
||
<div class="layui-input-inline">
|
||
<select name="interest" lay-filter="historyYearSelect" id="historyYearSelect" lay-search></select>
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<select name="interest" lay-filter="historyBoroughSelect" id="historyBoroughSelect" lay-search></select>
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<select name="interest" lay-filter="historyStationSelect" id="historyStationSelect" lay-search></select>
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<button class="layui-btn" id="starRatingHistoryBtn" style="height:38px !important;line-height:38px !important;">查询</button>
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<button class="layui-btn" id="starRatingHistoryExportBtn" style="height:38px !important;line-height:38px !important;display:none">导出</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
<div class="staffSignSelectContent">
|
||
<table class="layui-hide" id="starRatingHistoryDataTable" lay-filter="starRatingHistoryDataTable"></table>
|
||
</div>
|
||
</div>`,
|
||
success: function(layero){
|
||
$("#historyYearSelect").html(getYearOption());
|
||
$("#historyBoroughSelect").html(starRatingBoroughSelectOptions());
|
||
$("#historyStationSelect").html(starRatingStationSelectOptions(schoolBasicInfo));
|
||
layuiObj.layuiForm.render("select","legalitySchoolForm")
|
||
addStarRatingHistoryDataEvent();
|
||
var year=$("#historyYearSelect").find("option:selected").val();
|
||
var obj={
|
||
schoolTime:year
|
||
}
|
||
selectYearStarRatingData(obj)
|
||
boroughOptionsChange();
|
||
}
|
||
});
|
||
}
|
||
|
||
//监听borough的改变
|
||
function boroughOptionsChange(){
|
||
layuiObj.layuiForm.on('select(historyBoroughSelect)', function(data){
|
||
var value=data["value"];
|
||
if(value=="000"){
|
||
$("#historyStationSelect").html(starRatingStationSelectOptions(schoolBasicInfo));
|
||
}else{
|
||
var temp=[];
|
||
for(var i=0;i<schoolBasicInfo.length;i++){
|
||
if(value==schoolBasicInfo[i]["borough"]){
|
||
temp.push(schoolBasicInfo[i]);
|
||
}
|
||
}
|
||
$("#historyStationSelect").html(starRatingStationSelectOptions(temp));
|
||
}
|
||
layuiObj.layuiForm.render("select","legalitySchoolForm")
|
||
})
|
||
}
|
||
|
||
function starRatingBoroughSelectOptions(){
|
||
var options=`<option value="000">请选择派出所</option>`;
|
||
for(var i=0;i<boroughList.length;i++){
|
||
var borough=boroughList[i]["borough"]
|
||
options+=`<option value="${borough}">${borough}</option>`;
|
||
}
|
||
return options;
|
||
}
|
||
|
||
function starRatingStationSelectOptions(list){
|
||
var options=`<option value="000">请选择学校</option>`;
|
||
for(var i=0;i<list.length;i++){
|
||
var name=list[i]["name"]
|
||
options+=`<option value="${name}" >${name}</option>`;
|
||
}
|
||
return options;
|
||
}
|
||
|
||
|
||
function addStarRatingHistoryDataEvent(){
|
||
$("#starRatingHistoryBtn").on('click',function(e){
|
||
e.preventDefault();
|
||
var year=$("#historyYearSelect").find("option:selected").val();
|
||
var borough=$("#historyBoroughSelect").find("option:selected").val();
|
||
var station=$("#historyStationSelect").find("option:selected").val();
|
||
var obj={
|
||
schoolTime:year
|
||
}
|
||
if(borough!="000"){
|
||
obj["borough"]=borough
|
||
}
|
||
if(station!="000"){
|
||
obj["station"]=station
|
||
}
|
||
selectYearStarRatingData(obj)
|
||
})
|
||
$("#starRatingHistoryExportBtn").on('click',function(e){
|
||
e.preventDefault();
|
||
export2TroubleExcel();
|
||
})
|
||
}
|
||
|
||
function export2TroubleExcel() {
|
||
var tableName=$("#historyYearSelect").find("option:selected").val()+"校园星级评定数据统计表"
|
||
// 添加表头信息
|
||
let thead = `
|
||
<thead>
|
||
<tr style="font-size:22px;">
|
||
<td colspan="9" style="text-align:center;">校园星级评定数据统计表</td>
|
||
</tr>
|
||
<tr style="font-size:16px;">
|
||
<th>序号</th>
|
||
<th>所属派出所</th>
|
||
<th>校园名称</th>
|
||
<th>自评扣分</th>
|
||
<th>得分</th>
|
||
<th>自评加分</th>
|
||
<th>分局评定扣分</th>
|
||
<th>分局评定加分</th>
|
||
<th>最终得分</th>
|
||
</tr>
|
||
</thead>`;
|
||
var tr=``;
|
||
for(var i=0;i<starRatingHistoryList.length;i++){
|
||
tr+=`<tr style="font-size:16px;" rowspan="2">
|
||
<td>${i+1}</td>
|
||
<td>${starRatingHistoryList[i]["borough"]}</td>
|
||
<td>${starRatingHistoryList[i]["station"]}</td>
|
||
<td>${starRatingHistoryList[i]["ratingBonusStation"]}</td>
|
||
<td
|
||
style="
|
||
background:#fff;
|
||
border:0.5px solid #C3CBDD;
|
||
text-align:center;
|
||
">
|
||
${getStationLevel(starRatingHistoryList[i])}
|
||
</td>
|
||
<td>${starRatingHistoryList[i]["ratingBonusStation"]}</td>
|
||
<td>${starRatingHistoryList[i]["ratingDescriptionBrigade"]}</td>
|
||
<td>${starRatingHistoryList[i]["ratingBonusBrigade"]}</td>
|
||
<td
|
||
style="
|
||
background:#fff;
|
||
border:0.5px solid #C3CBDD;
|
||
text-align:center;
|
||
">${getBrigadeLevel(starRatingHistoryList[i])}</td>
|
||
</tr>`
|
||
}
|
||
// 添加每一行数据
|
||
let tbody = `<tbody>${tr}</tbody>`;
|
||
let table = thead + tbody;
|
||
// 导出表格
|
||
exportToExcel(table,tableName);
|
||
};
|
||
|
||
function selectYearStarRatingData(obj){
|
||
starRatingHistoryList=[];
|
||
schoolStarRatingHistoryGetlist(obj).then(res=>{
|
||
var code=res["data"]["code"];
|
||
if(code==0){
|
||
var data=res["data"]["data"];
|
||
for(var i=0;i<data.length;i++){
|
||
data[i]["index"]=i+1;
|
||
data[i]["scoreTotalBrigade"]=data[i]["scoreTotalBrigade"]/10
|
||
data[i]["ratingBonusBrigade"]=data[i]["ratingBonusBrigade"]/10
|
||
data[i]["ratingBonusStation"]=data[i]["ratingBonusStation"]/10
|
||
data[i]["scoreTotalStation"]=data[i]["scoreTotalStation"]/10
|
||
}
|
||
starRatingHistoryList=data;
|
||
}
|
||
|
||
if(starRatingHistoryList.length==0){
|
||
$("#starRatingHistoryExportBtn").css("display","none");
|
||
}else{
|
||
$("#starRatingHistoryExportBtn").css("display","block");
|
||
}
|
||
showStarRatingHistoryTable();
|
||
})
|
||
}
|
||
|
||
function showStarRatingHistoryTable(){
|
||
layuiObj.layuitable.render({
|
||
elem:'#starRatingHistoryDataTable',
|
||
data:starRatingHistoryList,
|
||
cols:[[
|
||
{field:'index', width:"5%", title: '序号'},
|
||
{field:'borough', width:"15%", title: '所属派出所'},
|
||
{field:'station', width:"10%", title: '校园名称'},
|
||
{field:'ratingDescriptionStation', width:"15%", title: '自评扣分',type:"scoreTotal"},
|
||
{field:'scoreTotalStation', width:"10%", title: '得分',type:"scoreDesire",templet:function(data) {// 替换数据
|
||
return getStationLevel(data)
|
||
}},
|
||
{field:'ratingBonusStation', width:"10%", title: '自评加分',type:"scoreHuman"},
|
||
{field:'ratingDescriptionBrigade', width:"15%", title: '分局评定扣分',type:"scoreDevices"},
|
||
{field:'ratingBonusBrigade', width:"10%", title: '分局评定加分',type:"scoreTech"},
|
||
{field:'scoreTotalBrigade', width:"10%", title: '最终得分',type:"scoreDesire",templet:function(data) {// 替换数据
|
||
return getBrigadeLevel(data)
|
||
}},
|
||
|
||
]],
|
||
limit:Number.MAX_VALUE // 数据表格默认全部显示
|
||
});
|
||
}
|
||
|
||
function getStationLevel(data){
|
||
var levelStation=parseInt(data["levelStation"]);
|
||
switch(levelStation){
|
||
case 1:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(一星)</p>`;
|
||
break;
|
||
case 2:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(二星)</p>`;
|
||
break;
|
||
case 3:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(三星)</p>`;
|
||
break;
|
||
case 4:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(四星)</p>`;
|
||
break;
|
||
case 5:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(五星)</p>`;
|
||
break;
|
||
default:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalStation"]}<br/>(五星)<p/>`;
|
||
break;
|
||
}
|
||
return span;
|
||
}
|
||
|
||
function getBrigadeLevel(data){
|
||
var levelBrigade=parseInt(data["levelBrigade"]);
|
||
switch(levelBrigade){
|
||
case 1:
|
||
var span=`<p style="line-height:27px; ">${data["scoreTotalBrigade"]}<br/>(一星)</p>`;
|
||
break;
|
||
case 2:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalBrigade"]}<br/>(二星)</p>`;
|
||
break;
|
||
case 3:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalBrigade"]}<br/>(三星)</p>`;
|
||
break;
|
||
case 4:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalBrigade"]}<br/>(四星)</p>`;
|
||
break;
|
||
case 5:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalBrigade"]}<br/>(五星)</p>`;
|
||
break;
|
||
default:
|
||
var span=`<p style="line-height:27px;">${data["scoreTotalBrigade"]}<br/>(五星)</p>`;
|
||
break;
|
||
}
|
||
return span;
|
||
}
|
||
|
||
|
||
|
||
export {
|
||
showStarRatingHistoryData,
|
||
}
|