Commit 7693fee7 authored by yangshuxing's avatar yangshuxing

成绩审核js交互

parent 5c8064f0
......@@ -145,7 +145,7 @@
font-size:16px;
color:rgba(153,153,153,1);
}
.data-cloumn span:last-child,.score-info span:last-child{
.data-cloumn span:last-child,.score-info span:last-child{
width: 50px;
text-align: center;
}
......@@ -194,16 +194,21 @@
}
.preview{
max-width: 80%;
max-height: 80%;
height: 80%;
margin: auto;
position: relative;
padding: 20px;
background: white;
}
#dialog{
display: none;
justify-content: center;
align-items: center;
display: flex;position: fixed;width: 100%;height: 100%;top: 0px;left: 0px;background: rgba(0,0,0,0.4);z-index: 99
display: flex;
position: fixed;
width: 100%;
height: 100%;
top: 0px;left: 0px;background: rgba(0,0,0,0.4);z-index: 99
}
.select{
text-transform: none;
......@@ -335,13 +340,13 @@
</div>
<div class="tab">
<div class="flex">
<span :class="['review-status',reviewStatus==0?'active':'']" v-on:click="changeStatus(0)" >待审核(10)</span>
<span :class="['review-status',reviewStatus==1?'active':'']" v-on:click="changeStatus(1)">已通过(310)</span>
<span :class="['review-status',reviewStatus==-1?'active':'']" v-on:click="changeStatus(-1)">未通过(5)</span>
<span :class="['review-status',reviewStatus==0?'active':'']" v-on:click="changeStatus(0)" >待审核(<span v-text="reviewCount.waiting"></span>)</span>
<span :class="['review-status',reviewStatus==1?'active':'']" v-on:click="changeStatus(1)">已通过(<span v-text="reviewCount.pass"></span>)</span>
<span :class="['review-status',reviewStatus==2?'active':'']" v-on:click="changeStatus(2)">未通过(<span v-text="reviewCount.nopass"></span>)</span>
</div>
<div>
<span v-on:click="review(1)" v-show="reviewStatus<=0" class="pass">通过</span>
<span v-on:click="review(-1)"v-show="reviewStatus>=0"class="no-pass">不通过</span>
<span v-on:click="review(1)" v-show="reviewStatus==0 || reviewStatus==2" class="pass">通过</span>
<span v-on:click="review(-1)"v-show="reviewStatus==0 || reviewStatus== 1"class="no-pass">不通过</span>
</div>
</div>
<div class="data-cloumn">
......@@ -351,7 +356,7 @@
<span>里程(KM)</span>
<span>用时</span>
<span>平均配速</span>
<span>全选<input v-on:click="checkAll" type="checkbox"></span>
<span>全选<input v-on:click="checkAll" :checked="checked?'true':'' " type="checkbox"></span>
</div>
......@@ -359,24 +364,24 @@
<div class="score-info">
<span v-text="score.name"></span>
<span v-text="score.markNo"></span>
<span v-text="score.time"></span>
<span v-text="score.duration"></span>
<span v-text="score.ps"></span>
<span v-text="score.ps"></span>
<span><input type="checkbox" :checked="checked?'true':'' "></span>
<span>{{score.subsectionTime | substr(10)}}</span>
<span>{{Number(score.subsectionMileage/1000).toFixed(3)}}</span>
<span>{{score.subsectionscore | date_format}}</span>
<span>{{score.cmptPace | pace(Number(score.subsectionMileage/1000).toFixed(3),score.subsectionscore) }}</span>
<span><input type="checkbox" :value="score.cmptScoreRuleScoreId" :checked="checked?'true':'' "></span>
</div>
<div class="flex score-img">
<div class="img-item" v-for="item in score.imgs">
<div class="img-item" v-for="item in score.scoreFieldValueList">
<img v-on:click="preview($event)" class="img" :src="item" alt="">
<span class="bigger"></span>
</div>
</div>
</div>
<div class="pager">
<div class="pager" >
<div class="prev page-btn" v-on:click="prev"></div>
<div>
<input type="number" v-on:keyup="jumpTo" v-model="jumpToPage"> of 3
<input type="number" v-on:keyup="jumpTo" v-model="jumpToPage" min="1"> of <span>{{Math.ceil(totalPage/10)}}</span>
</div>
<div class="next page-btn" v-on:click="next"></div>
</div>
......@@ -384,7 +389,7 @@
<div id="dialog" v-show="dialog" >
<div style="position: relative;" class="preview">
<img v-bind:src="previewImg" alt="">
<img width="100%" height="100%" v-bind:src="previewImg" alt="">
<span v-on:click="closeDialog" class="iconClose"></span>
</div>
</div>
......@@ -394,7 +399,7 @@
<script src="${ctxStatic}/newdermon/vendor/popper.js/umd/popper.min.js"></script>
<script src="${ctxStatic}/js/qikoo.js"></script>
<script src="${ctxStatic}/js/score_review.js?<%=System.currentTimeMillis()%>"></script>
<script src="${ctxStatic}/js/score_review.js"></script>
</body>
......
......@@ -5,9 +5,14 @@ var score = new Vue({
selectedRuleId:-1,
param:{
size:10,
page:1,
page:0,
cmptId:getCId(),
checkstatus:1
checkstatus:0
},
reviewCount:{
waiting:0,
nopass:0,
pass:0
},
jumpToPage:1,
checked:false,
......@@ -16,12 +21,33 @@ var score = new Vue({
noPass: false,
previewImg: '',
dialog: false,
count: 1000,
totalPage:0,
roads: [],
rules: [],
scores: [{name:'似懂非懂',markNo:'Adds','time':'2019-01-01','duration':'30','ps':"10'12",imgs:['http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png','http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png']},
{name:'似懂非懂',markNo:'Adds','time':'2019-01-01','duration':'30','ps':"10'12",imgs:['http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png']},
{name:'似懂非懂',markNo:'Adds','time':'2019-01-01','duration':'30','ps':"10'12",imgs:['http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png','http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png','http://img.geexek.com/files/enroll/cmpt/images/4e432d31-6b30-453a-88d6-563a9d4c2751.png']}]
scores: []
},
filters: {
substr:function(value,length){
console.log(value+","+length)
if(!value || value.length < 18) return "";
return value.substr(5,5)+" "+value.substr(11,5);
},
date_format: function (value) {
if (!value) return ''
var hour = parseInt((value / 3600));
var min = parseInt((value/ 60 % 60));
var ms = parseInt((value % 60 % 60));
if(hour <= 9) hour = "0"+hour;
if(min <= 9) min = "0"+min;
if(ms <= 9) ms = "0"+ms;
return hour+":"+min+":"+ms;
},
pace:function (self,distance,duration) {
if(!duration || !distance){return ""}
var mins = parseFloat(duration/60)/distance;
var res = Math.floor((mins - parseInt(mins)) * 60);
return parseInt(mins)+"'"+ res +"''";
}
},
methods:{
closeDialog:function(){
......@@ -32,32 +58,54 @@ var score = new Vue({
score.$data.previewImg = event.target.src
},
changeStatus:function (event) {
score.$data.reviewStatus=event;
score.$data.reviewStatus = event;
score.$data.param.checkstatus = event;
reviewPage.reloadPage();
},
checkAll:function () {
score.$data.checked = !score.$data.checked
},
changeRoad:function () {
console.log(score.$data.selectedRoadId)
reviewPage.reloadPage();
},
changeRule:function () {
console.log(score.$data.selectedRuleId)
console.log(score.$data.selectedRuleId);
reviewPage.reloadPage();
},
next:function () {
score.$data.jumpToPage = ++score.$data.param.page;
if((score.$data.param.page+2) > Math.ceil(score.$data.totalPage/10)){
layer.alert('已经是最后一页!');
score.$data.jumpToPage = Math.ceil((score.$data.totalPage/10));
return;
}
score.$data.jumpToPage = ++score.$data.param.page+1;
reviewPage.reloadPage();
},
prev:function () {
score.$data.jumpToPage = --score.$data.param.page;
if(score.$data.param.page <= 0){
score.$data.jumpToPage = 1;
score.$data.param.page = 0;
layer.alert('已经是第一页!');
score.$data.jumpToPage = 1;
return;
}
score.$data.jumpToPage = --score.$data.param.page+1;
reviewPage.reloadPage();
},
jumpTo:function () {
console.log(score.$data.jumpToPage)
score.$data.param.page = score.$data.jumpToPage;
if(score.$data.jumpToPage <= 0) score.$data.jumpToPage = 1;
if(score.$data.jumpToPage-1 > Math.ceil((score.$data.totalPage/10))){
layer.alert('已经是最后一页!');
score.$data.jumpToPage = Math.ceil((score.$data.totalPage/10));
return;
}
score.$data.jumpToPage = parseInt(score.$data.jumpToPage)
score.$data.param.page = parseInt(score.$data.jumpToPage-1);
reviewPage.reloadPage();
},
review:function (status) {
console.log(status);
reviewPage.reviewScore(status);
}
}
......@@ -83,23 +131,90 @@ var reviewPage = {
score.$data.rules = data.content;
score.$data.selectedRuleId = score.$data.rules[0].id;
reviewPage.reloadPage();
reviewPage.getStatistic();
}
}
});
},
reloadPage:function () {
score.$data.param.roadId = score.$data.selectedRoadId;
score.$data.param.ruleId = score.$data.selectedRuleId;
$.ajax({
url : '/gk/scoreReview/getCmptScoreRuleScoreInfo',
data:score.$data.param,
beforeSend:function(){
layer.load();
},
success:function (data) {
score.$data.scores = data.content;
score.$data.totalPage = data.total;
if(score.$data.param.checkstatus == 0){
score.$data.reviewCount.waiting = data.total;
}else if(score.$data.param.checkstatus == 1){
score.$data.reviewCount.pass = data.total;
} else if(score.$data.param.checkstatus == 2){
score.$data.reviewCount.nopass = data.total;
}
},
complete:function () {
layer.closeAll();
}
})
},
getStatistic:function(){
$.ajax({
url : '/gk/scoreReview/getCmptScoreRuleScoreInfoStatistics?cmptId='+getCId()+'&roadId='+
score.$data.selectedRoadId
+'&ruleId='+ score.$data.selectedRuleId,
success:function (data) {
console.log(data);
var result = data.content;
score.$data.reviewCount.waiting = result.Unprocessed;
score.$data.reviewCount.pass = result.pass;
score.$data.reviewCount.nopass = result.nopass;
},
complete:function () {
layer.closeAll();
}
})
},
reviewScore:function (status) {
if($('.score-item input:checked').length == 0){
layer.alert("请选择行操作!");
return ;
}
var passedIds = [];
var noPassedIds = [];
$.each($('.score-item input:checked'),function (i,e) {
passedIds.push($(e).val());
noPassedIds.push($(e).val());
});
if(status === 1){
noPassedIds = [0];
}else{
passedIds = [0];
}
var param = {cmptId : getCId(),'checkstatus':score.$data.param.checkstatus,
roadId: score.$data.selectedRoadId, ruleId : score.$data.selectedRuleId,
passedIds:passedIds.join(','),noPassedIds:noPassedIds.join(',')};
console.log(JSON.stringify(param))
$.ajax({
url : '/gk/scoreReview/uploadCmptScoreRuleScoreInfo',
data: param,
beforeSend:function(){
layer.load();
},
success:function (data) {
console.log(JSON.stringify(data));
reviewPage.reloadPage();
score.$data.checked = !score.$data.checked
},
complete:function () {
layer.closeAll();
}
})
}
}
$(document).ready(function () {
$('body').on('click', '.status', function () {
......@@ -116,7 +231,7 @@ $(document).ready(function () {
}
$.ajax({
url: "/setting/upSwitchScoreReview/"+getCmptId()+"/"+status,
url: "/setting/upSwitchScoreReview/"+getCmptId()+"/" + status,
type: 'post',
success: function (data) {
console.log(data);
......
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