实验报告等修复

Branch_d40a2540
yujialong 2 years ago
parent c4728b007c
commit 7bc3f3313c
  1. 8
      src/api/index.js
  2. 11
      src/components/pdf/index.vue
  3. 5
      src/layouts/header/index.vue
  4. 2
      src/pages/account/login/index.vue
  5. 23
      src/pages/achievement/show/index.vue
  6. 8
      src/pages/project/add/index.vue
  7. 23
      src/pages/station/preview/index.vue
  8. 4
      src/pages/student/list/index.vue
  9. 2
      src/pages/system/list/staff.vue
  10. 13
      src/setting.js
  11. 5
      src/store/modules/user.js

@ -1,7 +1,7 @@
import Setting from "@/setting";
const host = Setting.apiBaseURL
const uploadURL = Setting.upload.apiURL;
const host1 = "http://121.37.12.51:8080/"
const host1 = "https://www.occupationlab.com:8080/"
const host2 = 'http://192.168.31.137:9000/'
export default {
@ -46,7 +46,7 @@ export default {
saveOrg: `occupationlab/occupationlab/architecture/save`, // 新增组织架构
updateOrg: `occupationlab/occupationlab/architecture/update`, // 编辑组织架构
deleteOrg: `occupationlab/occupationlab/architecture/delete`, // 删除组织架构
studentTemplate: `http://121.37.12.51/template/学生导入模板.xlsx`, // 学生导入模板
studentTemplate: `https://www.occupationlab.com/template/学生导入模板.xlsx`, // 学生导入模板
// 测评管理
questionsList: `occupationlab/occupationlab/questions/list`, // 题库列表查询
@ -55,7 +55,7 @@ export default {
questionsDetail: `occupationlab/occupationlab/questions/detail`, // 查看当前题库信息
questionsDelete: `occupationlab/occupationlab/questions/delete`, // 根据主键删除
questionsIsDisable: `occupationlab/occupationlab/questions/isDisable`, // 是否禁用试题
questionsTemplate: `http://121.37.12.51/template/试题导入模板.xlsx`, //excel模板文件下载
questionsTemplate: `https://www.occupationlab.com/template/试题导入模板.xlsx`, //excel模板文件下载
questionsImport: `${host}occupationlab/occupationlab/questions/importQuestion`, // 批量导入题库
questionsExportFailure: `${host}occupationlab/occupationlab/questions/exportFailure`, // 批量导入题库失败数据导出
questionsInfo: `occupationlab/occupationlab/questions/info`, // 测评规则信息的展示
@ -230,7 +230,7 @@ export default {
modifyStaff: `occupationlab/occupationlab/staff/modifyStaff`, //编辑员工
delStaff: `occupationlab/occupationlab/staff/delStaff`, //删除员工
staffList: `occupationlab/occupationlab/staff/staffList`, //员工列表
staffTemplate: `http://121.37.12.51/template/员工用户导入模板.xlsx`, //员工用户导入模板
staffTemplate: `https://www.occupationlab.com/template/员工用户导入模板.xlsx`, //员工用户导入模板
exportFailureStaff: `${host}occupationlab/occupationlab/staff/exportFailure`, //批量导入员工失败数据导出
importStaff: `${host}occupationlab/occupationlab/staff/importStaff`, //批量导入员工
// 角色管理

@ -9,12 +9,15 @@
:modal="false"
:append-to-body="true">
<div>
<button type="button" aria-label="Close" class="el-dialog__headerbtn" @click="closePdf"><i class="el-dialog__close el-icon el-icon-close"></i></button>
<button type="button" aria-label="Close" class="el-dialog__headerbtn" @click="closePdf"><i
class="el-dialog__close el-icon el-icon-close"></i></button>
<div class="pdf">
<p class="arrow">
<span @click="changePdfPage(0)" class="turn el-icon-arrow-left" :class="{grey: currentPage==1}"></span>
<span @click="changePdfPage(0)" class="turn el-icon-arrow-left"
:class="{grey: currentPage==1}"></span>
{{ currentPage }} / {{ pageCount }}
<span @click="changePdfPage(1)" class="turn el-icon-arrow-right" :class="{grey: currentPage==pageCount}"></span>
<span @click="changePdfPage(1)" class="turn el-icon-arrow-right"
:class="{grey: currentPage==pageCount}"></span>
</p>
<pdf
class="pdf-wrap"
@ -51,7 +54,7 @@ export default {
methods: {
closePdf() {
this.$emit("update:visible", false);
this.$emit("update:src", "");
// this.$emit("update:src", "");
this.currentPage = 1;
},
changePdfPage(val) {

@ -63,7 +63,7 @@ export default {
},
methods: {
...mapMutations("user", [
'SET_SCHOOLID'
'SET_SCHOOLID', 'setUserId'
]),
...mapActions("user", [
"setTitle", "setLogoUrl", "setAvatar", "setUserName", 'logout'
@ -87,7 +87,8 @@ export default {
this.$get(this.api.queryUserInfoDetails).then(res => {
let { hrUserInfo } = res.result
if (hrUserInfo) {
const { userAvatars, userName } = hrUserInfo
const { userAvatars, userName, userId } = hrUserInfo
this.setUserId(userId)
userAvatars && this.setAvatar(userAvatars)
this.setUserName(userName)
} else {

@ -37,7 +37,7 @@
<el-dialog title="绑定手机号" :visible.sync="phoneVisible" :close-on-click-modal="false" width="30%">
<div style='padding: 0 13px 20px 13px;'>
依据国家政策法规需绑定手机号进行网络实名才可登录使用本平台
依据国家政策法规需绑定手机号进行网络实名才可登录使用本平台
</div>
<el-form ref="form" label-width="60px">
<el-form-item label="手机号">

@ -90,7 +90,7 @@
</div>
</template>
</el-table-column>
<el-table-column prop="ruleAnswer" label="参考答案" style='word-wrap: break-word' align="center">
<el-table-column prop="ruleAnswer" label="参考答案" style='word-wrap: break-word'>
<template slot-scope="scope">
<div v-if='scope.row.lcRuleRecords'>
<div v-for="(item, index) in scope.row.lcRuleRecords" :key="index">
@ -102,7 +102,7 @@
<div v-else v-html="scope.row.referenceAnswer"></div>
</template>
</el-table-column>
<el-table-column prop="userAnswer" label="学生答案" align="center">
<el-table-column prop="userAnswer" label="学生答案">
<template slot-scope="scope">
<div v-if='scope.row.lcRuleRecords'>
<div v-for="(item, index) in scope.row.lcRuleRecords" :key="index">
@ -115,6 +115,9 @@
</div>
</div>
<div v-else v-html='scope.row.answer' style='white-space: pre-wrap'></div>
<template v-if="scope.row.runThePictureList">
<img v-for="(img, i) in scope.row.runThePictureList" :key="i" width="200" class="result-pic" :src="img" alt="">
</template>
</template>
</el-table-column>
<el-table-column prop="score" label="得分" width="80" align="center"></el-table-column>
@ -152,7 +155,8 @@ export default {
editing: false,
loadIns: null,
loading: false,
project:false
project:false,
userScores: []
};
},
mounted() {
@ -176,6 +180,7 @@ export default {
userName: form.userName
}
const data = report.data
this.userScores = userScores
// data使
if (!data) {
this.handleList(userScores)
@ -184,7 +189,7 @@ export default {
data: JSON.stringify(userScores)
}).then(res => {}).catch(err => {})
} else {
this.handleList(JSON.parse(data))
this.handleList(userScores.find(e => e.lcRuleRecords) ? userScores : JSON.parse(data))
}
}).catch(res => {})
},
@ -206,11 +211,14 @@ export default {
this.expData = list
},
exportPage() {
const form = JSON.parse(JSON.stringify(this.form))
const form = Object.assign(this.form, this.infoData)
const list = JSON.parse(JSON.stringify(this.expData))
list.map((e, i) => {
const item = this.userScores.find(n => n.judgmentId == e.judgmentId)
if (item && item.runThePicture) e.runThePicture = item.runThePicture
if (item && item.runThePictureList) e.runThePictureList = item.runThePictureList
e.id = i + 1
if (e.referenceAnswer && typeof e.referenceAnswer === 'string') e.referenceAnswer = e.referenceAnswer.replace(/<[^>]+>/g, '').replace(/(&nbsp;|&amp;|%s)/g, '').replace(/>/g, '&gt;').replace(/</g, '&lt;')
// if (e.referenceAnswer && typeof e.referenceAnswer === 'string') e.referenceAnswer = e.referenceAnswer.replace(/<[^>]+>/g, '').replace(/(&nbsp;|&amp;|%s)/g, '').replace(/>/g, '&gt;').replace(/</g, '&lt;')
if (e.answer && typeof e.answer === 'string') e.answer = e.answer.replace(/<[^>]+>/g, '').replace(/(&nbsp;|&amp;|%s)/g, '').replace(/>/g, '&gt;').replace(/</g, '&lt;')
})
for (const i in form) {
@ -343,6 +351,9 @@ code, kbd, samp{
}
}
}
.result-pic {
margin: 10px 0;
}
@media (max-width: 1650px) {
.wrap {
padding: 12px 200px 20px;

@ -200,7 +200,7 @@ export default {
isDetail: Boolean(this.$route.query.show),
projectManage: {
founder: 0, // (0 1)
founder: 1, // (0 1)
projectName: "", //
permissions: 0, // (0 1 2)
systemId: this.$store.state.project.lastSystemId, // id
@ -510,7 +510,7 @@ export default {
};
if (systemId == 2 || systemId == 3) {
console.log("系统id:", systemId);
} else if (systemId == 11) {
} else if (systemId == 11 || systemId == 12) {
// ()
this.rowKey = "lcId";
this.getProcessClassData(params);
@ -586,7 +586,7 @@ export default {
console.log(systemId);
} else if (systemId == 3) {
console.log(systemId);
} else if (systemId == 11) {
} else if (systemId == 11 || systemId == 12) {
//
href = `${jumpPath}#/Transaction?isView=true&systemId=${systemId}&lcId=${row.judgmentId}&token=${this.token}&referrer=${window.btoa(location.href)}`;
} else {
@ -599,7 +599,7 @@ export default {
console.log(systemId);
} else if (systemId == 3) {
console.log(systemId);
} else if (systemId == 11) {
} else if (systemId == 11 || systemId == 12) {
//
href = `${jumpPath}#/Transaction?isEdit=true&systemId=${systemId}&lcId=${row.judgmentId}&token=${this.token}&referrer=${btoa(location.href)}`;
} else {

@ -26,6 +26,7 @@
</template>
</template>
<div class="pdf inner" v-else-if="pdfSrc">
<img class="full" src="@/assets/img/screen/full.png" alt="" @click="fullScreen">
<p class="arrow">
<span @click="changePdfPage(0)" class="turn el-icon-arrow-left"
:class="{grey: currentPage==1}"></span>
@ -100,6 +101,8 @@
<img src="@/assets/img/wechat-code.jpeg" alt="">
</div>
</el-dialog>
<pdfDia :key="pdfVisible" :visible.sync="pdfVisible" :src.sync="pdfSrc"/>
</div>
</template>
@ -111,10 +114,9 @@ import pdf from "vue-pdf";
import "quill/dist/quill.core.css";
import "quill/dist/quill.snow.css";
import "quill/dist/quill.bubble.css";
import bus from "@/libs/bus";
import pdfDia from '@/components/pdf'
export default {
components: { pdf },
components: { pdf, pdfDia },
data() {
return {
courseId: this.$route.query.courseId,
@ -262,7 +264,6 @@ export default {
this.coverUrl = row.fileUrl;
} else if (row.fileType == "pdf") {
this.pdfSrc = row.fileUrl;
this.pdfVisible = true;
} else {
this.$get(`${this.api.curriculumGetSubsection}/${row.id}`).then(res => {
if (row.fileType == "pptx") {
@ -328,6 +329,10 @@ export default {
loadPdfHandler(e) {
this.currentPage = 1;
},
// pdf
fullScreen() {
this.pdfVisible = true
},
//
selectProject(item) {
this.curProject = item.projectId
@ -401,7 +406,7 @@ export default {
location.href = `${Setting.bankPath}/#/index/list?curriculumName=${this.curriculumName}&token=${token}&cid=${this.courseId}&systemId=${this.systemIds}&projectId=${this.curProject}&assessmentId=&classId=&stopTime=&test=true&manager=1`
} else if (systemId == 12) {
//
window.open(`http://120.78.139.126:8879?systemId=${systemId}&courseId=${this.courseId}&projectId=${this.curProject}&token=${token}`);
window.open(`http://120.78.139.126:8879?systemId=${systemId}&courseId=${this.courseId}&projectId=${this.curProject}&token=${token}&userId=${this.userId}&classId=1`);
} else if (systemId == 21) {
window.open(`http://121.37.29.24:80/yyyflogin?userId=${this.userId}&userName=${userName}&userType=${roleId}&reqType=1&reqId=3989a0ad671849b99dcbdcc208782333&caseId=9681f86902314b10bc752909121f9ab9&authorization=87DIVy348Oxzj3ha&classId=1876&courserId=7ff5d4715b114b7398b6f26c20fac460`);
} else if (systemId == 22) {
@ -625,6 +630,14 @@ $height: 700px;
}
}
.pdf{
position: relative;
margin-top: 0 !important;
.full {
position: absolute;
top: 7px;
right: 10px;
cursor: pointer;
}
.arrow{
padding: 10px 0;
display: flex;

@ -572,7 +572,7 @@ export default {
architectureId: this.architectureId,
level: this.orgLevel,
keyWord: this.keyWord,
pageNum: 1,
pageNum: this.page,
pageSize: this.pageSize
};
this.$post(this.api.organizationalStudentList, params).then(res => {
@ -679,7 +679,7 @@ export default {
},
resetPassword(row) { //
this.$confirm(`重置后的密码为:${Setting.initialPassword},确定重置?`, "提示", { type: "warning" }).then(() => {
this.$get(`${this.api.resetPassword}?userId=${row.userId}&newPwd=111aaa`).then(res => {
this.$get(`${this.api.resetPassword}?userId=${row.userId}&newPwd=1122aa`).then(res => {
util.successMsg("重置成功");
}).catch(res => {
});

@ -300,7 +300,7 @@ export default {
},
resetPassword(row) { //
this.$confirm(`重置后的密码为:${Setting.initialPassword},确定重置?`, "提示", { type: "warning" }).then(() => {
this.$get(`${this.api.resetPassword}?userId=${row.userId}&newPwd=111aaa`).then(res => {
this.$get(`${this.api.resetPassword}?userId=${row.userId}&newPwd=1122aa`).then(res => {
util.successMsg("重置成功");
}).catch(res => {
});

@ -12,23 +12,22 @@ const isTest = url.includes('121.37.12.51'); //中台测试服
let bankPath = `${location.origin}/banksystem` // 银行系统地址
let jumpPath = `${location.origin}/judgmentPoint`
let host = `${location.origin}/`
let uploadURL = `http://121.37.12.51/`
let uploadURL = `${location.origin}/`
let title = (isHh || isCH) ? '教师管理端' : '职站服务端管理系统'
if (isPro || isZxy) {
if (isPro) bankPath = `https://www.huorantech.cn/banksystem`
if (isPro) {
bankPath = `https://www.huorantech.cn/banksystem`
// 职站生产
uploadURL = `https://www.huorantech.cn/`
jumpPath = `https://www.huorantech.cn/judgmentPoint/`
} else if (isDev) {
jumpPath = `http://${location.hostname}:8087/`
bankPath = `http://${location.hostname}:8093`
uploadURL = `http://121.37.12.51/`
host = "http://121.37.12.51/"; // 中台测试服
// host = 'https://www.occupationlab.com/' // 正式服
// host = "http://192.168.31.51:9000/"; // 榕
host = "http://192.168.31.51:9000/"; // 榕
// host = 'http://192.168.31.116:9000/'; // 赓
} else if (isZxy) {
uploadURL = `https://izhixinyun.com/`
}
const Setting = {
@ -68,7 +67,7 @@ const Setting = {
/**
* 默认密码
*/
initialPassword: "111aaa",
initialPassword: "1122aa",
/**
* 多语言配置
* */

@ -15,7 +15,7 @@ export default {
title: "",
logoUrl: "",
avatar: "https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png",
userId: 3,
userId: '',
userName: "",
roleId: "",
dataTime: "",
@ -62,6 +62,9 @@ export default {
SET_LOG: (state) => {
state.logView = true
},
setUserId: (state, userId) => {
state.userId = userId
},
},
actions: {
login({ state, commit }, userInfo) {

Loading…
Cancel
Save