解决前端Vue数据绑定诸多问题
This commit is contained in:
@@ -35,9 +35,10 @@ server cms.fjy8018.xin:8085;
|
|||||||
#我工程的context-path=mytest
|
#我工程的context-path=mytest
|
||||||
location /cms {
|
location /cms {
|
||||||
proxy_pass http://cms.fjy8018.xin:8085;
|
proxy_pass http://cms.fjy8018.xin:8085;
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
proxy_set_header X-Forwarded-Port $server_port;
|
|
||||||
# root html;
|
# root html;
|
||||||
# index index.html index.htm;
|
# index index.html index.htm;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import com.fjy.spring.properties.ServerProperties;
|
|||||||
import com.fjy.spring.service.FileService;
|
import com.fjy.spring.service.FileService;
|
||||||
import com.fjy.spring.service.LogService;
|
import com.fjy.spring.service.LogService;
|
||||||
import com.fjy.spring.untils.FormatFileSizeUtil;
|
import com.fjy.spring.untils.FormatFileSizeUtil;
|
||||||
|
import com.fjy.spring.untils.GetIPAddrUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.io.FileUtils;
|
import org.apache.commons.io.FileUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -212,7 +213,7 @@ public class UpLoadController {
|
|||||||
TbLog logs = new TbLog();
|
TbLog logs = new TbLog();
|
||||||
logs.setUserid(user.getColuserid());
|
logs.setUserid(user.getColuserid());
|
||||||
logs.setColtime(dateNowStr);
|
logs.setColtime(dateNowStr);
|
||||||
logs.setColip(httpServletRequest.getRemoteAddr());
|
logs.setColip(GetIPAddrUtil.getIpAddr(httpServletRequest));
|
||||||
logs.setColheader(user.getColname() + "上传了'" + filename + "'文件");
|
logs.setColheader(user.getColname() + "上传了'" + filename + "'文件");
|
||||||
logService.addLogRec(logs);
|
logService.addLogRec(logs);
|
||||||
|
|
||||||
|
|||||||
@@ -10,3 +10,22 @@ function getRootPath_web() {
|
|||||||
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
|
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
|
||||||
return (localhostPaht + projectName);
|
return (localhostPaht + projectName);
|
||||||
}
|
}
|
||||||
|
function compareTime(startTime,endTime) {
|
||||||
|
var startTimes = startTime.substring(0, 10).split('-');
|
||||||
|
var endTimes = endTime.substring(0, 10).split('-');
|
||||||
|
startTime = startTimes[1] + '-' + startTimes[2] + '-' + startTimes[0] + ' ' + startTime.substring(10, 19);
|
||||||
|
endTime = endTimes[1] + '-' + endTimes[2] + '-' + endTimes[0] + ' ' + endTime.substring(10, 19);
|
||||||
|
var thisResult = (Date.parse(endTime) - Date.parse(startTime)) / 3600 / 1000;
|
||||||
|
if (thisResult < 0) {
|
||||||
|
console.log("endTime小于tartTime!");
|
||||||
|
return false;
|
||||||
|
} else if (thisResult > 0) {
|
||||||
|
console.log("endTime大于tartTime!");
|
||||||
|
return true;
|
||||||
|
} else if (thisResult == 0) {
|
||||||
|
console.log("endTime等于tartTime!");
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
return '异常';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -328,8 +328,14 @@ var Main = {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
uploadURL(row) {
|
uploadURL(row) {
|
||||||
return "http://localhost:8080/cms/moreUpload?courseName=" + row.coursename + "&folder=" + row.workfolder;
|
console.log(row.worktime);
|
||||||
},
|
if (compareTime(cur,row.worktime)){
|
||||||
|
document.getElementById("btn-group").style.display="";
|
||||||
|
return "http://localhost:8080/cms/moreUpload?courseName=" + row.coursename + "&folder=" + row.workfolder;
|
||||||
|
}else{
|
||||||
|
document.getElementById("btn-show").style.display="";
|
||||||
|
}
|
||||||
|
},
|
||||||
limitTime(row) {
|
limitTime(row) {
|
||||||
return DateDiff(row.worktime.replace(/([^\s]+)\s.*/, "$1"), cur);
|
return DateDiff(row.worktime.replace(/([^\s]+)\s.*/, "$1"), cur);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ var month = dt.getMonth() + 1;
|
|||||||
var day = dt.getDate();
|
var day = dt.getDate();
|
||||||
var year = dt.getFullYear();
|
var year = dt.getFullYear();
|
||||||
var cur = year + '-' + month + '-' + day;
|
var cur = year + '-' + month + '-' + day;
|
||||||
|
|
||||||
function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式
|
function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式
|
||||||
var aDate, oDate1, oDate2, iDays
|
var aDate, oDate1, oDate2, iDays
|
||||||
aDate = sDate1.split("-")
|
aDate = sDate1.split("-")
|
||||||
@@ -13,7 +12,9 @@ function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2002-12-18格式
|
|||||||
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24) //把相差的毫秒数转换为天数
|
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24) //把相差的毫秒数转换为天数
|
||||||
return iDays
|
return iDays
|
||||||
}
|
}
|
||||||
|
function displayStyle(id,type) {
|
||||||
|
document.getElementById(id).style.display=type;
|
||||||
|
}
|
||||||
var Main = {
|
var Main = {
|
||||||
data() {
|
data() {
|
||||||
var checkName = (rule, value, callback) => {
|
var checkName = (rule, value, callback) => {
|
||||||
@@ -65,6 +66,7 @@ var Main = {
|
|||||||
colrealname: '',
|
colrealname: '',
|
||||||
colemail: ''
|
colemail: ''
|
||||||
},
|
},
|
||||||
|
isShow:true,
|
||||||
rules2: {
|
rules2: {
|
||||||
colpassword: [
|
colpassword: [
|
||||||
{required: true, validator: validatePass, trigger: 'blur'}
|
{required: true, validator: validatePass, trigger: 'blur'}
|
||||||
@@ -230,7 +232,27 @@ var Main = {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
uploadURL(row) {
|
uploadURL(row) {
|
||||||
return getRootPath_web()+"/home/moreUpload?courseName=" + row.coursename + "&folder=" + row.workfolder+"&rename=true";
|
let that = this;
|
||||||
|
console.log(row.worktime+"||"+row.workid);
|
||||||
|
if (compareTime(cur,row.worktime)){
|
||||||
|
that.isShow = true;
|
||||||
|
console.log("Show"+that.isShow);
|
||||||
|
//提交时间合法
|
||||||
|
//document.getElementById("btn-group").style.display="";
|
||||||
|
//displayStyle("btn-show"+row.workid,"none");
|
||||||
|
//displayStyle("btn-group"+row.workid,"");
|
||||||
|
return getRootPath_web()+"/home/moreUpload?courseName=" + row.coursename + "&folder=" + row.workfolder+"&rename=true";
|
||||||
|
}else{
|
||||||
|
that.isShow = false;
|
||||||
|
console.log("EShow"+that.isShow);
|
||||||
|
//提交时间不合法
|
||||||
|
//displayStyle("btn-show"+row.workid,"");
|
||||||
|
//displayStyle("btn-group"+row.workid,"none");
|
||||||
|
//displayStyle("btn-show");
|
||||||
|
//document.getElementById("btn-show").style.display="";
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
},
|
},
|
||||||
limitTime(row) {
|
limitTime(row) {
|
||||||
return DateDiff(row.worktime.replace(/([^\s]+)\s.*/, "$1"), cur);
|
return DateDiff(row.worktime.replace(/([^\s]+)\s.*/, "$1"), cur);
|
||||||
|
|||||||
@@ -18,7 +18,12 @@ var Main = {
|
|||||||
teacherrealname: "root"
|
teacherrealname: "root"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
multipleSelection: []
|
multipleSelection: [],
|
||||||
|
courseList:[
|
||||||
|
{courseName:"root"},
|
||||||
|
{courseName:"root2"},
|
||||||
|
],
|
||||||
|
teacherList:[],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<!-- 先引入 Vue -->
|
<!-- 先引入 Vue -->
|
||||||
<script src="https://unpkg.com/vue@2.5.15/dist/vue.js"></script>
|
<script src="https://unpkg.com/vue@2.5.15/dist/vue.js"></script>
|
||||||
<!-- 引入组件库 -->
|
<!-- 引入组件库 -->
|
||||||
<script src="https://unpkg.com/element-ui@2.2.1/lib/index.js"></script>
|
<script src="https://unpkg.com/element-ui@2.3.3/lib/index.js"></script>
|
||||||
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
|
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
|
||||||
<script th:src="@{/js/common.js}"></script>
|
<script th:src="@{/js/common.js}"></script>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -125,27 +125,42 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="提交作业">
|
<el-form-item label="提交作业">
|
||||||
<el-upload class="upload-demo" ref="upload"
|
<el-upload class="upload-demo" ref="upload"
|
||||||
:action="uploadURL(props.row)"
|
:action="uploadURL(props.row)"
|
||||||
:on-preview="handlePreview"
|
:on-preview="handlePreview"
|
||||||
:on-remove="handleRemove" :file-list="fileList" :auto-upload="false"
|
:on-remove="handleRemove" :file-list="fileList"
|
||||||
name="imageFile">
|
:auto-upload="false"
|
||||||
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
|
name="imageFile">
|
||||||
<el-button style="margin-left: 10px;" size="small" type="success"
|
<div id="btn-group" v-show="isShow">
|
||||||
@click="submitUpload">
|
<el-button slot="trigger" size="small" type="primary">
|
||||||
上传到服务器
|
选取文件
|
||||||
</el-button>
|
</el-button>
|
||||||
<div slot="tip" class="el-upload__tip">上传文件大小不能超过100Mb</div>
|
<el-button style="margin-left: 10px;" size="small"
|
||||||
</el-upload>
|
type="success"
|
||||||
|
@click="submitUpload">
|
||||||
|
上传到服务器
|
||||||
|
</el-button>
|
||||||
|
<div slot="tip" class="el-upload__tip">上传文件大小不能超过100Mb
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="btn-show" v-show="!isShow">
|
||||||
|
<el-alert
|
||||||
|
title="作业提交已截止"
|
||||||
|
type="error"
|
||||||
|
center
|
||||||
|
show-icon>
|
||||||
|
</el-alert>
|
||||||
|
</div>
|
||||||
|
</el-upload>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="科目" prop="coursename" sortable>
|
<el-table-column label="科目" prop="coursename" sortable>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="内容" prop="workname"sortable>
|
<el-table-column label="内容" prop="workname" sortable>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="提交时间" prop="worktime"sortable>
|
<el-table-column label="提交时间" prop="worktime" sortable>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!--<el-table-column fixed="right" label="操作">
|
<!--<el-table-column fixed="right" label="操作">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -237,7 +252,7 @@
|
|||||||
<el-table-column prop="colfilesize" label="大小" width="80">
|
<el-table-column prop="colfilesize" label="大小" width="80">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="coltime" label="上传时间">
|
<el-table-column prop="coltime" label="上传时间">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="courseName" label="课程名">
|
<el-table-column prop="courseName" label="课程名">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="workFolder" label="作业名">
|
<el-table-column prop="workFolder" label="作业名">
|
||||||
@@ -248,7 +263,9 @@
|
|||||||
size="small">
|
size="small">
|
||||||
下载
|
下载
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button type="danger" plain size="small" @click="handleDelete(scope.row)">删除</el-button>
|
<el-button type="danger" plain size="small"
|
||||||
|
@click="handleDelete(scope.row)">删除
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|||||||
@@ -47,9 +47,11 @@
|
|||||||
<h4>添加课程</h4>
|
<h4>添加课程</h4>
|
||||||
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
||||||
<el-form-item label="课程名">
|
<el-form-item label="课程名">
|
||||||
<el-autocomplete class="inline-input" v-model="state1"
|
<el-select placeholder="请选择课程" v-model="courseList.courseName">
|
||||||
:fetch-suggestions="querySearchAsync" placeholder="课程名"
|
<el-option v-for="course in courseList" :value="course.courseName" :label="course.courseName">{{course.courseName}}</el-option>
|
||||||
@select="handleSelect"></el-autocomplete>
|
<!--<el-option label="区域一" value="shanghai"></el-option>
|
||||||
|
<el-option label="区域二" value="beijing"></el-option>-->
|
||||||
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="教师名">
|
<el-form-item label="教师名">
|
||||||
<el-autocomplete class="inline-input" v-model="state2"
|
<el-autocomplete class="inline-input" v-model="state2"
|
||||||
|
|||||||
Reference in New Issue
Block a user