From 643467f9d2df6843ad7d74c5eef716c7d3b6efd3 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 13 Apr 2022 17:26:50 +0800 Subject: [PATCH 01/98] =?UTF-8?q?=E5=AD=A6=E7=94=9F=E5=8D=95=E6=AC=A1?= =?UTF-8?q?=E8=80=83=E8=AF=95=E6=88=90=E7=BB=A9=20=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/management/userexam.js | 8 ++ src/router/index.js | 6 ++ .../examManage/gradeStatistics.vue | 92 +++++++++++++++++++ src/views/organization/examManage/index.vue | 10 +- 4 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 src/views/organization/examManage/gradeStatistics.vue diff --git a/src/api/management/userexam.js b/src/api/management/userexam.js index 1f466f37a..36908ee4c 100644 --- a/src/api/management/userexam.js +++ b/src/api/management/userexam.js @@ -66,3 +66,11 @@ export function getClassGradeList(examId, params) { params }); } + +/** 查询组织学生单次考试成绩曲线 */ +export function getClassGradeStatistic(orgId, examId) { + return request({ + url: `/api/userExam/curve/${orgId}/${examId}`, + method: 'get' + }); +} diff --git a/src/router/index.js b/src/router/index.js index 749b8ded2..6add0a02e 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -171,6 +171,7 @@ const SortLesson = () => import('@/views/organization/draftLessonManage/sortLess const StudentManage = () => import('@/views/organization/classManage/studentManage/index'); const DurationView = () => import('@/views/organization/classManage/durationView'); const GradeList = () => import('@/views/organization/examManage/gradeList'); +const GradeStatistics = () => import('@/views/organization/examManage/gradeStatistics'); const CreateRule = () => import('@/views/organization/ruleManage/createRule'); const TotalGrade = () => import('@/views/organization/ruleManage/totalGrade'); const InfoLessonDetail = () => import('@/views/organization/lessonManage/lessonDetail'); @@ -652,6 +653,11 @@ export const publicAsyncRoute = [ component: GradeList, hidden: true }, + { + path: 'gradeStatistics', + component: GradeStatistics, + hidden: true + }, { path: 'createRule', component: CreateRule, diff --git a/src/views/organization/examManage/gradeStatistics.vue b/src/views/organization/examManage/gradeStatistics.vue new file mode 100644 index 000000000..85ec225ce --- /dev/null +++ b/src/views/organization/examManage/gradeStatistics.vue @@ -0,0 +1,92 @@ + + + diff --git a/src/views/organization/examManage/index.vue b/src/views/organization/examManage/index.vue index 186b195a7..ff494feba 100644 --- a/src/views/organization/examManage/index.vue +++ b/src/views/organization/examManage/index.vue @@ -132,13 +132,18 @@ export default { { type: 'button', title: this.$t('global.operate'), - width: '250', + width: '350', buttons: [ { name: '成绩查询', handleClick: this.handleQueryGrade, type: 'primary' }, + { + name: '成绩统计', + handleClick: this.handleGradeStatistics, + type: 'success' + }, { name: '编辑', handleClick: this.handleEditExam, @@ -190,6 +195,9 @@ export default { handleQueryGrade(index, row) { this.$router.push({ path: '/info/gradeList', query: { examId: row.id, name: row.name } }); }, + handleGradeStatistics(index, row) { + this.$router.push({ path: '/info/gradeStatistics', query: { examId: row.id, name: row.name } }); + }, handleEditExam(index, row) { this.$router.push({ path: `/info/examRule/draft/edit/${row.id}/0`, query: { source: 'org' } }); }, From e3b0189705966a8c299a0743821d2de7ad630890 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Thu, 14 Apr 2022 17:18:26 +0800 Subject: [PATCH 02/98] =?UTF-8?q?=E6=88=90=E7=BB=A9=E7=BB=9F=E8=AE=A1=20?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/exam/index.vue | 2 +- .../examManage/gradeStatistics.vue | 236 ++++++++++++++++-- 2 files changed, 213 insertions(+), 25 deletions(-) diff --git a/src/views/exam/index.vue b/src/views/exam/index.vue index f929472ee..57dc27d54 100644 --- a/src/views/exam/index.vue +++ b/src/views/exam/index.vue @@ -11,7 +11,7 @@ 查找 - + @@ -19,11 +20,13 @@ import { queryDeptInfoPaging, deleteDepartUserRelation, importCompanyMember } fr import CreateStudent from './createStudent'; import XLSX from 'xlsx'; import { convertSheetToList } from '@/jmapNew/theme/parser/util.js'; +import StudentGradeStatis from '../../studentStatistics/studentGradeStatis' export default { name: 'StudentManage', components: { - CreateStudent + CreateStudent, + StudentGradeStatis }, data() { return { @@ -208,14 +211,7 @@ export default { XLSX.writeFile(wb, '学生信息模板' + '.xlsx'); }, gradeStatistic(index,row){ - this.$router.push({ path: '/info/studentGradeStatis', - query: { - username: row.name, - departmentId: row.departmentId, - userId: row.userId, - orgRole: row.orgRole - } - }); + this.$refs.studentGradeStatis.doShow(row); }, removeStudent(index, row) { const _that = this; diff --git a/src/views/organization/studentStatistics/gradeStatistic.vue b/src/views/organization/studentStatistics/gradeStatistic.vue index 8db1358c2..1c5f1fbd0 100644 --- a/src/views/organization/studentStatistics/gradeStatistic.vue +++ b/src/views/organization/studentStatistics/gradeStatistic.vue @@ -6,6 +6,25 @@ import * as echarts from 'echarts'; import { getStuGradeStatistic } from '@/api/management/userexam'; export default { name: 'GradeStatistics', + props:{ + creatorId:{ + type:String, + require:true + }, + orgId:{ + type:Number, + require:true + }, + userId:{ + type:Number, + require:true + }, + }, + watch:{ + 'orgId':function(){ + this.loadData() + } + }, data() { return { myChart2:null, @@ -48,7 +67,6 @@ export default { }, async mounted() { this.initChart() - this.loadData() }, methods: { initChart(){ @@ -84,8 +102,12 @@ export default { } option && this.myChart2 && this.myChart2.setOption(option); }, + doShow(){ + this.loadData(); + }, loadData(){ - let data={creatorId:'',orgId:'',userId:''} + let data={creatorId:this.creatorId,orgId:this.orgId,userId:this.userId} + debugger getStuGradeStatistic(data).then(res=>{ const results = resp.data; if (results) { diff --git a/src/views/organization/studentStatistics/index.vue b/src/views/organization/studentStatistics/index.vue index 7de972361..ede846c24 100644 --- a/src/views/organization/studentStatistics/index.vue +++ b/src/views/organization/studentStatistics/index.vue @@ -8,7 +8,7 @@
- +
@@ -29,6 +29,8 @@ export default { data() { return { myChart3:null, + creatorId:'', + orgId:'', title:{ show:true, text:'仿真时长统计', @@ -44,6 +46,12 @@ export default { async mounted() { this.initChart() this.loadData(); + this.orgId=parseInt(this.$store.state.user.companyId); + }, + computed:{ + userId(){ + return parseInt(this.$store.state.user.id); + } }, methods: { initChart(){ diff --git a/src/views/organization/studentStatistics/studentGradeStatis.vue b/src/views/organization/studentStatistics/studentGradeStatis.vue index 6d9771333..02fef7ae1 100644 --- a/src/views/organization/studentStatistics/studentGradeStatis.vue +++ b/src/views/organization/studentStatistics/studentGradeStatis.vue @@ -1,11 +1,17 @@ + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmControlSpeed.vue b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmControlSpeed.vue new file mode 100644 index 000000000..d49556383 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmControlSpeed.vue @@ -0,0 +1,156 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTip.vue b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTip.vue new file mode 100644 index 000000000..6852074ca --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTip.vue @@ -0,0 +1,74 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTrain.vue new file mode 100644 index 000000000..494347b75 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/confirmTrain.vue @@ -0,0 +1,173 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/childDialog/passwordInputBox.vue b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/passwordInputBox.vue new file mode 100644 index 000000000..2f41411df --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/passwordInputBox.vue @@ -0,0 +1,194 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/childDialog/popupAlarm.vue b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/popupAlarm.vue new file mode 100644 index 000000000..b6b925622 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/childDialog/popupAlarm.vue @@ -0,0 +1,94 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/drawSelect.vue b/src/jmapNew/theme/datie_02/menus/dialog/drawSelect.vue new file mode 100644 index 000000000..10fb5b5cd --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/drawSelect.vue @@ -0,0 +1,163 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeDetail.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeDetail.vue new file mode 100644 index 000000000..b7211c025 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeDetail.vue @@ -0,0 +1,196 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeGuide.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeGuide.vue new file mode 100644 index 000000000..11cba9131 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeGuide.vue @@ -0,0 +1,278 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeHandControl.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeHandControl.vue new file mode 100644 index 000000000..69ce0d572 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeHandControl.vue @@ -0,0 +1,267 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeSelection.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection.vue new file mode 100644 index 000000000..12014afb3 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection.vue @@ -0,0 +1,325 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/sectionDetail.vue b/src/jmapNew/theme/datie_02/menus/dialog/sectionDetail.vue new file mode 100644 index 000000000..7e6a03371 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/sectionDetail.vue @@ -0,0 +1,114 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/standControl.vue b/src/jmapNew/theme/datie_02/menus/dialog/standControl.vue new file mode 100644 index 000000000..c6c29c830 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/standControl.vue @@ -0,0 +1,603 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/standDetail.vue b/src/jmapNew/theme/datie_02/menus/dialog/standDetail.vue new file mode 100644 index 000000000..efe048e52 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/standDetail.vue @@ -0,0 +1,217 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainControl.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainControl.vue new file mode 100644 index 000000000..738d9509e --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainControl.vue @@ -0,0 +1,332 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainCreate.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainCreate.vue new file mode 100644 index 000000000..59f7935b6 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainCreate.vue @@ -0,0 +1,133 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainCreateNumber.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainCreateNumber.vue new file mode 100644 index 000000000..e56f2f80d --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainCreateNumber.vue @@ -0,0 +1,181 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainDelete.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainDelete.vue new file mode 100644 index 000000000..895d6024c --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainDelete.vue @@ -0,0 +1,150 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainDeleteNumber.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainDeleteNumber.vue new file mode 100644 index 000000000..210e2dc87 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainDeleteNumber.vue @@ -0,0 +1,176 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainDetailInfo.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainDetailInfo.vue new file mode 100644 index 000000000..907727139 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainDetailInfo.vue @@ -0,0 +1,378 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainEditNumber.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainEditNumber.vue new file mode 100644 index 000000000..570e22144 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainEditNumber.vue @@ -0,0 +1,174 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainMove.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainMove.vue new file mode 100644 index 000000000..82c84dc13 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainMove.vue @@ -0,0 +1,200 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainMoveNumber.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainMoveNumber.vue new file mode 100644 index 000000000..7e7635d23 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainMoveNumber.vue @@ -0,0 +1,193 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/dialog/trainSwitch.vue b/src/jmapNew/theme/datie_02/menus/dialog/trainSwitch.vue new file mode 100644 index 000000000..583e53d8e --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/trainSwitch.vue @@ -0,0 +1,209 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue new file mode 100644 index 000000000..952041774 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -0,0 +1,478 @@ + + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuBar.vue b/src/jmapNew/theme/datie_02/menus/menuBar.vue new file mode 100644 index 000000000..e7be252ef --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuBar.vue @@ -0,0 +1,685 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuButton.vue b/src/jmapNew/theme/datie_02/menus/menuButton.vue new file mode 100644 index 000000000..8137af30a --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuButton.vue @@ -0,0 +1,692 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/twoConfirmation.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/twoConfirmation.vue new file mode 100644 index 000000000..c1f7b93a3 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/twoConfirmation.vue @@ -0,0 +1,133 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userAdd.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userAdd.vue new file mode 100644 index 000000000..6c98c5a53 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userAdd.vue @@ -0,0 +1,157 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userDelete.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userDelete.vue new file mode 100644 index 000000000..e64aa49f3 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userDelete.vue @@ -0,0 +1,129 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userEdit.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userEdit.vue new file mode 100644 index 000000000..b03165a1b --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/childDialog/userEdit.vue @@ -0,0 +1,173 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/helpAbout.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/helpAbout.vue new file mode 100644 index 000000000..4dc26a4ce --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/helpAbout.vue @@ -0,0 +1,126 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/limitSpeed.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/limitSpeed.vue new file mode 100644 index 000000000..e416e68e0 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/limitSpeed.vue @@ -0,0 +1,138 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/manageUser.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/manageUser.vue new file mode 100644 index 000000000..deef68f43 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/manageUser.vue @@ -0,0 +1,285 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/passwordBox.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/passwordBox.vue new file mode 100644 index 000000000..69fa03d70 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/passwordBox.vue @@ -0,0 +1,221 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/setLimitSpeed.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/setLimitSpeed.vue new file mode 100644 index 000000000..dfb5821b3 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/setLimitSpeed.vue @@ -0,0 +1,286 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/stationControlConvert.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/stationControlConvert.vue new file mode 100644 index 000000000..046b66327 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/stationControlConvert.vue @@ -0,0 +1,433 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/trainAdd.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/trainAdd.vue new file mode 100644 index 000000000..fba049a10 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/trainAdd.vue @@ -0,0 +1,168 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/trainDelete.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/trainDelete.vue new file mode 100644 index 000000000..b1139915a --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/trainDelete.vue @@ -0,0 +1,151 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/trainTranstalet.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/trainTranstalet.vue new file mode 100644 index 000000000..97918ae44 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/trainTranstalet.vue @@ -0,0 +1,158 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuDialog/viewName.vue b/src/jmapNew/theme/datie_02/menus/menuDialog/viewName.vue new file mode 100644 index 000000000..4a32473d5 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuDialog/viewName.vue @@ -0,0 +1,256 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuSection.vue b/src/jmapNew/theme/datie_02/menus/menuSection.vue new file mode 100644 index 000000000..210aa664a --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuSection.vue @@ -0,0 +1,239 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuSignal.vue b/src/jmapNew/theme/datie_02/menus/menuSignal.vue new file mode 100644 index 000000000..06e046f46 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuSignal.vue @@ -0,0 +1,366 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuStation.vue b/src/jmapNew/theme/datie_02/menus/menuStation.vue new file mode 100644 index 000000000..e370afb71 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuStation.vue @@ -0,0 +1,162 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuStationStand.vue b/src/jmapNew/theme/datie_02/menus/menuStationStand.vue new file mode 100644 index 000000000..252b55010 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuStationStand.vue @@ -0,0 +1,220 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuSwitch.vue b/src/jmapNew/theme/datie_02/menus/menuSwitch.vue new file mode 100644 index 000000000..983d64619 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuSwitch.vue @@ -0,0 +1,275 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuTool.vue b/src/jmapNew/theme/datie_02/menus/menuTool.vue new file mode 100644 index 000000000..95bc382b2 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuTool.vue @@ -0,0 +1,211 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/menuTrain.vue b/src/jmapNew/theme/datie_02/menus/menuTrain.vue new file mode 100644 index 000000000..0aa2adfb2 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/menuTrain.vue @@ -0,0 +1,428 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/passiveDialog/alarm.vue b/src/jmapNew/theme/datie_02/menus/passiveDialog/alarm.vue new file mode 100644 index 000000000..afbff9ddc --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/passiveDialog/alarm.vue @@ -0,0 +1,216 @@ + + + + diff --git a/src/jmapNew/theme/datie_02/menus/passiveDialog/timeout.vue b/src/jmapNew/theme/datie_02/menus/passiveDialog/timeout.vue new file mode 100644 index 000000000..e4ef062a6 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/passiveDialog/timeout.vue @@ -0,0 +1,109 @@ + + + diff --git a/src/jmapNew/theme/datie_02/model.js b/src/jmapNew/theme/datie_02/model.js new file mode 100644 index 000000000..c7d80a99e --- /dev/null +++ b/src/jmapNew/theme/datie_02/model.js @@ -0,0 +1,71 @@ +import deviceType from '../../constant/deviceType'; + +class Model { + constructor() { + this.screenLine = 3; + // 公共字段部分默认初始值 + this['public'] = {}; + this['public'][deviceType.Signal] = { + lampPositionType: '02', + lampPostType: '02' + }; + + // 私有字段部分默认初始值 + this['private'] = {}; + this['private'][deviceType.StationControl] = { + indicatorShow: true // 标识灯名称显示 + }; + this['private'][deviceType.Station] = { + kmPostShow: true // 公里标显示 + }; + this['private'][deviceType.Switch] = { + nameShow: true + }; + this['private'][deviceType.Section] = { + nameShow: true, + borderBorderShow: true, // 区段边界显示 + destinationNameShow: true, // 目的地码名称显示 + standTrackNameShow: true, // 站台轨名称显示 + reentryTrackNameShow: true, // 折返轨名称显示 + transferTrackNameShow: true // 转换轨名称显示 + }; + this['private'][deviceType.Signal] = { + nameShow: true, // 信号机名称显示 + linkageAutoRouteShow: true, // 联锁自动进路表示灯显示 + atsAutoTriggerShow: true // ATS自动触发表示灯显示 + }; + this['private'][deviceType.Train] = { + }; + this['private'][deviceType.TrainWindow] = { + trainWindowShow: true + }; + } + + initPublicProps(model) { + if (model) { + var modelInitial = this.public[model._type]; + if (modelInitial) { + for (var prop in modelInitial) { + model[prop] = modelInitial[prop]; + } + } + } + + return model; + } + + initPrivateProps(model) { + if (model) { + var modelInitial = this.private[model._type]; + if (modelInitial) { + for (var prop in modelInitial) { + model[prop] = modelInitial[prop]; + } + } + } + + return model; + } +} + +export default new Model(); diff --git a/src/jmapNew/theme/datie_02/operationConfig.js b/src/jmapNew/theme/datie_02/operationConfig.js new file mode 100644 index 000000000..1a6e6e84d --- /dev/null +++ b/src/jmapNew/theme/datie_02/operationConfig.js @@ -0,0 +1,945 @@ +// SECTION 区段 +// SWITCH 道岔 +// SIGNAL 信号机 +// START_SIGNAL 进路起始信号机 +// END_SIGNAL 进路终端信号机 + +// STATION 车站 +// STAND 站台 +// ROUTE 进路 +// CYCLE 自动折返 + +// {id: "1", trainingType: "ControlConvertMenu", name: "车站名称"} +// {id: "2", trainingType: "ControlConvertMenu", name: "车站控制模式编号"} +// {id: "3", trainingType: "Signal", name: "进路名称"} +// {id: "4", trainingType: "Signal", name: "进路编号"} +// {id: "5", trainingType: "Signal", name: "信号机名称"} +// {id: "6", trainingType: "Signal", name: "信号机编号"} + +// {id: "7", trainingType: "Switch", name: "道岔名称"} + +// {id: "8", trainingType: "Section", name: "物理区段名称"} +// {id: "9", trainingType: "Section", name: "逻辑区段名称"} + +// {id: "10", trainingType: "Stand", name: "车站名称"} +// {id: "11", trainingType: "Stand", name: "站台行驶方向编号"} +// {id: "12", trainingType: "Stand", name: "站台行驶方向"} +// {id: "13", trainingType: "Stand", name: "站台行驶方向编号(反)"} +// {id: "14", trainingType: "Stand", name: "站台行驶方向(反)"} +// {id: "29", trainingType: "Stand", name: "站台名称"} +// {id: "30", trainingType: "Stand", name: "站台编码"} + +// {id: "15", trainingType: "Switch", name: "道岔位置"} +// {id: "16", trainingType: "Switch", name: "道岔位置(反)"} +// {id: "17", trainingType: "Switch", name: "道岔编码"} + +// {id: "18", trainingType: "Section", name: "逻辑区段编码"} +// {id: "19", trainingType: "Section", name: "区段编号"} +// {id: "20", trainingType: "Section", name: "车站名称"} + +// {id: "21", trainingType: "Switch", name: "车站名称"} +// {id: "22", trainingType: "Section", name: "车站编号"} +// {id: "23", trainingType: "Switch", name: "车站编号"} +// {id: "24", trainingType: "Switch", name: "道岔计轴区段编号"} +// {id: "25", trainingType: "Switch", name: "道岔计轴区段名称"} + +import CMD from '@/scripts/cmdPlugin/CommandEnum'; +export default { + list: [ + // 控制模式 + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_STATION_CONTROL.value, + skinCode: '04', + trainingName: '请求站控({2})', + trainingRemark: '请求站控功能', + trainingType: 'ControlConvertMenu', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【站控】', codeType:'STATION', subType:'substation' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.ControlConvertMenu.CMD_CM_EMERGENCY_STATION_CONTROL.value, + skinCode: '04', + trainingName: '请求紧急站控({2})', + trainingRemark: '请求紧急站控功能', + trainingType: 'ControlConvertMenu', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【紧急站控】', codeType:'STATION', subType:'emergency' }, + { deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.ControlConvertMenu.CMD_CM_APPLY_FOR_CENTER_CONTROL.value, + skinCode: '04', + trainingName: '请求中控({2})', + trainingRemark: '请求中控功能', + trainingType: 'ControlConvertMenu', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【中控】', codeType:'STATION', subType:'center' }, + { deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.ControlConvertMenu.CMD_CM_INTERLOCK_CONTROL.value, + skinCode: '04', + trainingName: '请求联锁控({2})', + trainingRemark: '请求联锁控功能', + trainingType: 'ControlConvertMenu', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【联锁控】', codeType:'STATION', subType:'interconnected' }, + { deviceType: '04', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' } + ] + }, + // 信号机列表 + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_SET_ROUTE.value, + skinCode: '04', + trainingName: '办理进路({3} 进路)', + trainingRemark: '办理进路功能', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '301', tip: '鼠标右键菜单选择【办理进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '3011', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' }, + { deviceType: '04', orderNum: 3, operateCode: '3012', tip: '鼠标左键点击【执行】按钮' }, + { deviceType: '04', orderNum: 4, operateCode: '301', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_SET_ROUTE.value, + skinCode: '04', + trainingName: '办理进路({3} 进路)', + trainingRemark: '办理进路功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3010', tip: '鼠标左键点击【排列进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '3010', tip: '鼠标左键点击【{5}】', codeType:'START_SIGNAL' }, + { deviceType: '04', orderNum: 3, operateCode: '3010', tip: '鼠标左键点击【{5}】', codeType:'END_SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_ROUTE_GUIDE.value, + skinCode: '04', + trainingName: '办理引导进路({3})', + trainingRemark: '进路办理信号引导', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '308', tip: '鼠标右键菜单选择【办理引导进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '308', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '3086', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' }, + { deviceType: '04', orderNum: 4, operateCode: '3082', tip: '鼠标左键点击【执行】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_ROUTE_GUIDE.value, + skinCode: '04', + trainingName: '引导进路({3})[进路已锁闭]', + trainingRemark: '进路办理信号引导', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3080', tip: '鼠标左键点击【引导进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '3080', tip: '鼠标左键点击【{5}】', codeType:'START_SIGNAL'}, // 进路编号值不正确 + { deviceType: 'mbm', orderNum: 3, operateCode: '0011', tip: '输入密码123,点击【确定】按钮', codeType: 'START_SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE.value, + skinCode: '04', + trainingName: '取消进路({3} 进路)', + trainingRemark: '取消进路功能', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '303', tip: '鼠标右键菜单选择【取消进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '303', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CANCEL_ROUTE.value, + skinCode: '04', + trainingName: '取消进路({3} 进路)', + trainingRemark: '取消进路功能(总取消)', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' }, + { deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CANCEL_GUIDE.value, + skinCode: '04', + trainingName: '取消引导({3})', + trainingRemark: '取消引导进路功能(总取消)', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' }, + { deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_HUMAN_RELEASE_ROUTE.value, + skinCode: '04', + trainingName: '总人解({3})', + trainingRemark: '总人解', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '305', tip: '鼠标右键菜单选择【总人解】' }, + { deviceType: '04', orderNum: 2, operateCode: '3050', tip: '输入密码123,点击【执行】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '305', tip: '鼠标左键点击【确定】按钮' }, + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_HUMAN_RELEASE_ROUTE.value, + skinCode: '04', + trainingName: '总人解({3})', + trainingRemark: '总人解', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3050', tip: '鼠标左键点击【总人解】' }, + { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '3050', tip: '鼠标左键点击【{5}】', val: '{6}', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 8, + minDuration: 5, + operateType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL.value, + skinCode: '04', + trainingName: '信号重开({5})', + trainingRemark: '信号重开功能', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '304', tip: '鼠标右键菜单选择【信号重开】' }, + { deviceType: '04', orderNum: 2, operateCode: '304', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 8, + minDuration: 5, + operateType: CMD.Signal.CMD_SIGNAL_REOPEN_SIGNAL.value, + skinCode: '04', + trainingName: '信号重开({5})', + trainingRemark: '信号重开功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3010', tip: '鼠标左键点击【排列进路】' }, + { deviceType: '04', orderNum: 2, operateCode: '3010', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_BLOCK.value, + skinCode: '04', + trainingName: '信号封锁({5})', + trainingRemark: '信号封锁', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '306', tip: '鼠标右键菜单选择【信号封锁】' }, + { deviceType: '04', orderNum: 2, operateCode: '306', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_BLOCK.value, + skinCode: '04', + trainingName: '信号封锁({5})', + trainingRemark: '信号封锁功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【封锁】' }, + { deviceType: '04', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_UNBLOCK.value, + skinCode: '04', + trainingName: '信号解封({5})', + trainingRemark: '信号解封', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '307', tip: '鼠标右键菜单选择【信号解封】' }, + { deviceType: '04', orderNum: 2, operateCode: '3072', tip: '鼠标左键点击【确认】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '307', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_UNBLOCK.value, + skinCode: '04', + trainingName: '信号解封({5})', + trainingRemark: '信号解封功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2992', tip: '鼠标左键点击【解封】' }, + { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CLOSE_AUTO_SETTING.value, + skinCode: '04', + trainingName: '进路收人工控({3})', + trainingRemark: '进路收人工控', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '314', tip: '鼠标右键菜单选择【进路收人工控】' }, + { deviceType: '04', orderNum: 2, operateCode: '3141', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' }, + { deviceType: '04', orderNum: 3, operateCode: '314', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CLOSE_AUTO_SETTING.value, + skinCode: '04', + trainingName: '人工控({5})', + trainingRemark: '人工控', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3140', tip: '鼠标左键点击【人工控】' }, + { deviceType: '04', orderNum: 2, operateCode: '3140', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ], + // 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置 + config:{onlySignalOP:true} + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_OPEN_AUTO_SETTING.value, + skinCode: '04', + trainingName: '进路交自动控({3})', + trainingRemark: '进路交自动控', + trainingType: 'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '315', tip: '鼠标右键菜单选择【进路交自动控】' }, + { deviceType: '04', orderNum: 2, operateCode: '3151', tip: '鼠标左键选择进路名称【{3}】', val: '{4}' }, + { deviceType: '04', orderNum: 3, operateCode: '315', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_OPEN_AUTO_SETTING.value, + skinCode: '04', + trainingName: '自动控({5})', + trainingRemark: '自动控', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '3150', tip: '鼠标左键点击【自动控】' }, + { deviceType: '04', orderNum: 2, operateCode: '3150', tip: '鼠标左键点击【{5}】', codeType:'SIGNAL' } + ], + config:{onlySignalOP:true} + }, + { + maxDuration: 15, + minDuration: 8, + operateType:CMD.Signal.CMD_SIGNAL_DETAIL.value, + skinCode: '04', + trainingName: '查询进路信息({5} 信号机)', + trainingRemark: '查询进路信息', + trainingType:'Signal', + productTypes: ['02'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '316', tip: '鼠标右键菜单选择【进路信息】' }, + { deviceType: '04', orderNum: 2, operateCode: '316', tip: '鼠标左键点击【确定】按钮' } + ] + }, + // 道岔列表 + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION.value, // 0312 新增定位字典 + skinCode: '04', + trainingName: '单操到定位({7})', + trainingRemark: '单操到定位({15})', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '101', tip: '鼠标右键菜单选择【单操到定位】' }, + { deviceType: '02', orderNum: 2, operateCode: '101', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_NORMAL_POSITION.value, + skinCode: '04', + trainingName: '单操到定位({7})', + trainingRemark: '单操到定位({7})', + trainingType: 'Switch', + productTypes: ['01'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '1010', tip: '鼠标左键点击【道岔定操】' }, + { deviceType: '02', orderNum: 2, operateCode: '1010', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION.value, // 0313 新增定位字典 + skinCode: '04', + trainingName: '单操到反位({7})', + trainingRemark: '单操到反位({7})', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '102', tip: '鼠标右键菜单选择【单操到反位】' }, + { deviceType: '02', orderNum: 2, operateCode: '102', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_REVERSE_POSITION.value, + skinCode: '04', + trainingName: '单操到反位({7})', + trainingRemark: '单操到反位({7})', + trainingType: 'Switch', + productTypes: ['01'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '1020', tip: '鼠标左键点击【道岔反操】' }, + { deviceType: '02', orderNum: 2, operateCode: '1020', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_SINGLE_LOCK.value, + skinCode: '04', + trainingName: '道岔单锁({7})', + trainingRemark: '道岔单锁功能', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '103', tip: '鼠标右键菜单选择【道岔单锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '103', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_SINGLE_LOCK.value, + skinCode: '04', + trainingName: '道岔单锁({7})', + trainingRemark: '道岔单锁功能', + trainingType: 'Switch', + productTypes: ['01'], // 现地操作 + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '1030', tip: '鼠标左键点击【道岔单锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '1030', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_SINGLE_UNLOCK.value, + skinCode: '04', + trainingName: '道岔解锁({7})', + trainingRemark: '道岔解锁功能', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '104', tip: '鼠标右键菜单选择【道岔解锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '104', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_SINGLE_UNLOCK.value, + skinCode: '04', + trainingName: '道岔解锁({7})', + trainingRemark: '道岔解锁功能', + trainingType: 'Switch', + productTypes: ['01'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '1040', tip: '鼠标左键点击【道岔解锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '02', orderNum: 3, operateCode: '1040', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_BLOCK.value, + skinCode: '04', + trainingName: '道岔封锁({7})', + trainingRemark: '道岔封锁功能', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '105', tip: '鼠标右键菜单选择【道岔封锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '1051', tip: '鼠标左键点击【确定】按钮' }, + { deviceType: '02', orderNum: 3, operateCode: '105', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_BLOCK.value, + skinCode: '04', + trainingName: '道岔封锁({7})', + trainingRemark: '道岔封锁功能', + trainingType: 'Switch', + productTypes: ['01'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '2991', tip: '鼠标左键点击【封锁】' }, + { deviceType: '02', orderNum: 2, operateCode: '2991', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_UNBLOCK.value, + skinCode: '04', + trainingName: '道岔解封({7})', + trainingRemark: '道岔解封功能', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '106', tip: '鼠标右键菜单选择【道岔解封】' }, + { deviceType: '02', orderNum: 2, operateCode: '1062', tip: '鼠标左键点击【确定】按钮' }, + { deviceType: '02', orderNum: 3, operateCode: '106', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Switch.CMD_SWITCH_UNBLOCK.value, + skinCode: '04', + trainingName: '道岔解封({7})', + trainingRemark: '道岔解封功能', + trainingType: 'Switch', + productTypes: ['01'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '2992', tip: '鼠标左键点击【解封】' }, + { deviceType: '02', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '02', orderNum: 3, operateCode: '2992', tip: '鼠标左键点击【{7}】', codeType:'SWITCH' } + ] + }, + { + maxDuration: 20, + minDuration: 10, + operateType: CMD.Switch.CMD_SWITCH_FAULT_UNLOCK.value, + skinCode: '04', + trainingName: '区故解({7})', + trainingRemark: '道岔区段故障解锁功能', + trainingType: 'Switch', + productTypes: ['02'], + stepVOList: [ + { deviceType: '02', orderNum: 1, operateCode: '109', tip: '鼠标右键菜单选择【区故解】' }, + { deviceType: '02', orderNum: 2, operateCode: '1092', tip: '鼠标左键点击【确定】按钮' }, + { deviceType: '02', orderNum: 3, operateCode: '109', tip: '输入密码123,点击【确定】按钮' } + ] + }, + // 区段列表 + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Section.CMD_SECTION_FAULT_UNLOCK.value, + skinCode: '04', + trainingName: '区故解({8}{9})', + trainingRemark: '故障解锁功能', + trainingType: 'Section', + productTypes: ['02'], + stepVOList: [ + { deviceType: '03', orderNum: 1, operateCode: '402', tip: '鼠标右键菜单选择【区故解】' }, + { deviceType: '03', orderNum: 2, operateCode: '4023', tip: '鼠标左键点击【确定】按钮' }, + { deviceType: '03', orderNum: 3, operateCode: '402', tip: '输入密码123,点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Section.CMD_SECTION_FAULT_UNLOCK.value, + skinCode: '04', + trainingName: '区故解({8}{9})', + trainingRemark: '故障解锁功能', + trainingType: 'Section', + productTypes: ['01'], + stepVOList: [ + { deviceType: '03', orderNum: 1, operateCode: '4020', tip: '鼠标左键点击【区故解】'}, + { deviceType: '03', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '03', orderNum: 3, operateCode: '4020', tip: '鼠标左键点击【{8}{9}】', codeType:'SECTION' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Section.CMD_SECTION_DETAILS.value, + skinCode: '04', + trainingName: '属性({8}{9})', + trainingRemark: '区段详情({8}{9})', + trainingType: 'Section', + productTypes: ['02'], + stepVOList: [ + { deviceType: '03', orderNum: 1, operateCode: '410', tip: '鼠标右键菜单选择【属性】' }, + { deviceType: '03', orderNum: 2, operateCode: '410', tip: '鼠标左键点击【确定】按钮' } + ] + }, + // 站台列表 + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_HOLD_TRAIN.value, + skinCode: '04', + trainingName: '设置扣车({10}-{12}站台)', + trainingRemark: '设置扣车功能', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '504', tip: '鼠标右键菜单选择【设置扣车】' }, + { deviceType: '06', orderNum: 2, operateCode: '504', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_CANCEL_HOLD_TRAIN.value, + skinCode: '04', + trainingName: '取消扣车({10}-{12}站台)', + trainingRemark: '设置取消扣车功能', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '505', tip: '鼠标右键菜单选择【取消扣车】' }, + { deviceType: '06', orderNum: 2, operateCode: '505', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_WHOLE_LINE_CANCEL_HOLD_TRAIN.value, + skinCode: '04', + trainingName: '全线取消扣车', + trainingRemark: '设置取消扣车功能({12}全线)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '505', tip: '鼠标右键菜单选择【取消扣车】' }, + { deviceType: '06', orderNum: 2, operateCode: 'com01', tip: '鼠标左键点击【{12}全线】按钮', val: 'true' }, + { deviceType: '06', orderNum: 3, operateCode: '505', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_JUMP_STOP.value, + skinCode: '04', + trainingName: '设置跳停({10}-{12}站台)', + trainingRemark: '设置跳停功能', + trainingType: 'Stand', + productTypes: ['01'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】'}, + { deviceType: '06', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【跳停】', codeType:'STAND', subType:'StopJumpLamp' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_JUMP_STOP.value, + skinCode: '04', + trainingName: '设置跳停({10}-{12}站台)', + trainingRemark: '设置跳停功能', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '502', tip: '鼠标右键菜单选择【跳停】' }, + { deviceType: '06', orderNum: 2, operateCode: '502', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_CANCEL_JUMP_STOP.value, + skinCode: '04', + trainingName: '取消跳停({10}-{12}站台)', + trainingRemark: '设置取消跳停功能', + trainingType: 'Stand', + productTypes: ['01'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】'}, + { deviceType: '06', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【取消跳停】', codeType:'STAND', subType:'CancelStopJumpLamp' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_CANCEL_JUMP_STOP.value, + skinCode: '04', + trainingName: '取消跳停({10}-{12}站台)', + trainingRemark: '设置取消跳停功能', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '503', tip: '鼠标右键菜单选择【取消跳停】' }, + { deviceType: '06', orderNum: 2, operateCode: '503', tip: '鼠标左键点击【确定】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_PARK_TIME.value, + skinCode: '04', + trainingName: '设置停站时间({10}-{12}站台)', + trainingRemark: '设置停站时间(自动, 一直有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '509', tip: '鼠标右键菜单选择【设置停站时间】' }, + { deviceType: '06', orderNum: 3, operateCode: '509', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_PARK_TIME.value, + skinCode: '04', + trainingName: '设置停站时间({10}-{12}站台)', + trainingRemark: '设置停站时间(人工, 20秒, 一直有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '509', tip: '鼠标右键菜单选择【设置停站时间】' }, + { deviceType: '06', orderNum: 2, operateCode: '5092', tip: '鼠标左键点击,选择【人工】', val: '02' }, + { deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【20】', val: '20' }, + { deviceType: '06', orderNum: 4, operateCode: '5093', tip: '标左键点击,选择【一直有效】', val: '02' }, + { deviceType: '06', orderNum: 5, operateCode: '509', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_PARK_TIME.value, + skinCode: '04', + trainingName: '设置停站时间({10}-{12}站台)', + trainingRemark: '设置停站时间(人工, 20秒, 一次有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '509', tip: '鼠标右键菜单选择【设置停站时间】' }, + { deviceType: '06', orderNum: 2, operateCode: '5092', tip: '鼠标左键点击,选择【人工】', val: '02' }, + { deviceType: '06', orderNum: 3, operateCode: '5094', tip: '输入或鼠标点击,调整为【20】', val: '20' }, + { deviceType: '06', orderNum: 4, operateCode: '509', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_RUN_TIME.value, + skinCode: '04', + trainingName: '设置站间运行等级({10}-{12}站台)', + trainingRemark: '设置站间运行等级(自动, 一直有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '510', tip: '鼠标右键菜单选择【设置站间运行等级】' }, + { deviceType: '06', orderNum: 4, operateCode: '510', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_RUN_TIME.value, + skinCode: '04', + trainingName: '设置站间运行等级({10}-{12}站台)', + trainingRemark: '设置站间运行等级(人工, 常速, 一直有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '510', tip: '鼠标右键菜单选择【设置站间运行等级】' }, + { deviceType: '06', orderNum: 2, operateCode: '5106', tip: '鼠标左键点击,选择【人工】', val: '02' }, + { deviceType: '06', orderNum: 3, operateCode: '5107', tip: '鼠标左键点击,取消选择【一直有效】', val: '02' }, + { deviceType: '06', orderNum: 4, operateCode: '510', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Stand.CMD_STAND_SET_RUN_TIME.value, + skinCode: '04', + trainingName: '设置站间运行等级({10}-{12}站台)', + trainingRemark: '设置站间运行等级(人工, 常速, 一次有效)', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '510', tip: '鼠标右键菜单选择【设置站间运行等级】' }, + { deviceType: '06', orderNum: 2, operateCode: '5106', tip: '鼠标左键点击,选择【人工】', val: '02' }, + { deviceType: '06', orderNum: 4, operateCode: '510', tip: '鼠标左键点击【确认】按钮' } + ] + }, + { + maxDuration: 8, // 自动生成实训失败 + minDuration: 5, + operateType: CMD.Stand.CMD_STAND_VIEW_STATUS.value, + skinCode: '04', + trainingName: '显示站台信息({10}-{12}站台)', + trainingRemark: '查询站台状态功能', + trainingType: 'Stand', + productTypes: ['02'], + stepVOList: [ + { deviceType: '06', orderNum: 1, operateCode: '507', tip: '鼠标右键菜单选择【显示站台信息】' }, + { deviceType: '06', orderNum: 2, operateCode: '0012', tip: '鼠标左键点击【退出】按钮' } + ] + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_SET_CI_AUTO.value, + skinCode: '04', + trainingName: '设置自动进路({3})', + trainingRemark: '设置自动进路功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【{3}】', codeType:'BUTTON' } + ], + // 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置 + config:{autoRouteBT:true} + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CANCEL_CI_AUTO.value, + skinCode: '04', + trainingName: '取消自动进路({3})', + trainingRemark: '取消自动进路功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' }, + { deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【{3}】', codeType:'BUTTON' } + ], + // 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置 + config:{autoRouteBT:true} + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_SET_AUTO_TURN_BACK.value, + skinCode: '04', + trainingName: '设置自动折返({3})', + trainingRemark: '设置自动折返功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2993', tip: '鼠标左键点击【功能按钮】' }, + { deviceType: '04', orderNum: 2, operateCode: '2993', tip: '鼠标左键点击【{3}】', codeType:'BUTTON' } + ], + // 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置 + config:{autoCycleBT:true} + }, + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Signal.CMD_SIGNAL_CANCEL_AUTO_TURN_BACK.value, + skinCode: '04', + trainingName: '取消自动折返({3})', + trainingRemark: '取消自动折返功能', + trainingType: 'Signal', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '2994', tip: '鼠标左键点击【总取消】' }, + { deviceType: '04', orderNum: 2, operateCode: '2994', tip: '鼠标左键点击【{3}】', codeType:'BUTTON' } + ], + // 成都三号线 特殊配置 类似于哈尔滨线的 atp/联锁进路 配置 + config:{autoCycleBT:true} + }, + /** 引导总锁 */ + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Station.CMD_STATION_SET_MASTER_GUIDE_LOCK.value, + skinCode: '04', + trainingName: '引导总锁({26})', + trainingRemark: '设置引导总锁', + trainingType: 'Station', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '609', tip: '鼠标左键点击【引导总锁】' }, + { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '609', tip: '鼠标左键点击【{26}】', codeType:'BUTTON' } + ], + config:{guideTotalLockBT:true} + }, + /** 取消引导总锁 */ + { + maxDuration: 15, + minDuration: 8, + operateType: CMD.Station.CMD_STATION_CANCEL_MASTER_GUIDE_LOCK.value, + skinCode: '04', + trainingName: '取消引导总锁({26})', + trainingRemark: '取消引导总锁', + trainingType: 'Station', + productTypes: ['01'], + stepVOList: [ + { deviceType: '04', orderNum: 1, operateCode: '609', tip: '鼠标左键点击【引导总锁】' }, + { deviceType: '04', orderNum: 2, operateCode: '0011', tip: '输入密码123,点击【确定】按钮' }, + { deviceType: '04', orderNum: 3, operateCode: '609', tip: '鼠标左键点击【{26}】', codeType:'BUTTON' } + ], + config:{guideTotalLockBT:true} + } + // totalGuideLock + // + ] +}; diff --git a/src/jmapNew/theme/datie_02/planConfig.js b/src/jmapNew/theme/datie_02/planConfig.js new file mode 100644 index 000000000..0cb8b8311 --- /dev/null +++ b/src/jmapNew/theme/datie_02/planConfig.js @@ -0,0 +1,74 @@ +import { convertSheetToList } from '../parser/util'; + +export default { + /** 运行图解析方式*/ + type: 'Ratio', + + /** 边缘高度*/ + edge: 600, + + /** 间隔高度*/ + multiple: 1, + + /** 偏移时间*/ + translation: 60 * 60 * 2, + + /** excel解析配置*/ + excelConfig: { + beginRow: 1, + beginCol: 0, + fieldNum: 8, + sepField: '车次', + columns: { + '车站名称': { key: 'stationName', formatter: (val) => { return val; } }, + '到点': { key: 'arriveTime', formatter: (val) => { return val; } }, + '发点': { key: 'departureTime', formatter: (val) => { return val; } } + } + }, + + /** 解析excel数据转换为Json后台数据*/ + importData(Sheet, JsonData) { + var dataList = convertSheetToList(Sheet, false); + var needList = Object.keys(this.excelConfig.columns); + if (dataList && dataList.length) { + for (var rowIndex = this.excelConfig.beginRow; rowIndex < dataList.length; rowIndex += 1) { + for (var colIndex = this.excelConfig.beginCol; colIndex < dataList[this.excelConfig.beginCol].length; colIndex += this.excelConfig.fieldNum + 1) { + var tripNew, tripObj; + var stationObj = {}; + + tripNew = tripObj = { code: '', arrivalList: [] }; + for (var index = 0; index < this.excelConfig.fieldNum; index += 1) { + var title = dataList[0][colIndex + index]; + var value = dataList[rowIndex][colIndex + index]; + + if (title && value) { + var titleStr = `${title}`.trim(); + var valueStr = `${value}`.trim(); + + if (titleStr.includes(this.excelConfig.sepField)) { + tripObj.code = valueStr; + JsonData.forEach(elem => { + if (elem.code == valueStr) { + tripObj = elem; + return; + } + }); + } + + // 取需要的字段 + if (needList.findIndex(elem => { return elem == titleStr; }) >= 0) { + stationObj[this.excelConfig.columns[titleStr].key] = this.excelConfig.columns[titleStr].formatter(valueStr); + } + } + } + + tripObj.arrivalList.push(stationObj); + if (tripObj.code && tripObj == tripNew) { + JsonData.push(tripObj); + } + } + } + } + return JsonData; + } +}; diff --git a/src/jmapNew/theme/factory.js b/src/jmapNew/theme/factory.js index 707164725..37488ff9d 100644 --- a/src/jmapNew/theme/factory.js +++ b/src/jmapNew/theme/factory.js @@ -50,7 +50,8 @@ class Theme { '12': 'ningbo_03', '13': 'race_01', '14': 'nanjing_02', // 南京二号线 - '15': 'datie_01' + '15': 'datie_01', + '16': 'datie_02' }; this._runplan = { @@ -69,7 +70,8 @@ class Theme { '12': 'ningbo_03', '13': 'race_01', '14': 'nanjing_02', // 南京二号线 - '15': 'datie_01' + '15': 'datie_01', + '16': 'datie_02' }; this._localShowMode = { // 现地显示模式 @@ -87,7 +89,8 @@ class Theme { '12': 'all', '13':'all', '14':'ecStation', - '15':'all' + '15':'all', + '16':'all' }; } diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index dcb4609e8..ca8281842 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -1747,7 +1747,21 @@ export const OperationEvent = { operation: '322', domId: '_Tips-Signal-conflictRoute-Menu{TOP}' } - } + }, + // 点灯 (大铁) + signalLight: { + menuButton: { + operation: '3231', + domId: '_Tips-Signal-signalLight-MenuButton{BOTTOM}' + } + }, + // 灭灯 (大铁) + signalDestroy: { + menuButton: { + operation: '3232', + domId: '_Tips-Signal-signalDestroy-MenuButton{BOTTOM}' + } + } }, // 物理区段操作 diff --git a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue index 1bd56a692..a9f8f1c6c 100644 --- a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue +++ b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue @@ -90,7 +90,16 @@ export default { 'ControlSwitch', 'Axle', 'SwitchFault', - 'IndicatorLight' + 'IndicatorLight', + 'SectionOccupied', + 'AssistStatus', + 'TotalAssist', + 'DepartAssist', + 'PickAssist', + 'Recovery', + 'Accident', + 'Occlusion', + 'PickOrDepartArrow' ], noNameTypeList: ['FaultStatusGroup', 'ModeStatusGroup', 'LampFilament', 'ReturnModeGroup', 'ControlSwitch', 'Axle'], typeList: [ @@ -112,7 +121,16 @@ export default { { name: 'LCW/ATS控制开关', value: 'ControlSwitch'}, { name: '计轴预复位', value: 'Axle'}, { name: '道岔故障', value: 'SwitchFault'}, - { name: '指示灯', value: 'IndicatorLight'} + { name: '指示灯', value: 'IndicatorLight'}, + { name: '区间占用', value: 'SectionOccupied' }, + { name: '辅助状态', value: 'AssistStatus' }, + { name: '总辅助', value: 'TotalAssist' }, + { name: '发车辅助', value: 'DepartAssist' }, + { name: '接车辅助', value: 'PickAssist' }, + { name: '复原', value: 'Recovery' }, + { name: '事故', value: 'Accident' }, + { name: '闭塞', value: 'Occlusion' }, + { name: '接发车箭头', value: 'PickOrDepartArrow' } ], editModel:getModel('ControlLamp'), addModel:getModel('ControlLamp'), @@ -145,6 +163,7 @@ export default { ] }, { prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup' }, { prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup'}, + { prop: 'right', label: '朝右:', type: 'checkbox', isHidden: this.editModel.type !== 'PickOrDepartArrow' }, { prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.editModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType }, { prop:'stationCode', label: '所属车站:', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList} ] @@ -258,6 +277,15 @@ export default { this.AxleList = []; this.SwitchFaultList = []; this.IndicatorLightList = []; + this.SectionOccupiedList = []; + this.AssistStatusList = []; + this.TotalAssistList = []; + this.DepartAssistList = []; + this.PickAssistList = []; + this.RecoveryList = []; + this.AccidentList = []; + this.OcclusionList = []; + this.PickOrDepartArrowList = []; indicatorLightList.forEach(item => { switch (item._type) { case 'AtsControl': @@ -317,6 +345,33 @@ export default { case 'IndicatorLight': this.IndicatorLightList.push(item); break; + case 'SectionOccupied': + this.SectionOccupiedList.push(item); + break; + case 'AssistStatus': + this.AssistStatusList.push(item); + break; + case 'TotalAssist': + this.TotalAssistList.push(item); + break; + case 'DepartAssist': + this.DepartAssistList.push(item); + break; + case 'PickAssist': + this.PickAssistList.push(item); + break; + case 'Recovery': + this.RecoveryList.push(item); + break; + case 'Accident': + this.AccidentList.push(item); + break; + case 'Occlusion': + this.OcclusionList.push(item); + break; + case 'PickOrDepartArrow': + this.PickOrDepartArrowList.push(item); + break; } }); }, @@ -379,6 +434,33 @@ export default { case 'IndicatorLight': this.selectLists = this.IndicatorLightList; break; + case 'SectionOccupied': + this.selectLists = this.SectionOccupiedList; + break; + case 'AssistStatus': + this.selectLists = this.AssistStatusList; + break; + case 'TotalAssist': + this.selectLists = this.TotalAssistList; + break; + case 'DepartAssist': + this.selectLists = this.DepartAssistList; + break; + case 'PickAssist': + this.selectLists = this.PickAssistList; + break; + case 'Recovery': + this.selectLists = this.RecoveryList; + break; + case 'Accident': + this.selectLists = this.AccidentList; + break; + case 'Occlusion': + this.selectLists = this.OcclusionList; + break; + case 'PickOrDepartArrow': + this.selectLists = this.PickOrDepartArrowList; + break; default : this.selectLists = this.intersiteControlList; break; @@ -463,6 +545,33 @@ export default { // case 'SwitchFault': // idPrefix = ''; // break; + case 'SectionOccupied': + idPrefix = 'sectionOcc'; + break; + case 'AssistStatus': + idPrefix = 'assistStatus'; + break; + case 'TotalAssist': + idPrefix = 'totalAssist'; + break; + case 'DepartAssist': + idPrefix = 'departAssist'; + break; + case 'PickAssist': + idPrefix = 'pickAssist'; + break; + case 'Recovery': + idPrefix = 'recovery'; + break; + case 'Accident': + idPrefix = 'accident'; + break; + case 'Occlusion': + idPrefix = 'occlusion'; + break; + case 'PickOrDepartArrow': + idPrefix = 'podArrow' + break; } return idPrefix; }, diff --git a/src/views/newMap/newMapdraft/mapoperate/models.js b/src/views/newMap/newMapdraft/mapoperate/models.js index 8a521fdf4..484846ab5 100644 --- a/src/views/newMap/newMapdraft/mapoperate/models.js +++ b/src/views/newMap/newMapdraft/mapoperate/models.js @@ -201,6 +201,7 @@ class Model { this.mfNum = 0; this.pfNum = 0; this.switchCode = ''; + this.right = false; } } diff --git a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue index 134e3543f..111b33d2a 100644 --- a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue +++ b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue @@ -85,7 +85,12 @@ export default { { value: 'FLEXIBLE', label: '变通按钮' }, { value: 'RAMP_TERMINAL', label: '坡道终端按钮' }, { value: 'TRAIN_TERMINAL', label: '列车终端按钮'}, - { value: 'SHUNT_TERMINAL', label: '调车终端按钮'} + { value: 'SHUNT_TERMINAL', label: '调车终端按钮'}, + { value: 'ASSIST', label: '总辅助按钮' }, + { value: 'PICK_ASSIST', label: '接辅助按钮' }, + { value: 'DEPART_ASSIST', label: '发辅助按钮' }, + { value: 'ACCIDENT', label: '事故按钮' }, + { value: 'CHANGE_DIRECTION', label: '改方按钮' } ], centralizedStationList: [], // 设备集中站列表 rules: { diff --git a/src/views/newMap/newMapdraft/mapoperate/train/create.vue b/src/views/newMap/newMapdraft/mapoperate/train/create.vue index 2d9062115..912e80277 100644 --- a/src/views/newMap/newMapdraft/mapoperate/train/create.vue +++ b/src/views/newMap/newMapdraft/mapoperate/train/create.vue @@ -109,9 +109,6 @@ export default { ], modelCode: [ { required: true, message: this.$t('rules.selectTrainType'), trigger: 'change' } - ], - stationCode: [ - { required: true, message: '请选择车辆段/停车场', trigger: 'change' } ] }; } From 1dcb5fe1dcf727be111164f949bf024ee6eb6b1c Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Mon, 18 Apr 2022 14:57:12 +0800 Subject: [PATCH 09/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B42?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 6ed22109af9345b7bb23f155ea76cf63a8bf69e8) --- src/jmapNew/shape/graph/SaidLamp/index.js | 2 +- .../newMapdraft/mapoperate/controlLamp.vue | 11 +++++++-- .../newMapdraft/mapoperate/signalButton.vue | 24 ++++++++++++++----- 3 files changed, 28 insertions(+), 9 deletions(-) diff --git a/src/jmapNew/shape/graph/SaidLamp/index.js b/src/jmapNew/shape/graph/SaidLamp/index.js index 528733e6c..eee827dd9 100644 --- a/src/jmapNew/shape/graph/SaidLamp/index.js +++ b/src/jmapNew/shape/graph/SaidLamp/index.js @@ -194,7 +194,7 @@ export default class SaidLamp extends Group { } } - // 设置状态 498 + // 设置状态 setState(model) { this.recover(); if (!store.getters['map/checkDeviceShow'](this._code)) { diff --git a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue index a9f8f1c6c..26670103d 100644 --- a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue +++ b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue @@ -132,7 +132,9 @@ export default { { name: '闭塞', value: 'Occlusion' }, { name: '接发车箭头', value: 'PickOrDepartArrow' } ], - editModel:getModel('ControlLamp'), + hasDirectionList: ['SectionOccupied', 'AssistStatus', 'TotalAssist', 'DepartAssist', 'PickAssist', 'Recovery', 'Accident', 'Occlusion', 'PickOrDepartArrow'], + directionList: [{label: 'X',value: 'X'},{label: 'XF',value: 'XF'},{label: 'XD',value: 'XD'}, {label:'S',value:'S'},{label:'SF',value:'SF'},{label:'SD',value: 'SD'}], + editModel:getModel('ControlLamp'), addModel:getModel('ControlLamp'), field: '' }; @@ -164,6 +166,7 @@ export default { { prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup' }, { prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup'}, { prop: 'right', label: '朝右:', type: 'checkbox', isHidden: this.editModel.type !== 'PickOrDepartArrow' }, + { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.editModel.type) }, { prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.editModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType }, { prop:'stationCode', label: '所属车站:', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList} ] @@ -188,6 +191,7 @@ export default { ] }, { prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup' }, { prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup'}, + { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.addModel.type) }, { prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.addModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType } ] } @@ -217,7 +221,10 @@ export default { ], switchCode: [ { required: true, message: '请选择所属道岔!', trigger: 'change'} - ] + ], + direction: [ + { required: true, message: '请选择方向!', trigger: 'change'} + ] }; }, isButtonType() { diff --git a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue index 111b33d2a..04743c41d 100644 --- a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue +++ b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue @@ -56,6 +56,7 @@ export default { signalCode: '', sectionCode: '', switchCode: '', + direction: '', position: { x: 0, y: 0 @@ -93,6 +94,7 @@ export default { { value: 'CHANGE_DIRECTION', label: '改方按钮' } ], centralizedStationList: [], // 设备集中站列表 + directionList: [{label:'X',value:'X'},{label:'XF',value:'XF'},{label:'XD',value:'XD'},{label:'S',value:'S'},{label:'SF',value:'SF'},{label:'SD',value:'SD'}], rules: { code: [ { required: true, message: this.$t('rules.selectText'), trigger: 'blur' } @@ -117,7 +119,10 @@ export default { ], 'position.y': [ { required: true, message: this.$t('rules.pleaseEnterYCoordinate'), trigger: 'blur' } - ] + ], + direction: [ + { required: true, message: '请选择方向', trigger: 'change' } + ] } }; }, @@ -151,6 +156,7 @@ export default { { prop: 'signalCode', label: '关联信号机:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.signalList, hover: this.hover, buttonType: 'linkSignal', buttonShowType: this.isLinkSignalShow, isHidden: !this.isLinkSignal }, { prop: 'sectionCode', label: '关联区段:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.sectionList, hover: this.hover, buttonType: 'linkSection', buttonShowType: this.isLinkSectionShow, isHidden: !this.isLinkSection }, { prop: 'switchCode', label: '关联道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchList, hover: this.hover, buttonType: 'linkSwitch', buttonShowType: this.isLinkSwitchShow, isHidden: !this.isLinkSwitch }, + { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.isLinkDirection }, { prop: 'position', label: this.$t('map.textPoints'), type: 'coordinate', width: '120px', children: [ { prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px', disabled: false }, { prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px', disabled: false } @@ -205,7 +211,10 @@ export default { }, isLinkSwitch() { return this.editModel.type === 'FLEXIBLE'; - } + }, + isLinkDirection() { + return ['ASSIST', 'PICK_ASSIST', 'DEPART_ASSIST', 'ACCIDENT', 'CHANGE_DIRECTION'].includes(this.editModel.type); + } }, methods: { handleInit() { @@ -233,6 +242,7 @@ export default { this.editModel.signalCode = ''; this.editModel.switchCode = ''; this.editModel.sectionCode = ''; + this.editModel.direction = ''; this.activeName = 'first'; this.editModel = deepAssign(this.editModel, selected); } else if (this.field === 'linkSignal' && selected && selected._type.toUpperCase() === 'Signal'.toUpperCase()) { @@ -278,12 +288,14 @@ export default { }, updateMapModel(data) { if (this.isLinkSignal) { - data.sectionCode = ''; data.switchCode = ''; + data.sectionCode = ''; data.switchCode = ''; data.direction = ''; } else if (this.isLinkSection) { - data.signalCode = ''; data.switchCode = ''; + data.signalCode = ''; data.switchCode = ''; data.direction = ''; } else if (this.isLinkSwitch) { - data.signalCode = ''; data.sectionCode = ''; - } + data.signalCode = ''; data.sectionCode = ''; data.direction = ''; + } else if (this.isLinkDirection) { + data.sectionCode = ''; data.signalCode = ''; data.switchCode = ''; + } this.$emit('updateMapModel', data); } } From dfec35ff2c8ec01fa9137ca1e7f984fd4e203cce Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Apr 2022 15:41:37 +0800 Subject: [PATCH 10/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/organization/studentStatistics/gradeStatistic.vue | 2 +- src/views/organization/studentStatistics/index.vue | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/organization/studentStatistics/gradeStatistic.vue b/src/views/organization/studentStatistics/gradeStatistic.vue index 1c5f1fbd0..d1a8f5ea5 100644 --- a/src/views/organization/studentStatistics/gradeStatistic.vue +++ b/src/views/organization/studentStatistics/gradeStatistic.vue @@ -12,7 +12,7 @@ export default { require:true }, orgId:{ - type:Number, + type:String, require:true }, userId:{ diff --git a/src/views/organization/studentStatistics/index.vue b/src/views/organization/studentStatistics/index.vue index ede846c24..b6bc8dc5e 100644 --- a/src/views/organization/studentStatistics/index.vue +++ b/src/views/organization/studentStatistics/index.vue @@ -46,7 +46,7 @@ export default { async mounted() { this.initChart() this.loadData(); - this.orgId=parseInt(this.$store.state.user.companyId); + this.orgId=this.$store.state.user.companyId; }, computed:{ userId(){ From 377c1d34b66b083b71241cc268f5feabbb97cb16 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Apr 2022 17:10:12 +0800 Subject: [PATCH 11/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../examManage/gradeStatistics.vue | 229 ++++++++---------- 1 file changed, 104 insertions(+), 125 deletions(-) diff --git a/src/views/organization/examManage/gradeStatistics.vue b/src/views/organization/examManage/gradeStatistics.vue index 39853811d..d270412c5 100644 --- a/src/views/organization/examManage/gradeStatistics.vue +++ b/src/views/organization/examManage/gradeStatistics.vue @@ -29,7 +29,7 @@
-
+
@@ -45,11 +45,11 @@ export default { return { orgId:'', myChart1:null, - myChart2:null, - userNameList:[], - gradeList:[], + // myChart2:null, + // userNameList:[], + // gradeList:[], classList:[], - durationList:[], + // durationList:[], fullPoint:0, passingPoint:0, duration:0, @@ -63,31 +63,31 @@ export default { color:'#f00' } }, - title1:{ - show:true, - text:' 答题时长区间人数 ', - // 各分数区间人数统计 - textAlign:'center', - left:'50%', - top:'5px', - textStyle:{ - color:'#f00' - } - }, - yAxis1:{ - position:'left', - name:'人数', - nameLocation:'end', - minInterval:1, - nameTextStyle:{ - align:'left', - fontSize:14 - }, - axisLine:{show:true} - }, + // title1:{ + // show:true, + // text:' 答题时长区间人数 ', + // // 各分数区间人数统计 + // textAlign:'center', + // left:'50%', + // top:'5px', + // textStyle:{ + // color:'#f00' + // } + // }, + // yAxis1:{ + // position:'left', + // name:'人数', + // nameLocation:'end', + // minInterval:1, + // nameTextStyle:{ + // align:'left', + // fontSize:14 + // }, + // axisLine:{show:true} + // }, yAxis:{ position:'left', - name:'分数', + name:'人数', nameLocation:'end', min:0, nameTextStyle:{ @@ -96,10 +96,10 @@ export default { }, axisLine:{show:true} }, - durationInterval:[] + gradeInterval:[] }; }, - async created() { + async mounted() { const resp = await getClassListUnPage(); resp.data && resp.data.forEach(item => { this.classList.push({ value: item.id, label: item.name }); @@ -108,22 +108,35 @@ export default { this.orgId = this.classList[0].value; const res = await getExamLessonDetail(this.$route.query.examId); if (res.data) { - this.yAxis.max = res.data.fullPoint; + this.fullPoint = res.data.fullPoint; this.passingPoint = res.data.passingPoint; this.duration = res.data.duration; } var chartDom1 = document.getElementById('mychart1'); this.myChart1 = echarts.init(chartDom1); - var chartDom2 = document.getElementById('mychart2'); - this.myChart2 = echarts.init(chartDom2); - const eachInterval = this.duration / 6; - this.durationInterval = ['0-' + eachInterval, - eachInterval + '-' + eachInterval * 2, - eachInterval * 2 + '-' + eachInterval * 3, - eachInterval * 3 + '-' + eachInterval * 4, - eachInterval * 4 + '-' + eachInterval * 5, - eachInterval * 5 + '-' + eachInterval * 6 - ]; + // var chartDom2 = document.getElementById('mychart2'); + // this.myChart2 = echarts.init(chartDom2); + const eachInterval = this.fullPoint / 10; + this.gradeInterval = []; + for(i=0;i<10;i++){ + this.gradeInterval.push(eachInterval*i+'-'+eachInterval*(i+1)); + } + const option = { + title:this.title, + xAxis: { + type: 'category', + name:'分数区间', + data: this.gradeInterval + }, + yAxis:this.yAxis, + series: [ + { + data:[], + type: 'line' + } + ] + }; + option && this.myChart1 && this.myChart1.setOption(option); this.getClassGradeStatis(); }, methods: { @@ -132,64 +145,45 @@ export default { }, getClassGradeStatis() { if (this.orgId) { - this.userNameList = []; - this.gradeList = []; + // this.userNameList = []; + // this.gradeList = []; // this.myChart1.restore(); getClassGradeStatistic(this.orgId, this.$route.query.examId).then(resp=>{ const results = resp.data; if (results) { const gradeList = results.results; - const countList = [0, 0, 0, 0, 0]; + const countList = [0,0,0,0,0,0,0,0,0,0]; if (gradeList.length > 0) { gradeList.forEach(each=>{ - this.userNameList.push(each.username || ''); - this.gradeList.push(each.score); - this.durationList.push(each.duration || 0); - countList[Math.floor((each.duration || 0) / (this.duration / 6))]++; + // this.userNameList.push(each.username || ''); + // this.gradeList.push(each.score); + // this.durationList.push(each.duration || 0); + countList[Math.floor((each.score || 0) / (this.fullPoint/ 10))]++; }); - const option = { - title:this.title, - xAxis: { - type: 'category', - axisLabel:{ - show :false - }, - data:this.userNameList - }, - tooltip:{ - show:true, - trigger:'item' - }, - yAxis: this.yAxis, - series: [ - { - symbolSize: 10, - data:this.gradeList, - type: 'scatter' - } - ] - }; - const option1 = { - title1:this.title1, - xAxis: { - name:'时长区间/s', - type: 'category', - data: this.durationInterval - }, - yAxis: this.yAxis1, - tooltip:{ - show:true, - trigger:'axis' - }, - series: [ - { - data:countList, - type: 'bar' - } - ] - }; + let option=this.myChart1.getOption(); + // debugger + option.series[0].data=countList; + // const option1 = { + // title1:this.title1, + // xAxis: { + // name:'时长区间/s', + // type: 'category', + // data: this.durationInterval + // }, + // yAxis: this.yAxis1, + // tooltip:{ + // show:true, + // trigger:'axis' + // }, + // series: [ + // { + // data:countList, + // type: 'bar' + // } + // ] + // }; option && this.myChart1 && this.myChart1.setOption(option); - option1 && this.myChart2 && this.myChart2.setOption(option1); + // option1 && this.myChart2 && this.myChart2.setOption(option1); // debugger; // id": "92", // "userId": "92", @@ -204,38 +198,22 @@ export default { } } }).catch((error) => { - const option = { - title:this.title, - xAxis: { - type: 'category', - data:[] - }, - yAxis:this.yAxis, - series: [ - { - symbolSize: 20, - data:[], - type: 'scatter' - } - ] - }; - const option1 = { - title:this.title1, - xAxis: { - name:'时长区间/s', - type: 'category', - data: this.durationInterval - }, - yAxis:this.yAxis1, - series: [ - { - data:[], - type: 'bar' - } - ] - }; - option && this.myChart1 && this.myChart1.setOption(option); - option1 && this.myChart2 && this.myChart2.setOption(option1); + // const option1 = { + // title:this.title1, + // xAxis: { + // name:'时长区间/s', + // type: 'category', + // data: this.durationInterval + // }, + // yAxis:this.yAxis1, + // series: [ + // { + // data:[], + // type: 'bar' + // } + // ] + // }; + // option1 && this.myChart2 && this.myChart2.setOption(option1); this.$message.error(error.message); }); @@ -267,15 +245,16 @@ export default { margin-left:5%; } .statisticChartLeft{ - width: 50%; + width: 100%; display: inline-block; - height: 700px; + height: 500px; + /* margin-left:25%; */ /* border:1px #ccc solid */ } .statisticChartRight{ width: 50%; display: inline-block; - height: 700px; + height: 500px; /* border:1px #ccc solid */ } From 63ecb61501b08e6167d7d13c778ecbfc5da0111d Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Apr 2022 17:13:54 +0800 Subject: [PATCH 12/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/organization/examManage/gradeStatistics.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/organization/examManage/gradeStatistics.vue b/src/views/organization/examManage/gradeStatistics.vue index d270412c5..fb8f580dd 100644 --- a/src/views/organization/examManage/gradeStatistics.vue +++ b/src/views/organization/examManage/gradeStatistics.vue @@ -118,7 +118,7 @@ export default { // this.myChart2 = echarts.init(chartDom2); const eachInterval = this.fullPoint / 10; this.gradeInterval = []; - for(i=0;i<10;i++){ + for(var i=0;i<10;i++){ this.gradeInterval.push(eachInterval*i+'-'+eachInterval*(i+1)); } const option = { From 0312ebd77c6c1dcd6b015fe50e455699a9cb8ae9 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Apr 2022 18:43:39 +0800 Subject: [PATCH 13/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/management/userexam.js | 5 +- .../studentStatistics/gradeStatistic.vue | 75 ++++++++++--------- .../organization/studentStatistics/index.vue | 16 ++-- .../studentStatistics/studentGradeStatis.vue | 12 +-- 4 files changed, 53 insertions(+), 55 deletions(-) diff --git a/src/api/management/userexam.js b/src/api/management/userexam.js index 7dec56fc6..a72980272 100644 --- a/src/api/management/userexam.js +++ b/src/api/management/userexam.js @@ -76,11 +76,10 @@ export function getClassGradeStatistic(orgId, examId) { } /** 查询组织学生单次考试成绩曲线 */ -export function getStuGradeStatistic(params) { +export function getStuGradeStatistic(userId) { return request({ - url: `/api/userExam/curve/personal`, + url: `/api/userExam/curve/${userId}`, method: 'get', - params }); } diff --git a/src/views/organization/studentStatistics/gradeStatistic.vue b/src/views/organization/studentStatistics/gradeStatistic.vue index d1a8f5ea5..ea3a88c3c 100644 --- a/src/views/organization/studentStatistics/gradeStatistic.vue +++ b/src/views/organization/studentStatistics/gradeStatistic.vue @@ -7,21 +7,21 @@ import { getStuGradeStatistic } from '@/api/management/userexam'; export default { name: 'GradeStatistics', props:{ - creatorId:{ - type:String, - require:true - }, - orgId:{ - type:String, - require:true - }, + // creatorId:{ + // type:String, + // require:true + // }, + // orgId:{ + // type:String, + // require:true + // }, userId:{ - type:Number, + type:String, require:true }, }, watch:{ - 'orgId':function(){ + 'userId':function(){ this.loadData() } }, @@ -50,18 +50,18 @@ export default { }, axisLine:{show:true} }, - { - nameLocation:'end', - nameTextStyle:{ - align:'left', - fontSize:14 - }, - axisLine:{show:true}, - name: '时长', - alignTicks: true, - type: 'value', - // inverse: true - }, + // { + // nameLocation:'end', + // nameTextStyle:{ + // align:'left', + // fontSize:14 + // }, + // axisLine:{show:true}, + // name: '时长', + // alignTicks: true, + // type: 'value', + // // inverse: true + // }, ], } }, @@ -76,7 +76,7 @@ export default { xAxis: { type: 'category', axisLabel:{ - show :false + show :true }, data:[] }, @@ -90,14 +90,14 @@ export default { { name: '分数', data:[], - type: 'line' - }, - { - name:'时长', - yAxisIndex: 1, - data:[], - type: 'line' + type: 'bar' }, + // { + // name:'时长', + // yAxisIndex: 1, + // data:[], + // type: 'line' + // }, ] } option && this.myChart2 && this.myChart2.setOption(option); @@ -106,12 +106,13 @@ export default { this.loadData(); }, loadData(){ - let data={creatorId:this.creatorId,orgId:this.orgId,userId:this.userId} - debugger - getStuGradeStatistic(data).then(res=>{ + // creatorId:this.creatorId,orgId:this.orgId, + // let data={userId:this.userId} + // debugger + getStuGradeStatistic(this.userId).then(resp=>{ const results = resp.data; if (results) { - const gradeList = results.results; + const gradeList = results; // const gradeList = [ // { // "id": "92", @@ -152,16 +153,16 @@ export default { // ]; let gradeNumList=[]; let exameNameList=[]; - let durationList=[]; + // let durationList=[]; gradeList.forEach(item=>{ gradeNumList.push(item.score); exameNameList.push(item.examName); - durationList.push(item.duration); + // durationList.push(item.duration); }) let option=this.myChart2.getOption(); option.xAxis[0].data=exameNameList; option.series[0].data=gradeNumList; - option.series[1].data=durationList; + // option.series[1].data=durationList; option && this.myChart2 && this.myChart2.setOption(option); } }).catch(error=>{ diff --git a/src/views/organization/studentStatistics/index.vue b/src/views/organization/studentStatistics/index.vue index b6bc8dc5e..0fe65471e 100644 --- a/src/views/organization/studentStatistics/index.vue +++ b/src/views/organization/studentStatistics/index.vue @@ -8,7 +8,8 @@
- + +
@@ -29,8 +30,9 @@ export default { data() { return { myChart3:null, - creatorId:'', - orgId:'', + // creatorId:'', + // orgId:'', + userId:'', title:{ show:true, text:'仿真时长统计', @@ -46,12 +48,8 @@ export default { async mounted() { this.initChart() this.loadData(); - this.orgId=this.$store.state.user.companyId; - }, - computed:{ - userId(){ - return parseInt(this.$store.state.user.id); - } + this.userId=this.$store.state.user.id; + // this.orgId=this.$store.state.user.companyId; }, methods: { initChart(){ diff --git a/src/views/organization/studentStatistics/studentGradeStatis.vue b/src/views/organization/studentStatistics/studentGradeStatis.vue index 02fef7ae1..506b11543 100644 --- a/src/views/organization/studentStatistics/studentGradeStatis.vue +++ b/src/views/organization/studentStatistics/studentGradeStatis.vue @@ -9,7 +9,7 @@ :close-on-click-modal="false" >
- +
@@ -24,19 +24,19 @@ export default { return { studentName:'', show:false, - creatorId:'', + // creatorId:'', userId:'', - orgId:'', + // orgId:'', } }, methods: { doShow(row){ this.show=true; this.studentName=row.name; - this.userId=row.userId; - this.creatorId=this.$store.state.user.id; + // this.creatorId=this.$store.state.user.id; this.$nextTick(()=>{ - this.orgId=row.companyId; + // this.orgId=row.companyId; + this.userId=row.userId; }) // this.$refs.gradeStatic.doShow(); }, From 4b86b7ac03e818c1ea6741304efdcc94ffa1042c Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 18 Apr 2022 18:54:21 +0800 Subject: [PATCH 14/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/organization/studentStatistics/gradeStatistic.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/organization/studentStatistics/gradeStatistic.vue b/src/views/organization/studentStatistics/gradeStatistic.vue index ea3a88c3c..8270f39c2 100644 --- a/src/views/organization/studentStatistics/gradeStatistic.vue +++ b/src/views/organization/studentStatistics/gradeStatistic.vue @@ -43,7 +43,7 @@ export default { name:'分数', type: 'value', // nameLocation:'end', - // minInterval:1, + minInterval:1, nameTextStyle:{ align:'left', fontSize:14 From 3b839937ac726d8001f9503c19095a585a9e89c6 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Tue, 19 Apr 2022 13:45:00 +0800 Subject: [PATCH 15/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../classManage/studentManage/index.vue | 21 +++---- .../studentStatistics/examStatistic.vue | 37 ++++++++++-- .../studentStatistics/gradeStatistic.vue | 1 + .../organization/studentStatistics/index.vue | 59 ++++++++++++++----- 4 files changed, 88 insertions(+), 30 deletions(-) diff --git a/src/views/organization/classManage/studentManage/index.vue b/src/views/organization/classManage/studentManage/index.vue index 2fafdd24e..337c2831d 100644 --- a/src/views/organization/classManage/studentManage/index.vue +++ b/src/views/organization/classManage/studentManage/index.vue @@ -11,7 +11,7 @@ style="width:80%;margin: 0 auto;" /> - + @@ -74,14 +74,11 @@ export default { return this.$route.query.creatorId == this.$store.state.user.id; } }, - { - name: '成绩曲线', - handleClick: this.gradeStatistic, - type: 'success', - // showControl: (row) => { - // return this.$route.query.creatorId == this.$store.state.user.id; - // } - } + // { + // name: '成绩统计', + // handleClick: this.gradeStatistic, + // type: 'success', + // } ] } ], @@ -210,9 +207,9 @@ export default { XLSX.utils.book_append_sheet(wb, ws, 'file'); XLSX.writeFile(wb, '学生信息模板' + '.xlsx'); }, - gradeStatistic(index,row){ - this.$refs.studentGradeStatis.doShow(row); - }, + // gradeStatistic(index,row){ + // this.$refs.studentGradeStatis.doShow(row); + // }, removeStudent(index, row) { const _that = this; this.$confirm(`是否确认将${row.name}移出班级?`, this.$t('tip.hint'), { diff --git a/src/views/organization/studentStatistics/examStatistic.vue b/src/views/organization/studentStatistics/examStatistic.vue index baa0dc607..db2b89d46 100644 --- a/src/views/organization/studentStatistics/examStatistic.vue +++ b/src/views/organization/studentStatistics/examStatistic.vue @@ -11,7 +11,9 @@ export default { myChart2:null, title:{ show:true, - text:'教学时长统计', + subtext:'', + subtextStyle:{color:'#358ff8',fontSize:14}, + text:'学习时长统计', textAlign:'center', left:'50%', top:'5px', @@ -31,14 +33,32 @@ export default { this.myChart1 = echarts.init(chartDom1); let option1={ title: this.title, - tooltip: {trigger: 'item'}, - legend: {orient: 'vertical',left: 'left',top:'45px',orient:'horizontal'}, + tooltip: { + trigger: 'item', + formatter: function (params, ticket, callback) { + let value=params.data.value; + let hour=0; + let minu=0; + let seconds=0; + hour=Math.floor(value/3600); + minu=Math.floor((value%3600)/60); + seconds=Math.floor((value%3600)%60); + // hour=hour>9?hour:'0'+hour; + // minu=minu>9?minu:'0'+minu; + // seconds=seconds>9?seconds:'0'+seconds; + let temp=hour+'时'+minu+"分"+seconds+'秒'; + return '

'+params.data.name+': '+temp+'

' + } + }, + color:['#358ff8','#91cb74','#f7c757','#ec6566','#73c0de','#4ca273','#ee8250','#9a60b4','#ea7ccc','#59eca9'], + legend: {orient: 'vertical',left: 'left',top:'65px'}, series: [ { data:[], label:{show:false}, radius: '60%', - top:'20px', + top:'60px', + showEmptyCircle:true, type: 'pie' } ] @@ -50,10 +70,19 @@ export default { let timeList=response.data; if(timeList){ let realList=[]; + let allcount=0; timeList.forEach(eachItem=>{ + allcount+=parseInt(eachItem.duration); realList.push({value:eachItem.duration,name:eachItem.statsProjectName}); }) let option=this.myChart1.getOption(); + let hour=0; + let minu=0; + let seconds=0; + hour=Math.floor(allcount/3600); + minu=Math.floor((allcount%3600)/60); + seconds=Math.floor((allcount%3600)%60); + option.title[0].subtext="总时长: "+hour+'时'+minu+"分"+seconds+'秒'; option.series[0].data=realList; option && this.myChart1 && this.myChart1.setOption(option); } diff --git a/src/views/organization/studentStatistics/gradeStatistic.vue b/src/views/organization/studentStatistics/gradeStatistic.vue index 8270f39c2..bd3dbe8a2 100644 --- a/src/views/organization/studentStatistics/gradeStatistic.vue +++ b/src/views/organization/studentStatistics/gradeStatistic.vue @@ -90,6 +90,7 @@ export default { { name: '分数', data:[], + barMaxWidth:'50px', type: 'bar' }, // { diff --git a/src/views/organization/studentStatistics/index.vue b/src/views/organization/studentStatistics/index.vue index 0fe65471e..0457934ee 100644 --- a/src/views/organization/studentStatistics/index.vue +++ b/src/views/organization/studentStatistics/index.vue @@ -7,24 +7,24 @@ -
+ - -
+ +
+ + diff --git a/src/views/newMap/newMapdraft/dataRelation/bigroutingoperate/detail.vue b/src/views/newMap/newMapdraft/dataRelation/bigroutingoperate/detail.vue index 97e898c24..9994ad01c 100644 --- a/src/views/newMap/newMapdraft/dataRelation/bigroutingoperate/detail.vue +++ b/src/views/newMap/newMapdraft/dataRelation/bigroutingoperate/detail.vue @@ -227,7 +227,7 @@ export default { }, getBtnCodeList(btnCodeList) { const nameList = []; - btnCodeList.forEach(item => { + btnCodeList && btnCodeList.forEach(item => { nameList.push(this.formatName(item)); }); return nameList; From c0bbf354558f71b997d8bdedd728af988859823c Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Tue, 19 Apr 2022 17:55:27 +0800 Subject: [PATCH 19/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B44?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/index.vue | 2 +- src/views/newMap/displayCity/lineBoard.vue | 78 ++++++++++++++-------- src/views/system/configLine/config.vue | 9 ++- 3 files changed, 56 insertions(+), 33 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index 219be537f..877011e54 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -115,7 +115,7 @@ export default { const date = new Date(+new Date(`${new Date().toLocaleDateString()} ${timeFormat(time)}`)); this.initDate(date); } - },// 1668 + },// 138 mounted() { this.$nextTick(() => { this.$store.dispatch('config/updateMenuBar'); diff --git a/src/views/newMap/displayCity/lineBoard.vue b/src/views/newMap/displayCity/lineBoard.vue index 0cd4eae8d..eea45e0fa 100644 --- a/src/views/newMap/displayCity/lineBoard.vue +++ b/src/views/newMap/displayCity/lineBoard.vue @@ -2,12 +2,14 @@ -
-
+
+
- +
列车未接近
- + {{ item.sectionName }}
-
-
-
-
进路序列模式:/<可修改/>
- 修改申请 - 只读申请 - 查找列车 - +
+
+
+
{{ '进路序列模式:<可修改>' }}
+ 修改申请 + 只读申请 + 查找列车 +
上下行
- +
接车口
- +
发车口
- + @@ -97,9 +100,9 @@
-
-
- +
+
+
调机-J101
- 进路预览 - + 进路预览 + - 办理进路 - 发送机车 + 办理进路 + 发送机车
@@ -135,7 +138,7 @@ - +
@@ -153,14 +156,25 @@ andDown: 'all', unknow: '', unknow1: '', - tableData: [], + tableData: [{},{}], unknowList1: [{label: '全部机车', value: 'all'}], unknowList: [{label: 'J101-执行中', value: 'J101'}], andDownList: [{ label: '全部', value: 'all' }, { label: '上行', value: 'up' }, { label: '下行', value: 'down' }], sectionStatusList: [ {label: '办理发车进路', value: ''} ], - infoList : [{ id: 1 }] + infoList : [ + { id: 1 }, + { id: 2 }, + { id: 3 }, + { id: 4 }, + { id: 5 }, + { id: 6 }, + { id: 7 }, + { id: 8 }, + { id: 9 }, + { id: 10 } + ] } }, computed: { @@ -180,5 +194,11 @@ diff --git a/src/views/system/configLine/config.vue b/src/views/system/configLine/config.vue index c6a2e40ec..8626f4597 100644 --- a/src/views/system/configLine/config.vue +++ b/src/views/system/configLine/config.vue @@ -115,7 +115,8 @@ export default { 'routeDefaultCheckConflict', 'tripNumberIsUnique', 'standTbStrategyIsInvalid', - 'updateTripPlanByServiceNumber' + 'updateTripPlanByServiceNumber', + 'hasCTC' ], selectList: ['runMode', 'singleApproachLockCancelRoute'], generalConfig: [ @@ -164,7 +165,8 @@ export default { 'routeDefaultCheckConflict', 'tripNumberIsUnique', 'standTbStrategyIsInvalid', - 'updateTripPlanByServiceNumber' + 'updateTripPlanByServiceNumber', + 'hasCTC' ], rangeList: ['noParkingSM', 'parkingSM'], speedList: ['rmAtpSpeed', 'urmAtpSpeed'], @@ -219,7 +221,8 @@ export default { routeDefaultCheckConflict: '进路默认开启冲突检测', tripNumberIsUnique: '运行图中车次号是否唯一', standTbStrategyIsInvalid: '站台折返策略不生效', - updateTripPlanByServiceNumber: '根据服务号更新车次计划' + updateTripPlanByServiceNumber: '根据服务号更新车次计划', + hasCTC: '有CTC系统(大铁)' } }; }, From a7f24b860b4ebc88fe10823b17917c9800395f0c Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Tue, 19 Apr 2022 19:18:31 +0800 Subject: [PATCH 20/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/organization/examManage/gradeStatistics.vue | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/views/organization/examManage/gradeStatistics.vue b/src/views/organization/examManage/gradeStatistics.vue index fb8f580dd..ea3dd6ce6 100644 --- a/src/views/organization/examManage/gradeStatistics.vue +++ b/src/views/organization/examManage/gradeStatistics.vue @@ -129,6 +129,10 @@ export default { data: this.gradeInterval }, yAxis:this.yAxis, + tooltip:{ + show:true, + trigger:'axis' + }, series: [ { data:[], From a045d2c776a2e7c46ab54cb32db191eaaad49ddc Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Thu, 21 Apr 2022 10:02:13 +0800 Subject: [PATCH 21/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B45?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/assist.js | 32 +++ src/assets/datie/arrow.png | Bin 0 -> 512 bytes src/assets/datie/camera.png | Bin 0 -> 1271 bytes src/assets/datie/controlPanel.png | Bin 0 -> 735 bytes src/assets/datie/controlPanel2.png | Bin 0 -> 468 bytes src/assets/datie/link.png | Bin 0 -> 574 bytes src/assets/datie/picT3.png | Bin 0 -> 464 bytes src/assets/datie/train.png | Bin 0 -> 916 bytes src/jmapNew/theme/datie_02/menus/index.vue | 2 +- .../theme/datie_02/menus/menuButton.vue | 2 +- src/views/newMap/displayCity/lineBoard.vue | 89 ++++-- .../newMap/newMapdraft/dataRelation/index.vue | 9 +- .../indicatorAssociatedInfo/detail.vue | 267 ++++++++++++++++++ .../indicatorAssociatedInfo/index.vue | 97 +++++++ .../indicatorAssociatedInfo/route.vue | 267 ++++++++++++++++++ .../newMapdraft/mapoperate/controlLamp.vue | 7 +- .../newMap/newMapdraft/mapoperate/models.js | 1 + .../newMapdraft/mapoperate/signalButton.vue | 14 +- 18 files changed, 754 insertions(+), 33 deletions(-) create mode 100644 src/api/assist.js create mode 100644 src/assets/datie/arrow.png create mode 100644 src/assets/datie/camera.png create mode 100644 src/assets/datie/controlPanel.png create mode 100644 src/assets/datie/controlPanel2.png create mode 100644 src/assets/datie/link.png create mode 100644 src/assets/datie/picT3.png create mode 100644 src/assets/datie/train.png create mode 100644 src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue create mode 100644 src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue create mode 100644 src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue diff --git a/src/api/assist.js b/src/api/assist.js new file mode 100644 index 000000000..77d66e22b --- /dev/null +++ b/src/api/assist.js @@ -0,0 +1,32 @@ +import request from '@/utils/request'; + +// 查询指示灯关联信息列表 +export function queryAssistListPaged(params, mapId) { + return request({ + url: `/api/assist/indicator/section/list/${mapId}`, + method: 'get', + params + }); +} +// 根据id查询单个指示灯关联信息 +export function queryAssistById(id){ + return request({ + url: `/api/assist/indicator/section/${id}`, + method: 'get' + }) +} +// 保存指示灯关联信息 +export function saveAssist(data, mapId) { + return request({ + url: `/api/assist/indicator/section/save${mapId}`, + method: 'post', + data + }) +} +// 删除指示灯关联关系 +export function deleteAssist(id) { + return request({ + url: `/api/assist/indicator/section/delete/${id}`, + method: 'delete' + }) +} diff --git a/src/assets/datie/arrow.png b/src/assets/datie/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..2d5169ba7fa24e110f48714acad99a4250da83cd GIT binary patch literal 512 zcmV+b0{{JqP)Px$x=BPqR9HvtlrK!fKp4f}EtG{|m`8xU5yA{85+>H+_#+^!2n^`Wf(E;3FbHl0 z1PsSIF%lG*5yH-bz=I)VjO<7oM#lcMy|!eCRyDcrd*AQg-8+Ilf27azAqAl6ybNH@ z2KtJrH12d`0YKnD;6UKO|8yXAeIFt317|&6GuxN2Tb~&ET+Yu9~{OMvWA}T9Ge?2+pm<8v;wmNm}?50P`q{)dC1v=sG}%3zm#7Ivp&Nl!PLg(fa z%~TqbwZ2*J>JBuUjaVB0GO_d30k^wu?epY-9{^wUCZ{1tzO9!40000Px(u}MThR9HvNR$XjUWf*?m@3^uo;*BN(f?#0L8gq!@(P418D0U_fVJ2@w{{12AKffXf6J#A5hx zsNrX?2lE6V97{C`VRtiAx0k|1+-uvSHyZMvb&GcepvMxgfaqGPL9`jn)lNL~t41jBP9+c(0fb|T9wK@p+ndIj#WRLhKU}GxZl*U7 z*`G3VT^0lHiG~6_<#Ngb2%Cw`1p3-(4jPDP{!RHJUBl_S>`Z0_D^(57duw`3_aUe&yGlr(Foh_J@>|X9dtO-L?YYTF|1Mr|EW+WKcUYt7* zK-W;J&aycT!c}Jbp{RE6IhmxJNjZ@wH&*A~pEWdfjr<)pFRUUG--2N#Tm2vt?fjOG=;7AET_E-uCN^rdpVV4~-vLI1~{r;>~L z8ZLuy#R#gmxdE62W05VaMg1*}zw74M4#3{`Z&m<^orc!1zhh|hPGKukAWRuS)$xz~ zGoOU<)F7B20j!XrHJY7+qw85wBrm{3J@()DQvMdV;BjIut8g-gEUP)v+IUhoM>Rl+ zf#@3}=x=o+VV3d4FGhoby;Aio%bGKKk5>_jqAZo_7>*})5!3qsW^P7>2_&8b)8_yV z8=Bgcy@r+4uN<6NRn*O7AAqeOe#!_24py8%dpxmPVLA;W0Tvtc=A)aQR4`wAMh&Go zf$Za8&M@qCd0{I%0Y|-ZE+`!^67*Wj>tefs;OG3obq-YOSTiCKbthy5v4j3G7TiinGV~W zX86XW>gAj0W}y>eT{NVgx-J0ORiwI!_&_f448wl5c!$MB9rJdV39_th@+y|4 zs@s*)%?oP*@uA~{gsT7@W1CZ?&^hw4^UcQ@YGR95ksv?7o22te-B$!{FLpmq94HRz z7#O)jRM+eQV+(-WT|oZPx%nMp)JR9HvtmQ85Wa2Up)q^lb%{cf#Hs-Pms1Z4+5P*50xh^V`Hka=mn*r;H2 zf-t2gEjXB&$k5Bgqo5weQ$dAN4{9A#baP!l*SN8^>+EMDZLQQbZIdRl%l@YXp1kjm z=Xt~bC9uYaSmXX!2jF#pq9{86gUs=yX__8eU9%2=qNqUt6U~|vBnOUdD?KMo)Awp? z^8q*j(7Jpcm#4qMV=}|rqsQ%m_wWY|c=~Q9`fvCU|Eh=o`3|urxoDccB?zFaSj3rV z1Ru0Id{L`mKRSg^K?A(g7VJ9l1ItV|fmW(cqAIr#n=PBc%!fgMaM>K!o6kTMz-;Nku~TOyb1<<8KKkAu9t(*F zI6iPr5hIZy?dn4Cu-nZ@wIEoC52Fab{}(GV`ja+q5wVEoXgie4(f zlgT(Za5&#v`Rz&ov&jrEKp>Stx(KM03S8T*mj^&-4pqxn>m@tT8h}G2I19aTBd=64 zK*{pbIbzlRjiA~ooJeCalY>d!UDy1yRV7aZjfPMG7H<~|$g*5rbE~QY4-Zrvk?cU= z&%kZfbd?L1-apTUq0?4|tkLN+cFF@#+aR0yg`e>#3?|_hkz@y|01HeE9Lqta*0i3> z8iizlm){rQXOg(Or;_RG$O=ZMmdek%4P+h6QjW!TwGyNI%<@Dq;+;VtufUx?(?0;) z)Jk3_W>R^101o$`M0z;|jZWHn*j5C+d-sDR6(|-9qVnbwGqJGn%jnSq_aHc~=~CJ@ z5eujN(oplIv{d}@nA^sJGq&A`=R=Y}+IDfM^;#}xQz5n5TJD7u7OGhX_zl4dg)la* RZe0KX002ovPDHLkV1fnUQ4#Px$j!8s8R9Hvtmn}@gKorN{yGuY2LeK~lf)Nx5452e!kO<61!UP(JX0u2%VkES7 zl57Y@utSjzJ%J`cbN9$KyJlqVxc0WSVrSZ1-h20Z|977V88^&$e8>ktrQJUPfXg|n zaqGE-CYD>h8X{f;KxfVX4iVL{((aS`@k={34N!g^tow(XU!y=#eKx>4@iBmM>thd* zxsDf4u#lI4#fE<($590E?s#C zTi;U$kOcQ!ipDeoo5m1~R~f>2pn$2wc`Cc`AY6BUq* zIXc*%L#ova53D4EXS->P)Px$_(?=TR9HvtmCtJvK@`Wo-_4{cDA-F8?WOdphk_nznm`mvH$kCiK`2EL{{f-5 zT#KiA5-h}n(7T835(+J5+ENiuDk_Mew4f*3i#5C1S3;VaUz<+#upV}9yEE_2XTI~k zZ-|HoBi!6wMD6}2%RjZd49ZE)pv zuS7io(p7ubB1=aB-vK;=Q0sw}Z4+73)xtO-IS@qx=jt(o${Skc>RxAj7eM2#`4+$# z0Pl3txoom&*qV%IZvae#C~4))od}Te@(TbSf;eCTS1NSg{|i7?rY}g%`UJsQ1ae!a z+~wAMT?%CU{0j(fk$6&3&V$y)oz)%&)^ta6e$p?LC^AdRQboD-HtYSii?FO4fMiee7zt2jAX_@+ z7W*|a*0b&JW1tM4A5W9ByA#4%2od5s; M07*qoM6N<$g7#1Upa1{> literal 0 HcmV?d00001 diff --git a/src/assets/datie/picT3.png b/src/assets/datie/picT3.png new file mode 100644 index 0000000000000000000000000000000000000000..377ee83e000379b208932b8adc287b2c71d1cd01 GIT binary patch literal 464 zcmV;>0WbcEP)Px$ib+I4R9Hvt*Re|-K@bM;pMQXrRkRTa5fmhajhzw*5!6a8?3JLUSevv-nxqIM zjg26v*jS5-pjFC9s*wL6MIeMU2^03gx!`+n-n}#8z%{$KGv9tQ-|TLWhOMXJ_--YD zUd&*)Vs=gt-xbRlc#Lg~Rvf(LE&xmwedhqy@diuSsTjlyY+@06E#EnSV@y&@ZG_+O z{}KV_pWOraFBn)s|1|~qITchNW|Mp`@DV?&TruPx&PDw;TR9HvtmP=?8Q51&%GpVgJ6&H#NMX(?WqM009CfQlf}Jc@!{*oAHsM8w=wo4H3OkD4Z#F=Lgwa8|?I zd(QpNf6lpc2owC!1fLIAfUer;T4D+-P?j^e-U}>&q7w2s6L*D^_4k}?9RVV>@q@%T z?d4FXy-YY1O6q6It(OJ3Gr512Pw_n*W59Ui35Kw$aK9z3)y>1f5+5Z1z0(G#j-A(PE{JG}CCusSa4PsLe@KCHkW4GX zDgWqNMy%pUZed_bjV50ckevgVuS1~+MpE~5Aw|?^3!tJkEJe)I3 zGY}=l7zs-vA}nNJM(+D(1z59Q=r5fDaaKUyf<)vWJitpRhshCUfWw};b`$2kRR>;{Nd*fT+Xk}VvuT_k { this.$store.dispatch('config/updateMenuBar'); diff --git a/src/jmapNew/theme/datie_02/menus/menuButton.vue b/src/jmapNew/theme/datie_02/menus/menuButton.vue index 8137af30a..08b016802 100644 --- a/src/jmapNew/theme/datie_02/menus/menuButton.vue +++ b/src/jmapNew/theme/datie_02/menus/menuButton.vue @@ -456,7 +456,7 @@ export default { operate.over = true; operate.cmdType = CMD.Signal.CMD_SIGNAL_SET_ROUTE; operate.code = deviceList[deviceList.length - 1].code; - operate.param = {routeId: route.code}; + operate.param = {routeCode: route.code}; this.$store.dispatch('training/nextNew', operate).then(({ valid, response }) => { this.deviceTimeNode = 0; }).catch(() => { diff --git a/src/views/newMap/displayCity/lineBoard.vue b/src/views/newMap/displayCity/lineBoard.vue index eea45e0fa..b9919eb85 100644 --- a/src/views/newMap/displayCity/lineBoard.vue +++ b/src/views/newMap/displayCity/lineBoard.vue @@ -2,12 +2,12 @@ -
-
+
+
{{item.trainCode}}
-
+
列车未接近
@@ -44,16 +44,25 @@
{{ item.sectionName }}
-
+
+ + + + + + + +
+
{{ '进路序列模式:<可修改>' }}
- 修改申请 - 只读申请 - 查找列车 - -
上下行
- + 修改申请 + 只读申请 + 查找列车 + +
上下行
+ -
接车口
- +
接车口
+ -
发车口
- +
发车口
+ - + + + @@ -128,6 +142,7 @@ style="width: 100%;margin-top: 10px;" highlight-current-row border + height="180" > @@ -147,16 +162,30 @@ diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue new file mode 100644 index 000000000..dcf1e2921 --- /dev/null +++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/index.vue @@ -0,0 +1,97 @@ + + diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue new file mode 100644 index 000000000..e48dc4493 --- /dev/null +++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/route.vue @@ -0,0 +1,267 @@ + + + diff --git a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue index 26670103d..7a55a9660 100644 --- a/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue +++ b/src/views/newMap/newMapdraft/mapoperate/controlLamp.vue @@ -166,7 +166,7 @@ export default { { prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup' }, { prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.editModel.type !== 'FaultStatusGroup'}, { prop: 'right', label: '朝右:', type: 'checkbox', isHidden: this.editModel.type !== 'PickOrDepartArrow' }, - { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.editModel.type) }, + { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.editModel.type) }, { prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.editModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType }, { prop:'stationCode', label: '所属车站:', type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList} ] @@ -191,7 +191,7 @@ export default { ] }, { prop: 'mfNum', label: '报警指示故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup' }, { prop: 'pfNum', label: '电源故障数量:', type: 'number', min: 0, isHidden: this.addModel.type !== 'FaultStatusGroup'}, - { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.addModel.type) }, + { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.hasDirectionList.includes(this.addModel.type) }, { prop: 'switchCode', label: '所属道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, isHidden: this.addModel.type !== 'SwitchFault', hover: this.hover, buttonType: 'switchSelectCode', buttonShowType: this.isButtonType } ] } @@ -222,7 +222,7 @@ export default { switchCode: [ { required: true, message: '请选择所属道岔!', trigger: 'change'} ], - direction: [ + labelEnum: [ { required: true, message: '请选择方向!', trigger: 'change'} ] }; @@ -478,6 +478,7 @@ export default { this.deviceSelect(this.$store.getters['map/getDeviceByCode'](code)); }, deviceSelect(selected) { + console.log(selected, '======'); if (this.field.toUpperCase() === 'switchSelectCode'.toUpperCase() && selected._type.toUpperCase() === 'Switch'.toUpperCase()) { if (this.activeName === 'first') { this.editModel.switchCode = selected.code; diff --git a/src/views/newMap/newMapdraft/mapoperate/models.js b/src/views/newMap/newMapdraft/mapoperate/models.js index 484846ab5..66afe411e 100644 --- a/src/views/newMap/newMapdraft/mapoperate/models.js +++ b/src/views/newMap/newMapdraft/mapoperate/models.js @@ -201,6 +201,7 @@ class Model { this.mfNum = 0; this.pfNum = 0; this.switchCode = ''; + this.labelEnum = ''; this.right = false; } } diff --git a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue index 04743c41d..83c565fb4 100644 --- a/src/views/newMap/newMapdraft/mapoperate/signalButton.vue +++ b/src/views/newMap/newMapdraft/mapoperate/signalButton.vue @@ -56,7 +56,7 @@ export default { signalCode: '', sectionCode: '', switchCode: '', - direction: '', + labelEnum: '', position: { x: 0, y: 0 @@ -120,7 +120,7 @@ export default { 'position.y': [ { required: true, message: this.$t('rules.pleaseEnterYCoordinate'), trigger: 'blur' } ], - direction: [ + labelEnum: [ { required: true, message: '请选择方向', trigger: 'change' } ] } @@ -156,7 +156,7 @@ export default { { prop: 'signalCode', label: '关联信号机:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.signalList, hover: this.hover, buttonType: 'linkSignal', buttonShowType: this.isLinkSignalShow, isHidden: !this.isLinkSignal }, { prop: 'sectionCode', label: '关联区段:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.sectionList, hover: this.hover, buttonType: 'linkSection', buttonShowType: this.isLinkSectionShow, isHidden: !this.isLinkSection }, { prop: 'switchCode', label: '关联道岔:', type: 'selectHover', optionLabel: 'name&&code', optionValue: 'code', clearable: true, options: this.switchList, hover: this.hover, buttonType: 'linkSwitch', buttonShowType: this.isLinkSwitchShow, isHidden: !this.isLinkSwitch }, - { prop: 'direction', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.isLinkDirection }, + { prop: 'labelEnum', label: '方向:', type: 'select', optionLabel: 'label', optionValue: 'value', options: this.directionList, isHidden: !this.isLinkDirection }, { prop: 'position', label: this.$t('map.textPoints'), type: 'coordinate', width: '120px', children: [ { prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: 'x:', type: 'number', labelWidth: '25px', disabled: false }, { prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '25px', disabled: false } @@ -242,7 +242,7 @@ export default { this.editModel.signalCode = ''; this.editModel.switchCode = ''; this.editModel.sectionCode = ''; - this.editModel.direction = ''; + this.editModel.labelEnum = ''; this.activeName = 'first'; this.editModel = deepAssign(this.editModel, selected); } else if (this.field === 'linkSignal' && selected && selected._type.toUpperCase() === 'Signal'.toUpperCase()) { @@ -288,11 +288,11 @@ export default { }, updateMapModel(data) { if (this.isLinkSignal) { - data.sectionCode = ''; data.switchCode = ''; data.direction = ''; + data.sectionCode = ''; data.switchCode = ''; data.labelEnum = ''; } else if (this.isLinkSection) { - data.signalCode = ''; data.switchCode = ''; data.direction = ''; + data.signalCode = ''; data.switchCode = ''; data.labelEnum = ''; } else if (this.isLinkSwitch) { - data.signalCode = ''; data.sectionCode = ''; data.direction = ''; + data.signalCode = ''; data.sectionCode = ''; data.labelEnum = ''; } else if (this.isLinkDirection) { data.sectionCode = ''; data.signalCode = ''; data.switchCode = ''; } From c5d60323e26315dbcaac6cda261173b566e7e58b Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Thu, 21 Apr 2022 15:10:43 +0800 Subject: [PATCH 22/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B46=20=E8=81=94=E9=94=81=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/assist.js | 2 +- src/utils/baseUrl.js | 1 + .../indicatorAssociatedInfo/detail.vue | 240 ++++++------------ .../indicatorAssociatedInfo/route.vue | 19 +- .../newMap/newMapdraft/mapoperate/index.vue | 5 +- 5 files changed, 91 insertions(+), 176 deletions(-) diff --git a/src/api/assist.js b/src/api/assist.js index 77d66e22b..de8a71d94 100644 --- a/src/api/assist.js +++ b/src/api/assist.js @@ -18,7 +18,7 @@ export function queryAssistById(id){ // 保存指示灯关联信息 export function saveAssist(data, mapId) { return request({ - url: `/api/assist/indicator/section/save${mapId}`, + url: `/api/assist/indicator/section/save/${mapId}`, method: 'post', data }) diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index 6827def93..bcfe519ad 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -30,6 +30,7 @@ export function handlerUrl(data) { // BASE_API = 'http://192.168.8.172:9200'; // 旭强 // BASE_API = 'http://192.168.8.109:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 + BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 // BASE_API = 'http://b29z135112.zicp.vip'; // BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康 // BASE_API = 'http://2i38984j47.qicp.vip'; // 张赛 diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue index 46e6d1544..461747234 100644 --- a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue +++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue @@ -11,7 +11,8 @@ + diff --git a/src/jmapNew/theme/datie_02/menus/menuTrain.vue b/src/jmapNew/theme/datie_02/menus/menuTrain.vue index 0aa2adfb2..178c95fd8 100644 --- a/src/jmapNew/theme/datie_02/menus/menuTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/menuTrain.vue @@ -9,6 +9,7 @@ +
@@ -24,6 +25,7 @@ import TrainMoveNumber from './dialog/trainMoveNumber'; import TrainCreateNumber from './dialog/trainCreateNumber'; import TrainDeleteNumber from './dialog/trainDeleteNumber'; import TrainDetailInfo from './dialog/trainDetailInfo'; +import TrainSetPlan from './dialog/trainSetPlan'; import CancelMouseState from '@/mixin/CancelMouseState'; import CMD from '@/scripts/cmdPlugin/CommandEnum'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; @@ -41,7 +43,8 @@ export default { TrainCreateNumber, TrainDeleteNumber, TrainDetailInfo, - SetFault + SetFault, + TrainSetPlan }, mixins: [ CancelMouseState @@ -59,53 +62,58 @@ export default { menu: [], menuNormal: { Local: [ - { - label: '新建计划列车', - handler: this.createPlanTrain, - cmdType: CMD.TrainWindow.CMD_Train_Init_Plan - } + { + label: '设置计划车', + handler: this.setPlanTrain, + cmdType: CMD.TrainWindow.CMD_TRAIN_SET_PLAN + }, ], Center: [ - { - label: '新建车组号', - handler: this.createTrainNo - }, - { - label: '移动车组号', - handler: this.moveTrainNo - }, - { - label: '删除车组号', - handler: this.deleteTrainNo - }, - { - label: '修改车组号', - handler: this.editTrainNo - }, - { - label: '设计划车', - handler: this.setPlanTrainId - }, - { - label: '设目的地', - handler: this.destinationTrainId - }, - { - label: '设人工车', - handler: this.artificialTrainId - }, - { - label: '设特殊人工车', - handler: this.undeveloped - }, - { - label: '详细列车信息', - handler: this.detailTrainInfo - }, - { - label: '属性', - handler: this.undeveloped - } + { + label: '设置计划车', + handler: this.setPlanTrain, + cmdType: CMD.TrainWindow.CMD_TRAIN_SET_PLAN + } + // { + // label: '新建车组号', + // handler: this.createTrainNo + // }, + // { + // label: '移动车组号', + // handler: this.moveTrainNo + // }, + // { + // label: '删除车组号', + // handler: this.deleteTrainNo + // }, + // { + // label: '修改车组号', + // handler: this.editTrainNo + // }, + // { + // label: '设计划车', + // handler: this.setPlanTrainId + // }, + // { + // label: '设目的地', + // handler: this.destinationTrainId + // }, + // { + // label: '设人工车', + // handler: this.artificialTrainId + // }, + // { + // label: '设特殊人工车', + // handler: this.undeveloped + // }, + // { + // label: '详细列车信息', + // handler: this.detailTrainInfo + // }, + // { + // label: '属性', + // handler: this.undeveloped + // } ] }, menuForce: [ @@ -171,6 +179,7 @@ export default { initMenu() { // 编辑模式菜单列表 this.menu = MenuContextHandler.covert(this.menuNormal); + console.log(this.menu, '================'); // 故障模式菜单列表 if (this.operatemode === OperateMode.FAULT) { if (!this.$store.state.scriptRecord.bgSet) { @@ -287,6 +296,21 @@ export default { this.$refs.noticeInfo.doShow(); }); }, + // 设置计划车 + setPlanTrain() { + const operate = { + start: true, + code: this.selected.code, + operation: OperationEvent.Train.editTrainId.menu.operation, + param: {} + }; + this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { + if (valid) { + this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); + this.$refs.trainSetPlan.doShow(operate, this.selected); + } + }); + }, // 设计划车 setPlanTrainId() { const operate = { diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index bcfe519ad..934094017 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -28,9 +28,9 @@ export function handlerUrl(data) { // BASE_API = 'http://114.116.51.125/jlcloud'; // BASE_API = 'http://192.168.8.152:9000'; // 袁琪 // BASE_API = 'http://192.168.8.172:9200'; // 旭强 - // BASE_API = 'http://192.168.8.109:9000'; // 张赛 + BASE_API = 'http://192.168.3.15:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 - BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 + // BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 // BASE_API = 'http://b29z135112.zicp.vip'; // BASE_API = 'http://2925963m2a.zicp.vip'; // 杜康 // BASE_API = 'http://2i38984j47.qicp.vip'; // 张赛 diff --git a/src/views/newMap/displayCity/demonMenu.vue b/src/views/newMap/displayCity/demonMenu.vue index d14c473a8..a4066fd7f 100644 --- a/src/views/newMap/displayCity/demonMenu.vue +++ b/src/views/newMap/displayCity/demonMenu.vue @@ -8,7 +8,7 @@ 经典案例分析 规范学习 - 占线板 + 占线板
派班计划预览 实操练习 理论考试 + 占线板 留言板 联系方式 @@ -39,6 +40,7 @@ +
+ diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue new file mode 100644 index 000000000..237cce621 --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue @@ -0,0 +1,302 @@ + + + diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index da07c8f68..1bb2c6ba3 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -1,25 +1,25 @@ @@ -169,11 +197,18 @@ import TrainPic from '@/assets/datie/train.png'; import LinkPic from '@/assets/datie/link.png'; import CameraPic from '@/assets/datie/camera.png'; + import RecDep from '@/jmapNew/theme/datie_02/menus/dialog/recDep' export default { name: 'lineBoard', + components: { + RecDep + }, data() { return { dialogVisible: false, + selectCode: '', + selectCode1: '', + readOnly: '', arrowPic: ArrowPic, picT3: PicT3, controlPanelPic: ControlPanelPic, @@ -185,53 +220,89 @@ andDown: 'all', unknow: '', unknow1: '', - tableData: [{id: 1},{id: 2}], + tableData: [], + tableData1: [], unknowList1: [{label: '全部机车', value: 'all'}], unknowList: [{label: 'J101-执行中', value: 'J101'}], andDownList: [{ label: '全部', value: 'all' }, { label: '上行', value: 'up' }, { label: '下行', value: 'down' }], sectionStatusList: [ - {label: '办理发车进路', value: ''} + {label: '准备接车', value: 'RECEIVING'}, + {label: '办理接车进路', value: 'RECEIVING_ROUTE'}, + {label: '列车到达(通过)报点', value: 'ARRIVE'}, + {label: '发车进路办理、发车报点', value: 'DEPARTURE'}, + {label: '流程终止', value: 'FINISH'} ], - infoList : [ - { id: 1 }, - { id: 2 }, - { id: 3 }, - { id: 4 }, - { id: 5 }, - { id: 6 }, - { id: 7 }, - { id: 8 }, - { id: 9 }, - { id: 10 }, - { id: 11 }, - { id: 12 }, - { id: 13 }, - { id: 14 }, - { id: 15 } - ] + stationDataMap: {}, + infoList : [] } }, computed: { ...mapGetters('map', [ 'sectionList', + 'stationList' ]) }, + watch: { + '$store.state.socket.railCtcStatusMsg': function (val) { + if (val && val.length) { + val.forEach(item => { + if (item) { + this.stationDataMap[item.stationCode] = { trackView: item.trackView, routeSequence: item.routeSequence }; + } + }); + this.infoList = this.stationDataMap[this.selectCode] ? this.stationDataMap[this.selectCode].trackView.lines: []; + this.tableData = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.lines: []; + this.readOnly = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.readOnly: false; + }; + } + }, methods: { handleClose() { this.dialogVisible = false; }, doShow() { this.dialogVisible = true; + this.selectCode = this.stationList[0].code; + this.selectCode1 = this.stationList[0].code; + this.infoList = this.stationDataMap[this.selectCode] ? this.stationDataMap[this.selectCode].trackView.lines: []; + this.tableData = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.lines: []; + this.readOnly = this.stationDataMap[this.selectCode1] ? this.stationDataMap[this.selectCode1].routeSequence.readOnly: false; }, - getScope(scope) { - console.log(scope, '=====',scope.$index); + selectStandCode(code) { + this.selectCode = code; + this.infoList = this.stationDataMap[this.selectCode].trackView.lines; + }, + selectStandCode1(code) { + this.selectCode1 = code; + this.tableData = this.stationDataMap[this.selectCode1].routeSequence.lines; + this.readOnly = this.stationDataMap[this.selectCode1].routeSequence.readOnly; + }, + getRouteName(code){ + if(code){ + const route = this.$store.state.map.routeData[code]; + return route? route.name: '' + } else { return '' } + }, + handleBackground(flag, code) { + if (flag){ + return '#29CA42'; + } else if(code) { + const route = this.$store.state.map.routeData[code]; + return route && route.atsControl ? '#FFBF2F' : '#CCCCCC' + } + }, + filterTrain(val ,row){ + console.log(val, row); + }, + doShowRecDep(row, type) { + this.$refs.recDep.doShow(row, type, this.selectCode); } } }; diff --git a/src/views/newMap/displayNew/demonMenu.vue b/src/views/newMap/displayNew/demonMenu.vue index 59a4ea916..4fb725bfe 100644 --- a/src/views/newMap/displayNew/demonMenu.vue +++ b/src/views/newMap/displayNew/demonMenu.vue @@ -7,9 +7,9 @@ {{ jl3dmodel }} - {{ jl3dname }} + {{ jl3dname }} - {{ jl3dpassflow }} + {{ jl3dpassflow }} @@ -23,7 +23,6 @@ 派班计划预览 实操练习 理论考试 - 占线板 留言板 联系方式 @@ -40,7 +39,6 @@ -
+ diff --git a/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue index 237cce621..884dcd01f 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/routeSelection1.vue @@ -1,41 +1,56 @@ @@ -198,10 +209,12 @@ import LinkPic from '@/assets/datie/link.png'; import CameraPic from '@/assets/datie/camera.png'; import RecDep from '@/jmapNew/theme/datie_02/menus/dialog/recDep' + import RouteSelection from '@/jmapNew/theme/datie_02/menus/dialog/routeSelection1'; export default { name: 'lineBoard', components: { - RecDep + RecDep, + RouteSelection }, data() { return { @@ -296,13 +309,16 @@ }, doShowRecDep(row, type) { this.$refs.recDep.doShow(row, type, this.selectCode); + }, + doShowRoute(row, type) { + this.$refs.routeSelection.doShow(row, type, this.selectCode); } } }; From 3202fc1b40bf368341c00bc987296a5a2a1d7871 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Fri, 22 Apr 2022 19:13:44 +0800 Subject: [PATCH 32/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B412?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/index.vue | 18 +++++++----------- .../theme/datie_02/menus/menuButton.vue | 4 ++-- src/scripts/cmdPlugin/Config.js | 3 ++- src/views/demonstration/detail/index.vue | 2 +- src/views/newMap/jointTrainingNew/index.vue | 10 ++++++++++ .../memberManage/membersManage.vue | 16 ++++++++++++++-- .../newMap/jointTrainingNew/menuDemon.vue | 9 ++++++--- .../newMap/jointTrainingNew/menuSchema.vue | 16 +++++++++++++--- 8 files changed, 55 insertions(+), 23 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index 1bb2c6ba3..1e666c2e8 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -1,25 +1,25 @@ @@ -44,11 +46,13 @@ import { loadRunPlanData } from '@/utils/loaddata'; import { EventBus } from '@/scripts/event-bus'; import { timesSpeedPlayback } from '@/api/rtSimulation'; import { queryHasIscs } from '@/api/iscs'; +import LineBoard from '../displayCity/lineBoard'; export default { name: 'MenuDemonSchema', components:{ JoinRunPlanView, - SelectIbp + SelectIbp, + LineBoard }, props: { group: { @@ -134,6 +138,9 @@ export default { running() { return this.$store.state.training.started; }, + datie(){ + return this.$route.query.lineCode == '16' + }, isScreen() { return this.$store.state.training.prdType === '07'; }, @@ -303,6 +310,9 @@ export default { this.$message.error('设置倍速失败!'); }); }, + showLineBoard() { + this.$refs.lineBoard.doShow(); + }, // 点击ibp预览 goIbp() { // this.$refs.selectIbp.doShow(); From cd326ea8f61a1269aa4b3028aab0404ca521207d Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Sun, 24 Apr 2022 09:18:18 +0800 Subject: [PATCH 33/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B413=20-=20=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=91?= =?UTF-8?q?=E8=BD=A6=E7=AE=AD=E5=A4=B4=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/datie_02.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/jmapNew/config/skinCode/datie_02.js b/src/jmapNew/config/skinCode/datie_02.js index f05984fb4..32ac39699 100644 --- a/src/jmapNew/config/skinCode/datie_02.js +++ b/src/jmapNew/config/skinCode/datie_02.js @@ -948,9 +948,9 @@ class SkinCode extends defaultStyle { } }; this[deviceType.PickOrDepartArrow] = { - triangleLength: 10, - lineWidth: 4, - length: 20, + triangleLength: 15, + lineWidth: 8, + length: 35, distance: 15, fill: '#000', stroke: '#fff', From a32a230ed844f3e8d00525b5a5add96a5967e654 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Sun, 24 Apr 2022 11:04:04 +0800 Subject: [PATCH 34/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF?= =?UTF-8?q?=E8=B0=83=E6=95=B414?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/index.vue | 2 +- src/jmapNew/theme/datie_02/menus/menuButton.vue | 11 +++++++---- src/views/newMap/displayCity/lineBoard.vue | 14 ++++++++------ .../indicatorAssociatedInfo/detail.vue | 4 ++-- 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/index.vue b/src/jmapNew/theme/datie_02/menus/index.vue index 1e666c2e8..39ff85283 100644 --- a/src/jmapNew/theme/datie_02/menus/index.vue +++ b/src/jmapNew/theme/datie_02/menus/index.vue @@ -467,7 +467,7 @@ export default { height: 100px; position: fixed; right: 10px; - top: 90px; + top: 60px; background: #808080; z-index: 10; overflow-y: scroll; diff --git a/src/jmapNew/theme/datie_02/menus/menuButton.vue b/src/jmapNew/theme/datie_02/menus/menuButton.vue index b6cd83835..5d8375412 100644 --- a/src/jmapNew/theme/datie_02/menus/menuButton.vue +++ b/src/jmapNew/theme/datie_02/menus/menuButton.vue @@ -147,10 +147,10 @@ export default { }, data() { return { - point: { - x: 0, - y: 30 - }, + // point: { + // x: 0, + // y: 30 + // }, operation: '0', buttonName: '', guideColorDown: '#FEEE1A', @@ -182,6 +182,9 @@ export default { 'autoReentryList', 'autoReentryData' ]), + point() { + return this.$store.state.training.prdType == '01'? {x:0, y:30} : {x:0, y:0} + }, Switch() { return OperationEvent.Switch; }, diff --git a/src/views/newMap/displayCity/lineBoard.vue b/src/views/newMap/displayCity/lineBoard.vue index d176c1f25..a60c7a849 100644 --- a/src/views/newMap/displayCity/lineBoard.vue +++ b/src/views/newMap/displayCity/lineBoard.vue @@ -37,7 +37,7 @@
接预
{{ '接路' + (item.receivingRouteLock ? '':getRouteName(item.receivingRouteCode)) }} @@ -57,7 +57,7 @@
发预
{{ '发路' + (item.departureRouteLock ? '':getRouteName(item.departureRouteCode)) }} @@ -309,12 +309,11 @@ return route? route.name: '' } else { return '' } }, - handleBackground(flag, code) { + handleBackground(flag, trigger) { if (flag){ return '#29CA42'; - } else if(code) { - const route = this.$store.state.map.routeData[code]; - return route && route.atsControl ? '#FFBF2F' : '#CCCCCC' + } else { + return trigger ? '#FFBF2F' : '#CCCCCC' } }, filterTrain(val ,row){ @@ -395,6 +394,9 @@ background: #C5CBD0; color: #1e2024; } + /deep/ .el-input.is-disabled .el-input__inner { + color: #606266; + } .img-box { width: 30px; height: 30px; diff --git a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue index bd8765df4..90178cf89 100644 --- a/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue +++ b/src/views/newMap/newMapdraft/dataRelation/indicatorAssociatedInfo/detail.vue @@ -1,5 +1,5 @@ @@ -23,7 +24,9 @@ import CMD from '@/scripts/cmdPlugin/CommandEnum'; import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import { DeviceMenu, OperateMode } from '@/scripts/ConstDic'; import { menuOperate, commitOperate } from '@/jmapNew/theme/components/utils/menuOperate'; -import LoadSpareTrain from '@/jmapNew/theme/components/menus/dialog/loadSpareTrain'; +// import LoadSpareTrain from '@/jmapNew/theme/components/menus/dialog/loadSpareTrain'; +import AddSpareTrain from './dialog/addSpareTrain'; + import DrawSelect from './dialog/drawSelect'; export default { @@ -35,7 +38,8 @@ export default { NoticeInfo, TrainAddPlan, SetFault, - LoadSpareTrain, + // LoadSpareTrain, + AddSpareTrain, DrawSelect }, props: { @@ -89,10 +93,15 @@ export default { handler: this.triggerFaultManagement, cmdType: CMD.Fault.CMD_TRIGGER_FAULT }, + // { + // label: '设置备用车', + // handler: this.loadSpare, + // cmdType: CMD.Section.CMD_TRAIN_LOAD_SPARE_TRAIN + // } { - label: '设置备用车', - handler: this.loadSpare, - cmdType: CMD.Section.CMD_TRAIN_LOAD_SPARE_TRAIN + label: '增加备用车', + handler: this.addSpare, + cmdType: CMD.Section.CMD_TRAIN_LOAD_TRIP_NUMBER_TRAIN } ] }; @@ -156,10 +165,17 @@ export default { this.$refs.popMenu.close(); } }, - loadSpare() { - commitOperate(menuOperate.Section.loadSpareTrain, {sectionCode:this.selected.code}).then(({valid, operate})=>{ + // loadSpare() { + // commitOperate(menuOperate.Section.loadSpareTrain, {sectionCode:this.selected.code}).then(({valid, operate})=>{ + // if (valid) { + // this.$refs.loadSpareTrain.doShow(operate, this.selected); + // } + // }); + // }, + addSpare() { + commitOperate(menuOperate.Section.addSpareTrain, {sectionCode:this.selected.code}).then(({valid, operate})=>{ if (valid) { - this.$refs.loadSpareTrain.doShow(operate, this.selected); + this.$refs.addSpareTrain.doShow(operate, this.selected); } }); }, diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 30eb8cc35..6c247a169 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -174,7 +174,9 @@ export default { /** 提前发车 */ CMD_STAND_EARLY_DEPART: {value:'Stand_Early_Depart', label: '提前发车'}, /** 设置默认发车轨 */ - CMD_SECTION_SET_DEFAULT_TRANSFER : {value: 'Section_Set_Default_Transfer', label: '设置默认发车轨'} + CMD_SECTION_SET_DEFAULT_TRANSFER : {value: 'Section_Set_Default_Transfer', label: '设置默认发车轨'}, + /** 增加备用车 大铁线路使用*/ + CMD_TRAIN_LOAD_TRIP_NUMBER_TRAIN: {value: 'Train_Load_Trip_Number_Train', label: '增加备用车'} }, // 站台 @@ -286,10 +288,10 @@ export default { CMD_STATION_RESTART_INTERLOCK_MACHINE: {value: 'Station_Restart_Interlock_Machine', label: '重启联锁机'}, /** 释放指令 */ CMD_STATION_RELEASE : {value:'Station_Release', label: '释放指令' }, - /** 引导总锁 */ - CMD_STATION_MASTER_LOCK: {value: 'Station_Master_Lock', label: '设置引导总锁'}, - /** 取消引导总锁 */ - CMD_STATION_MASTER_UNLOCK: {value: 'Station_Master_Unlock', label: '取消引导总锁'} + /** 引导总锁 */ + CMD_STATION_MASTER_LOCK: {value: 'Station_Master_Lock', label: '设置引导总锁'}, + /** 取消引导总锁 */ + CMD_STATION_MASTER_UNLOCK: {value: 'Station_Master_Unlock', label: '取消引导总锁'} }, Train: { /** 人工限速行驶 */ diff --git a/src/scripts/cmdPlugin/CommandHandler.js b/src/scripts/cmdPlugin/CommandHandler.js index b484dfaf4..01d68789d 100644 --- a/src/scripts/cmdPlugin/CommandHandler.js +++ b/src/scripts/cmdPlugin/CommandHandler.js @@ -36,6 +36,10 @@ class CommandHandle { controlMode: ['OperateCenterControl'], conditionList: [] }, + Train_Load_Trip_Number_Train:{ + operate: 'Train_Load_Trip_Number_Train', + paramList:[{name: 'tripNumber'}, {name: 'sectionCode'}, {name: 'right'}] + }, Train_Trust: { operate: 'Train_Trust', paramList:[{name: 'groupNumber'}, {name: 'targetDeviceCode'}], diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index 4468c6a39..e7d4a9681 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -2269,6 +2269,12 @@ export const OperationEvent = { operation: '4261', domId: '_Tips-Section-ForceCancelSpeed-Menu{BOTTOM}' } + }, + addSpareTrain:{ + menu: { + operation: '427', + domId: '_Tips-Section-Add-Spare-Train' + } } }, @@ -2956,21 +2962,21 @@ export const OperationEvent = { domId: '_Tips-Station-stationRelease' } }, - // 引导总锁Station_Master_Lock - stationMasterLock: { + // 引导总锁Station_Master_Lock + stationMasterLock: { menuButton: { operation: '621', - domId: '_Tips-Station-stationMasterLock' - }, - leftButton: { + domId: '_Tips-Station-stationMasterLock' + }, + leftButton: { operation: '6211', - domId: '_Tips-Station-stationMasterLock-leftButton' - }, - rightButton: { + domId: '_Tips-Station-stationMasterLock-leftButton' + }, + rightButton: { operation: '6212', - domId: '_Tips-Station-stationMasterLock-rightButton' - } - } + domId: '_Tips-Station-stationMasterLock-rightButton' + } + } }, // 列车 From fe71d218a9faf9de77f5a2c75be7db975cf0a845 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 16 May 2022 17:39:43 +0800 Subject: [PATCH 86/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datie_02/menus/dialog/addSpareTrain.vue | 205 ++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue new file mode 100644 index 000000000..d8bf9cfcf --- /dev/null +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -0,0 +1,205 @@ + + + + From 5fa8169d430c43f7180f42b4e845af7b77d62277 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 16 May 2022 17:41:55 +0800 Subject: [PATCH 87/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue index d8bf9cfcf..5482123ef 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -141,7 +141,7 @@ export default { result = true; } if (this.addModel.tripNumber && result) { - if (!this.addModel.right) { + if (this.addModel.right == '') { this.messageTip2 = '请选择上下行'; return; } From 0353d4dfa2ea7a7dacf742ed79c6d62eaae74234 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 16 May 2022 17:47:49 +0800 Subject: [PATCH 88/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue index 5482123ef..da0f215df 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -141,7 +141,7 @@ export default { result = true; } if (this.addModel.tripNumber && result) { - if (this.addModel.right == '') { + if (this.addModel.right === '') { this.messageTip2 = '请选择上下行'; return; } From 9a3a4242fcc1884b8ddc0873d0cf187a2ec942db Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 16 May 2022 18:15:47 +0800 Subject: [PATCH 89/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/datie_02.js | 2 +- .../datie_02/menus/dialog/addSpareTrain.vue | 24 ++++++++++--------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/jmapNew/config/skinCode/datie_02.js b/src/jmapNew/config/skinCode/datie_02.js index 69e1300cb..54623f812 100644 --- a/src/jmapNew/config/skinCode/datie_02.js +++ b/src/jmapNew/config/skinCode/datie_02.js @@ -786,7 +786,7 @@ class SkinCode extends defaultStyle { trainBody: { fontFamily: 'consolas', trainBodyLineWidth: 1, // 车身line宽 - changeTrainWidth: true, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 + changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 specialTrainType: [ { type: '03', diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue index da0f215df..34a4ea459 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -114,28 +114,30 @@ export default { mouseCancelState(this.selected); }, handleTripNumber() { - const figuresOfServiceNumber = 3; + const figuresOfServiceMinNumber = 2; + const figuresOfServiceMaxNumber = 6; // this.$store.state.map.mapConfig.figuresOfServiceNumber; - let tripNumber = parseInt(this.addModel.tripNumber); - if (tripNumber) { - tripNumber = Math.abs(tripNumber); - if (tripNumber.toString().length > figuresOfServiceNumber) { - this.messageTip1 = '车次号长度最多' + figuresOfServiceNumber + '位'; + const tripNumber = this.addModel.tripNumber; + const judge = /^[a-zA-Z0-9]$/.test(this.addModel.tripNumber); + if (judge) { + if (tripNumber.toString().length > figuresOfServiceMaxNumber || tripNumber.toString().length < figuresOfServiceMinNumber) { + this.messageTip1 = '车次号长度' + figuresOfServiceMinNumber + '-' + figuresOfServiceMaxNumber + '位'; } else { - tripNumber = tripNumber.toString().padStart(figuresOfServiceNumber, '0'); this.addModel.tripNumber = tripNumber; this.messageTip1 = ''; } } else { + // debugger; this.addModel.tripNumber = ''; this.messageTip1 = '请输入车次号'; } }, commit() { - const figuresOfServiceNumber = 3; + const figuresOfServiceMinNumber = 2; + const figuresOfServiceMaxNumber = 6; let result = false; - const value = parseInt(this.addModel.tripNumber); - if (value.toString().length > figuresOfServiceNumber) { + const tripNumber = this.addModel.tripNumber; + if (tripNumber.toString().length > figuresOfServiceMaxNumber || tripNumber.toString().length < figuresOfServiceMinNumber) { result = false; } else { result = true; @@ -164,7 +166,7 @@ export default { }); } else { if (this.addModel.tripNumber) { - this.messageTip1 = '该车次号长度最多' + figuresOfServiceNumber + '位'; + this.messageTip1 = '该车次号长度' + figuresOfServiceMinNumber + '-' + figuresOfServiceMaxNumber + '位'; } else { this.messageTip1 = '请输入车次号'; } From 6e9ca254593908eef559a11d6fe3544d7cdcacc6 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Mon, 16 May 2022 18:23:44 +0800 Subject: [PATCH 90/98] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue index 34a4ea459..f183f818d 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -118,7 +118,7 @@ export default { const figuresOfServiceMaxNumber = 6; // this.$store.state.map.mapConfig.figuresOfServiceNumber; const tripNumber = this.addModel.tripNumber; - const judge = /^[a-zA-Z0-9]$/.test(this.addModel.tripNumber); + const judge = /^[a-zA-Z0-9]{1,}$/.test(this.addModel.tripNumber); if (judge) { if (tripNumber.toString().length > figuresOfServiceMaxNumber || tripNumber.toString().length < figuresOfServiceMinNumber) { this.messageTip1 = '车次号长度' + figuresOfServiceMinNumber + '-' + figuresOfServiceMaxNumber + '位'; From 45975a34eea6bd662c1a280e5b211a0c9b831b28 Mon Sep 17 00:00:00 2001 From: fan <18706759286@163.com> Date: Tue, 17 May 2022 09:23:34 +0800 Subject: [PATCH 91/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E8=B0=83=E6=95=B4=20n4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/datie_02.js | 8 ++++---- src/utils/baseUrl.js | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/jmapNew/config/skinCode/datie_02.js b/src/jmapNew/config/skinCode/datie_02.js index f303b3f28..3c0e013bd 100644 --- a/src/jmapNew/config/skinCode/datie_02.js +++ b/src/jmapNew/config/skinCode/datie_02.js @@ -890,15 +890,15 @@ class SkinCode extends defaultStyle { directionType: [ { type: 1, - lineLShow: true, - lineRShow: true, + lineLShow: false, + lineRShow: false, arrowLShow: false, arrowRShow: true }, { type: 0, - lineLShow: true, - lineRShow: true, + lineLShow: false, + lineRShow: false, arrowLShow: true, arrowRShow: false } diff --git a/src/utils/baseUrl.js b/src/utils/baseUrl.js index 0fc3289a1..ce530d24f 100644 --- a/src/utils/baseUrl.js +++ b/src/utils/baseUrl.js @@ -24,11 +24,11 @@ export function handlerUrl(data) { if (process.env.NODE_ENV === 'development') { // const data = null; // BASE_API = 'https://joylink.club/jlcloud'; - // BASE_API = 'https://test.joylink.club/jlcloud'; + BASE_API = 'https://test.joylink.club/jlcloud'; // BASE_API = 'http://114.116.51.125/jlcloud'; // BASE_API = 'http://192.168.8.152:9000'; // 袁琪 // BASE_API = 'http://192.168.8.172:9200'; // 旭强 - BASE_API = 'http://192.168.3.15:9000'; // 张赛 + // BASE_API = 'http://192.168.3.15:9000'; // 张赛 // BASE_API = 'http://192.168.8.140:9000'; // 杜康 // BASE_API = 'http://192.168.3.37:9000'; // 卫志宏 // BASE_API = 'http://b29z135112.zicp.vip'; From 81cdaafa58e96b0c826446a9f6513449f67113ee Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Tue, 17 May 2022 10:10:06 +0800 Subject: [PATCH 92/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF=20?= =?UTF-8?q?=20=E5=88=97=E8=BD=A6=20=E8=BD=A6=E6=AC=A1=E5=8F=B7=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=20=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/datie_02.js | 7 ++++--- src/jmapNew/shape/graph/Train/TrainBody.js | 3 ++- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/jmapNew/config/skinCode/datie_02.js b/src/jmapNew/config/skinCode/datie_02.js index 54623f812..0635ab3e8 100644 --- a/src/jmapNew/config/skinCode/datie_02.js +++ b/src/jmapNew/config/skinCode/datie_02.js @@ -786,7 +786,7 @@ class SkinCode extends defaultStyle { trainBody: { fontFamily: 'consolas', trainBodyLineWidth: 1, // 车身line宽 - changeTrainWidth: false, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 + changeTrainWidth: true, // 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度 specialTrainType: [ { type: '03', @@ -841,8 +841,9 @@ class SkinCode extends defaultStyle { trainServerOffset: { x: 4, y: 4} // 列车服务号偏移 }, trainTarget: { - tripNumberPrefix: '000', // 车次号前缀 - defaultTripNumber: 'DDD', // 默认车次号2 + tripNumberPrefix: '', // 车次号前缀 + // defaultTripNumber: 'DDD', // 默认车次号2 + defaultTripNumber: ' ', // 默认车次号 trainTargetOffset: { x: 36, y: 4}, // 列车车次号偏移 trainTargetTextAlign: 'right' // 车次号文字显示位置 }, diff --git a/src/jmapNew/shape/graph/Train/TrainBody.js b/src/jmapNew/shape/graph/Train/TrainBody.js index 5d9b93d9e..f0638ec8a 100644 --- a/src/jmapNew/shape/graph/Train/TrainBody.js +++ b/src/jmapNew/shape/graph/Train/TrainBody.js @@ -68,13 +68,14 @@ export default class TrainBody extends Group { z: this.model.z + 1, x: parseInt(model.point.x + model.style.Train.trainTarget.trainTargetOffset.x), y: parseInt(model.point.y + model.style.Train.trainTarget.trainTargetOffset.y), - text: tripNumber.substring(tripNumber.length - style.Train.trainTarget.tripNumberPrefix.length), + text: tripNumber.substring(tripNumber.length - (style.Train.trainTarget.tripNumberPrefix.length || tripNumber.length)), textFill: model.style.Train.trainTarget.fontColor || style.trainTextColor, fontSize: model.style.Train.trainTarget.fontSize || model.fontSize, fontFamily: style.Train.common.fontFamily, textAlign: 'left', textVerticalAlign: 'top' }); + // console.log(model.fontSize, tripNumber.length - (style.Train.trainTarget.tripNumberPrefix.length || tripNumber.length), tripNumber, tripNumber.length - style.Train.trainTarget.tripNumberPrefix.length || tripNumber.length); this.textTrainTarget = new ETextName({ zlevel: model.zlevel, z: model.z + 1, From 4da6ce092d65e0fece154ec4007f5a24e7c38fd9 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Tue, 17 May 2022 16:32:39 +0800 Subject: [PATCH 93/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E9=A1=B9=E7=9B=AE=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E9=9D=9E=E5=B8=B8=E7=AB=99=E6=8E=A7=20?= =?UTF-8?q?=E6=8C=87=E4=BB=A4=20=E5=85=81=E8=AE=B8=E8=87=AA=E5=BE=8B=20?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/config/skinCode/datie_02.js | 4 +- src/jmapNew/shape/graph/Station/index.js | 6 +++ .../theme/components/utils/menuOperate.js | 7 ++- .../datie_02/menus/dialog/addSpareTrain.vue | 2 +- .../theme/datie_02/menus/menuStation.vue | 51 +++++++++++++++++++ src/scripts/cmdPlugin/CommandEnum.js | 3 +- src/scripts/cmdPlugin/OperationHandler.js | 11 ++++ 7 files changed, 80 insertions(+), 4 deletions(-) diff --git a/src/jmapNew/config/skinCode/datie_02.js b/src/jmapNew/config/skinCode/datie_02.js index 0c281e886..bcc6fa50e 100644 --- a/src/jmapNew/config/skinCode/datie_02.js +++ b/src/jmapNew/config/skinCode/datie_02.js @@ -437,7 +437,9 @@ class SkinCode extends defaultStyle { selfDiscipline: { show: true, offset: { x: 0, y: 0 }, - text: '允许自律' + text: '允许自律', + defaultColor: '#7F7F7F', + lightColor: '#ff0', }, selfDisciplineControl: { show: true, diff --git a/src/jmapNew/shape/graph/Station/index.js b/src/jmapNew/shape/graph/Station/index.js index fb4395d2c..4c91004de 100644 --- a/src/jmapNew/shape/graph/Station/index.js +++ b/src/jmapNew/shape/graph/Station/index.js @@ -675,6 +675,7 @@ export default class Station extends Group { this.emergencyArrowsControl && this.emergencyArrowsControl.setColor(this.style.Station.StationControl.lamp.grayColor); this.stationControlCC && this.stationControlCC.setStyle({text:'EL', textFill:this.style.Station.StationControl.text.emergencyControlColor}); this.veryControl && this.veryControl.setColor(this.style.Station.StationControl.veryControl.defaultColor); + this.selfDiscipline && this.selfDiscipline.setColor(this.style.Station.StationControl.selfDiscipline.defaultColor); this.selfDisciplineControl && this.selfDisciplineControl.setColor(this.style.Station.StationControl.selfDisciplineControl.defaultColor); this.veryControlButton && this.veryControlButton.setStyle({ fill: this.style.Station.StationControl.veryControlButton.defaultColor }); if (this.style.Station.stationText.isSpecialType) { @@ -705,6 +706,7 @@ export default class Station extends Group { model.controller && this.handleComplexControl(model.controller); model.emergencyController != undefined && this.handleEmergencyChange(model.emergencyController); model.controlApplicant && this.handleControlApplicant(model); + model.allowAutonomy && this.handleAllowAutonomy(); if (this.style.Station.syncCentralizeStation && (model.controlMode || model.controller || model.emergencyController != undefined) && model.centralized) { model.chargeStationCodeList.forEach(item => { const device = store.getters['map/getDeviceByCode'](item); @@ -736,6 +738,10 @@ export default class Station extends Group { this.controlPreReset && this.controlPreReset.setColor('#f00'); } + handleAllowAutonomy() { + this.selfDiscipline && this.selfDiscipline.setColor(this.style.Station.StationControl.selfDiscipline.lightColor); + } + handleControlApplicant(model) { if (this.style.Station.stationText.isSpecialType) { const memberData = store.state.training.memberData; diff --git a/src/jmapNew/theme/components/utils/menuOperate.js b/src/jmapNew/theme/components/utils/menuOperate.js index 0ee4473d5..a5f912339 100644 --- a/src/jmapNew/theme/components/utils/menuOperate.js +++ b/src/jmapNew/theme/components/utils/menuOperate.js @@ -353,6 +353,11 @@ export const menuOperate = { // 设置折返策略 operation: OperationEvent.Station.setBackStrategy.menu.operation, cmdType: CMD.Station.CMD_STATION_SET_TURN_BACK_STRATEGY + }, + requestVeryControl:{ + // 非常站控 大铁线路 + operation: OperationEvent.StationControl.requestVeryControl.menu.operation, + cmdType:CMD.ControlConvertMenu.CMD_CM_SPECIAL_STATION_CONTROL } }, TrainWindow: { @@ -499,7 +504,7 @@ export const menuOperate = { } }, CTC: { - //接预 + // 接预 receivingNotice: { operation: OperationEvent.CTCCommand.receivingNotice.menu.operation, cmdType: CMD.CTC.CTC_RECEIVING_NOTICE diff --git a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue index f183f818d..7a47b6c24 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/addSpareTrain.vue @@ -15,7 +15,7 @@ 上下行 - +
{{ messageTip1 }}
diff --git a/src/jmapNew/theme/datie_02/menus/menuStation.vue b/src/jmapNew/theme/datie_02/menus/menuStation.vue index 34cceb178..0dec74176 100644 --- a/src/jmapNew/theme/datie_02/menus/menuStation.vue +++ b/src/jmapNew/theme/datie_02/menus/menuStation.vue @@ -4,6 +4,7 @@ +
@@ -17,6 +18,9 @@ import { DeviceMenu, OperateMode } from '@/scripts/ConstDic'; import SetFault from '@/jmapNew/theme/components/menus/dialog/setFault'; import {menuOperate, commitOperate} from '@/jmapNew/theme/components/utils/menuOperate'; import CMD from '@/scripts/cmdPlugin/CommandEnum'; +import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; +// import Handler from '@/scripts/cmdPlugin/Handler'; +import PasswordBox from './dialog/childDialog/passwordInputBox.vue'; export default { name: 'StationMenu', @@ -24,6 +28,7 @@ export default { PopMenu, SetFault, NoticeInfo, + PasswordBox, DrawSelect }, mixins: [ @@ -92,6 +97,13 @@ export default { } else { this.doClose(); } + }, + '$store.state.menuOperation.selectedCount': function (val) { + const selected = this.$store.state.menuOperation.selected; + const subtype = this.$store.state.menuOperation.subType; + if (subtype == 'veryControlButton' && selected._type == 'Station') { + this.veryControlClick(selected); + } } }, methods: { @@ -156,6 +168,45 @@ export default { handlerOpenPdf(elem) { const url = `https://joylink.club/oss/projects/wjls/${this.selected.jp}/${elem.file}`; window.open(url, '_blank'); + }, + // 非常站控 + veryControlClick(selected) { + // stationCode车站编号、pressDown:1按下、0抬起 + const pressDown = selected.controlMode == 'Interlock' ? 0 : 1; + commitOperate(menuOperate.StationControl.requestVeryControl, { stationCode: selected.code, pressDown:pressDown }, 0).then(({valid, operate}) => { + if (valid) { + operate.nextCmdType = CMD.ControlConvertMenu.CMD_CM_SPECIAL_STATION_CONTROL; + operate['operateNext'] = OperationEvent.Command.close.password.operation; + this.$refs.password.doShow(operate); + } + }).catch(error=>{ + console.error(error); + this.$refs.noticeInfo.doShow(); + }); + }, + clearOperate() { // 清除操作 + // Handler.clear(); // 清空操作组 + // this.$store.dispatch('menuOperation/setButtonOperation', null); + }, + // 输入密码正确回调 + passWordCommit(data) { + let operate = {}; + if (data.nextCmdType) { + operate = { + over: true, + operation: data.operation, + cmdType: data.nextCmdType, + param: data.param + }; + } + this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { + if (valid) { + this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); + } + }).catch((error) => { + console.error(error); + this.$refs.noticeInfo.doShow(); + }); } } }; diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 6c247a169..301f06022 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -66,7 +66,8 @@ export default { /** 回复中控请求(同意/拒绝) */ CMD_CM_REPLY_CENTER_CONTROL: {value:'CM_Reply_Center_Control', label: '回复中控请求'}, CMD_CM_RECEIVE_CONTROL: {value:'CM_Receive_Control', label: '接收控制'}, - CMD_CM_SURRENDER_CONTROL: {value:'CM_Surrender_Control', label: '交出控制'} + CMD_CM_SURRENDER_CONTROL: {value:'CM_Surrender_Control', label: '交出控制'}, + CMD_CM_SPECIAL_STATION_CONTROL:{value:'CM_Special_Station_Control', label: '非常站控'} }, // 司机操作 diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index e7d4a9681..fa99f3f2a 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -1293,6 +1293,17 @@ export const OperationEvent = { operation: '2054', domId: '_Tips-Control-Response-Refuse' } + }, + // 非常站控 大铁线路 + requestVeryControl:{ + menu: { + operation: '206', + domId: '_Tips-Request-Very-Control-Menu' + }, + menuButton: { + operation: '2061', + domId: '_Tips-Request-Very-Control-Menu-Button{BOTTOM}' + } } }, From 90e26a800c18d87c1db2160e4485061042067f68 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 18 May 2022 17:09:51 +0800 Subject: [PATCH 94/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=20=E4=B8=8A=E7=94=B5=E8=A7=A3=E9=94=81?= =?UTF-8?q?=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/datie_02/menus/menuButton.vue | 55 +++++++++++++------ src/scripts/cmdPlugin/CommandEnum.js | 5 +- src/scripts/cmdPlugin/OperationHandler.js | 7 +++ 3 files changed, 49 insertions(+), 18 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/menuButton.vue b/src/jmapNew/theme/datie_02/menus/menuButton.vue index b8d1f923d..ccd499234 100644 --- a/src/jmapNew/theme/datie_02/menus/menuButton.vue +++ b/src/jmapNew/theme/datie_02/menus/menuButton.vue @@ -86,9 +86,9 @@
S引导总锁
- @@ -98,9 +98,10 @@
辅助菜单
- @@ -206,12 +207,12 @@ export default { Command() { return OperationEvent.Command; }, - sGuideMasterLock() { - return this.$store.state.map.stationSGuideMasterLock; - }, - xGuideMasterLock() { + sGuideMasterLock() { + return this.$store.state.map.stationSGuideMasterLock; + }, + xGuideMasterLock() { return this.$store.state.map.stationXGuideMasterLock; - }, + }, isShowBtn() { return this.$store.state.training.prdType == '01' || this.$store.state.training.prdType == '10'; }, @@ -271,12 +272,12 @@ export default { this.deviceList = []; } }, - '$store.state.map.showCentralizedStationCode': function(val) { - if (val){ - const station = this.$store.getters['map/getDeviceByCode'](val); - this.$store.getters['map/checkStationGuideMaster'](station.code, station.sGuideMasterLock, station.xGuideMasterLock); - } - }, + '$store.state.map.showCentralizedStationCode': function(val) { + if (val) { + const station = this.$store.getters['map/getDeviceByCode'](val); + this.$store.getters['map/checkStationGuideMaster'](station.code, station.sGuideMasterLock, station.xGuideMasterLock); + } + } }, beforeDestroy() { this.routeDataMap = null; @@ -338,6 +339,26 @@ export default { } } }, + // 上电解锁 大铁线路 + powerOnUnlockRailroad() { + const operate = { + over:true, + operation:this.Station.powerOnUnlockRailroad.menuButton.operation, + cmdType:CMD.Station.CMD_STATION_POWER_ON_UNLOCK_RAILROAD, + code:this.$store.state.map.showCentralizedStationCode, + param:{stationCode: this.$store.state.map.showCentralizedStationCode} + }; + this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { + if (valid) { + this.clearOperate(); + } else { + this.$refs.noticeInfo.doShow(); + } + }).catch((error) => { + console.error(error); + this.$refs.noticeInfo.doShow(); + }); + }, // S引导总锁按钮点击 guideLockLeftButtonDown() { const operate = { @@ -346,7 +367,7 @@ export default { this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { if (valid) { // 引导总锁弹出 调用取消引导总锁指令 - operate.nextCmdType = this.sGuideMasterLock? CMD.Station.CMD_STATION_MASTER_UNLOCK:CMD.Station.CMD_STATION_MASTER_LOCK; + operate.nextCmdType = this.sGuideMasterLock ? CMD.Station.CMD_STATION_MASTER_UNLOCK : CMD.Station.CMD_STATION_MASTER_LOCK; operate.param = {throat: 'S', stationCode: this.$store.state.map.showCentralizedStationCode}; this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); operate['operateNext'] = this.Command.close.password.operation; @@ -362,7 +383,7 @@ export default { this.$store.dispatch('training/nextNew', operate).then(({ valid }) => { if (valid) { // 引导总锁弹出 调用取消引导总锁指令 - operate.nextCmdType = this.xGuideMasterLock? CMD.Station.CMD_STATION_MASTER_UNLOCK:CMD.Station.CMD_STATION_MASTER_LOCK; + operate.nextCmdType = this.xGuideMasterLock ? CMD.Station.CMD_STATION_MASTER_UNLOCK : CMD.Station.CMD_STATION_MASTER_LOCK; operate.param = {throat: 'X', stationCode: this.$store.state.map.showCentralizedStationCode}; this.$store.dispatch('menuOperation/handleBreakFlag', { break: true }); operate['operateNext'] = this.Command.close.password.operation; diff --git a/src/scripts/cmdPlugin/CommandEnum.js b/src/scripts/cmdPlugin/CommandEnum.js index 301f06022..c127f1307 100644 --- a/src/scripts/cmdPlugin/CommandEnum.js +++ b/src/scripts/cmdPlugin/CommandEnum.js @@ -292,7 +292,10 @@ export default { /** 引导总锁 */ CMD_STATION_MASTER_LOCK: {value: 'Station_Master_Lock', label: '设置引导总锁'}, /** 取消引导总锁 */ - CMD_STATION_MASTER_UNLOCK: {value: 'Station_Master_Unlock', label: '取消引导总锁'} + CMD_STATION_MASTER_UNLOCK: {value: 'Station_Master_Unlock', label: '取消引导总锁'}, + /** 上电解锁 大铁线路 */ + CMD_STATION_POWER_ON_UNLOCK_RAILROAD:{value:'Station_Power_On_Unlock_Railroad', label: '上电解锁(大铁)'} + }, Train: { /** 人工限速行驶 */ diff --git a/src/scripts/cmdPlugin/OperationHandler.js b/src/scripts/cmdPlugin/OperationHandler.js index fa99f3f2a..53ed8fcb5 100644 --- a/src/scripts/cmdPlugin/OperationHandler.js +++ b/src/scripts/cmdPlugin/OperationHandler.js @@ -2987,6 +2987,13 @@ export const OperationEvent = { operation: '6212', domId: '_Tips-Station-stationMasterLock-rightButton' } + }, + // 上电解锁 大铁线路 Station_Power_On_Unlock_Railroad + powerOnUnlockRailroad:{ + menuButton: { + operation: '622', + domId: '_Tips-Station-powerOnUnlockRailroad' + }, } }, From fc8359273de44d1bb174412379f8eb88bd357eb5 Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Wed, 18 May 2022 17:42:16 +0800 Subject: [PATCH 95/98] =?UTF-8?q?=E5=88=86=E8=B7=AF=E4=B8=8D=E8=89=AF=20?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/jmapNew/theme/datie_02/menus/menuButton.vue | 8 +++++--- src/scripts/cmdPlugin/CommandEnum.js | 5 ++++- src/scripts/cmdPlugin/OperationHandler.js | 14 +++++++++++++- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/menuButton.vue b/src/jmapNew/theme/datie_02/menus/menuButton.vue index ccd499234..84311dcd2 100644 --- a/src/jmapNew/theme/datie_02/menus/menuButton.vue +++ b/src/jmapNew/theme/datie_02/menus/menuButton.vue @@ -98,8 +98,7 @@
辅助菜单
- -
@@ -125,6 +126,7 @@ import { OperationEvent } from '@/scripts/cmdPlugin/OperationHandler'; import OperationHandler from '@/scripts/cmdPlugin/OperationHandler'; import Handler from '@/scripts/cmdPlugin/Handler'; import PasswordBox from './dialog/childDialog/passwordInputBox.vue'; +import DefectiveShunting from './dialog/defectiveShunting.vue'; import CMD from '@/scripts/cmdPlugin/CommandEnum'; import { mapGetters } from 'vuex'; import NoticeInfo from '@/jmapNew/theme/components/menus/childDialog/noticeInfo'; @@ -135,6 +137,7 @@ export default { name: 'MapButtonMenu', components: { PasswordBox, + DefectiveShunting, NoticeInfo }, props: { @@ -326,6 +329,7 @@ export default { if (dom) { dom.disabled = false; dom.style.backgroundColor = this.buttonUpColor; + this.$refs.password.doClose(); } } if (val) { @@ -358,9 +362,13 @@ export default { this.$refs.noticeInfo.doShow(); }); }, - // defectiveShunting() { - // // CMD.Section.CMD_SECTION_DEFECTIVE_SHUNTING; - // }, + // 分路不良 + handelDefectiveShunting(model) { + // CMD.Section.CMD_SECTION_DEFECTIVE_SHUNTING; + const {switchSection, code, shuntingTypeList} = model; + this.clearOperate(); + this.$refs.defectiveShunting.doShow({switchSection, code, shuntingTypeList}); + }, // S引导总锁按钮点击 guideLockLeftButtonDown() { const operate = { @@ -677,6 +685,8 @@ export default { this.handelSignalBlockOrUnblock(model); } else if (buttonOperation === this.Section.fault.button.operation) { this.handelFaultSection(model); + } else if (buttonOperation === this.Section.defectiveShunting.button.operation) { + this.handelDefectiveShunting(model); } else { this.clearOperate(); } From 6dc2afe158e8f7f9cdb26a32aa5d918be027fffc Mon Sep 17 00:00:00 2001 From: joylink_cuiweidong <364937672@qq.com> Date: Thu, 19 May 2022 14:23:46 +0800 Subject: [PATCH 97/98] =?UTF-8?q?=E5=A4=A7=E9=93=81=E7=BA=BF=E8=B7=AF=20?= =?UTF-8?q?=E5=88=86=E8=B7=AF=E4=B8=8D=E8=89=AF=20=E6=8C=87=E4=BB=A4?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../menus/dialog/defectiveShunting.vue | 100 +++++++++++------- .../theme/datie_02/menus/menuButton.vue | 8 +- src/scripts/cmdPlugin/CommandEnum.js | 5 +- src/scripts/cmdPlugin/OperationHandler.js | 12 +-- 4 files changed, 74 insertions(+), 51 deletions(-) diff --git a/src/jmapNew/theme/datie_02/menus/dialog/defectiveShunting.vue b/src/jmapNew/theme/datie_02/menus/dialog/defectiveShunting.vue index 4dab8a0f3..2d2491d3f 100644 --- a/src/jmapNew/theme/datie_02/menus/dialog/defectiveShunting.vue +++ b/src/jmapNew/theme/datie_02/menus/dialog/defectiveShunting.vue @@ -1,49 +1,49 @@