This commit is contained in:
lVAL 2021-01-28 18:44:21 +08:00
commit d4014b53c4
6 changed files with 72 additions and 49 deletions

View File

@ -34,6 +34,7 @@ deviceState[deviceType.Switch] = {
overlapLock: 0, // 是否进路延续保护锁闭 overlapLock: 0, // 是否进路延续保护锁闭
normalPosition: 1, // 是否定位 normalPosition: 1, // 是否定位
reversePosition: 0, // 是否反位 reversePosition: 0, // 是否反位
isCiConfirm: 0, // 是否进行联锁确认
/** 定位状态*/ /** 定位状态*/
// locateType: { // locateType: {
// Default: '01', /** 道岔位置类型 - 定位(缺省值)*/ // Default: '01', /** 道岔位置类型 - 定位(缺省值)*/

View File

@ -472,11 +472,11 @@ export const ProjectCode = {
cgy: 'CGY', cgy: 'CGY',
designcgy: 'CGY' designcgy: 'CGY'
}; };
export const BottomColumnOnlyConInfo = ['heb', 'designheb', 'jyd', 'designjyd', 'tky', 'designtky', 'bxkc', 'designbxkc', 'crsc', 'designcrsc', 'hls', 'designhls', 'hyd', 'designhyd']; // 底部栏仅展示公司信息不展示备案号 export const BottomColumnOnlyConInfo = ['heb', 'designheb', 'jyd', 'designjyd', 'tky', 'designtky', 'bxkc', 'designbxkc', 'crsc', 'designcrsc', 'hls', 'designhls', 'hyd', 'designhyd', 'cgy', 'designcgy']; // 底部栏仅展示公司信息不展示备案号
export const GetMapListByProjectList = ['xty', 'designxty', 'gzb', 'designgzb', 'xadt', 'designxadt', 'heb', 'designheb', 'designdrts', 'drts', 'nty', 'designnty', 'sdy', 'designsdy', 'ntyc', 'designntyc', 'ntyl', 'designntyl', 'designbjd', 'cgy', 'designcgy']; // 实训设计平台通过项目code获取地图列表的项目 export const GetMapListByProjectList = ['xty', 'designxty', 'gzb', 'designgzb', 'xadt', 'designxadt', 'heb', 'designheb', 'designdrts', 'drts', 'nty', 'designnty', 'sdy', 'designsdy', 'ntyc', 'designntyc', 'ntyl', 'designntyl', 'designbjd', 'cgy', 'designcgy']; // 实训设计平台通过项目code获取地图列表的项目
export const CaseHideProjectList = ['heb', 'designheb']; // 案例展示隐藏的项目 export const CaseHideProjectList = ['heb', 'designheb']; // 案例展示隐藏的项目
export const VersionBaseNoShow = ['heb', 'designheb', 'hls', 'designhls', 'drts', 'hyd', 'designhyd']; // 登录页右下角版本开发基于不展示 export const VersionBaseNoShow = ['heb', 'designheb', 'hls', 'designhls', 'drts', 'hyd', 'designhyd', 'cgy', 'designcgy']; // 登录页右下角版本开发基于不展示
export const MainBodyNoShow = ['heb', 'designheb', 'jyd', 'designjyd', 'tky', 'designtky', 'bxkc', 'designbxkc', 'crsc', 'designcrsc', 'hls', 'designhls', 'hyd', 'designhyd']; // 登录页右下角主体不展示 export const MainBodyNoShow = ['heb', 'designheb', 'jyd', 'designjyd', 'tky', 'designtky', 'bxkc', 'designbxkc', 'crsc', 'designcrsc', 'hls', 'designhls', 'hyd', 'designhyd', 'cgy', 'designcgy']; // 登录页右下角主体不展示
export const ProjectLoginStyleList = ['gzb', 'designgzb', 'xty', 'designxty', 'xadt', 'designxadt', 'tky', 'designtky', 'jyd', 'designjyd', 'bxkc', 'designbxkc', export const ProjectLoginStyleList = ['gzb', 'designgzb', 'xty', 'designxty', 'xadt', 'designxadt', 'tky', 'designtky', 'jyd', 'designjyd', 'bxkc', 'designbxkc',
'crsc', 'designcrsc', 'hls', 'designhls', 'drts', 'hyd', 'designhyd', 'nty', 'designnty', 'bjd', 'designbjd', 'sdy', 'designsdy', 'ntyc', 'designntyc', 'ntyl', 'designntyl', 'cgy', 'designcgy']; // 登录页样式 'crsc', 'designcrsc', 'hls', 'designhls', 'drts', 'hyd', 'designhyd', 'nty', 'designnty', 'bjd', 'designbjd', 'sdy', 'designsdy', 'ntyc', 'designntyc', 'ntyl', 'designntyl', 'cgy', 'designcgy']; // 登录页样式
export const NoQrcodeList = ['heb', 'designheb']; export const NoQrcodeList = ['heb', 'designheb'];

View File

@ -244,7 +244,7 @@ const socket = {
namespaced: true, namespaced: true,
state: { state: {
payOrder: {}, // 支付消息 payOrder: '', // 支付订单
jointRoomInfo: {}, // 受邀请房间信息 jointRoomInfo: {}, // 受邀请房间信息
chatContent: {}, // 聊天室聊天内容 chatContent: {}, // 聊天室聊天内容
roleList: [], // 设置角色信息 roleList: [], // 设置角色信息
@ -334,10 +334,6 @@ const socket = {
state.simulationReset = simulationReset; state.simulationReset = simulationReset;
}, },
setPayOrder: (state, payOrder) => {
state.payOrder = payOrder;
},
// (旧版可能在用,新版地图不用这个) // (旧版可能在用,新版地图不用这个)
shiftMsgQueue: (state) => { shiftMsgQueue: (state) => {
state.msgHead = null; state.msgHead = null;
@ -421,10 +417,6 @@ const socket = {
state.message[data.key].push(data.value); state.message[data.key].push(data.value);
}, },
setPayOrder: ({ commit }) => {
commit('setPayOrder', {});
},
shiftMsgQueue: ({ commit }) => { shiftMsgQueue: ({ commit }) => {
commit('shiftMsgQueue'); commit('shiftMsgQueue');
}, },

View File

@ -23,14 +23,14 @@
<el-col :span="16">{{ unitPrice * monthAmount + ' 元' }}</el-col> <el-col :span="16">{{ unitPrice * monthAmount + ' 元' }}</el-col>
</el-row> </el-row>
<div style="text-align: center;margin: 20px;"> <div style="text-align: center;margin: 20px;">
<el-button type="primary" size="mini" :disabled="!changeMonth" @click="orderDetermine">获取支付码</el-button> <el-button type="primary" size="mini" :disabled="!changeMonth" @click="orderDetermine">生成订单</el-button>
<el-button type="primary" size="mini" :disabled="changeMonth" @click="changeOrder">修改订单</el-button> <el-button type="primary" size="mini" :disabled="changeMonth" @click="changeOrder">修改订单</el-button>
</div> </div>
<el-row style="font-size: 16px; height: 30px;line-height: 30px;"> <el-row style="font-size: 16px; height: 30px;line-height: 30px;">
<el-col :span="6" :offset="2">订单号</el-col> <el-col :span="6" :offset="2">订单号</el-col>
<el-col :span="16">{{ orderCode }}</el-col> <el-col :span="16">{{ orderCode }}</el-col>
</el-row> </el-row>
<el-row style="font-size: 16px;"> <el-row style="font-size: 16px;height: 200px;">
<el-col :span="6" :offset="2">支付码</el-col> <el-col :span="6" :offset="2">支付码</el-col>
<el-col :span="16"> <el-col :span="16">
<div style="width: 150px;"> <div style="width: 150px;">
@ -42,9 +42,12 @@
element-loading-background="rgba(255, 255, 255, 0.9)" element-loading-background="rgba(255, 255, 255, 0.9)"
/> />
</div> </div>
<div v-if="paySuccess" style="position: relative; top: -50px;color: #0B840B;z-index: 8888;font-size: 18px;text-align: center;width: 150px;">
<div>订单支付成功!</div>
<div>{{ `将在${countdown}后自动关闭` }}</div>
</div>
</el-col> </el-col>
</el-row> </el-row>
<!--<div>订单支付成功</div>-->
</el-dialog> </el-dialog>
</template> </template>
@ -62,19 +65,39 @@ export default {
loading: true, loading: true,
changeMonth: true, changeMonth: true,
url: '', url: '',
orderCode: '' orderCode: '',
paySuccess: false,
countdown: 10,
timer: null
}; };
}, },
watch: {
'$store.state.socket.payOrder':function (val) {
if (this.payOrder === val) {
this.paySuccess = true;
this.url = '';
this.timer = setInterval(() => {
this.countdown--;
if (this.countdown <= 0) {
this.handleClose();
}
}, 1000);
}
}
},
methods: { methods: {
handleClose() { handleClose() {
this.dialogVisible = false; this.dialogVisible = false;
this.timer && clearInterval(this.timer);
}, },
doShow() { doShow() {
this.loading = true; this.loading = true;
this.dialogVisible = true; this.dialogVisible = true;
this.monthAmount = 1; this.monthAmount = 1;
this.countdown = 10;
this.url = ''; this.url = '';
this.changeMonth = true; this.changeMonth = true;
this.paySuccess = false;
}, },
changeOrder() { changeOrder() {
this.loading = true; this.loading = true;
@ -86,7 +109,6 @@ export default {
this.loading = true; this.loading = true;
this.changeMonth = false; this.changeMonth = false;
getPayQrCode(this.$route.query.mapId, this.monthAmount).then(resp => { getPayQrCode(this.$route.query.mapId, this.monthAmount).then(resp => {
console.log(this.url, '===', resp.data);
this.url = resp.data.code_url; this.url = resp.data.code_url;
this.orderCode = resp.data.orderCode; this.orderCode = resp.data.orderCode;
this.loading = false; this.loading = false;

View File

@ -60,12 +60,13 @@ export default {
] ]
}; };
}, },
watch: {
'$store.state.socket.payOrder':function (val) {
this.queryPermission();
}
},
mounted() { mounted() {
queryCompetitionPracticalPermissions({mapId:this.$route.query.mapId}).then(res => { this.queryPermission();
this.hasPermission = !!res.data;
}).catch(() => {
this.$message.error('获取场景权限异常!');
});
getCompetitionPracticalScene({pageSize:100, pageNum:1}).then(res=>{ getCompetitionPracticalScene({pageSize:100, pageNum:1}).then(res=>{
if (res.data.list && res.data.list.length > 0) { if (res.data.list && res.data.list.length > 0) {
const list = res.data.list.sort((a, b) => { const list = res.data.list.sort((a, b) => {
@ -100,6 +101,13 @@ export default {
doClose() { doClose() {
this.dialogVisible = false; this.dialogVisible = false;
}, },
queryPermission() {
queryCompetitionPracticalPermissions({mapId:this.$route.query.mapId}).then(res => {
this.hasPermission = !!res.data;
}).catch(() => {
this.$message.error('获取场景权限异常!');
});
},
async handleLoad(row) { async handleLoad(row) {
this.row = row; this.row = row;
const response = await loadCompetitionPracticalScene(this.$route.query.group, row.id); const response = await loadCompetitionPracticalScene(this.$route.query.group, row.id);

View File

@ -45,7 +45,7 @@ export default {
EventBus.$on('switchStationMode', (stationCode) => { EventBus.$on('switchStationMode', (stationCode) => {
this.$store.state.training.memberList.filter(el => el.type == 'STATION_SUPERVISOR').find(el => { this.$store.state.training.memberList.filter(el => el.type == 'STATION_SUPERVISOR').find(el => {
if (el.deviceCode == stationCode) { if (el.deviceCode == stationCode) {
this.oldShowMemberId = el.id; this.oldShowMemberId = el.id;
this.switchStationMode(el.id); this.switchStationMode(el.id);
} }
}); });
@ -54,30 +54,30 @@ export default {
methods:{ methods:{
switchStationMode(val) { switchStationMode(val) {
assignUsersPlayRoles([{ userId: this.$store.state.user.id, memberId: val}], this.$route.query.group).then(resp => { assignUsersPlayRoles([{ userId: this.$store.state.user.id, memberId: val}], this.$route.query.group).then(resp => {
this.showMemberId = val; this.showMemberId = val;
const nameList = Object.keys(this.$store.state.map.map||{}); const nameList = Object.keys(this.$store.state.map.map || {});
let list = []; let list = [];
const member = this.$store.state.training.memberData[val]; const member = this.$store.state.training.memberData[val];
const station = this.$store.getters['map/getDeviceByCode'](member.deviceCode); const station = this.$store.getters['map/getDeviceByCode'](member.deviceCode);
if (station) { if (station) {
this.showStation = station.code; this.showStation = station.code;
const showStationCode = this.stationCentralizedMap[station.code]; const showStationCode = this.stationCentralizedMap[station.code];
nameList.forEach(item => { nameList.forEach(item => {
if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) { if (this.$store.state.map.map[item] && this.$store.state.map.map[item].constructor === Array) {
if (item === 'trainList') { if (item === 'trainList') {
this.$store.state.map.map[item].forEach(elem => { this.$store.state.map.map[item].forEach(elem => {
elem && list.push(elem); elem && list.push(elem);
}); });
} else { } else {
list = [...list, ...this.$store.state.map.map[item]]; list = [...list, ...this.$store.state.map.map[item]];
} }
} }
}); });
this.$jlmap.updateShowStation(list, showStationCode); this.$jlmap.updateShowStation(list, showStationCode);
this.setCenter(showStationCode); this.setCenter(showStationCode);
} }
}).catch((err) => { }).catch((err) => {
console.log(err) console.log(err);
this.showMemberId = this.oldShowMemberId; this.showMemberId = this.oldShowMemberId;
this.$message.error('调整角色成员失败!'); this.$message.error('调整角色成员失败!');
}); });
@ -89,16 +89,16 @@ export default {
this.stationListMode = []; this.stationListMode = [];
this.$store.state.training.memberList.forEach(item => { this.$store.state.training.memberList.forEach(item => {
if (item.type === 'STATION_SUPERVISOR') { if (item.type === 'STATION_SUPERVISOR') {
const station = this.$store.getters['map/getDeviceByCode'](item.deviceCode); const station = this.$store.getters['map/getDeviceByCode'](item.deviceCode);
if (station) { if (station) {
this.stationListMode.push({value:item.id, name: station.name}); this.stationListMode.push({value:item.id, name: station.name});
} }
} }
}); });
}, },
initData() { initData() {
this.$store.state.training.simulationUserList.forEach(item => { this.$store.state.training.simulationUserList.forEach(item => {
if (item.userId == this.$store.state.user.id) { if (item.type === 'STATION_SUPERVISOR' && item.userId == this.$store.state.user.id) {
this.showMemberId = item.memberId; this.showMemberId = item.memberId;
this.oldShowMemberId = item.memberId; this.oldShowMemberId = item.memberId;
} }