Merge remote-tracking branch 'origin/dev' into test
This commit is contained in:
commit
241d530132
@ -53,24 +53,13 @@ export function getTrainingTree() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** 获取章节基本信息*/
|
/** 获取章节基本信息*/
|
||||||
export function getTrainingDetail(args) {
|
export function getTrainingDetail(trainingId) {
|
||||||
return request({
|
return request({
|
||||||
url: `/api/training/${args.id}`,
|
url: `/api/training/${trainingId}`,
|
||||||
method: 'get'
|
method: 'get'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 获取实训详细内容*/
|
|
||||||
export function getTrainingMapDetail(args) {
|
|
||||||
return request({
|
|
||||||
url: `/api/training/${args.id}/map`,
|
|
||||||
method: 'get',
|
|
||||||
params: {
|
|
||||||
group: args.group
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/** 添加实训*/
|
/** 添加实训*/
|
||||||
export function addTraining(data) {
|
export function addTraining(data) {
|
||||||
return request({
|
return request({
|
||||||
|
@ -435,3 +435,19 @@ export function saveTaskScript(group, data) {
|
|||||||
data
|
data
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 暂停剧本编制的仿真 */
|
||||||
|
export function scriptPause(group) {
|
||||||
|
return request({
|
||||||
|
url: `/api/simulation/${group}/scriptWrite/pause`,
|
||||||
|
method: 'post'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 恢复仿真运行并执行刚编辑的剧本动作 */
|
||||||
|
export function executeScript(group) {
|
||||||
|
return request({
|
||||||
|
url: `/api/simulation/${group}/scriptWrite/execute`,
|
||||||
|
method: 'post'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
@ -3,6 +3,7 @@ export default {
|
|||||||
createSimulationFailed: 'Failure to create simulation',
|
createSimulationFailed: 'Failure to create simulation',
|
||||||
loadMapDataFailed: 'Failed to load map data',
|
loadMapDataFailed: 'Failed to load map data',
|
||||||
getMapStepsFailed: 'Failed to get map step data',
|
getMapStepsFailed: 'Failed to get map step data',
|
||||||
|
getMapDetailFailed: 'Failed to get map detail',
|
||||||
resetFailed: 'Reset failure',
|
resetFailed: 'Reset failure',
|
||||||
startTrainingFailed: 'Failure to start training',
|
startTrainingFailed: 'Failure to start training',
|
||||||
saveBackgroundFailed: 'Failed to save background',
|
saveBackgroundFailed: 'Failed to save background',
|
||||||
@ -39,5 +40,10 @@ export default {
|
|||||||
codeHasExist: 'Coding already exists',
|
codeHasExist: 'Coding already exists',
|
||||||
formartError: 'The format is incorrect, only characters/numbers/_',
|
formartError: 'The format is incorrect, only characters/numbers/_',
|
||||||
createDictionaryFailed: 'Failed to create dictionary',
|
createDictionaryFailed: 'Failed to create dictionary',
|
||||||
updateDictionaryFailed: 'Failed to update dictionary'
|
updateDictionaryFailed: 'Failed to update dictionary',
|
||||||
|
createDetailFailed: 'Failed to create details',
|
||||||
|
updateDetailFailed: 'Failed to update details',
|
||||||
|
addFailed: 'Failure to add',
|
||||||
|
updateFailed: 'Failure to update'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -78,6 +78,7 @@ export default {
|
|||||||
trainingHasStart: "(name)'s room has begun",
|
trainingHasStart: "(name)'s room has begun",
|
||||||
trainingNotStart: "(name)'s room hasn't started yet",
|
trainingNotStart: "(name)'s room hasn't started yet",
|
||||||
inputRoomNumber: 'Please enter the room number.',
|
inputRoomNumber: 'Please enter the room number.',
|
||||||
chooseRoom: 'Choose Room'
|
chooseRoom: 'Choose Room',
|
||||||
|
month: 'month'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -1,329 +1,309 @@
|
|||||||
export default {
|
export default {
|
||||||
pleaseSelect: '请选择',
|
drawData: 'The drawing data',
|
||||||
sketchMap: '草稿地图列表',
|
mapData: 'Map data',
|
||||||
newConstruction: '新建',
|
pleaseSelect: 'please choose',
|
||||||
importMap: '导入地图',
|
sketchMap: 'Draft map list',
|
||||||
createNewMap: '新建地图',
|
newConstruction: 'create',
|
||||||
normalCreate: '正常创建',
|
importMap: 'Import the map',
|
||||||
saveMapAs: '地图另存为',
|
createNewMap: 'A new map',
|
||||||
create: '创建',
|
normalCreate: 'The normal to create',
|
||||||
dataVerification: '数据校验',
|
saveMapAs: 'Save the map as',
|
||||||
logicalView: '逻辑视图',
|
create: 'establish',
|
||||||
physicalView: '物理视图',
|
dataVerification: 'data verification',
|
||||||
mixedView: '混合视图',
|
logicalView: 'logical view',
|
||||||
normal: '正常',
|
physicalView: 'Physical view',
|
||||||
add: '添加',
|
mixedView: 'The mixed view',
|
||||||
are: '是',
|
normal: 'normal',
|
||||||
deny: '否',
|
add: 'add',
|
||||||
|
are: 'yes',
|
||||||
|
deny: 'no',
|
||||||
|
drawMap: 'draw',
|
||||||
|
advanced: 'advanced',
|
||||||
|
viewLayer: 'The view layer',
|
||||||
|
layerDisplay: 'The layer display',
|
||||||
|
viewShows: 'View shows',
|
||||||
|
contentShows: 'content show',
|
||||||
|
|
||||||
save: '保存',
|
save: 'save',
|
||||||
updata: '更新',
|
updata: 'update',
|
||||||
updateObj: '修改',
|
updateObj: 'modification',
|
||||||
updateObjAxis: '更新坐标',
|
updateObjAxis: 'Update the coordinate',
|
||||||
saveAs: '另存为',
|
saveAs: 'save as',
|
||||||
publish: '发布',
|
publish: 'publish',
|
||||||
deleteObj: '删除',
|
deleteObj: 'delete',
|
||||||
remove: '移除',
|
remove: 'remove',
|
||||||
lastStep: '上一步',
|
lastStep: 'last step',
|
||||||
confirm: '确 定',
|
confirm: 'confirm',
|
||||||
cancel: '取 消',
|
cancel: 'cancel',
|
||||||
cancelledDelete: '已取消删除',
|
|
||||||
confirmDeletion: '是否确认删除?',
|
|
||||||
hint: '提示',
|
|
||||||
|
|
||||||
link: 'link',
|
link: 'link',
|
||||||
section: '区段',
|
section: 'section',
|
||||||
switch: '道岔',
|
switch: 'switch',
|
||||||
signal: '信号机',
|
signal: 'signal',
|
||||||
zcZoneControl: 'zc区域控制',
|
zcZoneControl: 'zc zone control',
|
||||||
temporaryLimit: '全线临时限速',
|
temporaryLimit: 'temporary speed restriction',
|
||||||
lcControl: 'Lc控制',
|
lcControl: 'Lc control',
|
||||||
image: '图片',
|
image: 'image',
|
||||||
station: '车站',
|
station: 'station',
|
||||||
controlMode: '控制模式',
|
controlMode: 'control mode',
|
||||||
platform: '站台',
|
platform: 'platform',
|
||||||
counter: '计数器',
|
counter: 'counter',
|
||||||
delayUnlock: '延迟解锁',
|
delayUnlock: 'Delay to unlock',
|
||||||
train: '列车',
|
train: 'train',
|
||||||
trainWindow: '车次窗',
|
trainWindow: 'train window',
|
||||||
line: '线条',
|
line: 'line',
|
||||||
text: '文字',
|
text: 'text',
|
||||||
|
|
||||||
mapName: '地图名称:',
|
mapName: 'Name of the map:',
|
||||||
skinName: '皮肤风格:',
|
skinName: 'Skin style:',
|
||||||
selectCity: '所属城市:',
|
selectCity: 'city:',
|
||||||
offsetXColon: 'X偏移:',
|
offsetXColon: 'X Offset:',
|
||||||
offsetYColon: 'Y偏移:',
|
offsetYColon: 'Y Offset:',
|
||||||
scalingColon: '缩放比例:',
|
scalingColon: 'scaling:',
|
||||||
operationUnusual: '操作异常:',
|
operationUnusual: 'abnormal operation:',
|
||||||
offsetX: 'X偏移',
|
offsetX: 'X Offset',
|
||||||
offsetY: 'Y偏移',
|
offsetY: 'Y Offset',
|
||||||
scaling: '缩放比例',
|
scaling: 'scaling',
|
||||||
statusSignalName: '状态信号名称:',
|
statusSignalName: 'Status signal name:',
|
||||||
stateSignalsPlotCoordinates: '状态信号画图坐标:',
|
stateSignalsPlotCoordinates: 'State signals plot coordinates:',
|
||||||
equipmentStation: '所属设备集中站:',
|
equipmentStation: 'Equipment centralization station:',
|
||||||
|
|
||||||
lineCoding: '线条编码:',
|
lineCoding: 'Line coding:',
|
||||||
lineType: '线条类型:',
|
lineType: 'Line type:',
|
||||||
lineWidth: '线条宽度:',
|
lineWidth: 'Line width:',
|
||||||
segmentCoordinates: '区段显示坐标:',
|
segmentCoordinates: 'Segment display coordinates:',
|
||||||
|
|
||||||
publishMapCreation: '从发布地图创建',
|
publishMapCreation: 'Create from the publish map',
|
||||||
|
|
||||||
pleaseEnterMapName: '请输入地图名称',
|
failedLoadListPublishedMaps: 'Failed to load the list of published maps',
|
||||||
pleaseChooseSkinCode: '请选择皮肤风格',
|
creatingSuccessful: 'Created successfully!',
|
||||||
pleaseSelectMapSource: '请选择地图来源',
|
mapUpdateSuccessful: 'Map update successful!',
|
||||||
pleaseSelectAssociatedCity: '请选择关联城市',
|
createFailure: 'Create a failure',
|
||||||
pleaseSelectAssociatedSkin: '请选择关联皮肤',
|
importSuccessful: 'Import successful!',
|
||||||
pleaseEnteMapLinkWidth: '请输入地图Link宽度',
|
importFailure: 'Import failure',
|
||||||
pleaseEnterMapSectionWidth: '请输入地图区段宽度',
|
updateSuccessfully: 'update successfully',
|
||||||
|
updateFailed: 'Update failed',
|
||||||
|
failedLoadCityList: 'Failed to load city list',
|
||||||
|
successfullyDelete: 'successfully delete',
|
||||||
|
failDelete: 'fail to delete',
|
||||||
|
dataValidationFailed: 'Publishing failed, data validation failed',
|
||||||
|
releaseSuccess: 'Release success!',
|
||||||
|
abnormalOperation: 'abnormal operation',
|
||||||
|
datQuestion: 'Data in question',
|
||||||
|
dataList: 'Data list',
|
||||||
|
saveFailed: 'Save failed',
|
||||||
|
|
||||||
failedLoadListPublishedMaps: '加载已发布地图列表失败',
|
mapEditor: 'map editor',
|
||||||
creatingSuccessful: '创建成功!',
|
mapPublished: 'Map published as',
|
||||||
mapUpdateSuccessful: '更新地图成功!',
|
publishingAssociatedCity: 'Publishing associated city:',
|
||||||
createFailure: '创建失败',
|
publishMapName: 'Publish map name:',
|
||||||
importSuccessful: '导入成功!',
|
|
||||||
importFailure: '导入失败',
|
|
||||||
updateSuccessfully: '更新成功',
|
|
||||||
updateFailed: '更新失败',
|
|
||||||
failedLoadCityList: '加载城市列表失败',
|
|
||||||
successfullyDelete: '删除成功',
|
|
||||||
failDelete: '删除失败',
|
|
||||||
dataValidationFailed: '发布失败,数据校验不通过',
|
|
||||||
releaseSuccess: '发布成功!',
|
|
||||||
abnormalOperation: '操作异常',
|
|
||||||
datQuestion: '有问题数据',
|
|
||||||
dataList: '数据列表',
|
|
||||||
saveFailed: '另存失败',
|
|
||||||
|
|
||||||
mapEditor: '地图编辑',
|
editRoute: 'Edit route',
|
||||||
mapPublished: '地图发布为',
|
editRouting: 'Edit/road',
|
||||||
publishingAssociatedCity: '发布关联城市:',
|
editAutoRouting: 'Edit automatic signal',
|
||||||
publishMapName: '发布地图名称:',
|
setSwitch: 'Linkage switch',
|
||||||
|
pathUnit: 'The path to the unit',
|
||||||
|
jlmap3d: '3d editing',
|
||||||
|
|
||||||
editRoute: '编辑进路',
|
automaticSignalList: 'Automatic signal list',
|
||||||
editRouting: '编辑交路',
|
automaticSignalCode: 'Automatic signal coding',
|
||||||
editAutoRouting: '编辑自动信号',
|
signalCodeName: 'Signal name',
|
||||||
setSwitch: '联动道岔',
|
signalCode: 'Signal code',
|
||||||
pathUnit: '路径单元',
|
sectionData: 'Section data',
|
||||||
jlmap3d: '三维化编辑',
|
preview: 'preview',
|
||||||
|
operation: 'operation',
|
||||||
|
compile: 'compile',
|
||||||
|
empty: 'empty',
|
||||||
|
reset: 'reset',
|
||||||
|
sectionName: 'name of the section',
|
||||||
|
sectionList: 'Section lists',
|
||||||
|
automaticSignal: 'automatic signal',
|
||||||
|
|
||||||
automaticSignalList: '自动信号列表',
|
signalID: 'Signal ID:',
|
||||||
automaticSignalCode: '自动信号编码',
|
activate: 'activate',
|
||||||
signalCodeName: '信号机名称',
|
|
||||||
signalCode: '信号机code',
|
|
||||||
sectionData: '区段数据',
|
|
||||||
preview: '预览',
|
|
||||||
operation: '操作',
|
|
||||||
compile: '编辑',
|
|
||||||
delete: '删除',
|
|
||||||
empty: '清空',
|
|
||||||
reset: '重置',
|
|
||||||
sectionName: '区段名称',
|
|
||||||
sectionList: '区段列表',
|
|
||||||
automaticSignal: '自动信号',
|
|
||||||
|
|
||||||
signalID: '信号机ID:',
|
pleaseSelectSignal: 'Please select the signal',
|
||||||
activate: '激活',
|
triggerSegmentData: 'Select approach to automatically trigger segment data',
|
||||||
segmentData: '进路自动触发区段数据:',
|
automaticSignalSuccessful: 'Automatic signal creation successful!',
|
||||||
|
failedCreateSignal: 'Failed to create automatic signal',
|
||||||
|
automaticSignalUpdateSucceeded: 'Automatic signal update successful!',
|
||||||
|
automaticSignalUpdateFailed: 'Automatic signal update failed',
|
||||||
|
|
||||||
pleaseSelectSignal: '请选择信号机',
|
stationName: 'The station name:',
|
||||||
triggerSegmentData: '请选择进路自动触发区段数据',
|
|
||||||
automaticSignalSuccessful: '创建自动信号成功!',
|
|
||||||
failedCreateSignal: '创建自动信号失败',
|
|
||||||
automaticSignalUpdateSucceeded: '更新自动信号成功!',
|
|
||||||
automaticSignalUpdateFailed: '更新自动信号失败',
|
|
||||||
|
|
||||||
stationName: '车站名称:',
|
property: 'attribute',
|
||||||
|
counterCoding: 'Counter coding:',
|
||||||
|
counterName: 'Counter name:',
|
||||||
|
belongsStation: 'Belongs to the station:',
|
||||||
|
counterType: 'Counter type:',
|
||||||
|
countMax: 'Counter maximum:',
|
||||||
|
pointX: 'coordinates x:',
|
||||||
|
pointY: 'coordinates y:',
|
||||||
|
meter: 'meter',
|
||||||
|
|
||||||
property: '属性',
|
code: 'code:',
|
||||||
counterCoding: '计数器编码:',
|
imageName: 'Image name:',
|
||||||
counterName: '计数器名称:',
|
imageWidth: 'Image width:',
|
||||||
belongsStation: '所属车站:',
|
imageHeight: 'Picture height:',
|
||||||
counterType: '计数器类型:',
|
imagePoint: 'Image coordinates:',
|
||||||
countMax: '计数器最大值:',
|
imageZindex: 'Image level:',
|
||||||
pointX: '坐标 x:',
|
imageSelect: 'Pictures to choose:',
|
||||||
pointY: '坐标 y:',
|
rotateAngle: 'Rotation Angle:',
|
||||||
meter: '米',
|
|
||||||
|
|
||||||
code: '编码:',
|
areaSolution: 'Area so the solution',
|
||||||
imageName: '图片名称:',
|
alwaysSolution: 'People always solution',
|
||||||
imageWidth: '图片宽度:',
|
|
||||||
imageHeight: '图片高度:',
|
|
||||||
imagePoint: '图片坐标:',
|
|
||||||
imageZindex: '图片层级:',
|
|
||||||
imageSelect: '图片选择:',
|
|
||||||
rotateAngle: '旋转角度:',
|
|
||||||
|
|
||||||
areaSolution: '区故解',
|
pleaseSelectMap: 'Please select map',
|
||||||
alwaysSolution: '总人解',
|
selectCounterType: 'Select the counter type',
|
||||||
|
selectStation: 'Please select station',
|
||||||
|
pleaseSelectDevice: 'Please re-select the device',
|
||||||
|
pleaseSelectCountName: 'Please enter a counter name',
|
||||||
|
pleaseCounterValue: 'please enter counter maximum',
|
||||||
|
pleaseEnterXCoordinate: 'Please enter the x coordinate',
|
||||||
|
pleaseEnterYCoordinate: 'Please enter the y coordinate',
|
||||||
|
pleaseEnterDelayTime: 'Please enter delay time',
|
||||||
|
pleaseEnterFontColor: 'Please enter the font color',
|
||||||
|
pleaseEnterFontFormat: 'Please enter the font format',
|
||||||
|
pleaseEnterImageWidth: 'Please enter image width',
|
||||||
|
pleaseEnterImageHeight: 'Please enter image width',
|
||||||
|
|
||||||
pleaseSelectMap: '请选择地图',
|
delayUnlockingCode: 'Delay unlocking code:',
|
||||||
selectCounterType: '请选择计数器类型',
|
delayTime: 'Delay time:',
|
||||||
selectStation: '请选择车站',
|
font: 'font:',
|
||||||
pleaseSelectDevice: '请重新选择设备',
|
color: 'color:',
|
||||||
pleaseSelectCountName: '请输入计数器名称',
|
|
||||||
pleaseCounterValue: '请输入计数器最大值',
|
|
||||||
pleaseEnterXCoordinate: '请输入x坐标',
|
|
||||||
pleaseEnterYCoordinate: '请输入y坐标',
|
|
||||||
pleaseEnterDelayTime: '请输入延时时间',
|
|
||||||
pleaseEnterFontColor: '请输入字体颜色',
|
|
||||||
pleaseEnterFontFormat: '请输入字体格式',
|
|
||||||
pleaseEnterImageWidth: '请输入图片宽度',
|
|
||||||
pleaseEnterImageHeight: '请输入图片高度',
|
|
||||||
|
|
||||||
delayUnlockingCode: '延时解锁编码:',
|
upside: 'In the upper',
|
||||||
delayTime: '延时时间:',
|
hypomere: 'The period of',
|
||||||
font: '字体:',
|
|
||||||
color: '颜色:',
|
|
||||||
|
|
||||||
upside: '上段',
|
linkType: 'The Link type',
|
||||||
hypomere: '下段',
|
linkCode: 'The Link code:',
|
||||||
|
linkName: 'The Link name:',
|
||||||
|
linkDisplayLength: 'Link display length:',
|
||||||
|
linkActualLength: 'Actual Link length:',
|
||||||
|
linkColor: 'The Link colors:',
|
||||||
|
linkLeftFdCode: 'Left forward Link:',
|
||||||
|
linkLeftSdCode: 'Left lateral Link:',
|
||||||
|
linkRightFdCode: 'Right forward Link:',
|
||||||
|
linkRightSdCode: 'Right lateral Link:',
|
||||||
|
linkLp: 'Link Start point coordinates:',
|
||||||
|
linkRp: 'Link End point coordinates:',
|
||||||
|
|
||||||
linkType: 'Link类型',
|
rulesChange: 'The rules change',
|
||||||
linkCode: 'Link编码:',
|
splitMerge: 'Split/merge',
|
||||||
linkName: 'Link名称:',
|
linkSet: 'The Link set',
|
||||||
linkDisplayLength: 'Link显示长度:',
|
selectLink: 'Select the Link',
|
||||||
linkActualLength: 'Link实际长度:',
|
splitOffset: 'Split offset:',
|
||||||
linkColor: 'Link颜色:',
|
split: 'Split',
|
||||||
linkLeftFdCode: '左侧正向Link:',
|
merge: 'merge',
|
||||||
linkLeftSdCode: '左侧侧向Link:',
|
logicBlock: 'Logical extents',
|
||||||
linkRightFdCode: '右侧正向Link:',
|
aux: 'The first',
|
||||||
linkRightSdCode: '右侧侧向Link:',
|
sectionLine: 'Section of the line',
|
||||||
linkLp: 'Link 起点坐标:',
|
sectionPolyline: 'Section polyline',
|
||||||
linkRp: 'Link 终点坐标:',
|
switchSection: 'The switch section',
|
||||||
|
trainDirection: 'Direction of train:',
|
||||||
|
deleteSwitchSection: 'One key to delete the switch section',
|
||||||
|
createSwitchSection: 'One key creates the turnout section',
|
||||||
|
sectionLogicalNumber: 'Number of logical extents',
|
||||||
|
sectionLsectioncode: 'Left section name:',
|
||||||
|
sectionRsectioncode: 'Right section name:',
|
||||||
|
associatedSection: 'Associated physical section:',
|
||||||
|
blockCoding: 'Block coding:',
|
||||||
|
sectionType: 'Section type:',
|
||||||
|
sectionNameColon: 'The name of the section:',
|
||||||
|
sectionNameOffset: 'Extentname offset:',
|
||||||
|
leftKilometerMark: 'Left kilometer mark (meter):',
|
||||||
|
rightKilometerMark: 'Right kilometer mark (meter):',
|
||||||
|
sectionColon: 'interval:',
|
||||||
|
displayExtentName: 'Whether to display the extent name:',
|
||||||
|
displayAxleCounter: 'Whether to display axis gauge:',
|
||||||
|
displayLogicalExtents: 'Whether to display logical extents:',
|
||||||
|
displayLogicalWxtentNames: 'Whether to display logical extent names:',
|
||||||
|
isStandTrack: 'Platform rail:',
|
||||||
|
standTrackName: 'Platform track name:',
|
||||||
|
standTrackNamePosition: 'Platform track name offset:',
|
||||||
|
relStandCode: 'The platform code:',
|
||||||
|
isReentryTrack: 'Whether to return to orbit:',
|
||||||
|
reentryTrackName: 'Name of reentrant rail:',
|
||||||
|
reentryTrackNamePosition: 'Backtrack name offset:',
|
||||||
|
isTransferTrack: 'Conversion rail:',
|
||||||
|
transferTrackName: 'Transfer rail name:',
|
||||||
|
transferTrackNamePosition: 'Conversion rail name offset:',
|
||||||
|
destinationCode: 'Destination code:',
|
||||||
|
destinationCodePoint: 'Destination code coordinates:',
|
||||||
|
destinationCodeShow: 'Whether to display destination code:',
|
||||||
|
leftStopPointOffset: 'Left stop point offset:',
|
||||||
|
rightStopPointOffset: 'Right stop point offset:',
|
||||||
|
isSwitchSection: 'Whether switch section:',
|
||||||
|
relSwitchCode: 'Relate turnout Code:',
|
||||||
|
logicSectionNameSort: 'Logical extent sort:',
|
||||||
|
fromSmallToLarge: 'From small to big',
|
||||||
|
fromLargeToSmall: 'From big to small',
|
||||||
|
relevanceLinkCode: 'The associated Link:',
|
||||||
|
sepTypeLeft: 'The left delimiter type:',
|
||||||
|
sectionOffsetLeft: 'Left Link offset:',
|
||||||
|
sepTypeRight: 'Right separator type:',
|
||||||
|
sectionOffsetRight: 'Right Link offset:',
|
||||||
|
isSegmentation: 'Whether or not split:',
|
||||||
|
segmentationPosition: 'The default setting:',
|
||||||
|
isCurve: 'Whether the curve:',
|
||||||
|
physicalSegmentName: 'Physical segment name:',
|
||||||
|
|
||||||
rulesChange: '规则修改',
|
directionType: 'Form the direction:',
|
||||||
sectionNameC: '区段名称:',
|
leftOrRight: 'About the position:',
|
||||||
splitMerge: '拆分/合并',
|
positionType: 'Upper and lower position:',
|
||||||
linkSet: 'Link集合',
|
|
||||||
selectLink: '选择Link',
|
|
||||||
splitOffset: '拆分偏移量:',
|
|
||||||
split: '拆分',
|
|
||||||
merge: '合并',
|
|
||||||
logicBlock: '逻辑区段',
|
|
||||||
aux: '第',
|
|
||||||
sectionLine: '段折线',
|
|
||||||
sectionPolyline: '区段折线',
|
|
||||||
switchSection: '道岔区段',
|
|
||||||
trainDirection: '列车所在方向:',
|
|
||||||
deleteSwitchSection: '一键删除道岔区段',
|
|
||||||
createSwitchSection: '一键创建道岔区段',
|
|
||||||
sectionLogicalNumber: '逻辑区段数量',
|
|
||||||
sectionLsectioncode: '左侧区段名称:',
|
|
||||||
sectionRsectioncode: '右侧区段名称:',
|
|
||||||
associatedSection: '关联物理区段:',
|
|
||||||
blockCoding: '区段编码:',
|
|
||||||
sectionType: '区段类型:',
|
|
||||||
sectionNameColon: '区段名称:',
|
|
||||||
sectionNameOffset: '区段名称偏移量:',
|
|
||||||
leftKilometerMark: '左侧公里标(米):',
|
|
||||||
rightKilometerMark: '右侧公里标(米):',
|
|
||||||
sectionColon: '区间:',
|
|
||||||
displayExtentName: '是否显示区段名称:',
|
|
||||||
displayAxleCounter: '是否显示计轴:',
|
|
||||||
displayLogicalExtents: '是否显示逻辑区段:',
|
|
||||||
displayLogicalWxtentNames: '是否显示逻辑区段名称:',
|
|
||||||
isStandTrack: '是否站台轨:',
|
|
||||||
standTrackName: '站台轨名称:',
|
|
||||||
standTrackNamePosition: '站台轨名称偏移量:',
|
|
||||||
relStandCode: '站台编码:',
|
|
||||||
isReentryTrack: '是否折返轨:',
|
|
||||||
reentryTrackName: '折返轨名称:',
|
|
||||||
reentryTrackNamePosition: '折返轨名称偏移量:',
|
|
||||||
isTransferTrack: '是否转换轨:',
|
|
||||||
transferTrackName: '转换轨名称:',
|
|
||||||
transferTrackNamePosition: '转换轨名称偏移量:',
|
|
||||||
destinationCode: '目的地码:',
|
|
||||||
destinationCodePoint: '目的地码坐标:',
|
|
||||||
destinationCodeShow: '是否显示目的地码:',
|
|
||||||
leftStopPointOffset: '左向停车点偏移量:',
|
|
||||||
rightStopPointOffset: '右向停车点偏移量:',
|
|
||||||
isSwitchSection: '是否道岔区段:',
|
|
||||||
relSwitchCode: '关联道岔Code:',
|
|
||||||
logicSectionNameSort: '逻辑区段排序:',
|
|
||||||
fromSmallToLarge: '从小到大',
|
|
||||||
fromLargeToSmall: '从大到小',
|
|
||||||
relevanceLinkCode: '关联的Link:',
|
|
||||||
sepTypeLeft: '左侧分隔符类型:',
|
|
||||||
sectionOffsetLeft: '左侧Link偏移量:',
|
|
||||||
sepTypeRight: '右侧分隔符类型:',
|
|
||||||
sectionOffsetRight: '右侧Link偏移量:',
|
|
||||||
isSegmentation: '是否分割:',
|
|
||||||
segmentationPosition: '默认背景:',
|
|
||||||
isCurve: '是否曲线:',
|
|
||||||
sectionPoints: '区段显示坐标:',
|
|
||||||
trainPosType: '列车所在方向:',
|
|
||||||
physicalSegmentName: '物理区段名称:',
|
|
||||||
|
|
||||||
directionType: '形式方向:',
|
signalFilamentAlarm: 'Filament alarm',
|
||||||
leftOrRight: '左右位置:',
|
signalCodeColon: 'Signal code:',
|
||||||
positionType: '上下位置:',
|
signalNameColon: 'Signal name:',
|
||||||
|
signalUniqueName: 'Unique name of signal:',
|
||||||
|
signalDisplayName: 'signal name is displayed:',
|
||||||
|
lampPostType: 'lamp type:',
|
||||||
|
lampPositionType: 'Lamp type:',
|
||||||
|
signalUseType: 'Use the type:',
|
||||||
|
potLampType: 'Light type:',
|
||||||
|
signalDirectionType: 'The direction of the type:',
|
||||||
|
signalPositionType: 'Signal position type:',
|
||||||
|
signalOffset: 'The offset:',
|
||||||
|
signalPositionX: 'Signal x:',
|
||||||
|
signalPositionY: 'Signal y:',
|
||||||
|
signalNamePositionX: 'Signal name offset x:',
|
||||||
|
signalNamePositionY: 'Signal name offset y:',
|
||||||
|
signalButtonShow: 'Display button:',
|
||||||
|
signalButtonPositionX: 'button x:',
|
||||||
|
signalButtonPositionY: 'button y:',
|
||||||
|
signalGuideShow: 'Whether the boot semaphore is displayed:',
|
||||||
|
signalGuidePositionX: 'Guiding signal x:',
|
||||||
|
signalGuidePositionY: 'Guiding signal y:',
|
||||||
|
|
||||||
signalFilamentAlarm: '灯丝报警',
|
concentrateStationCode: 'Interlocking station coding:',
|
||||||
signalCodeColon: '信号机编码:',
|
stationCode: 'The station code:',
|
||||||
signalNameColon: '信号机名称:',
|
zcCode: 'Zc region:',
|
||||||
signalUniqueName: '信号机唯一名称:',
|
centralized: 'Centralized station or not:',
|
||||||
signalDisplayName: '是否显示信号机名称:',
|
stationRunPlanName: 'True name:',
|
||||||
lampPostType: '灯柱类型:',
|
stationVisible: 'Whether or not shown:',
|
||||||
lampPositionType: '灯位类型:',
|
stationNameFont: 'The font:',
|
||||||
signalUseType: '用途类型:',
|
stationNameFontColor: 'Station font color:',
|
||||||
potLampType: '点灯类型:',
|
stationKmPostShow: 'Whether to display the name of the kilometer marker:',
|
||||||
signalDirectionType: '方向类型:',
|
stationKmRange: 'Kilometer mark distance:',
|
||||||
signalPositionType: '信号机位置类型:',
|
stationKmPost: 'Kilometer mark name:',
|
||||||
signalOffset: '偏移量:',
|
stationKmPostFont: 'Kilometer mark font:',
|
||||||
signalPositionX: '信号机x:',
|
stationKmPostFontColor: 'Font color of kilometer mark:',
|
||||||
signalPositionY: '信号机y:',
|
stationPositionX: 'X coordinate:',
|
||||||
signalRotate: '旋转角度:',
|
stationPositionY: 'Y coordinate:',
|
||||||
signalNamePositionX: '信号机名字偏移量 x:',
|
|
||||||
signalNamePositionY: '信号机名字偏移量 y:',
|
|
||||||
signalButtonShow: '是否显示按钮:',
|
|
||||||
signalButtonPositionX: '按钮x:',
|
|
||||||
signalButtonPositionY: '按钮y:',
|
|
||||||
signalGuideShow: '是否显示引导信号灯:',
|
|
||||||
signalGuidePositionX: '引导信号x:',
|
|
||||||
signalGuidePositionY: '引导信号y:',
|
|
||||||
|
|
||||||
concentrateStationCode: '所属联锁站编码:',
|
stationControlCode: 'Control mode coding:',
|
||||||
stationCode: '车站编码:',
|
stationControlName: 'Control mode name:',
|
||||||
zcCode: '所属zc区域编码:',
|
zokContent: 'Central content:',
|
||||||
centralized: '是否集中站:',
|
zakContent: 'Stand accused of content:',
|
||||||
stationNameColon: '车站名称:',
|
jjzkContent: 'Emergency station control/general alarm content:',
|
||||||
stationRunPlanName: '真实名称:',
|
zzkContent: 'Station control content:',
|
||||||
stationVisible: '是否显示:',
|
stationControlZok: 'central',
|
||||||
stationNameFont: '车站字体:',
|
|
||||||
stationNameFontColor: '车站字体颜色:',
|
|
||||||
stationKmPostShow: '是否显示公里标名称:',
|
|
||||||
stationKmRange: '公里标距离:',
|
|
||||||
stationKmPost: '公里标名称:',
|
|
||||||
stationKmPostFont: '公里标字体:',
|
|
||||||
stationKmPostFontColor: '公里标字体颜色:',
|
|
||||||
stationPositionX: 'x坐标:',
|
|
||||||
stationPositionY: 'y坐标:',
|
|
||||||
|
|
||||||
stationControlCode: '控制模式编码:',
|
|
||||||
stationControlName: '控制模式名称:',
|
|
||||||
zokContent: '中控内容:',
|
|
||||||
zakContent: '站控内容:',
|
|
||||||
jjzkContent: '紧急站控/总报警内容:',
|
|
||||||
zzkContent: '站中控内容:',
|
|
||||||
stationControlPositionX: '坐标 x:',
|
|
||||||
stationControlPositionY: '坐标 y:',
|
|
||||||
stationControlZok: '中控',
|
|
||||||
|
|
||||||
skinDesignation: 'SkinName',
|
skinDesignation: 'SkinName',
|
||||||
skinCoding: 'SkinCoding',
|
skinCoding: 'SkinCoding',
|
||||||
coordinatesOrigin: 'CoordinatesOrigin',
|
coordinatesOrigin: 'CoordinatesOrigin',
|
||||||
skinDeleteConfirmation: 'This will permanently remove the skin. Do you want to continue?',
|
|
||||||
addMapSkin: 'AddMapSkin',
|
addMapSkin: 'AddMapSkin',
|
||||||
updateMapSkin: 'UpdateMapSkin',
|
updateMapSkin: 'UpdateMapSkin',
|
||||||
maxScaling: '(The maximum scale is 8 steps)',
|
|
||||||
skinCodingInput: 'Please enter skin code',
|
|
||||||
skinDesignationInput: 'Please enter skin name',
|
|
||||||
coordinatesOriginInput: 'Please enter the origin coordinates',
|
|
||||||
scalingInput: 'Please enter the scale',
|
|
||||||
scalingInputPrompt: 'Please enter a valid scale',
|
|
||||||
skinCodingExist: 'Map skin codes already exist',
|
|
||||||
stationKilometerMark: 'StationKilometerMark',
|
stationKilometerMark: 'StationKilometerMark',
|
||||||
arrivalTime: 'ArrivalTime',
|
arrivalTime: 'ArrivalTime',
|
||||||
operationGraphPublished: 'The operation diagram is published as',
|
operationGraphPublished: 'The operation diagram is published as',
|
||||||
@ -332,10 +312,8 @@ export default {
|
|||||||
importOperationGraph: 'ImportOperationGraph',
|
importOperationGraph: 'ImportOperationGraph',
|
||||||
publishOperationGraph: 'PublishOperationGraph',
|
publishOperationGraph: 'PublishOperationGraph',
|
||||||
deleteOperationGraph: 'DeleteOperationGraph',
|
deleteOperationGraph: 'DeleteOperationGraph',
|
||||||
underImport: 'UnderImport...',
|
|
||||||
mapList: 'MapList',
|
mapList: 'MapList',
|
||||||
import: 'Import',
|
import: 'Import',
|
||||||
selectImportFiles: 'Select the file you want to import',
|
|
||||||
createNewOperationGraph: 'CreateNewOperationGraph',
|
createNewOperationGraph: 'CreateNewOperationGraph',
|
||||||
setOperatingSpeed: 'SetOperatingSpeed',
|
setOperatingSpeed: 'SetOperatingSpeed',
|
||||||
speedClass1: 'SpeedLevel 1',
|
speedClass1: 'SpeedLevel 1',
|
||||||
@ -348,29 +326,17 @@ export default {
|
|||||||
stopTime: 'StopTime',
|
stopTime: 'StopTime',
|
||||||
entranceStation: 'EntranceStation',
|
entranceStation: 'EntranceStation',
|
||||||
exportStation: 'ExportStation',
|
exportStation: 'ExportStation',
|
||||||
speedLevelEnter1: 'Please enter speed level 1',
|
|
||||||
speedLevelEnter2: 'Please enter speed level 2',
|
|
||||||
speedLevelEnter3: 'Please enter speed level 3',
|
|
||||||
speedLevelEnter4: 'Please enter speed level 4',
|
|
||||||
nameEnter: 'Please enter name',
|
|
||||||
drivingDirectionSelect: 'Please choose your driving direction',
|
|
||||||
timeBetweenDeparturesEnter: 'Please enter the interval',
|
|
||||||
stopTimeEnter: 'Please enter the docking time',
|
|
||||||
entranceStationSelect: 'Please select the entrance',
|
|
||||||
exportStationSelect: 'Please select the exit gate',
|
|
||||||
validityCheck: 'ValidityCheck',
|
validityCheck: 'ValidityCheck',
|
||||||
setupOperationGraph: 'SetupOperationGraph',
|
setupOperationGraph: 'SetupOperationGraph',
|
||||||
selectOperationGraphDataRange: 'SelectOperationGraphDataRange',
|
selectOperationGraphDataRange: 'SelectOperationGraphDataRange',
|
||||||
to: 'to',
|
to: 'to',
|
||||||
selectionTimeRange: 'Please select time range',
|
selectionTimeRange: 'Please select time range',
|
||||||
selectDataRange: 'Please select the data range range',
|
|
||||||
pointSystem1: 'OnePointSystem',
|
pointSystem1: 'OnePointSystem',
|
||||||
pointSystem2: 'TwoPointSystem',
|
pointSystem2: 'TwoPointSystem',
|
||||||
pointSystem5: 'FivePointSystem',
|
pointSystem5: 'FivePointSystem',
|
||||||
skinType: 'SkinType',
|
skinType: 'SkinType',
|
||||||
turnoverTime: 'TurnoverTime',
|
turnoverTime: 'TurnoverTime',
|
||||||
productList: 'ProductList',
|
productList: 'ProductList',
|
||||||
deleteTypeHint: 'This action deletes the type. Do you want to continue?',
|
|
||||||
belongsToMapName: 'BelongsToMapName',
|
belongsToMapName: 'BelongsToMapName',
|
||||||
productType: 'ProductType',
|
productType: 'ProductType',
|
||||||
productCode: 'ProductCode',
|
productCode: 'ProductCode',
|
||||||
@ -379,164 +345,148 @@ export default {
|
|||||||
associateTrainingTypes: 'AssociateTrainingTypes',
|
associateTrainingTypes: 'AssociateTrainingTypes',
|
||||||
createTrainingCategories: 'CreateTrainingCategories',
|
createTrainingCategories: 'CreateTrainingCategories',
|
||||||
editTrainingCategories: 'EditTrainingCategories',
|
editTrainingCategories: 'EditTrainingCategories',
|
||||||
productCodeEnter: 'Please enter the product code',
|
|
||||||
productNameEnter: 'Please enter product name',
|
|
||||||
productDescriptionEnter: 'Please enter product description',
|
|
||||||
trainingTypeSelect: 'Please select the associated training type',
|
|
||||||
linkWidth: 'LinkWidth',
|
linkWidth: 'LinkWidth',
|
||||||
maxLinkWidth: '(Link width is at most 20)',
|
maxLinkWidth: '(Link width is at most 20)',
|
||||||
sectionWidth: 'SectionWidth',
|
sectionWidth: 'SectionWidth',
|
||||||
maxSectionWidth: '(Section width is maximum 30)',
|
maxSectionWidth: '(Section width is maximum 30)',
|
||||||
showWatermarkOrNot: 'ShowWatermarkOrNot',
|
showWatermarkOrNot: 'ShowWatermarkOrNot',
|
||||||
linkWidthInput: 'Please enter Link width',
|
stationstandName: 'Select station name:',
|
||||||
linkWidthInputPrompt: 'Please enter a valid Link width',
|
stationstandDirection: 'Direction of the platform:',
|
||||||
sectionWidthInput: 'Please enter section width',
|
stationstandHasDoor: 'Whether to display screen door:',
|
||||||
sectionWidthInputPrompt: 'Please enter a valid segment width',
|
stationstandNameColon: 'Name of the platform:',
|
||||||
selectShowWatermark: 'Select whether or not to watermark',
|
stationstandTopBottom: 'Up-and-down direction:',
|
||||||
stationstandName: '选择车站名称:',
|
stationstandShowName: 'Show name or not:',
|
||||||
stationstandDirection: '站台方向:',
|
stationstandWidth: 'width w:',
|
||||||
stationstandHasDoor: '是否显示屏蔽门:',
|
stationstandHeight: 'highly h:',
|
||||||
stationstandNameColon: '站台名称:',
|
|
||||||
stationstandTopBottom: '上下行方向:',
|
|
||||||
stationstandShowName: '是否显示名称:',
|
|
||||||
stationstandWidth: '宽度 w:',
|
|
||||||
stationstandHeight: '高度 h:',
|
|
||||||
stationstandPositionX: '坐标 x:',
|
|
||||||
stationstandPositionY: '坐标 y:',
|
|
||||||
|
|
||||||
switchCode: '道岔编码:',
|
switchCode: 'Switch coding:',
|
||||||
switchName: '道岔名称:',
|
switchName: 'The name of the switch:',
|
||||||
switchNameC: '道岔名称',
|
switchNameC: 'The name of the switch',
|
||||||
switchShowName: '是否显示道岔名称:',
|
switchShowName: 'Whether the switch name is displayed:',
|
||||||
switchPositionX: '道岔名称x偏移量:',
|
switchPositionX: 'Switch name x offset:',
|
||||||
switchPositionY: '道岔名称y偏移量:',
|
switchPositionY: 'Switch name y offset:',
|
||||||
turnTime: '道岔转换时间:',
|
turnTime: 'The switch changes time:',
|
||||||
timeoutShow: '是否显示道岔倒计时时间:',
|
timeoutShow: 'Whether to display switch countdown time:',
|
||||||
sectionACode: '关联的A Section Code:',
|
sectionACode: 'Associated with A Section Code:',
|
||||||
sectionBCode: '关联的B Section Code:',
|
sectionBCode: 'Associated with B Section Code:',
|
||||||
sectionCCode: '关联的C Section Code:',
|
sectionCCode: 'Associated with C Section Code:',
|
||||||
switchTpX: '时间x坐标偏移量:',
|
switchTpX: 'Time x offset:',
|
||||||
switchTpY: '时间y坐标偏移量:',
|
switchTpY: 'Time y offset:',
|
||||||
|
|
||||||
textCode: '文字编码:',
|
textCode: 'Literal encoding:',
|
||||||
textContent: '文本内容:',
|
textContent: 'The text content:',
|
||||||
textFont: '字体格式:',
|
textFont: 'Font format:',
|
||||||
textFontColor: '字体颜色:',
|
textFontColor: 'The font color:',
|
||||||
|
|
||||||
trainCode: '列车编号:',
|
trainCode: 'Train number:',
|
||||||
groupNumber: '车组号:',
|
groupNumber: 'The number of:',
|
||||||
modelCode: '车类型:',
|
modelCode: 'Car type:',
|
||||||
|
|
||||||
trainmodelCreate: '新建车类型',
|
trainmodelCreate: 'New car type',
|
||||||
trainmodelUpdate: '更新列车模型',
|
trainmodelUpdate: 'Update train model',
|
||||||
trainTypeName: '列车类型名称:',
|
trainTypeName: 'Train type name:',
|
||||||
trainLength: '列车长度:',
|
trainLength: 'The length of the train:',
|
||||||
trainSafeDistance: '安全距离:',
|
trainSafeDistance: 'A safe distance from:',
|
||||||
trainMaxSafeDistance: '最大安全距离:',
|
trainMaxSafeDistance: 'Maximum safe distance:',
|
||||||
averageVelocity: '平均速度:',
|
averageVelocity: 'The average velocity:',
|
||||||
averageDeceleration: '平均减速度:',
|
averageDeceleration: 'Mean deceleration:',
|
||||||
defaultVelocity: '默认速度:',
|
defaultVelocity: 'The default rate:',
|
||||||
maxVelocity: '最大速度:',
|
maxVelocity: 'Maximum speed:',
|
||||||
|
|
||||||
trainWindowCode: '车次窗编码:',
|
trainWindowCode: 'Number window code:',
|
||||||
trainWindowWidth: '车次窗宽度:',
|
trainWindowWidth: 'Train window width:',
|
||||||
trainWindowHeight: '车次窗高度:',
|
trainWindowHeight: 'Number window height:',
|
||||||
trainWindowSectionCode: '关联区段:',
|
trainWindowSectionCode: 'Related sections:',
|
||||||
|
|
||||||
deleteTrainWindow: '一键删除车次窗',
|
deleteTrainWindow: 'Delete the number window with one click',
|
||||||
createTrainWindow: '一键创建车次窗',
|
createTrainWindow: 'Create a train window with one click',
|
||||||
|
|
||||||
zcCodeColon: '编码:',
|
showZc: 'Whether or not visible:',
|
||||||
showZc: '是否可见:',
|
|
||||||
|
|
||||||
pathUnitList: '路径单元列表',
|
pathUnitList: 'Path unit list',
|
||||||
startSectionCode: '始端停车点',
|
startSectionCode: 'Starting stop',
|
||||||
endSectionCode: '终端停车点',
|
endSectionCode: 'Terminal stop',
|
||||||
pathUnitCode: '路径单元code',
|
pathUnitCode: 'Path unit code',
|
||||||
pathUnitMapName: '所属地图名称',
|
pathUnitMapName: 'Map name',
|
||||||
orderNum: '优先级',
|
orderNum: 'priority',
|
||||||
pathName: '进路名称',
|
pathName: 'In the name of the',
|
||||||
affiliationStationCode: '所属车站名称',
|
startingSignalName: 'Name of starting signal',
|
||||||
startingSignalName: '始端信号机名称',
|
endingSignalName: 'Name of terminal signal',
|
||||||
endingSignalName: '终端信号机名称',
|
|
||||||
|
|
||||||
routeID: '进路ID',
|
routeID: 'Route ID',
|
||||||
routeName: '进路名称:',
|
routeName: 'In the name of the:',
|
||||||
routeMapId: '所属地图名称',
|
routeStationName: 'Station name',
|
||||||
routeStationName: '所属车站名称',
|
|
||||||
routeStartSignalCode: '始端信号机名称',
|
|
||||||
routeEndSignalCode: '终端信号机名称',
|
|
||||||
|
|
||||||
startSectionCodeColon: '始端停车点:',
|
startSectionCodeColon: 'Starting stop:',
|
||||||
endSectionCodeColon: '终端停车点:',
|
endSectionCodeColon: 'Terminal stop:',
|
||||||
|
|
||||||
routePreview: '进路预览',
|
routePreview: 'In the preview',
|
||||||
accessType: '进路性质类型',
|
accessType: 'Access property type',
|
||||||
automaticAccessType: '自动进路类型',
|
automaticAccessType: 'Automatic access type',
|
||||||
nearSectionCode: '接近区段名称',
|
nearSectionCode: 'Close to segment name',
|
||||||
continueProtectSwitchData: '延续保护道岔数据',
|
continueProtectSwitchData: 'Continue to protect switch data',
|
||||||
accessSideTurnoutData: '进路侧防道岔数据',
|
accessSideTurnoutData: 'Access side turnout data',
|
||||||
|
|
||||||
turnBackRailName: '折返轨名称',
|
turnBackRailName: 'Name of reentrant rail',
|
||||||
routeSegmentData: '进路自动触发区段数据',
|
routeSegmentData: 'The approach automatically triggers the segment data',
|
||||||
routeProtectsData: '进路延续保护区段数据',
|
routeProtectsData: 'Path continuation protects segment data',
|
||||||
accessPhysical: '进路物理区段数据',
|
accessPhysical: 'Access physical segment data',
|
||||||
routeAccessScreenData: '进路屏蔽门数据',
|
routeAccessScreenData: 'Access screen door data',
|
||||||
routeAccessTurnoutData: '进路道岔数据',
|
routeAccessTurnoutData: 'access switch data ',
|
||||||
hostileApproachData: '敌对进路数据',
|
hostileApproachData: 'hostileApproachData ',
|
||||||
relation: '关系',
|
professor: 'relation',
|
||||||
associatedRoute: '关联进路:',
|
associatedRoute: 'associatedRoute:',
|
||||||
|
|
||||||
associatedHostileRecord: '关联敌对记录',
|
associatedHostileRecord: 'Associated hostile record',
|
||||||
routeArc: '是否自动追踪/联锁自动触发:',
|
routeArc: 'Whether automatic tracking/interlock triggers automatically:',
|
||||||
routeFlt: '是否车队/联锁自动进路:',
|
routeFlt: 'Whether convoy/interlock automatic approach:',
|
||||||
delayUnlockingTime: '延时解锁时间:',
|
delayUnlockingTime: 'Delay unlocking time:',
|
||||||
accessTypeColon: '进路性质类型:',
|
accessTypeColon: 'Access property type:',
|
||||||
|
|
||||||
automaticAccessTypeColon: '自动进路类型:',
|
automaticAccessTypeColon: 'Automatic access type:',
|
||||||
startSignalId: '始端信号机ID:',
|
startSignalId: 'Initial signal ID:',
|
||||||
endSignalId: '终端信号机ID:',
|
endSignalId: 'Terminal signal machine ID:',
|
||||||
|
|
||||||
switchType: '道岔类型',
|
switchType: 'Switch type',
|
||||||
switchId: '道岔ID',
|
switchId: 'Switch ID',
|
||||||
accessSwitchList: '进路道岔数据:',
|
accessSwitchList: 'Access turnout data:',
|
||||||
accessStandList: '进路屏蔽门数据:',
|
accessStandList: 'Access screen door data:',
|
||||||
accessSectionList: '进路物理区段数据:',
|
accessSectionList: 'Access physical segment data:',
|
||||||
turnBackSectionCode: '折返轨ID:',
|
turnBackSectionCode: 'Turn back track ID:',
|
||||||
routeFlankProtectionList: '侧防道岔数据:',
|
routeFlankProtectionList: 'Side turnout data:',
|
||||||
routeOverlapSwitchList: '延续保护道岔数据:',
|
routeOverlapSwitchList: 'Continue to protect switch data:',
|
||||||
routeOverlapSectionList: '进路延续保护区段数据:',
|
routeOverlapSectionList: 'Path continuation protects segment data:',
|
||||||
routeTriggerSectionList: '进路自动触发区段数据:',
|
routeTriggerSectionList: 'The approach automatically triggers the segment data:',
|
||||||
nearSectionCodeColon: '接近区段ID:',
|
nearSectionCodeColon: 'Close to extent ID:',
|
||||||
|
|
||||||
thenList: '交路列表',
|
thenList: 'Then list',
|
||||||
startStation: '起始站',
|
startStation: 'Originating station',
|
||||||
endStation: '终到站',
|
endStation: 'Into standing',
|
||||||
|
|
||||||
routingCode: '交路code',
|
routingCode: 'Routing code',
|
||||||
routingName: '交路名称',
|
routingName: 'Pay the road name',
|
||||||
startStationCodeColon: '起始站:',
|
startStationCodeColon: 'Originating station:',
|
||||||
startStationCode: '起始站台',
|
startStationCode: 'The starting platform',
|
||||||
endStationCode: '终到站台',
|
endStationCode: 'Into the platform',
|
||||||
routingDirection: '方向',
|
routingDirection: 'The direction of',
|
||||||
remarks: '描述',
|
remarks: 'describe',
|
||||||
remarksColon: '描述:',
|
remarksColon: 'describe:',
|
||||||
trafficSegmentData: '交路区段数据:',
|
trafficSegmentData: 'Traffic segment data:',
|
||||||
startSectionColon: '起始区段:',
|
startSectionColon: 'The starting blocks:',
|
||||||
endStationColon: '终到站:',
|
endStationColon: 'Into standing:',
|
||||||
endSectionColon: '终到区段:',
|
endSectionColon: 'Into sections:',
|
||||||
|
|
||||||
stationCodeClomn: '车站编码',
|
stationCodeClomn: 'The station code',
|
||||||
blockCodingClomn: '区段编码',
|
blockCodingClomn: 'Block coding',
|
||||||
|
|
||||||
routing: '交路',
|
routing: 'Pay the way',
|
||||||
|
|
||||||
linkageSwitchList: '联动道岔列表',
|
linkageSwitchList: 'Linkage switch list',
|
||||||
|
|
||||||
switchACode: '道岔1编号',
|
switchACode: 'Switch number 1',
|
||||||
switchBCode: '道岔2编号',
|
switchBCode: 'Switch number 2',
|
||||||
|
|
||||||
switchACodeNum: '道岔ID 1:',
|
switchACodeNum: 'Switch ID 1:',
|
||||||
switchBCodeNum: '道岔ID 2:'
|
switchBCodeNum: 'Switch ID 2:'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -1,123 +1,88 @@
|
|||||||
export default {
|
export default {
|
||||||
name: 'Name',
|
name: 'Name',
|
||||||
productType: 'ProductType',
|
productType: 'Product type',
|
||||||
map: 'Map',
|
map: 'Map',
|
||||||
state: 'State',
|
state: 'State',
|
||||||
commodityName: 'CommodityName',
|
commodityName: 'Commodity name',
|
||||||
mapName: 'MapName',
|
mapName: 'Map name',
|
||||||
courseName: 'CourseName',
|
courseName: 'Course name',
|
||||||
price: 'Price',
|
price: 'Price',
|
||||||
describtion: 'Describtion',
|
describtion: 'Describtion',
|
||||||
creationTime: 'CreationTime',
|
creationTime: 'Creation time',
|
||||||
setupFailure: 'SetupFailure',
|
setupFailure: 'Setup failure',
|
||||||
setupEffective: 'SetupEffective',
|
setupEffective: 'Setup effective',
|
||||||
organizationOrEnterprise: 'Organization/Enterprise',
|
organizationOrEnterprise: 'Organization/Enterprise',
|
||||||
userName: 'UserName',
|
userName: 'UserName',
|
||||||
permissionType: 'PermissionType',
|
permissionType: 'Permission type',
|
||||||
permissionNumber: 'PermissionNumber',
|
permissionNumber: 'Permission number',
|
||||||
permanenceOrNot: 'PermanenceOrNot',
|
permanenceOrNot: 'Permanence or not',
|
||||||
startDate: 'StartDate',
|
startDate: 'StartDate',
|
||||||
purchaseMonths: 'PurchaseMonths',
|
purchaseMonths: 'Purchase months',
|
||||||
totalPrice: 'TotalPrice',
|
totalPrice: 'Total price',
|
||||||
paymentMethod: 'PaymentMethod',
|
paymentMethod: 'Payment method',
|
||||||
creationDate: 'CreationDate',
|
creationDate: 'Creation date',
|
||||||
orderType: 'OrderType',
|
orderType: 'Order type',
|
||||||
contractNumber: 'ContractNumber',
|
contractNumber: 'Contract number',
|
||||||
businessType: 'BusinessType',
|
businessType: 'Business type',
|
||||||
paymentStatus: 'PaymentStatus',
|
paymentStatus: 'Payment status',
|
||||||
salesman: 'Salesman',
|
salesman: 'Salesman',
|
||||||
obtainQrCode: 'ObtainQrCode',
|
obtainQrCode: 'Obtain QrCode',
|
||||||
userMobile: 'UserMobile',
|
userMobile: 'User mobile',
|
||||||
mapProductName: 'MapProductName',
|
mapProductName: 'Map product name',
|
||||||
publicOrPrivate: 'Public/Private',
|
publicOrPrivate: 'Public/Private',
|
||||||
totalPermissions: 'TotalPermissions',
|
totalPermissions: 'Total permissions',
|
||||||
residualPermissionNumber: 'ResidualPermissionNumber',
|
residualPermissionNumber: 'Residual permissionNumber',
|
||||||
authorityStatus: 'AuthorityStatus',
|
authorityStatus: 'Authority status',
|
||||||
startTime: 'StartTime',
|
startTime: 'StartTime',
|
||||||
endTime: 'EndTime',
|
endTime: 'EndTime',
|
||||||
courseAuthorityStatus: 'CourseAuthorityStatus',
|
courseAuthorityStatus: 'Course authority status',
|
||||||
source: 'Source',
|
source: 'Source',
|
||||||
founderPhone: 'FounderPhone',
|
founderPhone: 'Founder phone',
|
||||||
founder: 'Founder',
|
founder: 'Founder',
|
||||||
privilegePackaging: 'PrivilegePackaging',
|
privilegePackaging: 'Privilege packaging',
|
||||||
packaging: 'Packaging',
|
packaging: 'Packaging',
|
||||||
unpacking: 'Unpacking',
|
unpacking: 'Unpacking',
|
||||||
authorityDetails: 'AuthorityDetails',
|
authorityDetails: 'Authority details',
|
||||||
renew: 'Renew',
|
renew: 'Renew',
|
||||||
productName: 'ProductName',
|
productName: 'Product name',
|
||||||
updateProductTip: 'Will this operation modify the commodity status?',
|
|
||||||
deleteProductTip: 'This operation will delete the item. Do you want to continue?',
|
|
||||||
recovery: 'Recovery',
|
recovery: 'Recovery',
|
||||||
permissionPack: 'PermissionPack',
|
permissionPack: 'Permission pack',
|
||||||
privilegeTransferQRCode: 'PrivilegeTransferQRCode',
|
privilegeTransferQRCode: 'Privilege transfer QRCode',
|
||||||
getQRCodeFailure: 'Failed to obtain the package authority qr code',
|
generatingQRCode: 'Generating QRCode',
|
||||||
recoveryPrivilegeTip: 'This action will reclaim permissions. Do you want to continue?',
|
transferQRCode: 'Transfer QRCode',
|
||||||
unpackingTip: 'This operation will be unpacked. Do you want to continue?',
|
|
||||||
generatingQRCode: 'GeneratingQRCode',
|
|
||||||
transferQRCode: 'TransferQRCode',
|
|
||||||
today: 'Today',
|
today: 'Today',
|
||||||
yesterday: 'Yesterday',
|
yesterday: 'Yesterday',
|
||||||
aWeekAgo: 'AWeekAgo',
|
addOrder: 'AddOrder',
|
||||||
updateOrder: 'UpdateOrder',
|
aWeekAgo: 'A week ago',
|
||||||
renewOrder: 'RenewOrder',
|
updateOrder: 'Update order',
|
||||||
unknownRouter: 'UnknownRouter',
|
renewOrder: 'Renew order',
|
||||||
increasePurchaseTime: 'IncreasePurchaseTime',
|
unknownRouter: 'Unknown router',
|
||||||
choosePurchaseTime: 'ChoosePurchaseTime',
|
increasePurchaseTime: 'Increase purchase time',
|
||||||
increasePermissionNumber: 'IncreasePermissionNumber',
|
choosePurchaseTime: 'Choose purchase time',
|
||||||
choosePermissionNumber: 'ChoosePermissionNumber',
|
increasePermissionNumber: 'Increase permission number',
|
||||||
|
choosePermissionNumber: 'Choose permission number',
|
||||||
itemPricing: 'itemPricing',
|
itemPricing: 'itemPricing',
|
||||||
organizationInput: 'Please enter the name of the organization or business',
|
addUserPermissions: 'Add user permissions',
|
||||||
productSelect: 'Please select products',
|
publicAuthority: 'Public authority',
|
||||||
itemPricingInput: 'Please enter unit price',
|
privateAuthority: 'Private authority',
|
||||||
orderTypeSelect: 'Please select the order type',
|
|
||||||
contractNumberInput: 'Please enter the contract number',
|
|
||||||
contractNumberLimit: 'The length is between 1 and 25 characters',
|
|
||||||
salesmanInput: 'Please select a salesperson',
|
|
||||||
foreverRadio: 'Please select a',
|
|
||||||
amountInput: 'Please enter the number of permissions to purchase',
|
|
||||||
amountInputError: 'Please enter the number of valid permissions',
|
|
||||||
totalPriceInput: 'Please enter the total price',
|
|
||||||
totalPriceInputError1: 'Please enter the price in two decimal places',
|
|
||||||
totalPriceInputError2: 'Please enter valid total price',
|
|
||||||
monthAmountInput: 'Please enter purchase month',
|
|
||||||
monthAmountInputError: 'Please enter valid months of purchase',
|
|
||||||
startTimePick: 'Please select a start date',
|
|
||||||
bizTypeSelect: 'Select a business type',
|
|
||||||
payWaysSelect: 'Please select payment method',
|
|
||||||
payStatusSelect: 'Please select payment status',
|
|
||||||
addOrganizationPrefix: 'Whether to add "',
|
|
||||||
addOrganizationSuffix: '" Organization/enterprise entry information?',
|
|
||||||
publicAuthority: 'PublicAuthority',
|
|
||||||
privateAuthority: 'PrivateAuthority',
|
|
||||||
optionPrivilegeTransfer: 'Option privilege transfer',
|
optionPrivilegeTransfer: 'Option privilege transfer',
|
||||||
trainingList: 'TrainingList',
|
trainingList: 'Training list',
|
||||||
selectPermissionsPackage: 'Select package authority',
|
selectPermissionsPackage: 'Select package authority',
|
||||||
addRecords: 'AddRecords',
|
addRecords: 'Add records',
|
||||||
totalNumber: 'TotalNumber',
|
totalNumber: 'Total number',
|
||||||
permissionToDistributeQRCode: 'Permission to distribute qr code',
|
permissionToDistributeQRCode: 'Permission to distribute qr code',
|
||||||
packagingFailed: 'Authority distribution packaging failed',
|
|
||||||
selectPackagingRecord: 'Please select the packaging record',
|
|
||||||
editPermissionRules: 'Edit permission rules',
|
editPermissionRules: 'Edit permission rules',
|
||||||
addGoods: 'AddGoods',
|
addGoods: 'Add goods',
|
||||||
updateGoods: 'UpdateGoods',
|
updateGoods: 'Update goods',
|
||||||
lesson: 'Lesson',
|
lesson: 'Lesson',
|
||||||
whetherTrial: 'WhetherTrial',
|
whetherTrial: 'WhetherTrial',
|
||||||
unitOfTime: 'UnitOfTime',
|
unitOfTime: 'Unit of time',
|
||||||
trialTime: 'TrialTime',
|
trialTime: 'Trial time',
|
||||||
goodsNameInput: 'Please enter product name',
|
distributionUser: 'Distribution user',
|
||||||
productTypeInput: 'Please select product type',
|
orderNumber: 'Order Number',
|
||||||
mapInput: 'Please select map',
|
select: 'Select',
|
||||||
productInput: 'Please select product',
|
sourcesOfInformation: 'Sources of information',
|
||||||
lessonInput: 'Please select courses',
|
distributePermission: 'Distribute permission',
|
||||||
trialTimeInput: 'Please enter trial duration',
|
orderCreation: 'Order creation',
|
||||||
unitOfTimeRadio: 'Please select a time unit',
|
chooseGoods: 'Choose goods'
|
||||||
goodsDescribtionInput: 'Please enter product description',
|
|
||||||
addUserPermissions: 'Add user permissions',
|
|
||||||
userNameInput: 'Please enter user name',
|
|
||||||
permissionTypeInput: 'Please select the permission type',
|
|
||||||
distributionUser: 'DistributionUser',
|
|
||||||
orderNumber: 'OrderNumber',
|
|
||||||
sourcesOfInformation: 'SourcesOfInformation',
|
|
||||||
distributePermission: 'DistributePermission',
|
|
||||||
orderCreation: 'OrderCreation'
|
|
||||||
};
|
};
|
||||||
|
@ -1,152 +1,216 @@
|
|||||||
export default {
|
export default {
|
||||||
pleaseSelect: '请选择',
|
pleaseSelect: 'Please select',
|
||||||
selectEquipment: '请选择设备',
|
selectEquipment: 'Please select equipment',
|
||||||
deviceTypeNotNull: '设备类型码不能为空',
|
deviceTypeNotNull: 'The device type code cannot be empty',
|
||||||
operationTypeNotNull: '操作码不能为空',
|
operationTypeNotNull: 'The opcode cannot be empty',
|
||||||
tipsNotNull: '提示信息不能为空',
|
tipsNotNull: 'The prompt message cannot be empty',
|
||||||
pleaseSelectEncoding: '请选择唯一编码',
|
pleaseSelectEncoding: 'Please select a unique encoding',
|
||||||
pleaseEnterStatusSignal: '请输入状态信号名称',
|
pleaseEnterStatusSignal: 'Please enter the name of the status signal',
|
||||||
pleaseEnterXCoordinate: '请输入x坐标',
|
pleaseEnterXCoordinate: 'Please enter the x coordinate',
|
||||||
pleaseEnterYCoordinate: '请输入y坐标',
|
pleaseEnterYCoordinate: 'Please enter the y coordinate',
|
||||||
|
|
||||||
pleaseSelectLine: '请选择Line',
|
pleaseSelectLine: 'Please select a Line',
|
||||||
pleaseSelectLineType: '请选择Line类型',
|
pleaseSelectLineType: 'Select type Line',
|
||||||
pleaseSelectLineWidth: '请输入线条宽度',
|
pleaseSelectLineWidth: 'Please enter line width',
|
||||||
|
|
||||||
linkXCoordinate: '请输入Link x坐标',
|
linkXCoordinate: 'Please enter the Link x coordinate',
|
||||||
linkYCoordinate: '请输入Link y坐标',
|
linkYCoordinate: 'Please enter the Link y coordinate',
|
||||||
linkEnterLength: '请输入显示长度',
|
linkEnterLength: 'Please enter display length',
|
||||||
linkEnterDisplayLength: '请输入真实长度',
|
linkEnterDisplayLength: 'Please enter the true length',
|
||||||
|
|
||||||
linkSelectBase: '请选择基础Link',
|
linkSelectBase: 'Select the base Link',
|
||||||
linkEnterLeft: '请输入左侧正向Link',
|
linkEnterLeft: 'Please enter the left forward Link',
|
||||||
linkEnterRight: '请输入右侧正向Link',
|
linkEnterRight: 'Please enter the forward Link on the right',
|
||||||
linkSelectName: '请输入Link名称',
|
linkSelectName: 'Enter the Link name',
|
||||||
linkSelectDisplayLength: '请输入Link实际长度',
|
linkSelectDisplayLength: 'Please enter the actual length of the Link',
|
||||||
|
|
||||||
lengthShow: '显示长度:',
|
lengthShow: 'According to the length of the:',
|
||||||
lengthFact: '真实长度:',
|
lengthFact: 'The real length:',
|
||||||
color: '颜色:',
|
color: 'color:',
|
||||||
|
|
||||||
pointX: '坐标 x:',
|
pointX: 'Coordinates x:',
|
||||||
pointY: '坐标 y:',
|
pointY: 'Coordinates y:',
|
||||||
direct: '方向:',
|
direct: 'The direction of:',
|
||||||
basisLink: '基础Link:',
|
basisLink: 'Based on the Link:',
|
||||||
|
|
||||||
pleaseSelectSectionName: '请选择区段名称',
|
pleaseSelectSectionName: 'Select the section name',
|
||||||
pleaseFillOffset: '请填写偏移量',
|
pleaseFillOffset: 'Please fill in the offset',
|
||||||
pleaseFillValue: '请填写数值',
|
pleaseFillValue: 'Please fill in the value',
|
||||||
pleaseSelectLeftSectionName: '请选择左侧区段名称',
|
pleaseSelectLeftSectionName: 'Please select the left section name',
|
||||||
pleaseSelectRightSectionName: '请选择右侧区段名称',
|
pleaseSelectRightSectionName: 'Select the right section name',
|
||||||
pleaseEnterYValue: '请输入坐标Y值',
|
pleaseEnterYValue: 'Please enter the coordinate Y value',
|
||||||
pleaseEnterSectionType: '请输入区段类型',
|
pleaseEnterSectionType: 'Please enter the section type',
|
||||||
pleaseEnterSectionName: '请输入区段名称',
|
pleaseEnterSectionName: 'Please enter a section name',
|
||||||
pleaseSelectAssociatedPlatform: '请选择关联站台',
|
pleaseSelectAssociatedPlatform: 'Please select the associated platform',
|
||||||
pleaseEnterLeftStopPointOffset: '请输入左向停车点偏移量',
|
pleaseEnterLeftStopPointOffset: 'Please enter left stop point offset',
|
||||||
rightStopPointOffset: '请输入右向停车点偏移量',
|
rightStopPointOffset: 'Please enter an offset to the right stop point',
|
||||||
destinationCode: '请输入目的地码',
|
destinationCode: 'Please enter destination code',
|
||||||
destinationCodePointX: '请输入目的地码坐标X',
|
destinationCodePointX: 'Please enter destination code coordinate X',
|
||||||
destinationCodePointY: '请输入目的地码坐标Y',
|
destinationCodePointY: 'Please enter destination code coordinate Y',
|
||||||
sectionNamePointX: '请输入区段名称坐标X',
|
sectionNamePointX: 'Please enter the section name coordinate X',
|
||||||
sectionNamePointY: '请输入区段名称坐标Y',
|
sectionNamePointY: 'Please enter the section name coordinate Y',
|
||||||
logicSectionNameSort: '请选择逻辑区段名称排序',
|
logicSectionNameSort: 'Select logical extent name sort',
|
||||||
sectionOffsetLeft: '请输入左侧Link偏移量',
|
sectionOffsetLeft: 'Please enter the left Link offset',
|
||||||
sectionSepTypeLeft: '请选择左侧分隔符',
|
sectionSepTypeLeft: 'Please select the left separator',
|
||||||
sectionOffsetRight: '请输入右侧Link偏移量',
|
sectionOffsetRight: 'Please enter the right Link offset',
|
||||||
sectionSepTypeRight: '请选择右侧分隔符',
|
sectionSepTypeRight: 'Select the right separator',
|
||||||
selectPhysicalExtentName: '请选择物理区段名称',
|
selectPhysicalExtentName: 'Select the physical extent name',
|
||||||
|
|
||||||
pleaseEnterSemaphoreName: '请输入信号灯名称',
|
pleaseEnterSemaphoreName: 'Please enter a semaphore name',
|
||||||
pleaseEnterSignalName: '请输入信号机唯一名称',
|
pleaseEnterSignalName: 'Please enter a unique name for the signal',
|
||||||
pleaseEnterSignalOffset: '请输入偏移量',
|
pleaseEnterSignalOffset: 'Please enter an offset',
|
||||||
pleaseEnterSignalStation: '请输入设备集中站',
|
pleaseEnterSignalStation: 'Please enter device central station',
|
||||||
pleaseEnterSignalPositionX: '请输入信号机x',
|
pleaseEnterSignalPositionX: 'Please input signal x',
|
||||||
pleaseEnterSignalPositionY: '请输入信号机y',
|
pleaseEnterSignalPositionY: 'Please input signal y',
|
||||||
signalButtonPositionX: '请输入按钮x',
|
signalButtonPositionX: 'Please enter button x',
|
||||||
signalButtonPositionY: '请输入按钮y',
|
signalButtonPositionY: 'Please enter button y',
|
||||||
signalGuidePositionX: '请输入引导信号x',
|
signalGuidePositionX: 'Please enter the boot signal x',
|
||||||
signalGuidePositionY: '请输入引导信号y',
|
signalGuidePositionY: 'Please enter the boot signal y',
|
||||||
|
|
||||||
stationName: '请输入车站名称',
|
stationName: 'Please enter station name',
|
||||||
stationKmRange: '请输入公里标距离',
|
stationKmRange: 'Please enter kilometer mark distance',
|
||||||
stationKmPost: '请输入公里标名称',
|
stationKmPost: 'Please enter the name of the kilometer mark',
|
||||||
stationPositionX: '请输入x坐标',
|
|
||||||
stationPositionY: '请输入y坐标',
|
|
||||||
|
|
||||||
stationControlStationName: '请选择车站名称',
|
stationControlStationName: 'Please select the station name',
|
||||||
stationControlStationCode: '请选择所属车站',
|
stationControlStationCode: 'Please select your station',
|
||||||
stationControlZokContent: '请输入中控内容',
|
stationControlZokContent: 'Please enter the content of central control',
|
||||||
stationControlZakContent: '请输入站控内容',
|
stationControlZakContent: 'Please enter the content of station control',
|
||||||
stationControlJjzkContent: '请输入紧急站控内容',
|
stationControlJjzkContent: 'Please enter emergency station control',
|
||||||
stationControlZzkContent: '请输入站中控内容',
|
stationControlZzkContent: 'Please input the content of station central control',
|
||||||
stationControlPositionX: '请输入坐标x',
|
stationControlPositionX: 'Please enter coordinate x',
|
||||||
stationControlPositionY: '请输入坐标y',
|
stationControlPositionY: 'Please enter coordinate y',
|
||||||
|
|
||||||
pleaseReSelectDevice: '请重新选择设备',
|
pleaseReSelectDevice: 'Please re-select the device',
|
||||||
stationCode: '请选择关联车站',
|
stationCode: 'Please select the associated station',
|
||||||
stationstandCountName: '请输入计数器名称',
|
stationstandCountName: 'Please enter a counter name',
|
||||||
doorLocationType: '请选择站台方向',
|
doorLocationType: 'Please choose the platform direction',
|
||||||
deviceStationCode: '请选择所属设备集中站',
|
deviceStationCode: 'Please select your own centralized station',
|
||||||
stationstandDirection: '请选择上下行方向',
|
stationstandDirection: 'Please choose the upstream and downstream direction',
|
||||||
stationstandWidth: '请输入车站宽度',
|
stationstandWidth: 'Please enter station width',
|
||||||
stationstandHeight: '请输入车站高度',
|
stationstandHeight: 'Please enter station height',
|
||||||
stationstandPositionX: '请输入x坐标',
|
|
||||||
stationstandPositionY: '请输入y坐标',
|
|
||||||
|
|
||||||
switchName: '请输入道岔名称',
|
switchName: 'Please enter the switch name',
|
||||||
switchNamePointX: '请输入道岔名称坐标x',
|
switchNamePointX: 'Please enter switch name coordinate x',
|
||||||
switchNamePointY: '请输入道岔名称坐标y',
|
switchNamePointY: 'Please enter switch name coordinate y',
|
||||||
switchStationCode: '请输入设备集中站',
|
switchStationCode: 'Please enter device central station',
|
||||||
switchTurnTime: '请输入道岔转换时间',
|
switchTurnTime: 'Please enter switch time',
|
||||||
switchTpX: '请输入时间坐标x',
|
switchTpX: 'Please enter the time coordinate x',
|
||||||
switchTpY: '请输入时间坐标y',
|
switchTpY: 'Please enter the time coordinate y',
|
||||||
|
|
||||||
selectText: '请选择Text',
|
selectText: 'Please select the Text',
|
||||||
pleaseEnterContent: '请输入内容',
|
pleaseEnterContent: 'Please enter content',
|
||||||
textFont: '请选择文字格式',
|
textFont: 'Please select the text format',
|
||||||
textFontColor: '请选择文字颜色',
|
textFontColor: 'Please select the text color',
|
||||||
pleaseEnterGroupNumber: '请输入车组号',
|
pleaseEnterGroupNumber: 'Please enter the group number',
|
||||||
selectTrainType: '请选择车类型',
|
selectTrainType: 'Please select car type',
|
||||||
trainPositionX: '请输入x坐标位置',
|
trainPositionX: 'Please enter the x position',
|
||||||
trainPositionY: '请输入y坐标位置',
|
trainPositionY: 'Please enter the y position',
|
||||||
pleaseEnterTrainNumber: '请填写车组号',
|
pleaseEnterTrainNumber: 'Please fill in the group number',
|
||||||
|
|
||||||
trainCode: '列车模型Code不能为空',
|
trainCode: 'The train model Code cannot be empty',
|
||||||
pleaseEnterTrainTypeName: '请输入列车类型名称',
|
pleaseEnterTrainTypeName: 'Please enter train type name',
|
||||||
trainLength: '请输入列车长度',
|
trainLength: 'Please enter train length',
|
||||||
safeDistance: '请输入安全距离',
|
safeDistance: 'Please enter a safe distance',
|
||||||
maxSafeDistance: '请输入最大安全距离',
|
maxSafeDistance: 'Please enter the maximum safe distance',
|
||||||
averageVelocity: '请输入平均速度',
|
averageVelocity: 'Please enter average speed',
|
||||||
averageDeceleration: '请输入平均减速度',
|
averageDeceleration: 'Please enter average deceleration',
|
||||||
defaultVelocity: '请输入默认速度',
|
defaultVelocity: 'Please enter the default speed',
|
||||||
maxVelocity: '请输入最大速度',
|
maxVelocity: 'Please enter the maximum speed',
|
||||||
|
|
||||||
trainWindowWidth: '请输入车次窗宽度',
|
trainWindowWidth: 'Please enter the number window width',
|
||||||
trainWindowHeight: '请输入车次窗高度',
|
trainWindowHeight: 'Please enter the number window height',
|
||||||
trainWindowSectionCode: '请输入关联区段',
|
trainWindowSectionCode: 'Please enter the association section',
|
||||||
|
|
||||||
visible: '请选择是否可见',
|
visible: 'Please select whether it is visible',
|
||||||
pleaseSelectStartSignal: '请选择开始信号机',
|
pleaseSelectStartSignal: 'Please select start signal',
|
||||||
pleaseSelectEndSignal: '请选择结束信号机',
|
pleaseSelectEndSignal: 'Please select end signal',
|
||||||
|
|
||||||
pleaseEnterPathName: '请输入进路名称',
|
pleaseEnterPathName: 'Please enter the path name',
|
||||||
proximitySection: '请选择接近区段',
|
proximitySection: 'Please select the proximity section',
|
||||||
accessPropertyType: '请选择进路性质类型',
|
accessPropertyType: 'Please select the access property type',
|
||||||
autoAccessType: '请选择自动进路类型',
|
autoAccessType: 'Please select auto - access type',
|
||||||
physicalSegmentData: '请选择进路物理区段数据',
|
physicalSegmentData: 'Select access physical segment data',
|
||||||
|
|
||||||
routingName: '请输入交路名称',
|
routingName: 'Please enter the traffic name',
|
||||||
startStationCode: '请选择起始车站',
|
startStationCode: 'Please select the starting station',
|
||||||
startSectionCode: '请选择起始区段',
|
startSectionCode: 'Select the start section',
|
||||||
endStationCode: '请选择终到车站',
|
endStationCode: 'Please choose the terminal',
|
||||||
endSectionCode: '请选择终到区段',
|
endSectionCode: 'Please select end to section',
|
||||||
|
|
||||||
selectTurnoutID: '请选择道岔ID',
|
selectTurnoutID: 'Please select the turnout ID',
|
||||||
switchesCannot: '道岔不能为同一个',
|
switchesCannot: 'Switches cannot be identical',
|
||||||
|
|
||||||
|
pleaseInputName: 'Please enter name',
|
||||||
|
pleaseSelectStatus: 'Please select state',
|
||||||
|
pleaseInputCode: 'Please enter code',
|
||||||
|
strLength1To25: 'The length is between 1 and 25 characters',
|
||||||
|
strLengthNotExceed50: 'No more than 50 characters',
|
||||||
|
|
||||||
|
pleaseEnterMapName: 'Please enter a map name',
|
||||||
|
pleaseChooseSkinCode: 'Please choose skin style',
|
||||||
|
pleaseSelectMapSource: 'Please select the map source',
|
||||||
|
pleaseSelectAssociatedCity: 'Please select the associated city',
|
||||||
|
pleaseSelectAssociatedSkin: 'Please select associated skin',
|
||||||
|
pleaseEnteMapLinkWidth: 'Please enter map Link width',
|
||||||
|
pleaseEnterMapSectionWidth: 'Please enter map section width',
|
||||||
|
|
||||||
|
organizationInput: 'Please enter the name of the organization or business',
|
||||||
|
productSelect: 'Please select products',
|
||||||
|
itemPricingInput: 'Please enter unit price',
|
||||||
|
orderTypeSelect: 'Please select the order type',
|
||||||
|
contractNumberInput: 'Please enter the contract number',
|
||||||
|
salesmanInput: 'Please select a salesperson',
|
||||||
|
authorAmountInput: 'Please enter the number of permissions to purchase',
|
||||||
|
authorAmountInputError: 'Please enter the number of valid permissions',
|
||||||
|
totalPriceInput: 'Please enter the total price',
|
||||||
|
totalPriceInputError1: 'Please enter the price in two decimal places',
|
||||||
|
totalPriceInputError2: 'Please enter valid total price',
|
||||||
|
monthAmountInput: 'Please enter purchase month',
|
||||||
|
monthAmountInputError: 'Please enter valid months of purchase',
|
||||||
|
startTimePick: 'Please select a start date',
|
||||||
|
bizTypeSelect: 'Select a business type',
|
||||||
|
payWaysSelect: 'Please select payment method',
|
||||||
|
payStatusSelect: 'Please select payment status',
|
||||||
|
goodsNameInput: 'Please enter product name',
|
||||||
|
productTypeInput: 'Please select product type',
|
||||||
|
mapInput: 'Please select map',
|
||||||
|
productInput: 'Please select product',
|
||||||
|
lessonInput: 'Please select courses',
|
||||||
|
trialTimeInput: 'Please enter trial duration',
|
||||||
|
unitOfTimeRadio: 'Please select a time unit',
|
||||||
|
goodsDescribtionInput: 'Please enter product description',
|
||||||
|
userNameInput: 'Please enter user name',
|
||||||
|
permissionTypeInput: 'Please select the permission type',
|
||||||
|
timeInput: 'Please enter the time',
|
||||||
|
chooseUser: 'Please select the user',
|
||||||
|
pleaseInputLessonName: 'Please enter the course name',
|
||||||
|
pleaseSelectTraining: 'Please select training',
|
||||||
|
|
||||||
|
maxScaling: '(The maximum scale is 8 steps)',
|
||||||
|
skinCodingInput: 'Please enter skin code',
|
||||||
|
skinDesignationInput: 'Please enter skin name',
|
||||||
|
coordinatesOriginInput: 'Please enter the origin coordinates',
|
||||||
|
scalingInput: 'Please enter the scale',
|
||||||
|
scalingInputPrompt: 'Please enter a valid scale',
|
||||||
|
selectImportFiles: 'Select the file you want to import',
|
||||||
|
speedLevelEnter1: 'Please enter speed level 1',
|
||||||
|
speedLevelEnter2: 'Please enter speed level 2',
|
||||||
|
speedLevelEnter3: 'Please enter speed level 3',
|
||||||
|
speedLevelEnter4: 'Please enter speed level 4',
|
||||||
|
drivingDirectionSelect: 'Please choose your driving direction',
|
||||||
|
timeBetweenDeparturesEnter: 'Please enter the interval',
|
||||||
|
stopTimeEnter: 'Please enter the docking time',
|
||||||
|
entranceStationSelect: 'Please select the entrance',
|
||||||
|
exportStationSelect: 'Please select the exit gate',
|
||||||
|
selectDataRange: 'Please select the data range range',
|
||||||
|
productCodeEnter: 'Please enter the product code',
|
||||||
|
productNameEnter: 'Please enter product name',
|
||||||
|
productDescriptionEnter: 'Please enter product description',
|
||||||
|
trainingTypeSelect: 'Please select the associated training type',
|
||||||
|
linkWidthInput: 'Please enter Link width',
|
||||||
|
linkWidthInputPrompt: 'Please enter a valid Link width',
|
||||||
|
sectionWidthInput: 'Please enter section width',
|
||||||
|
sectionWidthInputPrompt: 'Please enter a valid segment width',
|
||||||
|
selectShowWatermark: 'Select whether or not to watermark'
|
||||||
|
|
||||||
pleaseInputName: '请输入名称',
|
|
||||||
pleaseSelectStatus: '请选择状态',
|
|
||||||
pleaseInputCode: '请输入编码',
|
|
||||||
strLength1To25: '长度在 1 到 25 个字符',
|
|
||||||
strLengthNotExceed50: '不能超过 50 个字符'
|
|
||||||
};
|
};
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
export default {
|
export default {
|
||||||
code: 'code',
|
code: 'Code',
|
||||||
name: 'name',
|
name: 'Name',
|
||||||
status: 'status',
|
status: 'Status',
|
||||||
remarks: 'remarks',
|
remarks: 'Remarks',
|
||||||
createDirectory: 'Create dictionary',
|
createDirectory: 'Create dictionary',
|
||||||
editDictionary: 'Edit dictionary',
|
editDictionary: 'Edit dictionary',
|
||||||
deleteSuccess: 'Successful deletion',
|
deleteSuccess: 'Successful deletion',
|
||||||
@ -10,7 +10,45 @@ export default {
|
|||||||
createSuccess: 'Create successful',
|
createSuccess: 'Create successful',
|
||||||
updateSuccess: 'Update successful',
|
updateSuccess: 'Update successful',
|
||||||
destory: 'Destory',
|
destory: 'Destory',
|
||||||
simulationGroup: 'Simulation group',
|
simulationGroup: 'Simulation Group',
|
||||||
username: 'User name',
|
userName: 'User Name',
|
||||||
phoneNumber: 'Cell-phone number'
|
mobile: 'Cell-phone Number',
|
||||||
|
skinCode: 'Skin Code',
|
||||||
|
prdType: 'Product Type',
|
||||||
|
simulationType: 'Simulation Type',
|
||||||
|
simulationGroupId: 'Simulation Member ID',
|
||||||
|
productName: 'Product Name',
|
||||||
|
isError: 'Is Error',
|
||||||
|
isSuspend: 'Is Suspend',
|
||||||
|
isDrivingAsplanned: 'Whether to drive as planned',
|
||||||
|
delUserSimulationIsContinue: 'This operation will delete the user simulation data. Do you want to continue?',
|
||||||
|
createDetail: 'Create details',
|
||||||
|
editDetail: 'Editorial details',
|
||||||
|
mapName: 'Map Name',
|
||||||
|
trainingName: 'Training Name',
|
||||||
|
trainingUseTime: 'Training Time',
|
||||||
|
minute: 'Minute',
|
||||||
|
second: 'Second',
|
||||||
|
createSimulationTitle: 'Create Simulation Information',
|
||||||
|
addSuccess: 'Added Successfully',
|
||||||
|
pleaseInputNames: 'Please enter your nickname/name/cell phone number',
|
||||||
|
examUser: 'Examination Users',
|
||||||
|
examScore: 'Examination Score',
|
||||||
|
examResult: 'Examination Results',
|
||||||
|
examName: 'Paper Name',
|
||||||
|
delExamResultIsContinue: 'This operation will delete the test result. Do you want to continue?',
|
||||||
|
editExamDetail: 'Edit exam details',
|
||||||
|
subscribeMap: 'Subscribe',
|
||||||
|
roles: 'Roles',
|
||||||
|
email: 'Email',
|
||||||
|
nickname: 'Nickname',
|
||||||
|
delTypeIsContinue: 'This operation will delete the type. Do you want to continue?',
|
||||||
|
permission: 'Permission',
|
||||||
|
editUserPermission: 'Edit User Rights',
|
||||||
|
lessonName: 'Lesson Name',
|
||||||
|
selectTraining: 'Selection Training',
|
||||||
|
createUserTraining: 'Creating User Training',
|
||||||
|
editTrainingDetail: 'Editor Training Details',
|
||||||
|
trainingTime: 'Training duration'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -41,6 +41,8 @@ export default {
|
|||||||
recoveryPrivilegesFailed: '回收权限失败',
|
recoveryPrivilegesFailed: '回收权限失败',
|
||||||
unpackingSuccessful: '解包成功',
|
unpackingSuccessful: '解包成功',
|
||||||
unpackingFailed: '解包失败',
|
unpackingFailed: '解包失败',
|
||||||
|
pleaseEnterNameQuery: '请输入名称查询',
|
||||||
|
routeSameID: '相同ID的数据已存在',
|
||||||
|
|
||||||
skinDeleteSuccessfully: '删除皮肤成功',
|
skinDeleteSuccessfully: '删除皮肤成功',
|
||||||
skinDeleteFailed: '删除皮肤失败',
|
skinDeleteFailed: '删除皮肤失败',
|
||||||
@ -57,9 +59,6 @@ export default {
|
|||||||
deleteProductSuccessfully: '删除产品成功',
|
deleteProductSuccessfully: '删除产品成功',
|
||||||
deleteProductFailed: '删除产品失败',
|
deleteProductFailed: '删除产品失败',
|
||||||
cannotDeleteProduct: '产品已被使用无法删除',
|
cannotDeleteProduct: '产品已被使用无法删除',
|
||||||
|
|
||||||
pleaseEnterNameQuery: '请输入名称查询',
|
|
||||||
routeSameID: '相同ID的数据已存在',
|
|
||||||
pathCreationSuccessful: '创建交路成功!',
|
pathCreationSuccessful: '创建交路成功!',
|
||||||
createRoutingFailed: '创建交路失败',
|
createRoutingFailed: '创建交路失败',
|
||||||
pathUpdataSuccessful: '更新交路成功!',
|
pathUpdataSuccessful: '更新交路成功!',
|
||||||
@ -74,5 +73,21 @@ export default {
|
|||||||
requestFailed: '请求失败',
|
requestFailed: '请求失败',
|
||||||
|
|
||||||
dataQuestion: '有问题数据',
|
dataQuestion: '有问题数据',
|
||||||
dataList: '数据列表'
|
dataList: '数据列表',
|
||||||
|
|
||||||
|
updateProductTip: 'Will this operation modify the commodity status?',
|
||||||
|
deleteProductTip: 'This operation will delete the item. Do you want to continue?',
|
||||||
|
getQRCodeFailure: 'Failed to obtain the package authority qr code',
|
||||||
|
recoveryPrivilegeTip: 'This action will reclaim permissions. Do you want to continue?',
|
||||||
|
unpackingTip: 'This operation will be unpacked. Do you want to continue?',
|
||||||
|
updatePrivilegeTip: 'This action will modify the permission status. Do you want to continue?',
|
||||||
|
addOrganizationPrefix: 'Whether to add "',
|
||||||
|
addOrganizationSuffix: '" Organization/enterprise entry information?',
|
||||||
|
packagingFailed: 'Authority distribution packaging failed',
|
||||||
|
selectPackagingRecord: 'Please select the packaging record',
|
||||||
|
|
||||||
|
skinDeleteConfirmation: 'This will permanently remove the skin. Do you want to continue?',
|
||||||
|
skinCodingExist: 'Map skin codes already exist',
|
||||||
|
underImport: 'UnderImport...',
|
||||||
|
deleteTypeHint: 'This action deletes the type. Do you want to continue?'
|
||||||
};
|
};
|
||||||
|
@ -2,7 +2,8 @@ export default {
|
|||||||
refreshFailed: '刷新失败',
|
refreshFailed: '刷新失败',
|
||||||
createSimulationFailed: '创建仿真失败',
|
createSimulationFailed: '创建仿真失败',
|
||||||
loadMapDataFailed: '加载地图数据失败',
|
loadMapDataFailed: '加载地图数据失败',
|
||||||
getMapStepsFailed: '获取地图步骤数据',
|
getMapStepsFailed: '获取地图步骤数据失败',
|
||||||
|
getMapDetailFailed: '获取地图详细信息失败',
|
||||||
resetFailed: '重置失败',
|
resetFailed: '重置失败',
|
||||||
startTrainingFailed: '开始实训失败',
|
startTrainingFailed: '开始实训失败',
|
||||||
saveBackgroundFailed: '保存背景失败',
|
saveBackgroundFailed: '保存背景失败',
|
||||||
@ -39,6 +40,10 @@ export default {
|
|||||||
codeHasExist: '编码已存在',
|
codeHasExist: '编码已存在',
|
||||||
formartError: '格式不正确,只能是字符/数字/_',
|
formartError: '格式不正确,只能是字符/数字/_',
|
||||||
createDictionaryFailed: '创建字典失败',
|
createDictionaryFailed: '创建字典失败',
|
||||||
updateDictionaryFailed: '更新字典失败'
|
updateDictionaryFailed: '更新字典失败',
|
||||||
|
createDetailFailed: '创建明细失败',
|
||||||
|
updateDetailFailed: '更新明细失败',
|
||||||
|
addFailed: '添加失败',
|
||||||
|
updateFailed: '更新失败'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -79,5 +79,6 @@ export default {
|
|||||||
trainingHasStart: '{{name}}的房间已开始',
|
trainingHasStart: '{{name}}的房间已开始',
|
||||||
trainingNotStart: '{{name}}的房间未开始',
|
trainingNotStart: '{{name}}的房间未开始',
|
||||||
inputRoomNumber: '请输入房间号',
|
inputRoomNumber: '请输入房间号',
|
||||||
chooseRoom: '选择房间'
|
chooseRoom: '选择房间',
|
||||||
|
month: '月'
|
||||||
};
|
};
|
||||||
|
@ -35,9 +35,6 @@ export default {
|
|||||||
lastStep: '上一步',
|
lastStep: '上一步',
|
||||||
confirm: '确 定',
|
confirm: '确 定',
|
||||||
cancel: '取 消',
|
cancel: '取 消',
|
||||||
cancelledDelete: '已取消删除',
|
|
||||||
confirmDeletion: '是否确认删除?',
|
|
||||||
hint: '提示',
|
|
||||||
|
|
||||||
link: 'link',
|
link: 'link',
|
||||||
section: '区段',
|
section: '区段',
|
||||||
@ -63,7 +60,7 @@ export default {
|
|||||||
offsetXColon: 'X偏移:',
|
offsetXColon: 'X偏移:',
|
||||||
offsetYColon: 'Y偏移:',
|
offsetYColon: 'Y偏移:',
|
||||||
scalingColon: '缩放比例:',
|
scalingColon: '缩放比例:',
|
||||||
operationUnusual: '操作异常:',
|
operationUnusual: '操作异常:',
|
||||||
offsetX: 'X偏移',
|
offsetX: 'X偏移',
|
||||||
offsetY: 'Y偏移',
|
offsetY: 'Y偏移',
|
||||||
scaling: '缩放比例',
|
scaling: '缩放比例',
|
||||||
@ -78,14 +75,6 @@ export default {
|
|||||||
|
|
||||||
publishMapCreation: '从发布地图创建',
|
publishMapCreation: '从发布地图创建',
|
||||||
|
|
||||||
pleaseEnterMapName: '请输入地图名称',
|
|
||||||
pleaseChooseSkinCode: '请选择皮肤风格',
|
|
||||||
pleaseSelectMapSource: '请选择地图来源',
|
|
||||||
pleaseSelectAssociatedCity: '请选择关联城市',
|
|
||||||
pleaseSelectAssociatedSkin: '请选择关联皮肤',
|
|
||||||
pleaseEnteMapLinkWidth: '请输入地图Link宽度',
|
|
||||||
pleaseEnterMapSectionWidth: '请输入地图区段宽度',
|
|
||||||
|
|
||||||
failedLoadListPublishedMaps: '加载已发布地图列表失败',
|
failedLoadListPublishedMaps: '加载已发布地图列表失败',
|
||||||
creatingSuccessful: '创建成功!',
|
creatingSuccessful: '创建成功!',
|
||||||
mapUpdateSuccessful: '更新地图成功!',
|
mapUpdateSuccessful: '更新地图成功!',
|
||||||
@ -124,7 +113,6 @@ export default {
|
|||||||
preview: '预览',
|
preview: '预览',
|
||||||
operation: '操作',
|
operation: '操作',
|
||||||
compile: '编辑',
|
compile: '编辑',
|
||||||
delete: '删除',
|
|
||||||
empty: '清空',
|
empty: '清空',
|
||||||
reset: '重置',
|
reset: '重置',
|
||||||
sectionName: '区段名称',
|
sectionName: '区段名称',
|
||||||
@ -133,7 +121,6 @@ export default {
|
|||||||
|
|
||||||
signalID: '信号机ID:',
|
signalID: '信号机ID:',
|
||||||
activate: '激活',
|
activate: '激活',
|
||||||
segmentData: '进路自动触发区段数据:',
|
|
||||||
|
|
||||||
pleaseSelectSignal: '请选择信号机',
|
pleaseSelectSignal: '请选择信号机',
|
||||||
triggerSegmentData: '请选择进路自动触发区段数据',
|
triggerSegmentData: '请选择进路自动触发区段数据',
|
||||||
@ -202,7 +189,6 @@ export default {
|
|||||||
linkRp: 'Link 终点坐标:',
|
linkRp: 'Link 终点坐标:',
|
||||||
|
|
||||||
rulesChange: '规则修改',
|
rulesChange: '规则修改',
|
||||||
sectionNameC: '区段名称:',
|
|
||||||
splitMerge: '拆分/合并',
|
splitMerge: '拆分/合并',
|
||||||
linkSet: 'Link集合',
|
linkSet: 'Link集合',
|
||||||
selectLink: '选择Link',
|
selectLink: '选择Link',
|
||||||
@ -260,8 +246,6 @@ export default {
|
|||||||
isSegmentation: '是否分割:',
|
isSegmentation: '是否分割:',
|
||||||
segmentationPosition: '分割坐标:',
|
segmentationPosition: '分割坐标:',
|
||||||
isCurve: '是否曲线:',
|
isCurve: '是否曲线:',
|
||||||
sectionPoints: '区段显示坐标:',
|
|
||||||
trainPosType: '列车所在方向:',
|
|
||||||
physicalSegmentName: '物理区段名称:',
|
physicalSegmentName: '物理区段名称:',
|
||||||
|
|
||||||
directionType: '形式方向:',
|
directionType: '形式方向:',
|
||||||
@ -282,7 +266,6 @@ export default {
|
|||||||
signalOffset: '偏移量:',
|
signalOffset: '偏移量:',
|
||||||
signalPositionX: '信号机x:',
|
signalPositionX: '信号机x:',
|
||||||
signalPositionY: '信号机y:',
|
signalPositionY: '信号机y:',
|
||||||
signalRotate: '旋转角度:',
|
|
||||||
signalNamePositionX: '信号机名字偏移量 x:',
|
signalNamePositionX: '信号机名字偏移量 x:',
|
||||||
signalNamePositionY: '信号机名字偏移量 y:',
|
signalNamePositionY: '信号机名字偏移量 y:',
|
||||||
signalButtonShow: '是否显示按钮:',
|
signalButtonShow: '是否显示按钮:',
|
||||||
@ -296,7 +279,6 @@ export default {
|
|||||||
stationCode: '车站编码:',
|
stationCode: '车站编码:',
|
||||||
zcCode: '所属zc区域编码:',
|
zcCode: '所属zc区域编码:',
|
||||||
centralized: '是否集中站:',
|
centralized: '是否集中站:',
|
||||||
stationNameColon: '车站名称:',
|
|
||||||
stationRunPlanName: '真实名称:',
|
stationRunPlanName: '真实名称:',
|
||||||
stationVisible: '是否显示:',
|
stationVisible: '是否显示:',
|
||||||
stationNameFont: '车站字体:',
|
stationNameFont: '车站字体:',
|
||||||
@ -315,8 +297,6 @@ export default {
|
|||||||
zakContent: '站控内容:',
|
zakContent: '站控内容:',
|
||||||
jjzkContent: '紧急站控/总报警内容:',
|
jjzkContent: '紧急站控/总报警内容:',
|
||||||
zzkContent: '站中控内容:',
|
zzkContent: '站中控内容:',
|
||||||
stationControlPositionX: '坐标 x:',
|
|
||||||
stationControlPositionY: '坐标 y:',
|
|
||||||
stationControlZok: '中控',
|
stationControlZok: '中控',
|
||||||
|
|
||||||
stationstandName: '选择车站名称:',
|
stationstandName: '选择车站名称:',
|
||||||
@ -327,8 +307,6 @@ export default {
|
|||||||
stationstandShowName: '是否显示名称:',
|
stationstandShowName: '是否显示名称:',
|
||||||
stationstandWidth: '宽度 w:',
|
stationstandWidth: '宽度 w:',
|
||||||
stationstandHeight: '高度 h:',
|
stationstandHeight: '高度 h:',
|
||||||
stationstandPositionX: '坐标 x:',
|
|
||||||
stationstandPositionY: '坐标 y:',
|
|
||||||
|
|
||||||
switchCode: '道岔编码:',
|
switchCode: '道岔编码:',
|
||||||
switchName: '道岔名称:',
|
switchName: '道岔名称:',
|
||||||
@ -372,7 +350,6 @@ export default {
|
|||||||
deleteTrainWindow: '一键删除车次窗',
|
deleteTrainWindow: '一键删除车次窗',
|
||||||
createTrainWindow: '一键创建车次窗',
|
createTrainWindow: '一键创建车次窗',
|
||||||
|
|
||||||
zcCodeColon: '编码:',
|
|
||||||
showZc: '是否可见:',
|
showZc: '是否可见:',
|
||||||
|
|
||||||
pathUnitList: '路径单元列表',
|
pathUnitList: '路径单元列表',
|
||||||
@ -382,16 +359,12 @@ export default {
|
|||||||
pathUnitMapName: '所属地图名称',
|
pathUnitMapName: '所属地图名称',
|
||||||
orderNum: '优先级',
|
orderNum: '优先级',
|
||||||
pathName: '进路名称',
|
pathName: '进路名称',
|
||||||
affiliationStationCode: '所属车站名称',
|
|
||||||
startingSignalName: '始端信号机名称',
|
startingSignalName: '始端信号机名称',
|
||||||
endingSignalName: '终端信号机名称',
|
endingSignalName: '终端信号机名称',
|
||||||
|
|
||||||
routeID: '进路ID',
|
routeID: '进路ID',
|
||||||
routeName: '进路名称:',
|
routeName: '进路名称:',
|
||||||
routeMapId: '所属地图名称',
|
|
||||||
routeStationName: '所属车站名称',
|
routeStationName: '所属车站名称',
|
||||||
routeStartSignalCode: '始端信号机名称',
|
|
||||||
routeEndSignalCode: '终端信号机名称',
|
|
||||||
|
|
||||||
startSectionCodeColon: '始端停车点:',
|
startSectionCodeColon: '始端停车点:',
|
||||||
endSectionCodeColon: '终端停车点:',
|
endSectionCodeColon: '终端停车点:',
|
||||||
@ -442,16 +415,8 @@ export default {
|
|||||||
skinDesignation: '皮肤名称',
|
skinDesignation: '皮肤名称',
|
||||||
skinCoding: '皮肤编码',
|
skinCoding: '皮肤编码',
|
||||||
coordinatesOrigin: '坐标原点',
|
coordinatesOrigin: '坐标原点',
|
||||||
skinDeleteConfirmation: '此操作将永久删除该皮肤, 是否继续?',
|
|
||||||
addMapSkin: '添加地图皮肤',
|
addMapSkin: '添加地图皮肤',
|
||||||
updateMapSkin: '更新地图皮肤',
|
updateMapSkin: '更新地图皮肤',
|
||||||
maxScaling: '(缩放比例最大为8级)',
|
|
||||||
skinCodingInput: '请输入皮肤编码',
|
|
||||||
skinDesignationInput: '请输入皮肤名称',
|
|
||||||
coordinatesOriginInput: '请输入原点坐标',
|
|
||||||
scalingInput: '请输入缩放比例',
|
|
||||||
scalingInputPrompt: '请输入有效的缩放比例',
|
|
||||||
skinCodingExist: '地图皮肤编码已存在',
|
|
||||||
stationKilometerMark: '车站公里标',
|
stationKilometerMark: '车站公里标',
|
||||||
arrivalTime: '到站时间',
|
arrivalTime: '到站时间',
|
||||||
operationGraphPublished: '运行图发布为',
|
operationGraphPublished: '运行图发布为',
|
||||||
@ -460,10 +425,8 @@ export default {
|
|||||||
importOperationGraph: '导入运行图',
|
importOperationGraph: '导入运行图',
|
||||||
publishOperationGraph: '发布运行图',
|
publishOperationGraph: '发布运行图',
|
||||||
deleteOperationGraph: '删除运行图',
|
deleteOperationGraph: '删除运行图',
|
||||||
underImport: '正在导入中...',
|
|
||||||
mapList: '地图列表',
|
mapList: '地图列表',
|
||||||
import: '导入',
|
import: '导入',
|
||||||
selectImportFiles: '请选择需要导入的文件',
|
|
||||||
createNewOperationGraph: '新建运行图',
|
createNewOperationGraph: '新建运行图',
|
||||||
setOperatingSpeed: '设置运行速度',
|
setOperatingSpeed: '设置运行速度',
|
||||||
speedClass1: '速度等级1',
|
speedClass1: '速度等级1',
|
||||||
@ -476,29 +439,17 @@ export default {
|
|||||||
stopTime: '停靠时间',
|
stopTime: '停靠时间',
|
||||||
entranceStation: '入口车站',
|
entranceStation: '入口车站',
|
||||||
exportStation: '出口车站',
|
exportStation: '出口车站',
|
||||||
speedLevelEnter1: '请输入速度等级1',
|
|
||||||
speedLevelEnter2: '请输入速度等级2',
|
|
||||||
speedLevelEnter3: '请输入速度等级3',
|
|
||||||
speedLevelEnter4: '请输入速度等级4',
|
|
||||||
nameEnter: '请输入名称',
|
|
||||||
drivingDirectionSelect: '请选择行驶方向',
|
|
||||||
timeBetweenDeparturesEnter: '请输入发车间隔时间',
|
|
||||||
stopTimeEnter: '请输入停靠时间',
|
|
||||||
entranceStationSelect: '请选择入站口',
|
|
||||||
exportStationSelect: '请选择出站口',
|
|
||||||
validityCheck: '有效性检查',
|
validityCheck: '有效性检查',
|
||||||
setupOperationGraph: '设置运行图',
|
setupOperationGraph: '设置运行图',
|
||||||
selectOperationGraphDataRange: '选取运行图数据范围',
|
selectOperationGraphDataRange: '选取运行图数据范围',
|
||||||
to: '至',
|
to: '至',
|
||||||
selectionTimeRange: '选择时间范围',
|
selectionTimeRange: '选择时间范围',
|
||||||
selectDataRange: '请选择数据范围区间',
|
|
||||||
pointSystem1: '1分制',
|
pointSystem1: '1分制',
|
||||||
pointSystem2: '2分制',
|
pointSystem2: '2分制',
|
||||||
pointSystem5: '5分制',
|
pointSystem5: '5分制',
|
||||||
skinType: '皮肤风格',
|
skinType: '皮肤风格',
|
||||||
turnoverTime: '更新时间',
|
turnoverTime: '更新时间',
|
||||||
productList: '产品列表',
|
productList: '产品列表',
|
||||||
deleteTypeHint: '此操作将删除该类型, 是否继续?',
|
|
||||||
belongsToMapName: '所属地图名称',
|
belongsToMapName: '所属地图名称',
|
||||||
productType: '产品类型',
|
productType: '产品类型',
|
||||||
productCode: '产品编码',
|
productCode: '产品编码',
|
||||||
@ -507,20 +458,11 @@ export default {
|
|||||||
associateTrainingTypes: '关联实训类型',
|
associateTrainingTypes: '关联实训类型',
|
||||||
createTrainingCategories: '创建实训类目',
|
createTrainingCategories: '创建实训类目',
|
||||||
editTrainingCategories: '编辑实训类目',
|
editTrainingCategories: '编辑实训类目',
|
||||||
productCodeEnter: '请输入产品编码',
|
|
||||||
productNameEnter: '请输入产品名称',
|
|
||||||
productDescriptionEnter: '请输入产品说明',
|
|
||||||
trainingTypeSelect: '请选择关联实训类型',
|
|
||||||
linkWidth: 'link宽度',
|
linkWidth: 'link宽度',
|
||||||
maxLinkWidth: '(Link宽度最大为20)',
|
maxLinkWidth: '(Link宽度最大为20)',
|
||||||
sectionWidth: '区段宽度',
|
sectionWidth: '区段宽度',
|
||||||
maxSectionWidth: '(区段宽度最大为30)',
|
maxSectionWidth: '(区段宽度最大为30)',
|
||||||
showWatermarkOrNot: '是否显示水印',
|
showWatermarkOrNot: '是否显示水印',
|
||||||
linkWidthInput: '请输入Link宽度',
|
|
||||||
linkWidthInputPrompt: '请输入有效Link宽度',
|
|
||||||
sectionWidthInput: '请输入区段宽度',
|
|
||||||
sectionWidthInputPrompt: '请输入有效区段宽度',
|
|
||||||
selectShowWatermark: '请选择是否水印',
|
|
||||||
routingCode: '交路code',
|
routingCode: '交路code',
|
||||||
routingName: '交路名称',
|
routingName: '交路名称',
|
||||||
startStationCodeColon: '起始站:',
|
startStationCodeColon: '起始站:',
|
||||||
|
@ -45,15 +45,9 @@ export default {
|
|||||||
authorityDetails: '权限详情',
|
authorityDetails: '权限详情',
|
||||||
renew: '续费',
|
renew: '续费',
|
||||||
productName: '产品名称',
|
productName: '产品名称',
|
||||||
updateProductTip: '此操作将修改商品状态?',
|
|
||||||
deleteProductTip: '此操作将删除该商品, 是否继续?',
|
|
||||||
recovery: '回收',
|
recovery: '回收',
|
||||||
permissionPack: '权限包',
|
permissionPack: '权限包',
|
||||||
privilegeTransferQRCode: '权限转赠二维码',
|
privilegeTransferQRCode: '权限转赠二维码',
|
||||||
getQRCodeFailure: '获取打包权限二维码失败',
|
|
||||||
recoveryPrivilegeTip: '此操作将回收权限, 是否继续?',
|
|
||||||
unpackingTip: '此操作将解包, 是否继续?',
|
|
||||||
updatePrivilegeTip: '此操作将修改权限状态?',
|
|
||||||
generatingQRCode: '生成二维码',
|
generatingQRCode: '生成二维码',
|
||||||
transferQRCode: '转赠二维码',
|
transferQRCode: '转赠二维码',
|
||||||
today: '今天',
|
today: '今天',
|
||||||
@ -68,27 +62,7 @@ export default {
|
|||||||
increasePermissionNumber: '增加权限数量',
|
increasePermissionNumber: '增加权限数量',
|
||||||
choosePermissionNumber: '选择权限数量',
|
choosePermissionNumber: '选择权限数量',
|
||||||
itemPricing: '商品单价',
|
itemPricing: '商品单价',
|
||||||
organizationInput: '请输入组织或者企业名称',
|
addUserPermissions: '添加用户权限',
|
||||||
productSelect: '请选择商品',
|
|
||||||
itemPricingInput: '请输入商品单价',
|
|
||||||
orderTypeSelect: '请选择订单类型',
|
|
||||||
contractNumberInput: '请输入合同编号',
|
|
||||||
contractNumberLimit: '长度在 1 到 25 个字符',
|
|
||||||
salesmanInput: '请选择销售人员',
|
|
||||||
foreverRadio: '请选择',
|
|
||||||
amountInput: '请输入购买的权限个数',
|
|
||||||
amountInputError: '请输入有效权限个数',
|
|
||||||
totalPriceInput: '请输入总价格',
|
|
||||||
totalPriceInputError1: '请输入的价格在两位小数',
|
|
||||||
totalPriceInputError2: '请输入有效总价格',
|
|
||||||
monthAmountInput: '请输入购买月数',
|
|
||||||
monthAmountInputError: '请输入有效购买月数',
|
|
||||||
startTimePick: '请选择开始日期',
|
|
||||||
bizTypeSelect: '请选择业务类型',
|
|
||||||
payWaysSelect: '请选择支付方式',
|
|
||||||
payStatusSelect: '请选择支付状态',
|
|
||||||
addOrganizationPrefix: '是否添加 "',
|
|
||||||
addOrganizationSuffix: '" 组织/企业条目信息?',
|
|
||||||
publicAuthority: '公用权限',
|
publicAuthority: '公用权限',
|
||||||
privateAuthority: '专用权限',
|
privateAuthority: '专用权限',
|
||||||
optionPrivilegeTransfer: '选择权限转赠',
|
optionPrivilegeTransfer: '选择权限转赠',
|
||||||
@ -97,8 +71,6 @@ export default {
|
|||||||
addRecords: '添加记录',
|
addRecords: '添加记录',
|
||||||
totalNumber: '总数',
|
totalNumber: '总数',
|
||||||
permissionToDistributeQRCode: '权限分发二维码',
|
permissionToDistributeQRCode: '权限分发二维码',
|
||||||
packagingFailed: '权限分发打包失败',
|
|
||||||
selectPackagingRecord: '请选择打包记录',
|
|
||||||
editPermissionRules: '编辑权限规则',
|
editPermissionRules: '编辑权限规则',
|
||||||
addGoods: '添加商品',
|
addGoods: '添加商品',
|
||||||
updateGoods: '修改商品',
|
updateGoods: '修改商品',
|
||||||
@ -106,20 +78,11 @@ export default {
|
|||||||
whetherTrial: '是否试用',
|
whetherTrial: '是否试用',
|
||||||
unitOfTime: '时间单位',
|
unitOfTime: '时间单位',
|
||||||
trialTime: '试用时长',
|
trialTime: '试用时长',
|
||||||
goodsNameInput: '请输入商品名称',
|
|
||||||
productTypeInput: '请选择产品类型',
|
|
||||||
mapInput: '请选择地图',
|
|
||||||
productInput: '请选择产品',
|
|
||||||
lessonInput: '请选择课程',
|
|
||||||
trialTimeInput: '请输入试用时长',
|
|
||||||
unitOfTimeRadio: '请选择时间单位',
|
|
||||||
goodsDescribtionInput: '请输入商品描述',
|
|
||||||
addUserPermissions: '添加用户权限',
|
|
||||||
userNameInput: '请输入用户名称',
|
|
||||||
permissionTypeInput: '请选择权限类型',
|
|
||||||
distributionUser: '分发用户',
|
distributionUser: '分发用户',
|
||||||
orderNumber: '订单号',
|
orderNumber: '订单号',
|
||||||
sourcesOfInformation: '信息来源',
|
sourcesOfInformation: '信息来源',
|
||||||
distributePermission: '权限分发',
|
distributePermission: '权限分发',
|
||||||
orderCreation: '订单创建'
|
orderCreation: '订单创建',
|
||||||
|
select: '选择',
|
||||||
|
chooseGoods: '选择商品'
|
||||||
};
|
};
|
||||||
|
@ -70,8 +70,6 @@ export default {
|
|||||||
stationName: '请输入车站名称',
|
stationName: '请输入车站名称',
|
||||||
stationKmRange: '请输入公里标距离',
|
stationKmRange: '请输入公里标距离',
|
||||||
stationKmPost: '请输入公里标名称',
|
stationKmPost: '请输入公里标名称',
|
||||||
stationPositionX: '请输入x坐标',
|
|
||||||
stationPositionY: '请输入y坐标',
|
|
||||||
|
|
||||||
stationControlStationName: '请选择车站名称',
|
stationControlStationName: '请选择车站名称',
|
||||||
stationControlStationCode: '请选择所属车站',
|
stationControlStationCode: '请选择所属车站',
|
||||||
@ -90,8 +88,6 @@ export default {
|
|||||||
stationstandDirection: '请选择上下行方向',
|
stationstandDirection: '请选择上下行方向',
|
||||||
stationstandWidth: '请输入车站宽度',
|
stationstandWidth: '请输入车站宽度',
|
||||||
stationstandHeight: '请输入车站高度',
|
stationstandHeight: '请输入车站高度',
|
||||||
stationstandPositionX: '请输入x坐标',
|
|
||||||
stationstandPositionY: '请输入y坐标',
|
|
||||||
|
|
||||||
switchName: '请输入道岔名称',
|
switchName: '请输入道岔名称',
|
||||||
switchNamePointX: '请输入道岔名称坐标x',
|
switchNamePointX: '请输入道岔名称坐标x',
|
||||||
@ -148,5 +144,71 @@ export default {
|
|||||||
pleaseSelectStatus: '请选择状态',
|
pleaseSelectStatus: '请选择状态',
|
||||||
pleaseInputCode: '请输入编码',
|
pleaseInputCode: '请输入编码',
|
||||||
strLength1To25: '长度在 1 到 25 个字符',
|
strLength1To25: '长度在 1 到 25 个字符',
|
||||||
strLengthNotExceed50: '不能超过 50 个字符'
|
strLengthNotExceed50: '不能超过 50 个字符',
|
||||||
|
|
||||||
|
pleaseEnterMapName: '请输入地图名称',
|
||||||
|
pleaseChooseSkinCode: '请选择皮肤风格',
|
||||||
|
pleaseSelectMapSource: '请选择地图来源',
|
||||||
|
pleaseSelectAssociatedCity: '请选择关联城市',
|
||||||
|
pleaseSelectAssociatedSkin: '请选择关联皮肤',
|
||||||
|
pleaseEnteMapLinkWidth: '请输入地图Link宽度',
|
||||||
|
pleaseEnterMapSectionWidth: '请输入地图区段宽度',
|
||||||
|
organizationInput: '请输入组织或者企业名称',
|
||||||
|
productSelect: '请选择商品',
|
||||||
|
itemPricingInput: '请输入商品单价',
|
||||||
|
orderTypeSelect: '请选择订单类型',
|
||||||
|
contractNumberInput: '请输入合同编号',
|
||||||
|
salesmanInput: '请选择销售人员',
|
||||||
|
authorAmountInput: '请输入购买的权限个数',
|
||||||
|
authorAmountInputError: '请输入有效权限个数',
|
||||||
|
totalPriceInput: '请输入总价格',
|
||||||
|
totalPriceInputError1: '请输入的价格在两位小数',
|
||||||
|
totalPriceInputError2: '请输入有效总价格',
|
||||||
|
monthAmountInput: '请输入购买月数',
|
||||||
|
monthAmountInputError: '请输入有效购买月数',
|
||||||
|
startTimePick: '请选择开始日期',
|
||||||
|
bizTypeSelect: '请选择业务类型',
|
||||||
|
payWaysSelect: '请选择支付方式',
|
||||||
|
payStatusSelect: '请选择支付状态',
|
||||||
|
goodsNameInput: '请输入商品名称',
|
||||||
|
productTypeInput: '请选择产品类型',
|
||||||
|
mapInput: '请选择地图',
|
||||||
|
productInput: '请选择产品',
|
||||||
|
lessonInput: '请选择课程',
|
||||||
|
trialTimeInput: '请输入试用时长',
|
||||||
|
unitOfTimeRadio: '请选择时间单位',
|
||||||
|
goodsDescribtionInput: '请输入商品描述',
|
||||||
|
userNameInput: '请输入用户名称',
|
||||||
|
permissionTypeInput: '请选择权限类型',
|
||||||
|
timeInput: '请输入时长',
|
||||||
|
chooseUser: '请选择用户',
|
||||||
|
pleaseInputLessonName: '请输入课程名称',
|
||||||
|
pleaseSelectTraining: '请选择实训',
|
||||||
|
|
||||||
|
maxScaling: '(缩放比例最大为8级)',
|
||||||
|
skinCodingInput: '请输入皮肤编码',
|
||||||
|
skinDesignationInput: '请输入皮肤名称',
|
||||||
|
coordinatesOriginInput: '请输入原点坐标',
|
||||||
|
scalingInput: '请输入缩放比例',
|
||||||
|
scalingInputPrompt: '请输入有效的缩放比例',
|
||||||
|
selectImportFiles: '请选择需要导入的文件',
|
||||||
|
speedLevelEnter1: '请输入速度等级1',
|
||||||
|
speedLevelEnter2: '请输入速度等级2',
|
||||||
|
speedLevelEnter3: '请输入速度等级3',
|
||||||
|
speedLevelEnter4: '请输入速度等级4',
|
||||||
|
drivingDirectionSelect: '请选择行驶方向',
|
||||||
|
timeBetweenDeparturesEnter: '请输入发车间隔时间',
|
||||||
|
stopTimeEnter: '请输入停靠时间',
|
||||||
|
entranceStationSelect: '请选择入站口',
|
||||||
|
exportStationSelect: '请选择出站口',
|
||||||
|
selectDataRange: '请选择数据范围区间',
|
||||||
|
productCodeEnter: '请输入产品编码',
|
||||||
|
productNameEnter: '请输入产品名称',
|
||||||
|
productDescriptionEnter: '请输入产品说明',
|
||||||
|
trainingTypeSelect: '请选择关联实训类型',
|
||||||
|
linkWidthInput: '请输入Link宽度',
|
||||||
|
linkWidthInputPrompt: '请输入有效Link宽度',
|
||||||
|
sectionWidthInput: '请输入区段宽度',
|
||||||
|
sectionWidthInputPrompt: '请输入有效区段宽度',
|
||||||
|
selectShowWatermark: '请选择是否水印'
|
||||||
};
|
};
|
||||||
|
@ -11,6 +11,44 @@ export default {
|
|||||||
updateSuccess: '更新成功',
|
updateSuccess: '更新成功',
|
||||||
destory: '销 毁',
|
destory: '销 毁',
|
||||||
simulationGroup: '仿真Group',
|
simulationGroup: '仿真Group',
|
||||||
username: '用户名',
|
userName: '用户名',
|
||||||
phoneNumber: '手机号'
|
mobile: '手机号',
|
||||||
|
skinCode: '皮肤编号',
|
||||||
|
prdType: '产品类型',
|
||||||
|
simulationType: '仿真类型',
|
||||||
|
simulationGroupId: '仿真成员ID',
|
||||||
|
productName: '产品名称',
|
||||||
|
isError: '是否错误',
|
||||||
|
isSuspend: '是否暂停',
|
||||||
|
isDrivingAsplanned: '是否按计划行车',
|
||||||
|
delUserSimulationIsContinue: '此操作将删除此用户仿真数据, 是否继续?',
|
||||||
|
createDetail: '创建明细',
|
||||||
|
editDetail: '编辑明细',
|
||||||
|
mapName: '地图名称',
|
||||||
|
trainingName: '实训名称',
|
||||||
|
trainingUseTime: '实训用时',
|
||||||
|
minute: '分',
|
||||||
|
second: '秒',
|
||||||
|
createSimulationTitle: '创建仿真信息',
|
||||||
|
addSuccess: '添加成功',
|
||||||
|
pleaseInputNames: '请输入昵称/名字/手机号',
|
||||||
|
examUser: '考试用户',
|
||||||
|
examScore: '考试成绩',
|
||||||
|
examResult: '考试结果',
|
||||||
|
examName: '试卷名称',
|
||||||
|
delExamResultIsContinue: '此操作将删除此考试结果, 是否继续?',
|
||||||
|
editExamDetail: '编辑考试详情',
|
||||||
|
subscribeMap: '订阅地图',
|
||||||
|
roles: '角色',
|
||||||
|
email: '邮箱',
|
||||||
|
nickname: '昵称',
|
||||||
|
delTypeIsContinue: '此操作将删除该类型, 是否继续?',
|
||||||
|
permission: '权限',
|
||||||
|
editUserPermission: '编辑用户权限',
|
||||||
|
lessonName: '课程名称',
|
||||||
|
selectTraining: '选择实训',
|
||||||
|
createUserTraining: '创建用户实训',
|
||||||
|
editTrainingDetail: '编辑实训详情',
|
||||||
|
trainingTime: '实训时长'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -73,5 +73,22 @@ export default {
|
|||||||
requestFailed: '请求失败',
|
requestFailed: '请求失败',
|
||||||
|
|
||||||
dataQuestion: '有问题数据',
|
dataQuestion: '有问题数据',
|
||||||
dataList: '数据列表'
|
dataList: '数据列表',
|
||||||
|
|
||||||
|
updateProductTip: '此操作将修改商品状态?',
|
||||||
|
deleteProductTip: '此操作将删除该商品, 是否继续?',
|
||||||
|
getQRCodeFailure: '获取打包权限二维码失败',
|
||||||
|
recoveryPrivilegeTip: '此操作将回收权限, 是否继续?',
|
||||||
|
unpackingTip: '此操作将解包, 是否继续?',
|
||||||
|
updatePrivilegeTip: '此操作将修改权限状态,是否继续?',
|
||||||
|
addOrganizationPrefix: '是否添加 "',
|
||||||
|
addOrganizationSuffix: '" 组织/企业条目信息?',
|
||||||
|
packagingFailed: '权限分发打包失败',
|
||||||
|
selectPackagingRecord: '请选择打包记录',
|
||||||
|
|
||||||
|
skinDeleteConfirmation: '此操作将永久删除该皮肤, 是否继续?',
|
||||||
|
skinCodingExist: '地图皮肤编码已存在',
|
||||||
|
underImport: '正在导入中...',
|
||||||
|
deleteTypeHint: '此操作将删除该类型, 是否继续?'
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -374,6 +374,10 @@ class SkinCode extends defaultStyle {
|
|||||||
type: '03',
|
type: '03',
|
||||||
serviceNumber: '---',
|
serviceNumber: '---',
|
||||||
nameFormat: 'groupNumber:serviceNumber'
|
nameFormat: 'groupNumber:serviceNumber'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: '03',
|
||||||
|
nameFormat: 'serviceNumber:trainNumber'
|
||||||
}
|
}
|
||||||
], // 特殊列车类型需设置显示格式
|
], // 特殊列车类型需设置显示格式
|
||||||
lrPadding: 4, // 两边间隔
|
lrPadding: 4, // 两边间隔
|
||||||
@ -435,6 +439,10 @@ class SkinCode extends defaultStyle {
|
|||||||
useSelfText: true // 使用配置项的字体大小
|
useSelfText: true // 使用配置项的字体大小
|
||||||
},
|
},
|
||||||
trainStatusStyle: {
|
trainStatusStyle: {
|
||||||
|
trainTypeStatus: [
|
||||||
|
{type: '03', serviceNumberColor: '#FFF000', groupNumberColor: '#FFF000'},
|
||||||
|
{type: '02', trainNumberColor: '#FFF000', groupNumberColor: '#FFF000'}
|
||||||
|
], // 列车类型对应的识别号样式
|
||||||
defaultDestinationColor: '#FFFFFF', // 默认目的地状态显示颜色
|
defaultDestinationColor: '#FFFFFF', // 默认目的地状态显示颜色
|
||||||
destinationStatusSetText: 'trainWindowBorder', // 目的地状态设置的对应哪个颜色
|
destinationStatusSetText: 'trainWindowBorder', // 目的地状态设置的对应哪个颜色
|
||||||
destinationStatus: [
|
destinationStatus: [
|
||||||
|
@ -248,7 +248,7 @@ class Jlmap {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 状态后处理
|
// 状态后处理
|
||||||
this.postHandle(list);
|
this.postHandle(list || []);
|
||||||
|
|
||||||
if (this.methods.stateUpdate instanceof Function) { this.methods.stateUpdate(list); }
|
if (this.methods.stateUpdate instanceof Function) { this.methods.stateUpdate(list); }
|
||||||
}
|
}
|
||||||
|
@ -174,12 +174,20 @@ export default class TrainBody extends Group {
|
|||||||
this.trainBodyBox && this.trainBodyBox.setStyle('fill', color);
|
this.trainBodyBox && this.trainBodyBox.setStyle('fill', color);
|
||||||
}
|
}
|
||||||
setTextTrainServerColor(color) {
|
setTextTrainServerColor(color) {
|
||||||
this.textTrainServer.setStyle('textFill', color);
|
this.textTrainServer&&this.textTrainServer.setStyle('textFill', color);
|
||||||
this.textTrainServer.setStyle('textStroke', color);
|
this.textTrainServer&&this.textTrainServer.setStyle('textStroke', color);
|
||||||
}
|
}
|
||||||
setTextTrainTargetColor(color) {
|
setTextTrainTargetColor(color) {
|
||||||
this.textTrainTarget.setStyle('textFill', color);
|
this.textTrainTarget&&this.textTrainTarget.setStyle('textFill', color);
|
||||||
this.textTrainTarget.setStyle('textStroke', color);
|
this.textTrainTarget&&this.textTrainTarget.setStyle('textStroke', color);
|
||||||
|
}
|
||||||
|
setTextTrainNumberColor(color) {
|
||||||
|
this.textTrainNumber&&this.textTrainNumber.setStyle('textFill', color);
|
||||||
|
this.textTrainNumber&&this.textTrainNumber.setStyle('textStroke', color);
|
||||||
|
}
|
||||||
|
setTextTrainTargetNumberColor(color) {
|
||||||
|
this.textTrainTargetNumber&&this.textTrainTargetNumber.setStyle('textFill', color);
|
||||||
|
this.textTrainTargetNumber&&this.textTrainTargetNumber.setStyle('textStroke', color);
|
||||||
}
|
}
|
||||||
setHShow(isShow) {
|
setHShow(isShow) {
|
||||||
if (this.textH) {
|
if (this.textH) {
|
||||||
|
@ -282,7 +282,18 @@ export default class Train extends Group {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
setTrainTypeStatus(type) {
|
||||||
|
if (this.style.Train.trainStatusStyle.trainTypeStatus) {
|
||||||
|
this.style.Train.trainStatusStyle.trainTypeStatus.some((item) => {
|
||||||
|
if ( type === item.type) {
|
||||||
|
item.serviceNumberColor && this.trainB && this.trainB.setTextTrainServerColor(item.serviceNumberColor);
|
||||||
|
item.trainNumberColor && this.trainB && this.trainB.setTextTrainNumberColor(item.trainNumberColor);
|
||||||
|
item.trainTargetColor && this.trainB && this.trainB.setTextTrainTargetColor(item.trainTargetColor);
|
||||||
|
item.groupNumberColor && this.trainB && this.trainB.setTextTrainTargetNumberColor(item.groupNumberColor);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
// 设置状态
|
// 设置状态
|
||||||
setState(model) {
|
setState(model) {
|
||||||
this.model = model;
|
this.model = model;
|
||||||
@ -296,6 +307,7 @@ export default class Train extends Group {
|
|||||||
this.setDoorStatus(model.doorStatus); // 设置车门状态类型
|
this.setDoorStatus(model.doorStatus); // 设置车门状态类型
|
||||||
this.setCommunicationStatus(model.communicationStatus); // 设置通信状态类型
|
this.setCommunicationStatus(model.communicationStatus); // 设置通信状态类型
|
||||||
this.setAlarmStatus(model.alarmStatus); // 设置报警状态
|
this.setAlarmStatus(model.alarmStatus); // 设置报警状态
|
||||||
|
this.setTrainTypeStatus(model.type); // 根据列车类型设置列车识别号样式
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度
|
// 是否根据车身上车组号、服务号、车次号、目的地码显示情况改变列车长度
|
||||||
|
@ -4,26 +4,35 @@
|
|||||||
const scriptRecord = {
|
const scriptRecord = {
|
||||||
namespaced: true,
|
namespaced: true,
|
||||||
state: {
|
state: {
|
||||||
mapLocation: {}, //地图定位
|
mapLocation: {}, //地图定位,
|
||||||
|
simulationPause: true ,
|
||||||
},
|
},
|
||||||
getters: {
|
getters: {
|
||||||
mapLocation:(state)=>{
|
mapLocation: (state)=>{
|
||||||
return state.mapLocation;
|
return state.mapLocation;
|
||||||
}
|
},
|
||||||
|
simulationPause:(state)=>{
|
||||||
|
return state.simulationPause;
|
||||||
|
},
|
||||||
},
|
},
|
||||||
mutations: {
|
mutations: {
|
||||||
setMapLocation:(state, mapLocation) => {
|
setMapLocation: (state, mapLocation) => {
|
||||||
state.mapLocation = mapLocation;
|
state.mapLocation = mapLocation;
|
||||||
},
|
},
|
||||||
|
setSimulationPause: (state, simulationPause) => {
|
||||||
|
state.simulationPause = simulationPause;
|
||||||
|
},
|
||||||
},
|
},
|
||||||
actions: {
|
actions: {
|
||||||
/**
|
/**
|
||||||
* 设置地图定位
|
* 设置地图定位
|
||||||
*/
|
*/
|
||||||
updateMapLocation:({ commit }, mapLocation) => {
|
updateMapLocation: ({ commit }, mapLocation) => {
|
||||||
commit('setMapLocation', mapLocation);
|
commit('setMapLocation', mapLocation);
|
||||||
},
|
},
|
||||||
|
updateSimulationPause: ({ commit }, simulationPause) => {
|
||||||
|
commit('setSimulationPause', simulationPause);
|
||||||
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
export default scriptRecord;
|
export default scriptRecord;
|
@ -3,9 +3,9 @@ export function getBaseUrl() {
|
|||||||
let BASE_API;
|
let BASE_API;
|
||||||
if (process.env.NODE_ENV === 'development') {
|
if (process.env.NODE_ENV === 'development') {
|
||||||
// BASE_API = 'https://joylink.club/jlcloud';
|
// BASE_API = 'https://joylink.club/jlcloud';
|
||||||
BASE_API = 'https://test.joylink.club/jlcloud';
|
// BASE_API = 'https://test.joylink.club/jlcloud';
|
||||||
// BASE_API = 'http://192.168.3.5:9000'; // 袁琪
|
// BASE_API = 'http://192.168.3.5:9000'; // 袁琪
|
||||||
// BASE_API = 'http://192.168.3.6:9000'; // 旭强
|
BASE_API = 'http://192.168.3.6:9000'; // 旭强
|
||||||
// BASE_API = 'http://192.168.3.4:9000' // 琰培
|
// BASE_API = 'http://192.168.3.4:9000' // 琰培
|
||||||
} else {
|
} else {
|
||||||
BASE_API = process.env.VUE_APP_BASE_API;
|
BASE_API = process.env.VUE_APP_BASE_API;
|
||||||
|
@ -111,7 +111,7 @@ export default {
|
|||||||
width: '250',
|
width: '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: '加载任务',
|
name: '加载剧本',
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
handleClick: this.handleLoad
|
handleClick: this.handleLoad
|
||||||
}
|
}
|
||||||
|
@ -70,7 +70,7 @@ import MenuScript from '@/views/display/menuScript';
|
|||||||
import WindowResizeHandler from '@/mixin/WindowResizeHandler';
|
import WindowResizeHandler from '@/mixin/WindowResizeHandler';
|
||||||
import AddQuest from './demon/addQuest';
|
import AddQuest from './demon/addQuest';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import { getTrainingStepsDetail } from '@/api/jmap/training';
|
import { getTrainingDetail, getTrainingStepsDetail } from '@/api/jmap/training';
|
||||||
import { setGoodsTryUse } from '@/api/management/goods';
|
import { setGoodsTryUse } from '@/api/management/goods';
|
||||||
import { getProductDetail } from '@/api/management/mapprd';
|
import { getProductDetail } from '@/api/management/mapprd';
|
||||||
import { runDiagramQuit, loadScript, getSimulationInfo } from '@/api/simulation';
|
import { runDiagramQuit, loadScript, getSimulationInfo } from '@/api/simulation';
|
||||||
@ -169,6 +169,9 @@ export default {
|
|||||||
},
|
},
|
||||||
isDrive() {
|
isDrive() {
|
||||||
return this.$route.query.prdType == '04';
|
return this.$route.query.prdType == '04';
|
||||||
|
},
|
||||||
|
trainingId() {
|
||||||
|
return this.$route.query.trainingId;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@ -178,6 +181,14 @@ export default {
|
|||||||
'$store.state.map.mapViewLoadedCount': function (val) {
|
'$store.state.map.mapViewLoadedCount': function (val) {
|
||||||
this.mapBoxP = document.getElementById(this.canvasId).children[0];
|
this.mapBoxP = document.getElementById(this.canvasId).children[0];
|
||||||
this.mapBox = document.getElementsByTagName('canvas');
|
this.mapBox = document.getElementsByTagName('canvas');
|
||||||
|
|
||||||
|
if (this.trainingId) {
|
||||||
|
getTrainingStepsDetail(this.trainingId, { group: this.group }).then(resp => {
|
||||||
|
this.trainingObj = resp.data;
|
||||||
|
this.$store.dispatch('training/setTrainingData', this.trainingObj);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
'$store.state.socket.permissionOver': function () {
|
'$store.state.socket.permissionOver': function () {
|
||||||
this.$alert('用户权限已被收回', '提示', {
|
this.$alert('用户权限已被收回', '提示', {
|
||||||
@ -304,6 +315,7 @@ export default {
|
|||||||
async loadSimulationInfo() {
|
async loadSimulationInfo() {
|
||||||
const resp = await getSimulationInfo(this.group);
|
const resp = await getSimulationInfo(this.group);
|
||||||
if (resp && resp.code == 200) {
|
if (resp && resp.code == 200) {
|
||||||
|
this.$store.dispatch('scriptRecord/updateSimulationPause',resp.data.pause);
|
||||||
this.questId = Number(resp.data.questId) || 0;
|
this.questId = Number(resp.data.questId) || 0;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -343,18 +355,17 @@ export default {
|
|||||||
this.$store.dispatch('training/end', null);
|
this.$store.dispatch('training/end', null);
|
||||||
this.$store.dispatch('training/changeOperateMode', { mode: OperateMode.NORMAL }); // 默认为正常模式
|
this.$store.dispatch('training/changeOperateMode', { mode: OperateMode.NORMAL }); // 默认为正常模式
|
||||||
|
|
||||||
const trainingId = this.$route.query.trainingId;
|
if (parseInt(this.trainingId)) {
|
||||||
if (parseInt(trainingId)) {
|
|
||||||
// 设置地图数据
|
// 设置地图数据
|
||||||
// 设置实训数据
|
// 设置实训数据
|
||||||
const resp = await getTrainingStepsDetail(trainingId, { group: this.group });
|
const resp = await getTrainingDetail(this.trainingId);
|
||||||
if (resp && resp.code == 200) {
|
if (resp && resp.code == 200) {
|
||||||
const stepdData = this.trainingObj = resp.data;
|
const detail = resp.data;
|
||||||
const rest = await getProductDetail(stepdData.prdCode);
|
const rest = await getProductDetail(detail.prdCode);
|
||||||
if (rest && rest.code == 200) {
|
if (rest && rest.code == 200) {
|
||||||
await this.$store.dispatch('training/setPrdType', rest.data.prdType);
|
const data = rest.data;
|
||||||
await this.loadMapData(resp.data.skinCode);
|
await this.$store.dispatch('training/setPrdType', data.prdType);
|
||||||
await this.$store.dispatch('training/setTrainingData', stepdData);
|
await this.loadMapData(detail.skinCode);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.$messageBox(`获取实训步骤数据失败`);
|
this.$messageBox(`获取实训步骤数据失败`);
|
||||||
|
@ -65,7 +65,7 @@ export default {
|
|||||||
if (opt && opt.hasOwnProperty('color') && opt.hasOwnProperty('message')) {
|
if (opt && opt.hasOwnProperty('color') && opt.hasOwnProperty('message')) {
|
||||||
const h = this.$createElement;
|
const h = this.$createElement;
|
||||||
this.$notify({
|
this.$notify({
|
||||||
title: '提示',
|
title: this.$t('global.tips'),
|
||||||
message: h('i', { style: 'color:' + opt.color }, '请点击开始考试操作')
|
message: h('i', { style: 'color:' + opt.color }, '请点击开始考试操作')
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -101,6 +101,9 @@ export default {
|
|||||||
selectBeginTime() {
|
selectBeginTime() {
|
||||||
this.$refs.setTime.doShow();
|
this.$refs.setTime.doShow();
|
||||||
},
|
},
|
||||||
|
resetBeginTime(){
|
||||||
|
this.isDisable = false;
|
||||||
|
},
|
||||||
start(model) {
|
start(model) {
|
||||||
this.isDisable = true;
|
this.isDisable = true;
|
||||||
runDiagramStart(model, this.group).then(res => {
|
runDiagramStart(model, this.group).then(res => {
|
||||||
|
@ -2,43 +2,40 @@
|
|||||||
<div>
|
<div>
|
||||||
<el-form :model="modalData" ref="modalData" :rules="rules" label-width="100px" class="actionInfo" label-position="right">
|
<el-form :model="modalData" ref="modalData" :rules="rules" label-width="100px" class="actionInfo" label-position="right">
|
||||||
<el-form-item label="主体角色" class="conditionVO" prop="actionVO.memberId">
|
<el-form-item label="主体角色" class="conditionVO" prop="actionVO.memberId">
|
||||||
<el-select v-model="modalData.actionVO.memberId" placeholder="请选择主体角色">
|
<el-select v-model="modalData.actionVO.memberId" placeholder="请选择主体角色" :disabled="isPause&&isNotModify">
|
||||||
<el-option v-for="member in memberList" :key="member.id" :label="member.role+(member.name==undefined?'':member.name)" :value="member.id"></el-option>
|
<el-option v-for="member in memberList" :key="member.id" :label="member.role+(member.name==undefined?'':member.name)" :value="member.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item label="完成时间" class="conditionVO">
|
<el-form-item label="动作类型" class="conditionVO" prop="actionVO.type" >
|
||||||
<el-input-number v-model="modalData.actionVO.time " class="inputStyle" :min="0"></el-input-number>
|
<el-select v-model="modalData.actionVO.type " placeholder="请选择动作类型" @change="changeType" :disabled="deviceTypeReadOnly||isPause">
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item label="动作类型" class="conditionVO" prop="actionVO.type">
|
|
||||||
<el-select v-model="modalData.actionVO.type " placeholder="请选择动作类型" @change="changeType">
|
|
||||||
<el-option v-for="actionType in actionTypeList" :key="actionType.label" :label="actionType.label" :value="actionType.value"></el-option>
|
<el-option v-for="actionType in actionTypeList" :key="actionType.label" :label="actionType.label" :value="actionType.value"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="目标角色" class="conditionVO" prop="actionVO.targetId" v-if="isConversitionAdd">
|
<el-form-item label="目标角色" class="conditionVO" prop="actionVO.targetId" v-if="isConversitionAdd">
|
||||||
<el-select v-model="modalData.actionVO.targetId" placeholder="请选择目标角色">
|
<el-select v-model="modalData.actionVO.targetId" placeholder="请选择目标角色" :disabled="isPause&&isNotModify">
|
||||||
<el-option v-for="member in memberList" :key="member.id" :label="member.role+(member.name==undefined?'':member.name)" :value="member.id"></el-option>
|
<el-option v-for="member in memberList" :key="member.id" :label="member.role+(member.name==undefined?'':member.name)" :value="member.id"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="内容" class="conditionVO" prop="actionVO.reply" v-if="isConversitionAdd">
|
<el-form-item label="内容" class="conditionVO" prop="actionVO.reply" v-if="isConversitionAdd">
|
||||||
<el-input v-model="modalData.actionVO.reply" type="textarea" class="textareaStyle" rows="3"></el-input>
|
<el-input v-model="modalData.actionVO.reply" type="textarea" class="textareaStyle" rows="3" :disabled="isPause&&isNotModify"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="设备指令" class="conditionVO" prop="actionVO.type" v-if="isCommandAdd">
|
<el-form-item label="设备指令" class="conditionVO" prop="actionVO.deviceCommand" v-if="isCommandAdd">
|
||||||
<el-select v-model="modalData.actionVO.deviceCommand " placeholder="请选择设备指令" @change="changeCommand" class="inputStyle">
|
<el-select v-model="modalData.actionVO.deviceCommand " placeholder="请选择设备指令" @change="changeCommand" class="inputStyle" :disabled="isPause&&isModify">
|
||||||
<el-option v-for="deviceCommand in deviceCommandList" :key="deviceCommand.deviceCommand" :label="deviceCommand.label" :value="deviceCommand.deviceCommand"></el-option>
|
<el-option v-for="deviceCommand in deviceCommandList" :key="deviceCommand.deviceCommand" :label="deviceCommand.label" :value="deviceCommand.deviceCommand"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="起始站台" class="conditionVO" v-if="isJinLu" prop="param.startStation">
|
<el-form-item label="起始站台" class="conditionVO" v-if="isJinLu" prop="param.startStation">
|
||||||
<el-select v-model="modalData.param.startStation " placeholder="请选择起始站台" class="inputStyle">
|
<el-select v-model="modalData.param.startStation " placeholder="请选择起始站台" class="inputStyle" :disabled="isPause&&isNotModify">
|
||||||
<el-option v-for="station in stationList" :key="station.code" :label="station.name" :value="station.code"></el-option>
|
<el-option v-for="station in stationList" :key="station.code" :label="station.name" :value="station.code"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="终点站台" class="conditionVO" v-if="isJinLu" prop="param.endStation">
|
<el-form-item label="终点站台" class="conditionVO" v-if="isJinLu" prop="param.endStation">
|
||||||
<el-select v-model="modalData.param.endStation " placeholder="请选择终点站台" class="inputStyle">
|
<el-select v-model="modalData.param.endStation " placeholder="请选择终点站台" class="inputStyle" :disabled="isPause&&isNotModify">
|
||||||
<el-option v-for="station in stationList" :key="station.code" :label="station.name" :value="station.code"></el-option>
|
<el-option v-for="station in stationList" :key="station.code" :label="station.name" :value="station.code"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" @click="addScriptActionInfo('modalData')">{{buttonName}}</el-button>
|
<el-button type="primary" @click="addScriptActionInfo('modalData')" :disabled="isPause&&isNotModify" :loading="modifying">{{buttonName}}</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
@ -74,7 +71,16 @@
|
|||||||
{
|
{
|
||||||
this.initData();
|
this.initData();
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
|
'$store.state.map.mapViewLoadedCount': function (val) {
|
||||||
|
Vue.prototype.$jlmap.setOptions(this.$store.state.scriptRecord.mapLocation);
|
||||||
|
this.isPause=!(this.$store.state.scriptRecord.simulationPause);
|
||||||
|
this.$parent.$parent.$parent.setIsParse(this.isPause);
|
||||||
|
},
|
||||||
|
'$store.state.scriptRecord.simulationPause': function(val){
|
||||||
|
this.isPause=!(this.$store.state.scriptRecord.simulationPause);
|
||||||
|
this.$parent.$parent.$parent.setIsParse(this.isPause);
|
||||||
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -82,7 +88,6 @@
|
|||||||
actionVO:{
|
actionVO:{
|
||||||
memberId:"",
|
memberId:"",
|
||||||
targetId:"",
|
targetId:"",
|
||||||
// time:0,
|
|
||||||
reply:"",
|
reply:"",
|
||||||
type:"Conversation",
|
type:"Conversation",
|
||||||
deviceCommand:"",
|
deviceCommand:"",
|
||||||
@ -93,6 +98,10 @@
|
|||||||
endStation:"",
|
endStation:"",
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
deviceTypeReadOnly:false,
|
||||||
|
isPause:false,
|
||||||
|
isNotModify:true,
|
||||||
|
modifying:false,
|
||||||
isConversitionAdd:true,
|
isConversitionAdd:true,
|
||||||
isCommandAdd:false,
|
isCommandAdd:false,
|
||||||
actionTypeList:DeviceTypeDic.ConstSelect.actionType,
|
actionTypeList:DeviceTypeDic.ConstSelect.actionType,
|
||||||
@ -163,15 +172,17 @@
|
|||||||
{this.modalData.actionVO.commandParamList=[this.modalData.param.startStation,this.modalData.param.endStation];}
|
{this.modalData.actionVO.commandParamList=[this.modalData.param.startStation,this.modalData.param.endStation];}
|
||||||
let data=this.modalData.actionVO;
|
let data=this.modalData.actionVO;
|
||||||
let obj=this;
|
let obj=this;
|
||||||
|
this.modifying=true;
|
||||||
if(this.$props.operateType=="add")
|
if(this.$props.operateType=="add")
|
||||||
{
|
{
|
||||||
addScriptAction(group,data).then(response=>{
|
addScriptAction(group,data).then(response=>{
|
||||||
this.initActionData();
|
this.modifying=false;
|
||||||
this.$message.success('添加动作成功');
|
this.$message.success('添加动作成功');
|
||||||
this.$emit('create');
|
this.$emit('create');
|
||||||
this.resetDisabled();
|
// this.resetDisabled();
|
||||||
|
this.initActionData();
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
this.modifying=false;
|
||||||
this.$messageBox(`添加动作失败: ${error.message}`);
|
this.$messageBox(`添加动作失败: ${error.message}`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -179,12 +190,17 @@
|
|||||||
{
|
{
|
||||||
let actionId=this.modalData.actionVO.id;
|
let actionId=this.modalData.actionVO.id;
|
||||||
modifyScriptAction(group,actionId,data).then(response=>{
|
modifyScriptAction(group,actionId,data).then(response=>{
|
||||||
this.initActionData();
|
this.modifying=false;
|
||||||
|
|
||||||
|
this.isNotModify=true;
|
||||||
|
this.$parent.$parent.$parent.setDisabled(this.isNotModify);
|
||||||
this.$emit('modifyButtonName');
|
this.$emit('modifyButtonName');
|
||||||
this.$message.success('修改动作成功');
|
this.$message.success('修改动作成功');
|
||||||
this.$emit('create');
|
this.$emit('create');
|
||||||
this.resetDisabled();
|
// this.resetDisabled();
|
||||||
|
this.initActionData();
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
|
this.modifying=false;
|
||||||
this.$messageBox(`修改动作失败: ${error.message}`);
|
this.$messageBox(`修改动作失败: ${error.message}`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -199,6 +215,19 @@
|
|||||||
if(this.$refs['modalData'])
|
if(this.$refs['modalData'])
|
||||||
{
|
{
|
||||||
this.$refs['modalData'].resetFields();
|
this.$refs['modalData'].resetFields();
|
||||||
|
// this.$nextTick(function(){
|
||||||
|
this.deviceTypeReadOnly=false;
|
||||||
|
// this.modalData.actionVO.type="Conversation";
|
||||||
|
// this.modalData.actionVO.memberId="";
|
||||||
|
// this.modalData.actionVO.targetId="";
|
||||||
|
// this.modalData.actionVO.deviceCommand="";
|
||||||
|
// this.modalData.actionVO.reply="";
|
||||||
|
// this.modalData.param.startStation="";
|
||||||
|
this.isConversitionAdd=true;
|
||||||
|
this.isCommandAdd=false;
|
||||||
|
this.isJinLu=false;
|
||||||
|
// this.modalData.param.endStation="";
|
||||||
|
// });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
clearValidate(){
|
clearValidate(){
|
||||||
@ -208,18 +237,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
initActionData(){
|
initActionData(){
|
||||||
// debugger;
|
this.resetDisabled();
|
||||||
this.modalData.actionVO.memberId="";
|
|
||||||
this.modalData.actionVO.targetId="";
|
|
||||||
this.modalData.actionVO.type="Conversation";
|
|
||||||
// this.modalData.actionVO.time=0;
|
|
||||||
this.modalData.actionVO.reply="";
|
|
||||||
this.modalData.param.startStation="";
|
|
||||||
this.isConversitionAdd=true;
|
|
||||||
this.isCommandAdd=false;
|
|
||||||
this.isJinLu=false;
|
|
||||||
this.modalData.actionVO.deviceCommand=null;
|
|
||||||
this.modalData.param.endStation="";
|
|
||||||
},
|
},
|
||||||
changeType(index){
|
changeType(index){
|
||||||
switch(index)
|
switch(index)
|
||||||
@ -254,6 +272,7 @@
|
|||||||
|
|
||||||
},
|
},
|
||||||
changeCommand(index){
|
changeCommand(index){
|
||||||
|
this.modalData.actionVO.deviceCommand
|
||||||
switch(index)
|
switch(index)
|
||||||
{
|
{
|
||||||
case "Train_Manual_Route_Blocking_Drive":{
|
case "Train_Manual_Route_Blocking_Drive":{
|
||||||
@ -273,14 +292,18 @@
|
|||||||
doShow(data){
|
doShow(data){
|
||||||
if(data)
|
if(data)
|
||||||
{
|
{
|
||||||
// debugger;
|
this.clearValidate();
|
||||||
|
this.isNotModify=false;
|
||||||
|
this.$parent.$parent.$parent.setDisabled(this.isNotModify);
|
||||||
this.initData();
|
this.initData();
|
||||||
this.modalData.actionVO.id=data.id;
|
this.modalData.actionVO.id=data.id;
|
||||||
this.modalData.actionVO.memberId=data.memberId;
|
this.modalData.actionVO.memberId=data.memberId;
|
||||||
this.modalData.actionVO.type=data.type;
|
this.modalData.actionVO.type=data.type;
|
||||||
|
this.deviceTypeReadOnly=true;
|
||||||
// this.modalData.actionVO.time=data.time;
|
// this.modalData.actionVO.time=data.time;
|
||||||
if(data.type=="Conversation")
|
if(data.type=="Conversation")
|
||||||
{
|
{
|
||||||
|
this.isJinLu=false;
|
||||||
this.modalData.actionVO.targetId=data.targetId;
|
this.modalData.actionVO.targetId=data.targetId;
|
||||||
this.isConversitionAdd=true;
|
this.isConversitionAdd=true;
|
||||||
this.isCommandAdd=false;
|
this.isCommandAdd=false;
|
||||||
@ -288,6 +311,7 @@
|
|||||||
}
|
}
|
||||||
else if(data.type=="Command")
|
else if(data.type=="Command")
|
||||||
{
|
{
|
||||||
|
this.isJinLu=false;
|
||||||
this.isConversitionAdd=false;
|
this.isConversitionAdd=false;
|
||||||
this.isCommandAdd=true;
|
this.isCommandAdd=true;
|
||||||
this.modalData.actionVO.reply="";
|
this.modalData.actionVO.reply="";
|
||||||
@ -312,10 +336,10 @@
|
|||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
}
|
}
|
||||||
.actionInfo{
|
.actionInfo{
|
||||||
margin-top:20px;
|
margin-top:10px;
|
||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
width:98%;
|
// width:98%;
|
||||||
}
|
}
|
||||||
.inputStyle{
|
.inputStyle{
|
||||||
width:300px;
|
width:300px;
|
||||||
|
@ -6,43 +6,24 @@
|
|||||||
<div class="tab-pane-big">
|
<div class="tab-pane-big">
|
||||||
<el-scrollbar wrapClass="scrollbar-wrapper" ref="elActionScrollbar">
|
<el-scrollbar wrapClass="scrollbar-wrapper" ref="elActionScrollbar">
|
||||||
<add-action ref="addBehavior" :group="group" @create="create" :buttonName="buttonName" :operateType="operateType" @modifyButtonName="modifyButtonName" class="addScript"></add-action>
|
<add-action ref="addBehavior" :group="group" @create="create" :buttonName="buttonName" :operateType="operateType" @modifyButtonName="modifyButtonName" class="addScript"></add-action>
|
||||||
|
<div class="vertialLine"></div>
|
||||||
<div class="block actionListTable">
|
<div class="block actionListTable">
|
||||||
<el-timeline :reverse="reverse">
|
<el-timeline :reverse="reverse">
|
||||||
<el-timeline-item v-for="(actionInfo,index) in actionInfoList" :key="index">
|
<el-timeline-item v-for="(actionInfo,index) in actionInfoList" :key="index">
|
||||||
<el-card>
|
<el-card>
|
||||||
<div class="actionTable">
|
<div class="actionTable">
|
||||||
<span class="detail" v-html="actionInfo.detail">
|
<span class="detail" v-html="actionInfo.detail">
|
||||||
<!-- <span class="actionColor"></span> -->
|
|
||||||
</span>
|
</span>
|
||||||
<span class="otherInfo">{{actionInfo.otherInfo}}</span>
|
<span class="otherInfo">{{actionInfo.otherInfo}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnGroup">
|
<div class="btnGroup">
|
||||||
<el-button type="primary" size="mini" style="margin-left:10px;" @click="modifyAction(actionInfo.row)">修改</el-button>
|
<el-button type="primary" size="mini" style="margin-left:10px;" @click="modifyAction(actionInfo.row)" :disabled="actionInfo.disabled">修改</el-button>
|
||||||
<el-button type="danger" size="mini" @click="deleteAction(actionInfo.id)">删除</el-button>
|
<!-- <el-button type="danger" size="mini" @click="deleteAction(actionInfo.id)">删除</el-button> -->
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
</el-timeline>
|
</el-timeline>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- <el-table
|
|
||||||
v-loading="loading"
|
|
||||||
:data="actionList" border class="actionListTable">
|
|
||||||
<el-table-column prop="reply" label="内容" width="200">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="time" label="完成时间" width="200">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="type" label="动作类型" width="200">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" width="200">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<el-row>
|
|
||||||
<el-button type="primary" size="mini" @click="modifyAction(scope.row)">修改</el-button>
|
|
||||||
<el-button type="primary" size="mini" @click="deleteAction(scope.row)">删除</el-button>
|
|
||||||
</el-row>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table> -->
|
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -77,13 +58,11 @@
|
|||||||
AddAction,
|
AddAction,
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted(){
|
||||||
this.loadInitData(this.$route.query);
|
this.loadInitData();
|
||||||
// this.memberName=this.$store.state.scriptRecord.memberName;
|
|
||||||
// this.behaviorName=this.$store.state.scriptRecord.behaviorName;
|
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
loadInitData(obj) {
|
loadInitData() {
|
||||||
let group=obj.group;
|
let group=this.$route.query.group;
|
||||||
getAvailableDeviceCommand().then(response=>{
|
getAvailableDeviceCommand().then(response=>{
|
||||||
this.deviceCommandList=response.data;
|
this.deviceCommandList=response.data;
|
||||||
this.loadOtherData(this.$route.query);
|
this.loadOtherData(this.$route.query);
|
||||||
@ -101,7 +80,6 @@
|
|||||||
});
|
});
|
||||||
memberVOList=JSON.parse(memberVOList);
|
memberVOList=JSON.parse(memberVOList);
|
||||||
let actionList=response.data.actionVOList;
|
let actionList=response.data.actionVOList;
|
||||||
// actionList=actionList.reverse();
|
|
||||||
actionList.forEach(element => {
|
actionList.forEach(element => {
|
||||||
let member=memberVOList.find(elem=>{return elem.id==element.memberId});
|
let member=memberVOList.find(elem=>{return elem.id==element.memberId});
|
||||||
let memberName=member.name==undefined?"":" - "+member.name;
|
let memberName=member.name==undefined?"":" - "+member.name;
|
||||||
@ -111,7 +89,7 @@
|
|||||||
{
|
{
|
||||||
let target=memberVOList.find(elem=>{return elem.id==element.targetId});
|
let target=memberVOList.find(elem=>{return elem.id==element.targetId});
|
||||||
let targetName=target.name==undefined?"":" - "+target.name;
|
let targetName=target.name==undefined?"":" - "+target.name;
|
||||||
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>"+" 对 "+"<span style='color:#409EFF'>"+target.role+targetName+"</span>:",otherInfo:element.reply,row:element});
|
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>"+" 对 "+"<span style='color:#409EFF'>"+target.role+targetName+"</span>:",otherInfo:element.reply,row:element,disabled:false});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "Command":
|
case "Command":
|
||||||
@ -121,12 +99,12 @@
|
|||||||
{
|
{
|
||||||
case 'Train_Manual_Route_Blocking_Drive':
|
case 'Train_Manual_Route_Blocking_Drive':
|
||||||
{
|
{
|
||||||
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>执行指令 :",otherInfo:deviceCommand.label,row:element});
|
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>执行指令 :",otherInfo:deviceCommand.label,row:element,disabled:true});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 'Train_Manual_Limit_Drive':
|
case 'Train_Manual_Limit_Drive':
|
||||||
{
|
{
|
||||||
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>执行指令 : ",otherInfo:deviceCommand.label,row:element});
|
this.actionInfoList.push({id:element.id,detail:"<span style='color:#409EFF'>"+member.role+memberName+"</span>执行指令 : ",otherInfo:deviceCommand.label,row:element,disabled:true});
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
@ -137,7 +115,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// this.actionList=response.data.actionVOList;
|
|
||||||
if(response.data.mapLocation)
|
if(response.data.mapLocation)
|
||||||
{
|
{
|
||||||
let mapLocation={"offsetX":response.data.mapLocation.x,"offsetY":response.data.mapLocation.y,"scaleRate":response.data.mapLocation.scale};
|
let mapLocation={"offsetX":response.data.mapLocation.x,"offsetY":response.data.mapLocation.y,"scaleRate":response.data.mapLocation.scale};
|
||||||
@ -156,7 +133,7 @@
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
reloadTable(){
|
reloadTable(){
|
||||||
this.loadInitData(this.$route.query);
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
create(){
|
create(){
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
@ -215,5 +192,11 @@
|
|||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
.vertialLine{
|
||||||
|
height: 380px;
|
||||||
|
margin-left: 440px;
|
||||||
|
border-right: 1px #dadada solid;
|
||||||
|
position: fixed;
|
||||||
|
width: 0px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -140,10 +140,8 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
if (obj) {
|
if (obj) {
|
||||||
const that = this;
|
getTrainingDetail(obj.trainingId ).then(res => {
|
||||||
const data = { id: obj.trainingId };
|
this.courseModel = {
|
||||||
getTrainingDetail(data).then(res => {
|
|
||||||
that.courseModel = {
|
|
||||||
id: res.data.id,
|
id: res.data.id,
|
||||||
name: res.data.name,
|
name: res.data.name,
|
||||||
maxDuration: res.data.maxDuration,
|
maxDuration: res.data.maxDuration,
|
||||||
@ -152,7 +150,7 @@ export default {
|
|||||||
updateTime: res.data.updateTime
|
updateTime: res.data.updateTime
|
||||||
};
|
};
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
that.$message.error('获取试题息失败:' + error.message);
|
this.$message.error('获取试题息失败:' + error.message);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,9 +13,14 @@
|
|||||||
<div>
|
<div>
|
||||||
<get-action ref="getAction" :group="group"></get-action>
|
<get-action ref="getAction" :group="group"></get-action>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- <el-button-group class="button-group1"> -->
|
||||||
|
|
||||||
|
<!-- </el-button-group> -->
|
||||||
<el-button-group class="button-group">
|
<el-button-group class="button-group">
|
||||||
<el-button type="danger" @click="dumpScenesData">重置剧本</el-button>
|
<el-button type="primary" @click="pauseScript" v-if="isPause" :disabled="executeDisabled">暂停</el-button>
|
||||||
|
<el-button type="primary" @click="executePlayScript" v-else :disabled="executeDisabled">恢复并执行</el-button>
|
||||||
<el-button type="primary" @click="saveMaplocation">{{$t('scriptRecord.saveMaplocation')}}</el-button>
|
<el-button type="primary" @click="saveMaplocation">{{$t('scriptRecord.saveMaplocation')}}</el-button>
|
||||||
|
<el-button type="danger" @click="dumpScenesData">重置剧本</el-button>
|
||||||
<el-button type="primary" @click="saveScenesStage">{{$t('scriptRecord.saveBackground')}}</el-button>
|
<el-button type="primary" @click="saveScenesStage">{{$t('scriptRecord.saveBackground')}}</el-button>
|
||||||
<el-button type="success" @click="saveScenesData" :loading="isSavingScript" >{{$t('scriptRecord.saveData')}}</el-button>
|
<el-button type="success" @click="saveScenesData" :loading="isSavingScript" >{{$t('scriptRecord.saveData')}}</el-button>
|
||||||
<!-- 暂停 -->
|
<!-- 暂停 -->
|
||||||
@ -29,7 +34,7 @@
|
|||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import GetAction from './scriptRecord/getAction';
|
import GetAction from './scriptRecord/getAction';
|
||||||
import { launchFullscreen, exitFullscreen } from '@/utils/screen';
|
import { launchFullscreen, exitFullscreen } from '@/utils/screen';
|
||||||
import {saveScriptScenes, saveScriptData, dumpScriptData,updateMapLocation} from '@/api/simulation';
|
import {saveScriptScenes, saveScriptData, dumpScriptData,updateMapLocation,scriptPause,executeScript} from '@/api/simulation';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'TipScriptRecord',
|
name: 'TipScriptRecord',
|
||||||
@ -50,14 +55,11 @@
|
|||||||
mapLocation:{},
|
mapLocation:{},
|
||||||
autoSaveScript: null,
|
autoSaveScript: null,
|
||||||
isSavingScript:false,
|
isSavingScript:false,
|
||||||
|
isPause:false,
|
||||||
|
executeDisabled:false,
|
||||||
// isSaveStage: true,
|
// isSaveStage: true,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
|
||||||
'$store.state.map.mapViewLoadedCount': function (val) {
|
|
||||||
Vue.prototype.$jlmap.setOptions(this.$store.state.scriptRecord.mapLocation);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
created() {
|
||||||
},
|
},
|
||||||
mounted(){
|
mounted(){
|
||||||
@ -83,6 +85,13 @@
|
|||||||
this.isShrink = true;
|
this.isShrink = true;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
setIsParse(isPause){
|
||||||
|
this.isPause=isPause;
|
||||||
|
},
|
||||||
|
setDisabled(data)
|
||||||
|
{
|
||||||
|
this.executeDisabled=!data;
|
||||||
|
},
|
||||||
initAutoSaveScript() {
|
initAutoSaveScript() {
|
||||||
const timeout = 1000 * 20;
|
const timeout = 1000 * 20;
|
||||||
this.clearAutoSave(this.autoSaveScript);
|
this.clearAutoSave(this.autoSaveScript);
|
||||||
@ -94,13 +103,25 @@
|
|||||||
this.autoSaveScript = null;
|
this.autoSaveScript = null;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// getActions(row){
|
pauseScript(){
|
||||||
// this.displayType="action";
|
scriptPause(this.group).then(resp => {
|
||||||
// this.behaviorId=row.id;
|
// this.isSaveStage = false;
|
||||||
// this.$store.dispatch('scriptRecord/updateBehaviorName',row.description);
|
this.$store.dispatch('scriptRecord/updateSimulationPause',true);
|
||||||
// },
|
// this.$message.success('暂停成功');
|
||||||
|
}).catch(error => {
|
||||||
|
this.$messageBox('暂停失败!');
|
||||||
|
});
|
||||||
|
},
|
||||||
|
executePlayScript(){
|
||||||
|
executeScript(this.group).then(resp => {
|
||||||
|
// this.isSaveStage = false;
|
||||||
|
this.$store.dispatch('scriptRecord/updateSimulationPause',false);
|
||||||
|
// this.$message.success('暂停成功');
|
||||||
|
}).catch(error => {
|
||||||
|
this.$messageBox('恢复失败!');
|
||||||
|
});
|
||||||
|
},
|
||||||
saveScenesStage() {
|
saveScenesStage() {
|
||||||
|
|
||||||
saveScriptScenes(this.group).then(resp => {
|
saveScriptScenes(this.group).then(resp => {
|
||||||
// this.isSaveStage = false;
|
// this.isSaveStage = false;
|
||||||
this.$message.success('保存背景成功');
|
this.$message.success('保存背景成功');
|
||||||
@ -125,6 +146,7 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
dumpScenesData() {
|
dumpScenesData() {
|
||||||
|
this.clearAutoSave();
|
||||||
let group=this.group;
|
let group=this.group;
|
||||||
this.$confirm('此操作将会清除已保存的编制数据, 是否继续?', '提示', {
|
this.$confirm('此操作将会清除已保存的编制数据, 是否继续?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
@ -133,11 +155,16 @@
|
|||||||
}).then(() => {
|
}).then(() => {
|
||||||
dumpScriptData(group).then(resp => {
|
dumpScriptData(group).then(resp => {
|
||||||
// this.isSaveStage = true;
|
// this.isSaveStage = true;
|
||||||
|
this.$parent.resetBeginTime();
|
||||||
|
this.$refs["getAction"].loadInitData();
|
||||||
|
this.initAutoSaveScript();
|
||||||
this.$message.success('清除数据成功');
|
this.$message.success('清除数据成功');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
this.$messageBox('清除数据失败!');
|
this.$messageBox('清除数据失败!');
|
||||||
})
|
})
|
||||||
}).catch(error => { })
|
}).catch(error => {
|
||||||
|
this.initAutoSaveScript();
|
||||||
|
})
|
||||||
},
|
},
|
||||||
saveMaplocation()
|
saveMaplocation()
|
||||||
{
|
{
|
||||||
@ -205,6 +232,11 @@
|
|||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
float:right;
|
float:right;
|
||||||
}
|
}
|
||||||
|
.button-group1{
|
||||||
|
margin-top:15px;
|
||||||
|
margin-left: 20px;
|
||||||
|
float:left;
|
||||||
|
}
|
||||||
.actionInfo{
|
.actionInfo{
|
||||||
margin-top:30px;
|
margin-top:30px;
|
||||||
}
|
}
|
||||||
|
@ -78,9 +78,9 @@ export default {
|
|||||||
this.height = this._clientHeight;
|
this.height = this._clientHeight;
|
||||||
},
|
},
|
||||||
initLoadPage() {
|
initLoadPage() {
|
||||||
const data = { id: this.$route.query.trainingId };
|
const trainingId = this.$route.query.trainingId;
|
||||||
if (parseInt(data.id)) {
|
if (parseInt(trainingId)) {
|
||||||
getTrainingDetail(data).then(res => {
|
getTrainingDetail(trainingId).then(res => {
|
||||||
this.courseModel = {
|
this.courseModel = {
|
||||||
id: res.data.id,
|
id: res.data.id,
|
||||||
name: res.data.name,
|
name: res.data.name,
|
||||||
|
@ -210,7 +210,7 @@ export default {
|
|||||||
|
|
||||||
this.operateModel.id = node.data.id;
|
this.operateModel.id = node.data.id;
|
||||||
this.operateModel.name = node.data.name;
|
this.operateModel.name = node.data.name;
|
||||||
getTrainingDetail({ id: node.data.id }).then(response => {
|
getTrainingDetail(node.data.id).then(response => {
|
||||||
this.operateModel.minDuration = response.data.minDuration;
|
this.operateModel.minDuration = response.data.minDuration;
|
||||||
this.operateModel.maxDuration = response.data.maxDuration;
|
this.operateModel.maxDuration = response.data.maxDuration;
|
||||||
this.operateModel.operateType = response.data.operateType;
|
this.operateModel.operateType = response.data.operateType;
|
||||||
|
@ -47,7 +47,6 @@ export default {
|
|||||||
},
|
},
|
||||||
$route() {
|
$route() {
|
||||||
this.resizeHandler();
|
this.resizeHandler();
|
||||||
this.$;
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
import MapSystemDraft from '@/views/mapsystem/index';
|
import MapSystemDraft from '@/views/mapsystem/index';
|
||||||
import StepManage from './stepmanage/index';
|
import StepManage from './stepmanage/index';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import { getTrainingStepsDetail } from '@/api/jmap/training';
|
import { getTrainingDetail, getTrainingStepsDetail } from '@/api/jmap/training';
|
||||||
import { getProductDetail } from '@/api/management/mapprd';
|
import { getProductDetail } from '@/api/management/mapprd';
|
||||||
import { TrainingMode, OperateMode } from '@/scripts/ConstDic';
|
import { TrainingMode, OperateMode } from '@/scripts/ConstDic';
|
||||||
import { loadMapData } from '@/utils/loaddata';
|
import { loadMapData } from '@/utils/loaddata';
|
||||||
@ -38,11 +38,27 @@ export default {
|
|||||||
...mapGetters('map', [
|
...mapGetters('map', [
|
||||||
'mapData',
|
'mapData',
|
||||||
'mapDeviceStatus'
|
'mapDeviceStatus'
|
||||||
])
|
]),
|
||||||
|
group() {
|
||||||
|
return this.$route.query.group;
|
||||||
|
},
|
||||||
|
trainingId() {
|
||||||
|
return this.$route.params.trainingId;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
$route(newVal) {
|
$route(newVal) {
|
||||||
this.initLoadData();
|
this.initLoadData();
|
||||||
|
},
|
||||||
|
'$store.state.map.mapViewLoadedCount': function() {
|
||||||
|
if (this.trainingId) {
|
||||||
|
getTrainingStepsDetail(this.trainingId, { group: this.group }).then(response => {
|
||||||
|
this.$store.dispatch('training/setTrainingData', response.data);
|
||||||
|
}).catch(() => {
|
||||||
|
this.$messageBox(this.$t('error.getMapStepsFailed'));
|
||||||
|
this.endViewLoading();
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -66,27 +82,24 @@ export default {
|
|||||||
this.$store.dispatch('training/reset');
|
this.$store.dispatch('training/reset');
|
||||||
this.$store.dispatch('training/changeOperateMode', { mode: OperateMode.NORMAL }); // 默认为正常模式
|
this.$store.dispatch('training/changeOperateMode', { mode: OperateMode.NORMAL }); // 默认为正常模式
|
||||||
|
|
||||||
const trainingId = this.$route.params.trainingId;
|
if (parseInt(this.trainingId)) {
|
||||||
const group = this.$route.query.group;
|
this.trainingObj = { id: this.trainingId, name: this.$route.params.trainingName };
|
||||||
if (parseInt(trainingId)) {
|
|
||||||
this.trainingObj = { id: trainingId, name: this.$route.params.trainingName };
|
|
||||||
// 获取实训的详细数据
|
// 获取实训的详细数据
|
||||||
// 加载地图数据
|
// 加载地图数据
|
||||||
// 设置实训数据
|
// 设置实训数据
|
||||||
|
getTrainingDetail(this.trainingId).then(resp => {
|
||||||
getTrainingStepsDetail(trainingId, { group }).then(response => {
|
const detail = resp.data;
|
||||||
const stepdData = response.data;
|
getProductDetail(detail.prdCode).then(rest => {
|
||||||
getProductDetail(stepdData.prdCode).then(res => {
|
const data = rest.data;
|
||||||
loadMapData(stepdData.skinCode).then(() => {
|
loadMapData(detail.skinCode).then(() => {
|
||||||
this.$store.dispatch('training/setPrdType', res.data.prdType);
|
this.$store.dispatch('training/setPrdType', data.prdType);
|
||||||
this.$store.dispatch('training/setTrainingData', stepdData);
|
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('error.loadMapDataFailed'));
|
this.$messageBox(this.$t('error.loadMapDataFailed'));
|
||||||
this.endViewLoading();
|
this.endViewLoading();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('error.getMapStepsFailed'));
|
this.$messageBox(this.$t('error.getMapDetailFailed'));
|
||||||
this.endViewLoading();
|
this.endViewLoading();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
@ -40,12 +40,12 @@ export default {
|
|||||||
const form = {
|
const form = {
|
||||||
labelWidth: '60px',
|
labelWidth: '60px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'code', label: '编码', type: 'text', required: true, disabled: !isAdd },
|
{ prop: 'code', label: this.$t('system.code'), type: 'text', required: true, disabled: !isAdd },
|
||||||
{ prop: 'name', label: '名称', type: 'text', required: true },
|
{ prop: 'name', label: this.$t('system.name'), type: 'text', required: true },
|
||||||
{
|
{
|
||||||
prop: 'status', label: '状态', type: 'select', required: true, options: this.$ConstSelect.Status
|
prop: 'status', label: this.$t('system.status'), type: 'select', required: true, options: this.$ConstSelect.Status
|
||||||
},
|
},
|
||||||
{ prop: 'remarks', label: '备注', type: 'textarea', required: false }
|
{ prop: 'remarks', label: this.$t('system.remarks'), type: 'textarea', required: false }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -53,21 +53,21 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: '请输入名称', trigger: 'blur' },
|
{ required: true, message: this.$t('rules.pleaseInputName'), trigger: 'blur' },
|
||||||
{ min: 1, max: 25, message: '长度在 1 到 25 个字符', trigger: 'blur' }
|
{ min: 1, max: 25, message: this.$t('rules.strLength1To25'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
status: [
|
status: [
|
||||||
{ required: true, message: '请选择状态', trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectStatus'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
remarks: [
|
remarks: [
|
||||||
{ max: 50, message: '不能超过 50 个字符', trigger: 'blur' }
|
{ max: 50, message: this.$t('rules.strLengthNotExceed50'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
if (this.type === 'ADD') {
|
if (this.type === 'ADD') {
|
||||||
return Object.assign(crules, {
|
return Object.assign(crules, {
|
||||||
code: [
|
code: [
|
||||||
{ required: true, message: '请输入编码', trigger: 'blur' },
|
{ required: true, message: this.$t('rules.pleaseInputCode'), trigger: 'blur' },
|
||||||
{ min: 1, max: 25, message: '长度在 1 到 25 个字符', trigger: 'blur' },
|
{ min: 1, max: 25, message: this.$t('rules.strLength1To25'), trigger: 'blur' },
|
||||||
{ validator: this.validateCode, trigger: 'blur' }
|
{ validator: this.validateCode, trigger: 'blur' }
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
@ -77,25 +77,25 @@ export default {
|
|||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
if (this.type === 'ADD') {
|
if (this.type === 'ADD') {
|
||||||
return '创建明细';
|
return this.$t('system.createDetail');
|
||||||
} else {
|
} else {
|
||||||
return '编辑明细';
|
return this.$t('system.editDetail');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
validateCode(rule, value, callback) {
|
validateCode(rule, value, callback) {
|
||||||
if (!validateCharCode(value)) {
|
if (!validateCharCode(value)) {
|
||||||
return callback(new Error('格式不正确,只能是字符/数字/_'));
|
return callback(new Error(this.$t('error.formartError')));
|
||||||
} else {
|
} else {
|
||||||
checkDicDetailCodeExist(this.dicId, value).then(response => {
|
checkDicDetailCodeExist(this.dicId, value).then(response => {
|
||||||
if (response.data) {
|
if (response.data) {
|
||||||
return callback(new Error('编码已存在'));
|
return callback(new Error(this.$t('error.codeHasExist')));
|
||||||
} else {
|
} else {
|
||||||
return callback();
|
return callback();
|
||||||
}
|
}
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
return callback(new Error('服务异常'));
|
return callback(new Error(this.$t('error.serviceException')));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -121,21 +121,21 @@ export default {
|
|||||||
create() {
|
create() {
|
||||||
const self = this;
|
const self = this;
|
||||||
create(this.dicId, this.formModel).then(response => {
|
create(this.dicId, this.formModel).then(response => {
|
||||||
self.$message.success('创建字典目录成功');
|
self.$message.success(this.$t('system.createSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('创建字典目录失败:' + error.message);
|
self.$message.error(`${this.$t('error.createDetailFailed')}:${error.message}`);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
update() {
|
update() {
|
||||||
const self = this;
|
const self = this;
|
||||||
update(this.dicId, this.formModel).then(response => {
|
update(this.dicId, this.formModel).then(response => {
|
||||||
self.$message.success('更新字典目录成功');
|
self.$message.success(this.$t('system.updateSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('更新字典目录失败:' + error.message);
|
self.$message.error(`${this.$t('error.updateDetailFailed')}:${error.message}`);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -19,7 +19,7 @@ export default {
|
|||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '100px',
|
labelWidth: '130px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
group: {
|
group: {
|
||||||
@ -28,29 +28,29 @@ export default {
|
|||||||
},
|
},
|
||||||
userName: {
|
userName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('system.username')
|
label: this.$t('system.userName')
|
||||||
},
|
},
|
||||||
mobile: {
|
mobile: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('system.phoneNumber')
|
label: this.$t('system.mobile')
|
||||||
},
|
},
|
||||||
skinCode: {
|
skinCode: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '皮肤编号',
|
label: this.$t('system.skinCode'),
|
||||||
config: {
|
config: {
|
||||||
data: this.$ConstSelect.skinCode
|
data: this.$ConstSelect.skinCode
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
prdType: {
|
prdType: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '产品类型',
|
label: this.$t('system.prdType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
type: {
|
type: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '仿真类型',
|
label: this.$t('system.simulationType'),
|
||||||
config: {
|
config: {
|
||||||
data: this.$ConstSelect.SimulationType
|
data: this.$ConstSelect.SimulationType
|
||||||
}
|
}
|
||||||
@ -64,11 +64,11 @@ export default {
|
|||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: '用户名称',
|
title: this.$t('system.userName'),
|
||||||
prop: 'creator.name'
|
prop: 'creator.name'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '用户电话',
|
title: this.$t('system.mobile'),
|
||||||
prop: 'creator.mobile'
|
prop: 'creator.mobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -76,7 +76,7 @@ export default {
|
|||||||
prop: 'group'
|
prop: 'group'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '是否错误',
|
title: this.$t('system.isError'),
|
||||||
prop: 'error',
|
prop: 'error',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.error, 'Whether'); },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.error, 'Whether'); },
|
||||||
@ -88,11 +88,11 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '产品',
|
title: this.$t('system.productName'),
|
||||||
prop: 'mapPrdVO.name'
|
prop: 'mapPrdVO.name'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '是否暂停',
|
title: this.$t('system.isSuspend'),
|
||||||
prop: 'pause',
|
prop: 'pause',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.pause, 'Whether'); },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.pause, 'Whether'); },
|
||||||
@ -104,7 +104,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '是否按计划行车',
|
title: this.$t('system.isDrivingAsplanned'),
|
||||||
prop: 'runAsPlan',
|
prop: 'runAsPlan',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.runAsPlan, 'Whether'); },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.runAsPlan, 'Whether'); },
|
||||||
@ -116,21 +116,21 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '皮肤编号',
|
title: this.$t('system.skinCode'),
|
||||||
prop: 'skinCode',
|
prop: 'skinCode',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.skinCode, this.$ConstSelect.skinCode, ['value', 'label']); },
|
columnValue: (row) => { return this.$convertField(row.skinCode, this.$ConstSelect.skinCode, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success'; }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '仿真类型',
|
title: this.$t('system.simulationType'),
|
||||||
prop: 'type',
|
prop: 'type',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.type, this.$ConstSelect.SimulationType, ['value', 'label']); },
|
columnValue: (row) => { return this.$convertField(row.type, this.$ConstSelect.SimulationType, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success'; }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '仿真成员ID',
|
title: this.$t('system.simulationGroupId'),
|
||||||
prop: 'sessionList',
|
prop: 'sessionList',
|
||||||
type: 'basicText',
|
type: 'basicText',
|
||||||
columnValue: (row) => { return this.listJoiningTogether(row.sessionList); }
|
columnValue: (row) => { return this.listJoiningTogether(row.sessionList); }
|
||||||
@ -170,17 +170,17 @@ export default {
|
|||||||
return sessionId;
|
return sessionId;
|
||||||
},
|
},
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm('此操作将删除此用户仿真数据, 是否继续?', '提示', {
|
this.$confirm(this.$t('system.delUserSimulationIsContinue'), this.$t('global.tips'), {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
deleteExistingSimulation(row.group).then(response => {
|
deleteExistingSimulation(row.group).then(response => {
|
||||||
this.$message.success('删除成功');
|
this.$message.success(this.$t('system.deleteSuccess'));
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
this.$messageBox('删除失败');
|
this.$messageBox(this.$t('error.deleteFailed'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="'编辑用户权限'" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
<el-dialog :title="$t('system.editUserPermission')" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
||||||
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="doSave">确 定</el-button>
|
<el-button type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
<el-button @click="dialogVisible = false">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@ -31,11 +31,11 @@ export default {
|
|||||||
const form = {
|
const form = {
|
||||||
labelWidth: '60px',
|
labelWidth: '60px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'name', label: '名称', type: 'text', required: true, disabled: true },
|
{ prop: 'name', label: this.$t('system.name'), type: 'text', required: true, disabled: true },
|
||||||
// { prop: 'nickname', label: '昵称', type: 'text', required: true },
|
// { prop: 'nickname', label: '昵称', type: 'text', required: true },
|
||||||
// { prop: 'mobile', label: '电话', type: 'text', required: true },
|
// { prop: 'mobile', label: '电话', type: 'text', required: true },
|
||||||
// { prop: 'email', label: '邮箱', type: 'text' },
|
// { prop: 'email', label: '邮箱', type: 'text' },
|
||||||
{ prop: 'roles', label: '权限', type: 'select', required: true, options: this.$ConstSelect.roleList, multiple: true }
|
{ prop: 'roles', label: this.$t('system.permission'), type: 'select', required: true, options: this.$ConstSelect.roleList, multiple: true }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -43,11 +43,11 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: '请输入名称', trigger: 'blur' },
|
{ required: true, message: this.$t('rules.pleaseInputName'), trigger: 'blur' },
|
||||||
{ min: 1, max: 25, message: '长度在 1 到 25 个字符', trigger: 'blur' }
|
{ min: 1, max: 25, message: this.$t('rules.strLength1To25'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
status: [
|
status: [
|
||||||
{ required: true, message: '请选择状态', trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectStatus'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return crules;
|
return crules;
|
||||||
@ -76,11 +76,11 @@ export default {
|
|||||||
update() {
|
update() {
|
||||||
const self = this;
|
const self = this;
|
||||||
putRoles(this.formModel).then(response => {
|
putRoles(this.formModel).then(response => {
|
||||||
self.$message.success('修改成功');
|
self.$message.success(this.$t('system.updateSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('修改失败:' + error.message);
|
self.$message.error(`${this.$t('error.updateFailed')}: ${error.message}`);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -29,11 +29,11 @@ export default {
|
|||||||
queryObject: {
|
queryObject: {
|
||||||
name: {
|
name: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '名称'
|
label: this.$t('system.name')
|
||||||
},
|
},
|
||||||
roles: {
|
roles: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '角色',
|
label: this.$t('system.roles'),
|
||||||
config: {
|
config: {
|
||||||
data: this.$ConstSelect.roleList
|
data: this.$ConstSelect.roleList
|
||||||
}
|
}
|
||||||
@ -47,23 +47,23 @@ export default {
|
|||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: '名称',
|
title: this.$t('system.name'),
|
||||||
prop: 'name'
|
prop: 'name'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '昵称',
|
title: this.$t('system.nickname'),
|
||||||
prop: 'nickname'
|
prop: 'nickname'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '电话',
|
title: this.$t('system.mobile'),
|
||||||
prop: 'mobile'
|
prop: 'mobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '邮箱',
|
title: this.$t('system.email'),
|
||||||
prop: 'email'
|
prop: 'email'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '角色',
|
title: this.$t('system.roles'),
|
||||||
prop: 'roles',
|
prop: 'roles',
|
||||||
type: 'tagMore',
|
type: 'tagMore',
|
||||||
columnValue: (row) => { return this.$convertField(row.roles, this.$ConstSelect.roleList, ['value', 'label'], true); },
|
columnValue: (row) => { return this.$convertField(row.roles, this.$ConstSelect.roleList, ['value', 'label'], true); },
|
||||||
@ -71,15 +71,15 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: '操作',
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: '编辑',
|
name: this.$t('global.edit'),
|
||||||
handleClick: this.handleUserEdit
|
handleClick: this.handleUserEdit
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '订阅地图',
|
name: this.$t('system.subscribeMap'),
|
||||||
handleClick: this.handleMapCorrelation,
|
handleClick: this.handleMapCorrelation,
|
||||||
type: 'danger'
|
type: 'danger'
|
||||||
}
|
}
|
||||||
@ -100,9 +100,9 @@ export default {
|
|||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
handleUserDelete(index, row) {
|
handleUserDelete(index, row) {
|
||||||
this.$confirm('此操作将删除该类型, 是否继续?', '提示', {
|
this.$confirm(this.$t('system.delTypeIsContinue'), this.$t('global.tips'), {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
// delPublishMap(row.id).then(response => {
|
// delPublishMap(row.id).then(response => {
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
||||||
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="doSave">确 定</el-button>
|
<el-button type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
<el-button @click="dialogVisible = false">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@ -34,12 +34,12 @@ export default {
|
|||||||
computed: {
|
computed: {
|
||||||
form() {
|
form() {
|
||||||
const form = {
|
const form = {
|
||||||
labelWidth: '100px',
|
labelWidth: '160px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'userName', label: '用户名称', type: 'text', required: false, disabled: true },
|
{ prop: 'userName', label: this.$t('system.userName'), type: 'text', required: false, disabled: true },
|
||||||
{ prop: 'examName', label: '试卷名称', type: 'text', required: true, disabled: true },
|
{ prop: 'examName', label: this.$t('system.examName'), type: 'text', required: true, disabled: true },
|
||||||
{ prop: 'score', label: '考试分数', type: 'text', required: true },
|
{ prop: 'score', label: this.$t('system.examScore'), type: 'text', required: true },
|
||||||
{ prop: 'result', label: '考试结果', type: 'select', required: true, options: this.$ConstSelect.examResultList }
|
{ prop: 'result', label: this.$t('system.examResult'), type: 'select', required: true, options: this.$ConstSelect.examResultList }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -47,16 +47,16 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
score: [
|
score: [
|
||||||
{ required: true, message: '请输入名称', trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseInputName'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
result: [
|
result: [
|
||||||
{ required: true, message: '请选择状态', trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectStatus'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return crules;
|
return crules;
|
||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
return '编辑考试详情';
|
return this.$t('system.editExamDetail');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -79,11 +79,11 @@ export default {
|
|||||||
update() {
|
update() {
|
||||||
const self = this;
|
const self = this;
|
||||||
updateExam(this.formModel).then(response => {
|
updateExam(this.formModel).then(response => {
|
||||||
self.$message.success('修改成功!');
|
self.$message.success(this.$t('system.updateSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('修改失败!' + error.message);
|
self.$message.error(`${this.$t('error.updateFailed')}: ${error.message}`);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -22,20 +22,20 @@ export default {
|
|||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '80px',
|
labelWidth: '150px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
examName: {
|
examName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '试卷名称'
|
label: this.$t('system.examName')
|
||||||
},
|
},
|
||||||
userName: {
|
userName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '考试用户'
|
label: this.$t('system.examUser')
|
||||||
},
|
},
|
||||||
result: {
|
result: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: '考试结果',
|
label: this.$t('system.examResult'),
|
||||||
config: {
|
config: {
|
||||||
data: this.$ConstSelect.examResultList
|
data: this.$ConstSelect.examResultList
|
||||||
}
|
}
|
||||||
@ -49,11 +49,11 @@ export default {
|
|||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: '试卷名称',
|
title: this.$t('system.examName'),
|
||||||
prop: 'examName'
|
prop: 'examName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '考试结果',
|
title: this.$t('system.examResult'),
|
||||||
prop: 'result',
|
prop: 'result',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.result, this.$ConstSelect.examResultList, ['value', 'label']); },
|
columnValue: (row) => { return this.$convertField(row.result, this.$ConstSelect.examResultList, ['value', 'label']); },
|
||||||
@ -67,28 +67,28 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '考试成绩',
|
title: this.$t('system.examScore'),
|
||||||
prop: 'score'
|
prop: 'score'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '考试用户',
|
title: this.$t('system.examUser'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '用户手机号',
|
title: this.$t('system.mobile'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: '操作',
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: '编辑',
|
name: this.$t('global.edit'),
|
||||||
handleClick: this.edit
|
handleClick: this.edit
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '删除',
|
name: this.$t('global.delete'),
|
||||||
handleClick: this.handleDelete,
|
handleClick: this.handleDelete,
|
||||||
type: 'danger'
|
type: 'danger'
|
||||||
}
|
}
|
||||||
@ -115,17 +115,17 @@ export default {
|
|||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm('此操作将删除此考试结果, 是否继续?', '提示', {
|
this.$confirm(this.$t('system.delExamResultIsContinue'), this.$t('global.tips'), {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
delPublishExam(row.id).then(response => {
|
delPublishExam(row.id).then(response => {
|
||||||
this.$message.success('删除成功');
|
this.$message.success(this.$t('system.deleteSuccess'));
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
this.$messageBox('删除失败');
|
this.$messageBox(this.$t('error.deleteFailed'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
||||||
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="doSave">确 定</el-button>
|
<el-button type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="handleClose">取 消</el-button>
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@ -41,12 +41,12 @@ export default {
|
|||||||
computed: {
|
computed: {
|
||||||
form() {
|
form() {
|
||||||
const form = {
|
const form = {
|
||||||
labelWidth: '100px',
|
labelWidth: '120px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'mapId', label: '地图名称', type: 'select', required: true, options: this.LessonList, change: true, onChange: this.mapChange },
|
{ prop: 'mapId', label: this.$t('system.mapName'), type: 'select', required: true, options: this.LessonList, change: true, onChange: this.mapChange, placeholder: this.$t('rules.mapInput') },
|
||||||
{ prop: 'mapPrdCode', label: '产品名称', type: 'select', required: true, options: this.mapPrdList, placeholder: '请选择产品' },
|
{ prop: 'mapPrdCode', label: this.$t('system.productName'), type: 'select', required: true, options: this.mapPrdList, placeholder: this.$t('rules.productInput') },
|
||||||
{ prop: 'userName', label: '用户名称', type: 'complete', required: false, querySearchAsync: this.querySearchAsync, handleSelect: this.prdSelect, placeholder: '请输入昵称/名字/手机号' },
|
{ prop: 'userName', label: this.$t('system.userName'), type: 'complete', required: false, querySearchAsync: this.querySearchAsync, handleSelect: this.prdSelect, placeholder: this.$t('system.pleaseInputNames') },
|
||||||
{ prop: 'duration', label: '实训时长', type: 'text', rightWidth: true, required: true, message: 's' }
|
{ prop: 'duration', label: this.$t('system.trainingUseTime'), type: 'text', rightWidth: true, required: true, message: 's' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -54,22 +54,22 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
mapId: [
|
mapId: [
|
||||||
{ required: true, message: '请选择地图', trigger: 'change' }
|
{ required: true, message: this.$t('rules.mapInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
userName: [
|
userName: [
|
||||||
{ required: true, message: '请选择用户', trigger: 'change' }
|
{ required: true, message: this.$t('rules.chooseUser'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
mapPrdCode: [
|
mapPrdCode: [
|
||||||
{ required: true, message: '请选择产品', trigger: 'change' }
|
{ required: true, message: this.$t('rules.productInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
duration: [
|
duration: [
|
||||||
{ required: true, message: '请输入时长', trigger: 'blur' }
|
{ required: true, message: this.$t('rules.timeInput'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return crules;
|
return crules;
|
||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
return '创建仿真信息';
|
return this.$t('system.createSimulationTitle');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -113,7 +113,7 @@ export default {
|
|||||||
});
|
});
|
||||||
cb(results);
|
cb(results);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error, '查询用户list');
|
console.error(error);
|
||||||
cb(results);
|
cb(results);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -148,13 +148,6 @@ export default {
|
|||||||
},
|
},
|
||||||
show(data) {
|
show(data) {
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
// this.formModel = {
|
|
||||||
// mapId: '',
|
|
||||||
// mapPrdCode: '',
|
|
||||||
// userId: '',
|
|
||||||
// userName: '',
|
|
||||||
// duration: '',
|
|
||||||
// };
|
|
||||||
},
|
},
|
||||||
doSave() {
|
doSave() {
|
||||||
const self = this;
|
const self = this;
|
||||||
@ -172,14 +165,14 @@ export default {
|
|||||||
};
|
};
|
||||||
if (params.userId) {
|
if (params.userId) {
|
||||||
postSimulationStats(params).then(response => {
|
postSimulationStats(params).then(response => {
|
||||||
self.$message.success('新增成功!');
|
self.$message.success(this.$t('system.addSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('新增失败!' + error.message);
|
self.$message.error(this.$t('error.addFailed') + error.message);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.$message.error('请选择用户');
|
this.$message.error(this.$t('rules.chooseUser'));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -29,16 +29,16 @@ export default {
|
|||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '80px',
|
labelWidth: '120px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
trainingName: {
|
trainingName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '实训名称'
|
label: this.$t('system.trainingName')
|
||||||
},
|
},
|
||||||
userName: {
|
userName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '用户名'
|
label: this.$t('system.userName')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,41 +49,41 @@ export default {
|
|||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: '用户名称',
|
title: this.$t('system.userName'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '用户手机号',
|
title: this.$t('system.mobile'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '地图名称',
|
title: this.$t('system.mapName'),
|
||||||
prop: 'mapName'
|
prop: 'mapName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '实训用时',
|
title: this.$t('system.trainingUseTime'),
|
||||||
prop: 'duration',
|
prop: 'duration',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.computation(row.duration); },
|
columnValue: (row) => { return this.computation(row.duration); },
|
||||||
tagType: (row) => { return 'success'; }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '产品名称',
|
title: this.$t('system.productName'),
|
||||||
prop: 'mapPrdName'
|
prop: 'mapPrdName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: '操作',
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: '250',
|
||||||
hide: (row) => { return !row.fake; },
|
hide: (row) => { return !row.fake; },
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: '编辑',
|
name: this.$t('global.edit'),
|
||||||
handleClick: this.edit,
|
handleClick: this.edit,
|
||||||
showControl: (row) => { return row.fake; }
|
showControl: (row) => { return row.fake; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '删除',
|
name: this.$t('global.delete'),
|
||||||
handleClick: this.handleDelete,
|
handleClick: this.handleDelete,
|
||||||
type: 'danger',
|
type: 'danger',
|
||||||
showControl: (row) => { return row.fake; }
|
showControl: (row) => { return row.fake; }
|
||||||
@ -92,7 +92,7 @@ export default {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: '新增', handler: this.createTraining }
|
{ text: this.$t('global.add'), handler: this.createTraining }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
currentModel: {}
|
currentModel: {}
|
||||||
@ -121,9 +121,9 @@ export default {
|
|||||||
const f = parseInt(fieldValue / 60);
|
const f = parseInt(fieldValue / 60);
|
||||||
const s = fieldValue % 60;
|
const s = fieldValue % 60;
|
||||||
if (f > 0) {
|
if (f > 0) {
|
||||||
return `${f}分${s}秒`;
|
return `${f} ${this.$t('system.minute')} ${s} ${this.$t('system.second')}`;
|
||||||
} else {
|
} else {
|
||||||
return `${s}秒`;
|
return `${s} ${this.$t('system.second')}`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -135,17 +135,17 @@ export default {
|
|||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm('此操作将删除此用户仿真数据, 是否继续?', '提示', {
|
this.$confirm(this.$t('system.delUserSimulationIsContinue'), this.$t('global.tips'), {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
deleteSimulationStats(row.id).then(response => {
|
deleteSimulationStats(row.id).then(response => {
|
||||||
this.$message.success('删除成功');
|
this.$message.success(this.$t('system.deleteSuccess'));
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
this.$messageBox('删除失败');
|
this.$messageBox(this.$t('error.deleteFailed'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
||||||
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="doSave">确 定</el-button>
|
<el-button type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="handleClose">取 消</el-button>
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<add-training ref="addTraining" @selectTrain="selectTrain" />
|
<add-training ref="addTraining" @selectTrain="selectTrain" />
|
||||||
@ -48,12 +48,12 @@ export default {
|
|||||||
form() {
|
form() {
|
||||||
this.type === 'ADD';
|
this.type === 'ADD';
|
||||||
const form = {
|
const form = {
|
||||||
labelWidth: '100px',
|
labelWidth: '150px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'lessonId', label: '课程名称', type: 'select', required: true, options: this.LessonList },
|
{ prop: 'lessonId', label: this.$t('system.lessonName'), type: 'select', required: true, options: this.LessonList },
|
||||||
{ prop: 'trainingName', label: '实训名称', type: 'text', required: true, rightWidth: true, disabled: true, buttontip: '选择实训', buttonClick: this.buttonClick, placeholder: '请选择实训' },
|
{ prop: 'trainingName', label: this.$t('system.trainingName'), type: 'text', required: true, rightWidth: true, disabled: true, buttontip: this.$t('system.selectTraining'), buttonClick: this.buttonClick, placeholder: this.$t('rules.pleaseSelectTraining') },
|
||||||
{ prop: 'userName', label: '用户名称', type: 'complete', required: false, querySearchAsync: this.querySearchAsync, handleSelect: this.prdSelect, placeholder: '请输入昵称/名字/手机号' },
|
{ prop: 'userName', label: this.$t('system.userName'), type: 'complete', required: false, querySearchAsync: this.querySearchAsync, handleSelect: this.prdSelect, placeholder: this.$t('system.pleaseInputNames') },
|
||||||
{ prop: 'duration', label: '实训时长', type: 'text', required: true, rightWidth: true, message: 's' }
|
{ prop: 'duration', label: this.$t('system.trainingTime'), type: 'text', required: true, rightWidth: true, message: 's' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -61,22 +61,22 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
lessonId: [
|
lessonId: [
|
||||||
{ required: true, message: '请输入教学名称', trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseInputLessonName'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
trainingName: [
|
trainingName: [
|
||||||
{ required: true, message: '请选择实训', trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectTraining'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
userName: [
|
userName: [
|
||||||
{ required: true, message: '请输入用户名称', trigger: 'change' }
|
{ required: true, message: this.$t('rules.userNameInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
duration: [
|
duration: [
|
||||||
{ required: true, message: '请输入时长', trigger: 'blur' }
|
{ required: true, message: this.$t('rules.timeInput'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return crules;
|
return crules;
|
||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
return '创建用户实训';
|
return this.$t('system.createUserTraining');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -139,14 +139,6 @@ export default {
|
|||||||
},
|
},
|
||||||
show(data) {
|
show(data) {
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
// this.formModel = {
|
|
||||||
// lessonId: '',
|
|
||||||
// trainingId: '',
|
|
||||||
// trainingName: '',
|
|
||||||
// userId: '',
|
|
||||||
// userName: '',
|
|
||||||
// duration: '',
|
|
||||||
// };
|
|
||||||
},
|
},
|
||||||
doSave() {
|
doSave() {
|
||||||
const self = this;
|
const self = this;
|
||||||
@ -158,14 +150,14 @@ export default {
|
|||||||
const self = this;
|
const self = this;
|
||||||
if (this.formModel.userId) {
|
if (this.formModel.userId) {
|
||||||
addUserTraining(this.formModel).then(response => {
|
addUserTraining(this.formModel).then(response => {
|
||||||
self.$message.success('创建成功!');
|
self.$message.success(this.$t('system.addSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('创建失败!' + error.message);
|
self.$message.error(this.$t('error.addFailed') + error.message);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
self.$message.error('请选择用户');
|
self.$message.error(this.$t('rules.chooseUser'));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -17,8 +17,8 @@
|
|||||||
</el-tree>
|
</el-tree>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" :disabled="disabled" @click="doSave">确 定</el-button>
|
<el-button type="primary" :disabled="disabled" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="handleClose">取 消</el-button>
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@ -34,7 +34,7 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
dialogVisibles: false,
|
dialogVisibles: false,
|
||||||
title: '选择实训',
|
title: this.$t('system.selectTraining'),
|
||||||
treeData: [{
|
treeData: [{
|
||||||
children: [],
|
children: [],
|
||||||
name: ''
|
name: ''
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" :before-close="handleClose" center>
|
||||||
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
<data-form ref="dataform" :form="form" :form-model="formModel" :rules="rules" />
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="doSave">确 定</el-button>
|
<el-button type="primary" @click="doSave">{{ $t('global.confirm') }}</el-button>
|
||||||
<el-button @click="handleClose">取 消</el-button>
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@ -37,10 +37,10 @@ export default {
|
|||||||
const form = {
|
const form = {
|
||||||
labelWidth: '100px',
|
labelWidth: '100px',
|
||||||
items: [
|
items: [
|
||||||
{ prop: 'lessonName', label: '教学名称', type: 'text', required: false, disabled: true },
|
{ prop: 'lessonName', label: this.$t('system.lessonName'), type: 'text', required: false, disabled: true },
|
||||||
{ prop: 'trainingName', label: '实训名称', type: 'text', required: true, disabled: true },
|
{ prop: 'trainingName', label: this.$t('system.trainingName'), type: 'text', required: true, disabled: true },
|
||||||
{ prop: 'userName', label: '用户名称', type: 'text', required: true, disabled: true },
|
{ prop: 'userName', label: this.$t('system.userName'), type: 'text', required: true, disabled: true },
|
||||||
{ prop: 'duration', label: '实训时长', type: 'text', required: true, rightWidth: true, message: 's' }
|
{ prop: 'duration', label: this.$t('system.trainingTime'), type: 'text', required: true, rightWidth: true, message: 's' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -48,13 +48,13 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const crules = {
|
const crules = {
|
||||||
duration: [
|
duration: [
|
||||||
{ required: true, message: '请输入时长', trigger: 'blur' }
|
{ required: true, message: this.$t('rules.timeInput'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return crules;
|
return crules;
|
||||||
},
|
},
|
||||||
title() {
|
title() {
|
||||||
return '编辑实训详情';
|
return this.$t('system.editTrainingDetail');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -67,7 +67,6 @@ export default {
|
|||||||
userName: data.userName,
|
userName: data.userName,
|
||||||
trainingName: data.trainingName,
|
trainingName: data.trainingName,
|
||||||
duration: data.duration
|
duration: data.duration
|
||||||
// trainingCount: data.trainingCount
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -84,11 +83,11 @@ export default {
|
|||||||
duration: this.formModel.duration
|
duration: this.formModel.duration
|
||||||
};
|
};
|
||||||
putUserTraining(param).then(response => {
|
putUserTraining(param).then(response => {
|
||||||
self.$message.success('修改成功!');
|
self.$message.success(this.$t('system.updateSuccess'));
|
||||||
self.handleClose();
|
self.handleClose();
|
||||||
self.$emit('reloadTable');
|
self.$emit('reloadTable');
|
||||||
}).catch(error => {
|
}).catch(error => {
|
||||||
self.$message.error('修改失败!' + error.message);
|
self.$message.error(`${this.$t('error.updateFailed')}: ${error.message}`);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleClose(done) {
|
handleClose(done) {
|
||||||
|
@ -24,16 +24,16 @@ export default {
|
|||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '80px',
|
labelWidth: '120px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
trainingName: {
|
trainingName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '实训名称'
|
label: this.$t('system.trainingName')
|
||||||
},
|
},
|
||||||
userName: {
|
userName: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: '用户名'
|
label: this.$t('system.userName')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -44,40 +44,40 @@ export default {
|
|||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: '用户名称',
|
title: this.$t('system.userName'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '用户手机号',
|
title: this.$t('system.mobile'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '课程名称',
|
title: this.$t('system.lessonName'),
|
||||||
prop: 'lessonName'
|
prop: 'lessonName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '实训用时',
|
title: this.$t('system.trainingUseTime'),
|
||||||
prop: 'duration',
|
prop: 'duration',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.computation(row.duration); },
|
columnValue: (row) => { return this.computation(row.duration); },
|
||||||
tagType: (row) => { return 'success'; }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '实训名称',
|
title: this.$t('system.trainingName'),
|
||||||
prop: 'trainingName'
|
prop: 'trainingName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: '操作',
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: '编辑',
|
name: this.$t('global.edit'),
|
||||||
handleClick: this.edit,
|
handleClick: this.edit,
|
||||||
showControl: (row) => { return row.fake != '0'; }
|
showControl: (row) => { return row.fake != '0'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '删除',
|
name: this.$t('global.delete'),
|
||||||
handleClick: this.handleDelete,
|
handleClick: this.handleDelete,
|
||||||
type: 'danger',
|
type: 'danger',
|
||||||
showControl: (row) => { return row.fake != '0'; }
|
showControl: (row) => { return row.fake != '0'; }
|
||||||
@ -86,7 +86,7 @@ export default {
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: '新增', handler: this.createTraining }
|
{ text: this.$t('global.add'), handler: this.createTraining }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
currentModel: {}
|
currentModel: {}
|
||||||
@ -107,9 +107,9 @@ export default {
|
|||||||
const f = parseInt(fieldValue / 60);
|
const f = parseInt(fieldValue / 60);
|
||||||
const s = fieldValue % 60;
|
const s = fieldValue % 60;
|
||||||
if (f > 0) {
|
if (f > 0) {
|
||||||
return `${f}分${s}秒`;
|
return `${f} ${this.$t('system.minute')} ${s} ${this.$t('system.second')}`;
|
||||||
} else {
|
} else {
|
||||||
return `${s}秒`;
|
return `${s} ${this.$t('system.second')}`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -121,17 +121,17 @@ export default {
|
|||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm('此操作将删除此考试结果, 是否继续?', '提示', {
|
this.$confirm(this.$t('system.delExamResultIsContinue'), this.$t('global.tips'), {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
deleteUserTraining(row.id).then(response => {
|
deleteUserTraining(row.id).then(response => {
|
||||||
this.$message.success('删除成功');
|
this.$message.success(this.$t('system.deleteSuccess'));
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
this.$messageBox('删除失败');
|
this.$messageBox(this.$t('error.deleteFailed'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -89,7 +89,7 @@ export default {
|
|||||||
handleClick: this.editObj
|
handleClick: this.editObj
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('map.delete'),
|
name: this.$t('map.deleteObj'),
|
||||||
handleClick: this.deleteObj,
|
handleClick: this.deleteObj,
|
||||||
type: 'danger'
|
type: 'danger'
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
<el-button :type="field === 'signalCode' ? 'danger' : 'primary'" @click="hover('signalCode')">{{ $t('map.activate') }}
|
<el-button :type="field === 'signalCode' ? 'danger' : 'primary'" @click="hover('signalCode')">{{ $t('map.activate') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('map.segmentData')" prop="autoSignalClearList">
|
<el-form-item :label="$t('map.routeTriggerSectionList')" prop="autoSignalClearList">
|
||||||
<el-select v-model="addModel.autoSignalClearList" multiple clearable :filterable="true">
|
<el-select v-model="addModel.autoSignalClearList" multiple clearable :filterable="true">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in sectionList"
|
v-for="item in sectionList"
|
||||||
|
@ -47,7 +47,7 @@ export default {
|
|||||||
},
|
},
|
||||||
stationCode: {
|
stationCode: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('map.affiliationStationCode'),
|
label: this.$t('map.routeStationName'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
@ -83,7 +83,7 @@ export default {
|
|||||||
prop: 'name'
|
prop: 'name'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('map.routeMapId'),
|
title: this.$t('map.pathUnitMapName'),
|
||||||
prop: 'mapId'
|
prop: 'mapId'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -91,11 +91,11 @@ export default {
|
|||||||
prop: 'stationCode'
|
prop: 'stationCode'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('map.routeStartSignalCode'),
|
title: this.$t('map.startingSignalName'),
|
||||||
prop: 'startSignalCode'
|
prop: 'startSignalCode'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('map.routeEndSignalCode'),
|
title: this.$t('map.endingSignalName'),
|
||||||
prop: 'endSignalCode'
|
prop: 'endSignalCode'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -53,7 +53,7 @@ export default {
|
|||||||
},
|
},
|
||||||
stationCode: {
|
stationCode: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('map.affiliationStationCode'),
|
label: this.$t('map.routeStationName'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
@ -93,7 +93,7 @@ export default {
|
|||||||
prop: 'mapId'
|
prop: 'mapId'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('map.affiliationStationCode'),
|
title: this.$t('map.routeStationName'),
|
||||||
prop: 'stationCode'
|
prop: 'stationCode'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -116,7 +116,7 @@ export default {
|
|||||||
handleClick: this.editObj
|
handleClick: this.editObj
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('map.delete'),
|
name: this.$t('map.deleteObj'),
|
||||||
handleClick: this.deleteObj,
|
handleClick: this.deleteObj,
|
||||||
type: 'danger'
|
type: 'danger'
|
||||||
}
|
}
|
||||||
|
@ -110,7 +110,7 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.resourceList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.resourceList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.imageName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.imageName'), type: 'input' },
|
||||||
@ -125,7 +125,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: []
|
item: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -252,7 +252,7 @@ export default {
|
|||||||
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
||||||
if (selected && selected._type.toUpperCase() === 'ImageControl'.toUpperCase()) {
|
if (selected && selected._type.toUpperCase() === 'ImageControl'.toUpperCase()) {
|
||||||
const _that = this;
|
const _that = this;
|
||||||
this.$confirm(this.$t('map.confirmDeletion'), this.$t('map.hint'), {
|
this.$confirm(this.$t('tip.confirmDeletion'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('map.confirm'),
|
confirmButtonText: this.$t('map.confirm'),
|
||||||
cancelButtonText: this.$t('map.cancel'),
|
cancelButtonText: this.$t('map.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
@ -260,7 +260,7 @@ export default {
|
|||||||
_that.$emit('delMapModel', selected);
|
_that.$emit('delMapModel', selected);
|
||||||
_that.deviceSelect();
|
_that.deviceSelect();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
_that.$message.info(this.$t('map.cancelledDelete'));
|
_that.$message.info(this.$t('tip.cancelledDelete'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -136,7 +136,7 @@ export default {
|
|||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.counterCoding'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.counterList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.counterCoding'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.counterList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.counterName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.counterName'), type: 'input' },
|
||||||
@ -147,7 +147,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
||||||
]
|
]
|
||||||
@ -250,7 +250,7 @@ export default {
|
|||||||
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
||||||
if (selected && selected._type.toUpperCase() === 'Counter'.toUpperCase()) {
|
if (selected && selected._type.toUpperCase() === 'Counter'.toUpperCase()) {
|
||||||
const _that = this;
|
const _that = this;
|
||||||
this.$confirm(this.$t('map.confirmDeletion'), this.$t('map.hint'), {
|
this.$confirm(this.$t('tip.confirmDeletion'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('map.confirm'),
|
confirmButtonText: this.$t('map.confirm'),
|
||||||
cancelButtonText: this.$t('map.cancel'),
|
cancelButtonText: this.$t('map.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
@ -258,7 +258,7 @@ export default {
|
|||||||
_that.$emit('delMapModel', selected);
|
_that.$emit('delMapModel', selected);
|
||||||
_that.deviceSelect();
|
_that.deviceSelect();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
_that.$message.info(this.$t('map.cancelledDelete'));
|
_that.$message.info(this.$t('tip.cancelledDelete'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -118,7 +118,7 @@ export default {
|
|||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.delayUnlockingCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.delayShowList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.delayUnlockingCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.delayShowList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'unlockTime', label: this.$t('map.delayTime'), type: 'number', min: 0, max: 1000, placeholder: 's' },
|
{ prop: 'unlockTime', label: this.$t('map.delayTime'), type: 'number', min: 0, max: 1000, placeholder: 's' },
|
||||||
@ -129,7 +129,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
||||||
]
|
]
|
||||||
@ -231,7 +231,7 @@ export default {
|
|||||||
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
const selected = this.$store.getters['map/getDeviceByCode'](this.editModel.code);
|
||||||
if (selected && selected._type.toUpperCase() === 'DelayUnlock'.toUpperCase()) {
|
if (selected && selected._type.toUpperCase() === 'DelayUnlock'.toUpperCase()) {
|
||||||
const _that = this;
|
const _that = this;
|
||||||
this.$confirm(this.$t('map.confirmDeletion'), this.$t('map.hint'), {
|
this.$confirm(this.$t('tip.confirmDeletion'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('map.confirm'),
|
confirmButtonText: this.$t('map.confirm'),
|
||||||
cancelButtonText: this.$t('map.cancel'),
|
cancelButtonText: this.$t('map.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
@ -239,7 +239,7 @@ export default {
|
|||||||
_that.$emit('delMapModel', selected);
|
_that.$emit('delMapModel', selected);
|
||||||
_that.deviceSelect();
|
_that.deviceSelect();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
_that.$message.info(this.$t('map.cancelledDelete'));
|
_that.$message.info(this.$t('tip.cancelledDelete'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -128,7 +128,7 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.lcList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.lcList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
||||||
@ -139,7 +139,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -94,7 +94,7 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.tempSpeedLimitList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.tempSpeedLimitList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
||||||
@ -105,7 +105,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: []
|
item: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -151,7 +151,7 @@ export default {
|
|||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.lineCoding'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.lineList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.lineCoding'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.lineList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'type', label: this.$t('map.lineType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.LineTypeList },
|
{ prop: 'type', label: this.$t('map.lineType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.LineTypeList },
|
||||||
@ -160,7 +160,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -158,7 +158,7 @@ export default {
|
|||||||
labelWidth: '130px',
|
labelWidth: '130px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.linkCode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.linkList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.linkCode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.linkList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.linkName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.linkName'), type: 'input' },
|
||||||
@ -179,7 +179,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'lengthFact', label: this.$t('map.linkActualLength'), type: 'number', min: 0, placeholder: this.$t('tip.meter') }
|
{ prop: 'lengthFact', label: this.$t('map.linkActualLength'), type: 'number', min: 0, placeholder: this.$t('tip.meter') }
|
||||||
]
|
]
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
<el-tab-pane class="view-control" :label="$t('map.splitMerge')" name="three">
|
<el-tab-pane class="view-control" :label="$t('map.splitMerge')" name="three">
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: cardHeight+60+'px' }">
|
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: cardHeight+60+'px' }">
|
||||||
<el-form ref="oprt" :model="addModel" label-width="130px" size="mini" :rules="addRules">
|
<el-form ref="oprt" :model="addModel" label-width="130px" size="mini" :rules="addRules">
|
||||||
<el-form-item :label="$t('map.sectionNameC')" prop="code">
|
<el-form-item :label="$t('map.sectionNameColon')" prop="code">
|
||||||
<el-select v-model="addModel.code" filterable>
|
<el-select v-model="addModel.code" filterable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in PhysicalSectionList"
|
v-for="item in PhysicalSectionList"
|
||||||
@ -285,7 +285,7 @@ export default {
|
|||||||
labelWidth: '160px',
|
labelWidth: '160px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', mode: true, optionLabel: 'name&&code', optionValue: 'code', disabled: this.isStationCodeDisabled, options: this.stationList },
|
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', mode: true, optionLabel: 'name&&code', optionValue: 'code', disabled: this.isStationCodeDisabled, options: this.stationList },
|
||||||
{ prop: 'parentCode', label: this.$t('map.associatedSection'), type: 'select', mode: true, optionLabel: 'code&&name', optionValue: 'code', disabled: true, options: this.sectionList, isHidden: !this.isParentCode },
|
{ prop: 'parentCode', label: this.$t('map.associatedSection'), type: 'select', mode: true, optionLabel: 'code&&name', optionValue: 'code', disabled: true, options: this.sectionList, isHidden: !this.isParentCode },
|
||||||
@ -341,11 +341,11 @@ export default {
|
|||||||
{ prop: 'segmentationPosition.y', firstLevel: 'segmentationPosition', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '20px', disabled: true }
|
{ prop: 'segmentationPosition.y', firstLevel: 'segmentationPosition', secondLevel: 'y', label: 'y:', type: 'number', labelWidth: '20px', disabled: true }
|
||||||
] },
|
] },
|
||||||
{ prop: 'isCurve', label: this.$t('map.isCurve'), type: 'checkbox', isHidden: !this.isSectionType },
|
{ prop: 'isCurve', label: this.$t('map.isCurve'), type: 'checkbox', isHidden: !this.isSectionType },
|
||||||
{ prop: 'points', label: this.$t('map.sectionPoints'), type: 'points', width: '140px', isHidden: !this.isPointsShow, pointDisabled: this.pointDisabledName, addPoint: this.addPoint, delPoint: this.delPoint }
|
{ prop: 'points', label: this.$t('map.segmentCoordinates'), type: 'points', width: '140px', isHidden: !this.isPointsShow, pointDisabled: this.pointDisabledName, addPoint: this.addPoint, delPoint: this.delPoint }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'offsetLeft', label: this.$t('map.sectionOffsetLeft'), type: 'number', min: 0, placeholder: '米', isHidden: !this.isSectionType },
|
{ prop: 'offsetLeft', label: this.$t('map.sectionOffsetLeft'), type: 'number', min: 0, placeholder: '米', isHidden: !this.isSectionType },
|
||||||
{ prop: 'offsetRight', label: this.$t('map.sectionOffsetRight'), type: 'number', min: 0, placeholder: '米', isHidden: !this.isSectionType },
|
{ prop: 'offsetRight', label: this.$t('map.sectionOffsetRight'), type: 'number', min: 0, placeholder: '米', isHidden: !this.isSectionType },
|
||||||
@ -353,7 +353,7 @@ export default {
|
|||||||
{ prop: 'kmRangeLeft', label: this.$t('map.leftKilometerMark'), type: 'number', min: 0 },
|
{ prop: 'kmRangeLeft', label: this.$t('map.leftKilometerMark'), type: 'number', min: 0 },
|
||||||
{ prop: 'kmRangeRight', label: this.$t('map.rightKilometerMark'), type: 'number', min: 0 },
|
{ prop: 'kmRangeRight', label: this.$t('map.rightKilometerMark'), type: 'number', min: 0 },
|
||||||
{ prop: 'type', label: this.$t('map.sectionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionTypeList },
|
{ prop: 'type', label: this.$t('map.sectionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SectionTypeList },
|
||||||
{ prop: 'trainPosType', label: this.$t('map.trainPosType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.TrainPositionTypeList, isHidden: !this.isSectionType }
|
{ prop: 'trainPosType', label: this.$t('map.trainDirection'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.TrainPositionTypeList, isHidden: !this.isSectionType }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -198,7 +198,7 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
||||||
{ prop: 'code', label: this.$t('map.signalCodeColon'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.signalList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.signalCodeColon'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.signalList, change: true, deviceChange: this.deviceChange },
|
||||||
@ -210,7 +210,7 @@ export default {
|
|||||||
{ prop: 'positionType', label: this.$t('map.signalPositionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SignalPositionTypeList },
|
{ prop: 'positionType', label: this.$t('map.signalPositionType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SignalPositionTypeList },
|
||||||
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.signalPositionX'), type: 'number', placeholder: 'px' },
|
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.signalPositionX'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.signalPositionY'), type: 'number', placeholder: 'px' },
|
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.signalPositionY'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'rotate', label: this.$t('map.signalRotate'), type: 'number', min: -90, max: 90, placeholder: this.$t('tip.angle') },
|
{ prop: 'rotate', label: this.$t('map.rotateAngle'), type: 'number', min: -90, max: 90, placeholder: this.$t('tip.angle') },
|
||||||
{ prop: 'namePosition.x', firstLevel: 'namePosition', secondLevel: 'x', label: this.$t('map.signalNamePositionX'), type: 'number', placeholder: 'px' },
|
{ prop: 'namePosition.x', firstLevel: 'namePosition', secondLevel: 'x', label: this.$t('map.signalNamePositionX'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'namePosition.y', firstLevel: 'namePosition', secondLevel: 'x', label: this.$t('map.signalNamePositionY'), type: 'number', placeholder: 'px' },
|
{ prop: 'namePosition.y', firstLevel: 'namePosition', secondLevel: 'x', label: this.$t('map.signalNamePositionY'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'buttonShow', label: this.$t('map.signalButtonShow'), type: 'checkbox' },
|
{ prop: 'buttonShow', label: this.$t('map.signalButtonShow'), type: 'checkbox' },
|
||||||
@ -222,7 +222,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'uniqueName', label: this.$t('map.signalUniqueName'), type: 'input' },
|
{ prop: 'uniqueName', label: this.$t('map.signalUniqueName'), type: 'input' },
|
||||||
{ prop: 'useType', label: this.$t('map.signalUseType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SignalUseTypeList },
|
{ prop: 'useType', label: this.$t('map.signalUseType'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.SignalUseTypeList },
|
||||||
|
@ -102,11 +102,11 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'concentrateStationCode', label: this.$t('map.concentrateStationCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationList },
|
{ prop: 'concentrateStationCode', label: this.$t('map.concentrateStationCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationList },
|
||||||
{ prop: 'code', label: this.$t('map.stationCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.stationCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.stationNameColon'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.stationName'), type: 'input' },
|
||||||
{ prop: 'visible', label: this.$t('map.stationVisible'), type: 'checkbox' },
|
{ prop: 'visible', label: this.$t('map.stationVisible'), type: 'checkbox' },
|
||||||
{ prop: 'nameFont', label: this.$t('map.stationNameFont'), type: 'font', placeholder: this.$t('tip.stationFont') },
|
{ prop: 'nameFont', label: this.$t('map.stationNameFont'), type: 'font', placeholder: this.$t('tip.stationFont') },
|
||||||
{ prop: 'nameFontColor', label: this.$t('map.stationNameFontColor'), type: 'color' },
|
{ prop: 'nameFontColor', label: this.$t('map.stationNameFontColor'), type: 'color' },
|
||||||
@ -120,7 +120,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'zcCode', label: this.$t('map.zcCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.zcList },
|
{ prop: 'zcCode', label: this.$t('map.zcCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.zcList },
|
||||||
{ prop: 'centralized', label: this.$t('map.centralized'), type: 'checkbox' },
|
{ prop: 'centralized', label: this.$t('map.centralized'), type: 'checkbox' },
|
||||||
@ -146,10 +146,10 @@ export default {
|
|||||||
{ required: true, message: this.$t('rules.stationKmPost'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.stationKmPost'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
'position.x': [
|
'position.x': [
|
||||||
{ required: true, message: this.$t('rules.stationPositionX'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnterXCoordinate'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
'position.y': [
|
'position.y': [
|
||||||
{ required: true, message: this.$t('rules.stationPositionY'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnterYCoordinate'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
// 清空表单验证提示信息
|
// 清空表单验证提示信息
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
<el-tab-pane class="view-control" :label="$t('map.operation')" name="second">
|
<el-tab-pane class="view-control" :label="$t('map.operation')" name="second">
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: cardHeight +'px' }">
|
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: cardHeight +'px' }">
|
||||||
<el-form ref="make" :model="addModel" label-width="120px" size="mini" :rules="makeRules">
|
<el-form ref="make" :model="addModel" label-width="120px" size="mini" :rules="makeRules">
|
||||||
<el-form-item :label="$t('map.stationNameColon')" prop="stationCode">
|
<el-form-item :label="$t('map.stationName')" prop="stationCode">
|
||||||
<el-select v-model="addModel.stationCode" filterable>
|
<el-select v-model="addModel.stationCode" filterable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in stationList"
|
v-for="item in stationList"
|
||||||
@ -93,7 +93,7 @@ export default {
|
|||||||
labelWidth: '160px',
|
labelWidth: '160px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
||||||
{ prop: 'code', label: this.$t('map.stationControlCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.stationControlList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.stationControlCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.stationControlList, change: true, deviceChange: this.deviceChange },
|
||||||
@ -102,12 +102,12 @@ export default {
|
|||||||
{ prop: 'zakContent', label: this.$t('map.zakContent'), type: 'input' },
|
{ prop: 'zakContent', label: this.$t('map.zakContent'), type: 'input' },
|
||||||
{ prop: 'jjzkContent', label: this.$t('map.jjzkContent'), type: 'input' },
|
{ prop: 'jjzkContent', label: this.$t('map.jjzkContent'), type: 'input' },
|
||||||
{ prop: 'zzkContent', label: this.$t('map.zzkContent'), type: 'input' },
|
{ prop: 'zzkContent', label: this.$t('map.zzkContent'), type: 'input' },
|
||||||
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.stationControlPositionX'), type: 'number', placeholder: 'px' },
|
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.pointX'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.stationControlPositionY'), type: 'number', placeholder: 'px' }
|
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.pointY'), type: 'number', placeholder: 'px' }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'zcCode', label: this.$t('map.zcCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.zcList }
|
{ prop: 'zcCode', label: this.$t('map.zcCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.zcList }
|
||||||
]
|
]
|
||||||
|
@ -123,7 +123,7 @@ export default {
|
|||||||
labelWidth: '130px',
|
labelWidth: '130px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'deviceStationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.stationList },
|
{ prop: 'deviceStationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name', optionValue: 'code', options: this.stationList },
|
||||||
{ prop: 'code', label: this.$t('map.relStandCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationStandList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.relStandCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.stationStandList, change: true, deviceChange: this.deviceChange },
|
||||||
@ -135,12 +135,12 @@ export default {
|
|||||||
{ prop: 'hasDoor', label: this.$t('map.stationstandHasDoor'), type: 'checkbox' },
|
{ prop: 'hasDoor', label: this.$t('map.stationstandHasDoor'), type: 'checkbox' },
|
||||||
{ prop: 'width', label: this.$t('map.stationstandWidth'), type: 'number', min: 0, max: 2000, placeholder: 'px' },
|
{ prop: 'width', label: this.$t('map.stationstandWidth'), type: 'number', min: 0, max: 2000, placeholder: 'px' },
|
||||||
{ prop: 'height', label: this.$t('map.stationstandHeight'), type: 'number', min: 0, max: 2000, placeholder: 'px' },
|
{ prop: 'height', label: this.$t('map.stationstandHeight'), type: 'number', min: 0, max: 2000, placeholder: 'px' },
|
||||||
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.stationstandPositionX'), type: 'number', placeholder: 'px' },
|
{ prop: 'position.x', firstLevel: 'position', secondLevel: 'x', label: this.$t('map.pointX'), type: 'number', placeholder: 'px' },
|
||||||
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.stationstandPositionY'), type: 'number', placeholder: 'px' }
|
{ prop: 'position.y', firstLevel: 'position', secondLevel: 'y', label: this.$t('map.pointY'), type: 'number', placeholder: 'px' }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
{ prop: 'stationCode', label: this.$t('map.belongsStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList }
|
||||||
]
|
]
|
||||||
|
@ -98,7 +98,7 @@ export default {
|
|||||||
labelWidth: '170px',
|
labelWidth: '170px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
{ prop: 'stationCode', label: this.$t('map.equipmentStation'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.stationList },
|
||||||
{ prop: 'code', label: this.$t('map.switchCode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.switchCode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.switchList, change: true, deviceChange: this.deviceChange },
|
||||||
@ -112,7 +112,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'turnTime', label: this.$t('map.turnTime'), type: 'number', min: 0, max: 1000, placeholder: 's' },
|
{ prop: 'turnTime', label: this.$t('map.turnTime'), type: 'number', min: 0, max: 1000, placeholder: 's' },
|
||||||
{ prop: 'sectionACode', label: this.$t('map.sectionACode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.sectionList },
|
{ prop: 'sectionACode', label: this.$t('map.sectionACode'), type: 'select', optionLabel: 'name&&code', optionValue: 'code', options: this.sectionList },
|
||||||
|
@ -117,7 +117,7 @@ export default {
|
|||||||
labelWidth: '130px',
|
labelWidth: '130px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.textCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.textList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.textCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.textList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'content', label: this.$t('map.textContent'), type: 'fontContent', content: 'content', prepend: 'prepend', placeholder: this.$t('map.pleaseSelect') },
|
{ prop: 'content', label: this.$t('map.textContent'), type: 'fontContent', content: 'content', prepend: 'prepend', placeholder: this.$t('map.pleaseSelect') },
|
||||||
@ -128,7 +128,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -127,7 +127,7 @@ export default {
|
|||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.trainWindowCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.trainWindowList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.trainWindowCode'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.trainWindowList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'width', label: this.$t('map.trainWindowWidth'), type: 'number', min: 0, placeholder: 'px' },
|
{ prop: 'width', label: this.$t('map.trainWindowWidth'), type: 'number', min: 0, placeholder: 'px' },
|
||||||
@ -137,7 +137,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'sectionCode', label: this.$t('map.trainWindowSectionCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.filterSectionList }
|
{ prop: 'sectionCode', label: this.$t('map.trainWindowSectionCode'), type: 'select', optionLabel: 'code&&name', optionValue: 'code', options: this.filterSectionList }
|
||||||
]
|
]
|
||||||
|
@ -99,9 +99,9 @@ export default {
|
|||||||
labelWidth: '150px',
|
labelWidth: '150px',
|
||||||
items: {
|
items: {
|
||||||
draw: {
|
draw: {
|
||||||
name: '绘图数据',
|
name: this.$t('map.drawData'),
|
||||||
item: [
|
item: [
|
||||||
{ prop: 'code', label: this.$t('map.zcCodeColon'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.zcList, change: true, deviceChange: this.deviceChange },
|
{ prop: 'code', label: this.$t('map.code'), type: 'select', optionLabel: 'code', optionValue: 'code', options: this.zcList, change: true, deviceChange: this.deviceChange },
|
||||||
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
{ prop: 'name', label: this.$t('map.statusSignalName'), type: 'input' },
|
||||||
{ prop: 'visible', label: this.$t('map.showZc'), type: 'checkboxx' },
|
{ prop: 'visible', label: this.$t('map.showZc'), type: 'checkboxx' },
|
||||||
{ prop: 'position', label: this.$t('map.stateSignalsPlotCoordinates'), type: 'coordinate', width: '140px', children: [
|
{ prop: 'position', label: this.$t('map.stateSignalsPlotCoordinates'), type: 'coordinate', width: '140px', children: [
|
||||||
@ -111,7 +111,7 @@ export default {
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
name: '地图数据',
|
name: this.$t('map.mapData'),
|
||||||
item: []
|
item: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -107,18 +107,18 @@ export default {
|
|||||||
},
|
},
|
||||||
newRules: {
|
newRules: {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.pleaseEnterMapName'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnterMapName'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
skinCode: [
|
skinCode: [
|
||||||
{ required: true, message: this.$t('map.pleaseChooseSkinCode'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseChooseSkinCode'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
pullRules: {
|
pullRules: {
|
||||||
id: [
|
id: [
|
||||||
{ required: true, message: this.$t('map.pleaseSelectMapSource'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectMapSource'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.pleaseEnterMapName'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseEnterMapName'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -112,23 +112,23 @@ export default {
|
|||||||
editRules() {
|
editRules() {
|
||||||
return {
|
return {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.pleaseEnterMapName'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnterMapName'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
skinCode: [
|
skinCode: [
|
||||||
{ required: true, message: this.$t('map.pleaseSelectAssociatedSkin'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectAssociatedSkin'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
cityCode: [
|
cityCode: [
|
||||||
{ required: true, message: this.$t('map.pleaseSelectAssociatedCity'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelectAssociatedCity'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
updtRules() {
|
updtRules() {
|
||||||
return {
|
return {
|
||||||
linkWidth: [
|
linkWidth: [
|
||||||
{ required: true, message: this.$t('map.pleaseEnteMapLinkWidth'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnteMapLinkWidth'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
zoneWidth: [
|
zoneWidth: [
|
||||||
{ required: true, message: this.$t('map.pleaseEnterMapSectionWidth'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseEnterMapSectionWidth'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -138,7 +138,7 @@ export default {
|
|||||||
deleteObj() {
|
deleteObj() {
|
||||||
this.doClose();
|
this.doClose();
|
||||||
const _that = this;
|
const _that = this;
|
||||||
this.$confirm(this.$t('map.confirmDeletion'), this.$t('map.hint'), {
|
this.$confirm(this.$t('tip.confirmDeletion'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('map.confirm'),
|
confirmButtonText: this.$t('map.confirm'),
|
||||||
cancelButtonText: this.$t('map.cancel'),
|
cancelButtonText: this.$t('map.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
|
@ -127,16 +127,16 @@ export default {
|
|||||||
baseRules() {
|
baseRules() {
|
||||||
return {
|
return {
|
||||||
code: [
|
code: [
|
||||||
{ required: true, message: this.$t('map.productCodeEnter'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.productCodeEnter'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.productNameEnter'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.productNameEnter'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
remarks: [
|
remarks: [
|
||||||
{ required: true, message: this.$t('map.productDescriptionEnter'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.productDescriptionEnter'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
trainTypes: [
|
trainTypes: [
|
||||||
{ required: true, message: this.$t('map.trainingTypeSelect'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.trainingTypeSelect'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -130,7 +130,7 @@ export default {
|
|||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm(this.$t('map.deleteTypeHint'), this.$t('tip.hint'), {
|
this.$confirm(this.$t('tip.deleteTypeHint'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
confirmButtonText: this.$t('tip.confirm'),
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
cancelButtonText: this.$t('tip.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
rules() {
|
rules() {
|
||||||
return {
|
return {
|
||||||
timeArea: [
|
timeArea: [
|
||||||
{ required: true, message: this.$t('map.selectDataRange'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.selectDataRange'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -163,29 +163,29 @@ export default {
|
|||||||
levelRules() {
|
levelRules() {
|
||||||
return {
|
return {
|
||||||
level1: [
|
level1: [
|
||||||
{ required: true, message: this.$t('map.speedLevelEnter1'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.speedLevelEnter1'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
level2: [
|
level2: [
|
||||||
{ required: true, message: this.$t('map.speedLevelEnter2'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.speedLevelEnter2'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
level3: [
|
level3: [
|
||||||
{ required: true, message: this.$t('map.speedLevelEnter3'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.speedLevelEnter3'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
level4: [
|
level4: [
|
||||||
{ required: true, message: this.$t('map.speedLevelEnter4'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.speedLevelEnter4'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
chartRules() {
|
chartRules() {
|
||||||
return {
|
return {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.nameEnter'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.pleaseInputName'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
direct: [
|
direct: [
|
||||||
{ required: true, message: this.$t('map.drivingDirectionSelect'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.drivingDirectionSelect'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
timeInterval: [
|
timeInterval: [
|
||||||
{ required: true, message: this.$t('map.timeBetweenDeparturesEnter'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.timeBetweenDeparturesEnter'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
startTime: [
|
startTime: [
|
||||||
{ required: true, message: this.$t('global.enterStartTime'), trigger: 'blur' }
|
{ required: true, message: this.$t('global.enterStartTime'), trigger: 'blur' }
|
||||||
@ -194,13 +194,13 @@ export default {
|
|||||||
{ required: true, message: this.$t('global.enterEndTime'), trigger: 'blur' }
|
{ required: true, message: this.$t('global.enterEndTime'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
parkingTime: [
|
parkingTime: [
|
||||||
{ required: true, message: this.$t('map.stopTimeEnter'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.stopTimeEnter'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
entrance: [
|
entrance: [
|
||||||
{ required: true, message: this.$t('map.entranceStationSelect'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.entranceStationSelect'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
exit: [
|
exit: [
|
||||||
{ required: true, message: this.$t('map.exportStationSelect'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.exportStationSelect'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -36,7 +36,7 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
return {
|
return {
|
||||||
filename: [
|
filename: [
|
||||||
{ required: true, message: this.$t('map.selectImportFiles'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.selectImportFiles'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -57,7 +57,7 @@ export default {
|
|||||||
if (file) {
|
if (file) {
|
||||||
const loading = this.$loading({
|
const loading = this.$loading({
|
||||||
lock: true,
|
lock: true,
|
||||||
text: this.$t('map.underImport'),
|
text: this.$t('tip.underImport'),
|
||||||
spinner: 'el-icon-loading',
|
spinner: 'el-icon-loading',
|
||||||
background: 'rgba(0, 0, 0, 0.7)'
|
background: 'rgba(0, 0, 0, 0.7)'
|
||||||
});
|
});
|
||||||
|
@ -129,7 +129,7 @@ export default {
|
|||||||
const loading = this.$loading({
|
const loading = this.$loading({
|
||||||
lock: true,
|
lock: true,
|
||||||
visible: true,
|
visible: true,
|
||||||
text: this.$t('map.underImport'),
|
text: this.$t('tip.underImport'),
|
||||||
spinner: 'el-icon-loading',
|
spinner: 'el-icon-loading',
|
||||||
background: 'rgba(0, 0, 0, 0.7)'
|
background: 'rgba(0, 0, 0, 0.7)'
|
||||||
});
|
});
|
||||||
|
@ -71,7 +71,7 @@ export default {
|
|||||||
{ prop: 'code', label: this.$t('map.skinCoding'), type: 'text', required: false, disabled: this.isDisabled },
|
{ prop: 'code', label: this.$t('map.skinCoding'), type: 'text', required: false, disabled: this.isDisabled },
|
||||||
{ prop: 'name', label: this.$t('map.skinDesignation'), type: 'text', required: false },
|
{ prop: 'name', label: this.$t('map.skinDesignation'), type: 'text', required: false },
|
||||||
{ prop: 'origin', label: this.$t('map.coordinatesOrigin'), type: 'point', required: false },
|
{ prop: 'origin', label: this.$t('map.coordinatesOrigin'), type: 'point', required: false },
|
||||||
{ prop: 'scaling', label: this.$t('map.scaling'), type: 'number', required: false, message: this.$t('map.maxScaling') }
|
{ prop: 'scaling', label: this.$t('map.scaling'), type: 'number', required: false, message: this.$t('rules.maxScaling') }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
return form;
|
return form;
|
||||||
@ -80,22 +80,22 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const baseRules = {
|
const baseRules = {
|
||||||
code: [
|
code: [
|
||||||
{ required: true, message: this.$t('map.skinCodingInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.skinCodingInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.skinDesignationInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.skinDesignationInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
origin: [
|
origin: [
|
||||||
{ required: true, message: this.$t('map.coordinatesOriginInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.coordinatesOriginInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
scaling: [
|
scaling: [
|
||||||
{ required: true, message: this.$t('map.scalingInput'), trigger: 'blur' },
|
{ required: true, message: this.$t('rules.scalingInput'), trigger: 'blur' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number(value) >= 1 && Number(value) <= 8) {
|
if (Number(value) >= 1 && Number(value) <= 8) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(this.$t('map.scalingInputPrompt')));
|
callback(new Error(this.$t('rules.scalingInputPrompt')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
@ -151,7 +151,7 @@ export default {
|
|||||||
this.$messageBox(this.$t('tip.creatingFailed'));
|
this.$messageBox(this.$t('tip.creatingFailed'));
|
||||||
});
|
});
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('map.skinCodingExist'));
|
this.$messageBox(this.$t('tip.skinCodingExist'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -103,7 +103,7 @@ export default {
|
|||||||
this.$router.push(`${UrlConfig.map.skinCodeDraft}/edit/${row.id}`);
|
this.$router.push(`${UrlConfig.map.skinCodeDraft}/edit/${row.id}`);
|
||||||
},
|
},
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm(this.$t('map.skinDeleteConfirmation'), this.$t('tip.hint'), {
|
this.$confirm(this.$t('tip.skinDeleteConfirmation'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
confirmButtonText: this.$t('tip.confirm'),
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
cancelButtonText: this.$t('tip.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
|
@ -74,7 +74,7 @@ export default {
|
|||||||
{ prop: 'code', label: this.$t('map.skinCoding'), type: 'text', required: false, disabled: this.isDisabled },
|
{ prop: 'code', label: this.$t('map.skinCoding'), type: 'text', required: false, disabled: this.isDisabled },
|
||||||
{ prop: 'name', label: this.$t('map.skinDesignation'), type: 'text', required: false },
|
{ prop: 'name', label: this.$t('map.skinDesignation'), type: 'text', required: false },
|
||||||
{ prop: 'origin', label: this.$t('map.coordinatesOrigin'), type: 'point', required: false },
|
{ prop: 'origin', label: this.$t('map.coordinatesOrigin'), type: 'point', required: false },
|
||||||
{ prop: 'scaling', label: this.$t('map.scaling'), type: 'number', required: false, message: this.$t('map.maxScaling') },
|
{ prop: 'scaling', label: this.$t('map.scaling'), type: 'number', required: false, message: this.$t('rules.maxScaling') },
|
||||||
{ prop: 'linkWidth', label: this.$t('map.linkWidth'), type: 'number', required: false, message: this.$t('map.maxLinkWidth') },
|
{ prop: 'linkWidth', label: this.$t('map.linkWidth'), type: 'number', required: false, message: this.$t('map.maxLinkWidth') },
|
||||||
{ prop: 'zoneWidth', label: this.$t('map.sectionWidth'), type: 'number', required: false, message: this.$t('map.maxSectionWidth') },
|
{ prop: 'zoneWidth', label: this.$t('map.sectionWidth'), type: 'number', required: false, message: this.$t('map.maxSectionWidth') },
|
||||||
{ prop: 'watermarkShow', label: this.$t('map.showWatermarkOrNot'), type: 'radio', required: false, options: this.$ConstSelect.Whether }
|
{ prop: 'watermarkShow', label: this.$t('map.showWatermarkOrNot'), type: 'radio', required: false, options: this.$ConstSelect.Whether }
|
||||||
@ -86,55 +86,55 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const baseRules = {
|
const baseRules = {
|
||||||
code: [
|
code: [
|
||||||
{ required: true, message: this.$t('map.skinCodingInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.skinCodingInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('map.skinDesignationInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.skinDesignationInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
origin: [
|
origin: [
|
||||||
{ required: true, message: this.$t('map.coordinatesOriginInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.coordinatesOriginInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
scaling: [
|
scaling: [
|
||||||
{ required: true, message: this.$t('map.scalingInput'), trigger: 'blur' },
|
{ required: true, message: this.$t('rules.scalingInput'), trigger: 'blur' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number(value) >= 1 && Number(value) <= 8) {
|
if (Number(value) >= 1 && Number(value) <= 8) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(this.$t('map.scalingInputPrompt')));
|
callback(new Error(this.$t('rules.scalingInputPrompt')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
linkWidth: [
|
linkWidth: [
|
||||||
{ required: true, message: this.$t('map.linkWidthInput'), trigger: 'blur' },
|
{ required: true, message: this.$t('rules.linkWidthInput'), trigger: 'blur' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number.isInteger(Number(value)) && Number(value) >= 5 && Number(value) <= 20) {
|
if (Number.isInteger(Number(value)) && Number(value) >= 5 && Number(value) <= 20) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(this.$t('map.linkWidthInputPrompt')));
|
callback(new Error(this.$t('rules.linkWidthInputPrompt')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
zoneWidth: [
|
zoneWidth: [
|
||||||
{ required: true, message: this.$t('map.sectionWidthInput'), trigger: 'blur' },
|
{ required: true, message: this.$t('rules.sectionWidthInput'), trigger: 'blur' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number.isInteger(Number(value)) && Number(value) >= 5 && Number(value) <= 30) {
|
if (Number.isInteger(Number(value)) && Number(value) >= 5 && Number(value) <= 30) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(this.$t('map.sectionWidthInputPrompt')));
|
callback(new Error(this.$t('rules.sectionWidthInputPrompt')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
watermarkShow: [
|
watermarkShow: [
|
||||||
{ required: true, message: this.$t('map.selectShowWatermark'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.selectShowWatermark'), trigger: 'change' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -189,7 +189,7 @@ export default {
|
|||||||
this.$messageBox(this.$t('tip.creatingFailed'));
|
this.$messageBox(this.$t('tip.creatingFailed'));
|
||||||
});
|
});
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('map.skinCodingExist'));
|
this.$messageBox(this.$t('tip.skinCodingExist'));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
@ -120,7 +120,7 @@ export default {
|
|||||||
this.$router.push(`${UrlConfig.map.skinCodeDraft}/edit/${row.id}`);
|
this.$router.push(`${UrlConfig.map.skinCodeDraft}/edit/${row.id}`);
|
||||||
},
|
},
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm(this.$t('map.skinDeleteConfirmation'), this.$t('tip.hint'), {
|
this.$confirm(this.$t('tip.skinDeleteConfirmation'), this.$t('tip.hint'), {
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
confirmButtonText: this.$t('tip.confirm'),
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
cancelButtonText: this.$t('tip.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
|
@ -11,8 +11,8 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
<div class="draft">
|
<div class="draft">
|
||||||
<el-button-group>
|
<el-button-group>
|
||||||
<el-button type="primary" @click="create">{{$t('global.create')}}</el-button>
|
<el-button type="primary" @click="create">{{ $t('global.create') }}</el-button>
|
||||||
<el-button type="primary" @click="turnback">{{$t('global.return')}}</el-button>
|
<el-button type="primary" @click="turnback">{{ $t('global.return') }}</el-button>
|
||||||
</el-button-group>
|
</el-button-group>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -63,28 +63,28 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
rules() {
|
rules() {
|
||||||
const _this = this;
|
const _this = this;
|
||||||
const baseRules = {
|
const baseRules = {
|
||||||
userId: [
|
userId: [
|
||||||
{ required: true, message: this.$t('orderAuthor.userNameInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.userNameInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
lessonId: [
|
lessonId: [
|
||||||
{ required: true, message: this.$t('orderAuthor.lessonInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.lessonInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
type: [
|
type: [
|
||||||
{ required: true, message: this.$t('orderAuthor.permissionTypeInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.permissionTypeInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
forever: [
|
forever: [
|
||||||
{ required: true, message: this.$t('orderAuthor.foreverRadio'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelect'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
total: [
|
total: [
|
||||||
{ required: true, message: this.$t('orderAuthor.amountInput'), trigger: 'change' },
|
{ required: true, message: this.$t('rules.authorAmountInput'), trigger: 'change' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number.isInteger(Number(value)) && Number(value) >= 0) {
|
if (Number.isInteger(Number(value)) && Number(value) >= 0) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(_this.$t('orderAuthor.amountInputError')));
|
callback(new Error(_this.$t('rules.authorAmountInputError')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
|
@ -1,244 +1,241 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
</QueryListPage>
|
<author-detail ref="authorDetail" />
|
||||||
<author-detail ref="authorDetail"></author-detail>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getLessonPermissonPageList, setLessonPermisson, getDistribute } from '@/api/management/author';
|
import { getLessonPermissonPageList, setLessonPermisson, getDistribute } from '@/api/management/author';
|
||||||
import { UrlConfig } from '@/router/index';
|
import { UrlConfig } from '@/router/index';
|
||||||
import authorDetail from './detail';
|
import authorDetail from './detail';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'author',
|
name: 'Author',
|
||||||
components: {
|
components: {
|
||||||
authorDetail
|
authorDetail
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
param: '',
|
param: '',
|
||||||
WhetherTypeList: [],
|
WhetherTypeList: [],
|
||||||
EffectiveTypeList: [],
|
EffectiveTypeList: [],
|
||||||
PermissionTypeList: [],
|
PermissionTypeList: [],
|
||||||
pagerConfig: {
|
pagerConfig: {
|
||||||
pageSize: 'pageSize',
|
pageSize: 'pageSize',
|
||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
'userMobile': {
|
'userMobile': {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.userMobile')
|
label: this.$t('orderAuthor.userMobile')
|
||||||
},
|
},
|
||||||
'userName': {
|
'userName': {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.userName')
|
label: this.$t('orderAuthor.userName')
|
||||||
},
|
},
|
||||||
'type': {
|
'type': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.permissionType'),
|
label: this.$t('orderAuthor.permissionType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
query: this.queryFunction,
|
query: this.queryFunction,
|
||||||
selectCheckShow: false,
|
selectCheckShow: false,
|
||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.userName'),
|
title: this.$t('orderAuthor.userName'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.userMobile'),
|
title: this.$t('orderAuthor.userMobile'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapName'),
|
title: this.$t('orderAuthor.mapName'),
|
||||||
prop: 'mapName',
|
prop: 'mapName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapProductName'),
|
title: this.$t('orderAuthor.mapProductName'),
|
||||||
prop: 'mapProductName',
|
prop: 'mapProductName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseName'),
|
title: this.$t('orderAuthor.courseName'),
|
||||||
prop: 'lessonName',
|
prop: 'lessonName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permissionType'),
|
title: this.$t('orderAuthor.permissionType'),
|
||||||
prop: 'type',
|
prop: 'type',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.type, this.PermissionTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.type, this.PermissionTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return '' }
|
tagType: (row) => { return ''; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permanenceOrNot'),
|
title: this.$t('orderAuthor.permanenceOrNot'),
|
||||||
prop: 'forever',
|
prop: 'forever',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.forever) {
|
switch (row.forever) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.publicOrPrivate'),
|
title: this.$t('orderAuthor.publicOrPrivate'),
|
||||||
prop: 'canDistribute',
|
prop: 'canDistribute',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.canDistribute) {
|
switch (row.canDistribute) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.totalPermissions'),
|
title: this.$t('orderAuthor.totalPermissions'),
|
||||||
prop: 'amount'
|
prop: 'amount'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.residualPermissionNumber'),
|
title: this.$t('orderAuthor.residualPermissionNumber'),
|
||||||
prop: 'remains'
|
prop: 'remains'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.startTime'),
|
title: this.$t('orderAuthor.startTime'),
|
||||||
prop: 'startTime',
|
prop: 'startTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.endTime'),
|
title: this.$t('orderAuthor.endTime'),
|
||||||
prop: 'endTime',
|
prop: 'endTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseAuthorityStatus'),
|
title: this.$t('orderAuthor.courseAuthorityStatus'),
|
||||||
prop: 'status',
|
prop: 'status',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.status) {
|
switch (row.status) {
|
||||||
case '1': return 'success';
|
case '1': return 'success';
|
||||||
default: return 'danger';
|
default: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: this.$t('global.operate'),
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.setupFailure'),
|
name: this.$t('orderAuthor.setupFailure'),
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
handleClick: this.handleSetFailure,
|
handleClick: this.handleSetFailure,
|
||||||
showControl: (row) => {
|
showControl: (row) => {
|
||||||
return row.status === '1';
|
return row.status === '1';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.setupEffective'),
|
name: this.$t('orderAuthor.setupEffective'),
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
handleClick: this.handleSetFailure,
|
handleClick: this.handleSetFailure,
|
||||||
showControl: (row) => {
|
showControl: (row) => {
|
||||||
return row.status === '0';
|
return row.status === '0';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.renew'),
|
name: this.$t('orderAuthor.renew'),
|
||||||
type: "warning",
|
type: 'warning',
|
||||||
handleClick: this.handleRenewAdd,
|
handleClick: this.handleRenewAdd,
|
||||||
showControl: (row) => {
|
showControl: (row) => {
|
||||||
return row.origin === '01' && (row.forever || (row.endTime && Date.parse(new Date(row.endTime.replace(/\-/g, "\/"))) > Date.parse(new Date())))
|
return row.origin === '01' && (row.forever || (row.endTime && Date.parse(new Date(row.endTime.replace(/\-/g, '\/'))) > Date.parse(new Date())));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.source'),
|
name: this.$t('orderAuthor.source'),
|
||||||
type: '',
|
type: '',
|
||||||
handleClick: this.handleSource,
|
handleClick: this.handleSource
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
loadInitData() {
|
loadInitData() {
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.$Dictionary.permissionType().then(list => {
|
this.$Dictionary.permissionType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.type.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.type.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
this.$convertList(list, this.PermissionTypeList, elem => {
|
this.$convertList(list, this.PermissionTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
formatterDate(row, porpInfo) {
|
formatterDate(row, porpInfo) {
|
||||||
if (row.hasOwnProperty(porpInfo.property)) {
|
return row[porpInfo.property];
|
||||||
}
|
},
|
||||||
return row[porpInfo.property];
|
queryFunction(params) {
|
||||||
},
|
return getLessonPermissonPageList(params);
|
||||||
queryFunction(params) {
|
},
|
||||||
return getLessonPermissonPageList(params);
|
handleSetFailure(index, row) {
|
||||||
},
|
this.$confirm(this.$t('tip.updatePrivilegeTip'), this.$t('global.tips'), {
|
||||||
handleSetFailure(index, row) {
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
this.$confirm(this.$t('orderAuthor.updatePrivilegeTip'), this.$t('tip.hint'), {
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
type: 'warning'
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
}).then(() => {
|
||||||
type: 'warning'
|
setLessonPermisson({ id: row.id, status: row.status == 1 ? '0' : '1' }).then(res => {
|
||||||
}).then(() => {
|
this.$message.success(this.$t('tip.setupSuccessfully'));
|
||||||
setLessonPermisson({ id: row.id, status: row.status == 1 ? '0' : '1' }).then(res => {
|
this.reloadTable();
|
||||||
this.$message.success(this.$t('tip.setupSuccessfully'));
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.$messageBox(this.$t('tip.setupFailed'));
|
||||||
}).catch(error => {
|
});
|
||||||
this.$messageBox(this.$t('tip.setupFailed'));
|
}).catch(() => { });
|
||||||
})
|
},
|
||||||
}).catch(() => { })
|
handleRenewAdd(index, row) {
|
||||||
},
|
this.$router.push({ path: `${UrlConfig.orderauthor.authorDraft}/renew/${row.id}` });
|
||||||
handleRenewAdd(index, row) {
|
},
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.authorDraft}/renew/${row.id}` });
|
handlePermissionAdd() {
|
||||||
},
|
this.$router.push({ path: `${UrlConfig.orderauthor.authorDraft}/add/0` });
|
||||||
handlePermissionAdd() {
|
},
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.authorDraft}/add/0` });
|
reloadTable() {
|
||||||
},
|
if (this.queryList && this.queryList.reload) {
|
||||||
reloadTable() {
|
this.queryList.reload();
|
||||||
if (this.queryList && this.queryList.reload) {
|
}
|
||||||
this.queryList.reload()
|
},
|
||||||
}
|
async handleSource(index, row) {
|
||||||
},
|
try {
|
||||||
async handleSource(index, row) {
|
const res = await getDistribute(row.distributeId);
|
||||||
try {
|
this.$refs.authorDetail.show(res.data);
|
||||||
let res = await getDistribute(row.distributeId);
|
} catch (error) {
|
||||||
this.$refs.authorDetail.show(res.data);
|
this.$messageBox(this.$t('tip.requestFailed'));
|
||||||
} catch (error) {
|
}
|
||||||
this.$messageBox(this.$t('tip.requestFailed'));
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -126,48 +126,48 @@ export default {
|
|||||||
rules() {
|
rules() {
|
||||||
const baseRules = {
|
const baseRules = {
|
||||||
name: [
|
name: [
|
||||||
{ required: true, message: this.$t('orderAuthor.goodsNameInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.goodsNameInput'), trigger: 'blur' }
|
||||||
],
|
],
|
||||||
productType: [
|
productType: [
|
||||||
{ required: true, message: this.$t('orderAuthor.productTypeInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.productTypeInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
mapId: [
|
mapId: [
|
||||||
{ required: true, message: this.$t('orderAuthor.mapInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.mapInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
mapProductCode: [
|
mapProductCode: [
|
||||||
{ required: true, message: this.$t('orderAuthor.productInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.productInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
lessonId: [
|
lessonId: [
|
||||||
{ required: true, message: this.$t('orderAuthor.lessonInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.lessonInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
forever: [
|
forever: [
|
||||||
{ required: true, message: this.$t('orderAuthor.foreverRadio'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.pleaseSelect'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
tryUseTime: [
|
tryUseTime: [
|
||||||
{ required: true, message: this.$t('orderAuthor.trialTimeInput'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.trialTimeInput'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
tryUseTimeUnit: [
|
tryUseTimeUnit: [
|
||||||
{ required: true, message: this.$t('orderAuthor.unitOfTimeRadio'), trigger: 'change' }
|
{ required: true, message: this.$t('rules.unitOfTimeRadio'), trigger: 'change' }
|
||||||
],
|
],
|
||||||
price: [
|
price: [
|
||||||
{ required: true, message: this.$t('orderAuthor.totalPriceInput'), trigger: 'change' },
|
{ required: true, message: this.$t('rules.totalPriceInput'), trigger: 'change' },
|
||||||
{
|
{
|
||||||
validator(rule, value, callback) {
|
validator(rule, value, callback) {
|
||||||
if (Number(value) >= 0) {
|
if (Number(value) >= 0) {
|
||||||
if (String(value).split('.')[1] && String(value).split('.')[1].length > 2) {
|
if (String(value).split('.')[1] && String(value).split('.')[1].length > 2) {
|
||||||
callback(new Error(this.$t('orderAuthor.totalPriceInputError1')));
|
callback(new Error(this.$t('rules.totalPriceInputError1')));
|
||||||
} else {
|
} else {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
callback(new Error(this.$t('orderAuthor.totalPriceInputError2')));
|
callback(new Error(this.$t('rules.totalPriceInputError2')));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
remarks: [
|
remarks: [
|
||||||
{ required: true, message: this.$t('orderAuthor.goodsDescribtionInput'), trigger: 'blur' }
|
{ required: true, message: this.$t('rules.goodsDescribtionInput'), trigger: 'blur' }
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,221 +1,220 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
</QueryListPage>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getCommodityList, delCommodity, setCommodityStatus } from '@/api/management/goods';
|
import { getCommodityList, delCommodity, setCommodityStatus } from '@/api/management/goods';
|
||||||
import { UrlConfig } from '@/router/index';
|
import { UrlConfig } from '@/router/index';
|
||||||
import { listPublishMap } from '@/api/jmap/map';
|
import { listPublishMap } from '@/api/jmap/map';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'Dictionary',
|
name: 'Dictionary',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
productTypeList: [],
|
productTypeList: [],
|
||||||
EffectiveTypeList: [],
|
EffectiveTypeList: [],
|
||||||
pagerConfig: {
|
pagerConfig: {
|
||||||
pageSize: 'pageSize',
|
pageSize: 'pageSize',
|
||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '80px',
|
labelWidth: '80px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
name: {
|
name: {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.name')
|
label: this.$t('orderAuthor.name')
|
||||||
},
|
},
|
||||||
productType: {
|
productType: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.productType'),
|
label: this.$t('orderAuthor.productType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mapId: {
|
mapId: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.map'),
|
label: this.$t('orderAuthor.map'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
status: {
|
status: {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.state'),
|
label: this.$t('orderAuthor.state'),
|
||||||
config: {
|
config: {
|
||||||
data: this.$ConstSelect.Status
|
data: this.$ConstSelect.Status
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
query: getCommodityList,
|
query: getCommodityList,
|
||||||
selectCheckShow: false,
|
selectCheckShow: false,
|
||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.commodityName'),
|
title: this.$t('orderAuthor.commodityName'),
|
||||||
prop: 'name'
|
prop: 'name'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.productType'),
|
title: this.$t('orderAuthor.productType'),
|
||||||
prop: 'productType',
|
prop: 'productType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.productType, this.productTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.productType, this.productTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success' }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapName'),
|
title: this.$t('orderAuthor.mapName'),
|
||||||
prop: 'mapName',
|
prop: 'mapName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.productName'),
|
title: this.$t('orderAuthor.productName'),
|
||||||
prop: 'prdName',
|
prop: 'prdName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseName'),
|
title: this.$t('orderAuthor.courseName'),
|
||||||
prop: 'lessonName',
|
prop: 'lessonName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.price'),
|
title: this.$t('orderAuthor.price'),
|
||||||
prop: 'price'
|
prop: 'price'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.state'),
|
title: this.$t('orderAuthor.state'),
|
||||||
prop: 'status',
|
prop: 'status',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.status) {
|
switch (row.status) {
|
||||||
case '1': return 'success';
|
case '1': return 'success';
|
||||||
default: return 'danger';
|
default: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.describtion'),
|
title: this.$t('orderAuthor.describtion'),
|
||||||
prop: 'remarks'
|
prop: 'remarks'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.creationTime'),
|
title: this.$t('orderAuthor.creationTime'),
|
||||||
prop: 'createTime'
|
prop: 'createTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: this.$t('global.operate'),
|
title: this.$t('global.operate'),
|
||||||
width: '250',
|
width: this.$i18n.locale == 'en' ? '300': '250',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: this.$t('global.edit'),
|
name: this.$t('global.edit'),
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
handleClick: this.handleEdit
|
handleClick: this.handleEdit
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.setupFailure'),
|
name: this.$t('orderAuthor.setupFailure'),
|
||||||
handleClick: this.handleEfficacy,
|
handleClick: this.handleEfficacy,
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
showControl: (row) => {
|
showControl: (row) => {
|
||||||
return row.status == '1';
|
return row.status == '1';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.setupEffective'),
|
name: this.$t('orderAuthor.setupEffective'),
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
handleClick: this.handleEfficacy,
|
handleClick: this.handleEfficacy,
|
||||||
showControl: (row) => {
|
showControl: (row) => {
|
||||||
return row.status == '0';
|
return row.status == '0';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('global.delete'),
|
name: this.$t('global.delete'),
|
||||||
type: 'danger',
|
type: 'danger',
|
||||||
handleClick: this.handleDelete,
|
handleClick: this.handleDelete
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: this.$t('global.add'), handler: this.handleAdd },
|
{ text: this.$t('global.add'), handler: this.handleAdd }
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
||||||
currentModel: {}
|
currentModel: {}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async loadInitData() {
|
async loadInitData() {
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// 产品类型
|
// 产品类型
|
||||||
this.$Dictionary.productType().then(list => {
|
this.$Dictionary.productType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.productType.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.productType.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
this.$convertList(list, this.productTypeList, elem => {
|
this.$convertList(list, this.productTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
try {
|
try {
|
||||||
// 获取地图
|
// 获取地图
|
||||||
let res = await listPublishMap();
|
const res = await listPublishMap();
|
||||||
res.data.forEach(elem => {
|
res.data.forEach(elem => {
|
||||||
this.queryForm.queryObject.mapId.config.data.push({ value: elem.id, label: elem.name });
|
this.queryForm.queryObject.mapId.config.data.push({ value: elem.id, label: elem.name });
|
||||||
});
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error, '获取发布地图');
|
console.error(error, '获取发布地图');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleEdit(index, row) {
|
handleEdit(index, row) {
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.commodityDraft}/edit/${row.id}` });
|
this.$router.push({ path: `${UrlConfig.orderauthor.commodityDraft}/edit/${row.id}` });
|
||||||
},
|
},
|
||||||
|
|
||||||
handleAdd() {
|
handleAdd() {
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.commodityDraft}/add/0` });
|
this.$router.push({ path: `${UrlConfig.orderauthor.commodityDraft}/add/0` });
|
||||||
},
|
},
|
||||||
// 设置失效
|
// 设置失效
|
||||||
handleEfficacy(index, row) {
|
handleEfficacy(index, row) {
|
||||||
this.$confirm(this.$t('orderAuthor.updateProductTip'), this.$t('tip.hint'), {
|
this.$confirm(this.$t('tip.updateProductTip'), this.$t('global.tips'), {
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
setCommodityStatus(row.id).then(res => {
|
setCommodityStatus(row.id).then(res => {
|
||||||
this.$message.success(this.$t('tip.operationSuccessfully'));
|
this.$message.success(this.$t('tip.operationSuccessfully'));
|
||||||
this.reloadTable()
|
this.reloadTable();
|
||||||
}).catch(err => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('tip.operationFailed'));
|
this.$messageBox(this.$t('tip.operationFailed'));
|
||||||
this.reloadTable()
|
this.reloadTable();
|
||||||
})
|
});
|
||||||
}).catch(() => { })
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
handleDelete(index, row) {
|
handleDelete(index, row) {
|
||||||
this.$confirm(this.$t('orderAuthor.deleteProductTip'), this.$t('tip.hint'), {
|
this.$confirm(this.$t('tip.deleteProductTip'), this.$t('global.tips'), {
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
delCommodity(row.id).then(response => {
|
delCommodity(row.id).then(response => {
|
||||||
this.$message.success(this.$t('tip.successfullyDelete'));
|
this.$message.success(this.$t('tip.successfullyDelete'));
|
||||||
this.reloadTable()
|
this.reloadTable();
|
||||||
}).catch(error => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
this.$messageBox(this.$t('tip.failDelete'))
|
this.$messageBox(this.$t('tip.failDelete'));
|
||||||
})
|
});
|
||||||
}).catch(() => { })
|
}).catch(() => { });
|
||||||
},
|
},
|
||||||
|
|
||||||
reloadTable() {
|
reloadTable() {
|
||||||
this.queryList.reload()
|
this.queryList.reload();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,189 +1,195 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="this.$t('orderAuthor.trainingList')" :visible.sync="show" top="20px" width="90%" :before-doClose="doClose"
|
<el-dialog
|
||||||
:close-on-click-modal="false">
|
:title="this.$t('orderAuthor.trainingList')"
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
:visible.sync="show"
|
||||||
</QueryListPage>
|
top="20px"
|
||||||
</el-dialog>
|
width="90%"
|
||||||
|
:before-do-close="doClose"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
>
|
||||||
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { putMapProductOnLine, putMapProductOffLine } from '@/api/jmap/mapdraft';
|
import { getCommodityList } from '@/api/management/goods';
|
||||||
import { getCommodityList, delCommodity, setCommodityStatus } from '@/api/management/goods';
|
import { listPublishMap } from '@/api/jmap/map';
|
||||||
import { getProductList } from '@/api/management/mapprd';
|
|
||||||
import { pageQueryTraining } from '@/api/jmap/training';
|
|
||||||
import { getSkinCodeList } from '@/api/management/mapskin'
|
|
||||||
import localStore from 'storejs';
|
|
||||||
import { listPublishMap } from '@/api/jmap/map';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'addGoods',
|
name: 'AddGoods',
|
||||||
props: {
|
props: {
|
||||||
trainings: {
|
trainings: {
|
||||||
type: Array,
|
type: Array,
|
||||||
},
|
default() {
|
||||||
detail: {
|
return [];
|
||||||
type: Object,
|
}
|
||||||
}
|
},
|
||||||
},
|
detail: {
|
||||||
data() {
|
type: Object,
|
||||||
return {
|
default() {
|
||||||
show: false,
|
return null;
|
||||||
productTypeList: [],
|
}
|
||||||
EffectiveTypeList: [],
|
}
|
||||||
pagerConfig: {
|
},
|
||||||
pageSize: 'pageSize',
|
data() {
|
||||||
pageIndex: 'pageNum'
|
return {
|
||||||
},
|
show: false,
|
||||||
queryForm: {
|
productTypeList: [],
|
||||||
labelWidth: '80px',
|
EffectiveTypeList: [],
|
||||||
reset: true,
|
pagerConfig: {
|
||||||
queryObject: {
|
pageSize: 'pageSize',
|
||||||
name: {
|
pageIndex: 'pageNum'
|
||||||
type: 'text',
|
},
|
||||||
label: this.$t('orderAuthor.name')
|
queryForm: {
|
||||||
},
|
labelWidth: '80px',
|
||||||
productType: {
|
reset: true,
|
||||||
type: 'select',
|
queryObject: {
|
||||||
label: this.$t('orderAuthor.productType'),
|
name: {
|
||||||
config: {
|
type: 'text',
|
||||||
data: []
|
label: this.$t('orderAuthor.name')
|
||||||
}
|
},
|
||||||
},
|
productType: {
|
||||||
mapId: {
|
type: 'select',
|
||||||
type: 'select',
|
label: this.$t('orderAuthor.productType'),
|
||||||
label: this.$t('orderAuthor.map'),
|
config: {
|
||||||
config: {
|
data: []
|
||||||
data: []
|
}
|
||||||
}
|
},
|
||||||
},
|
mapId: {
|
||||||
status: {
|
type: 'select',
|
||||||
type: 'select',
|
label: this.$t('orderAuthor.map'),
|
||||||
label: this.$t('orderAuthor.state'),
|
config: {
|
||||||
config: {
|
data: []
|
||||||
data: this.$ConstSelect.Status
|
}
|
||||||
}
|
},
|
||||||
}
|
status: {
|
||||||
}
|
type: 'select',
|
||||||
},
|
label: this.$t('orderAuthor.state'),
|
||||||
queryList: {
|
config: {
|
||||||
query: getCommodityList,
|
data: this.$ConstSelect.Status
|
||||||
selectCheckShow: false,
|
}
|
||||||
indexShow: true,
|
}
|
||||||
columns: [
|
}
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.commodityName'),
|
queryList: {
|
||||||
prop: 'name'
|
query: getCommodityList,
|
||||||
},
|
selectCheckShow: false,
|
||||||
{
|
indexShow: true,
|
||||||
title: this.$t('orderAuthor.productType'),
|
columns: [
|
||||||
prop: 'productType',
|
{
|
||||||
type: 'tag',
|
title: this.$t('orderAuthor.commodityName'),
|
||||||
columnValue: (row) => { return this.$convertField(row.productType, this.productTypeList, ['value', 'label']) },
|
prop: 'name'
|
||||||
tagType: (row) => { return 'success' }
|
},
|
||||||
},
|
{
|
||||||
{
|
title: this.$t('orderAuthor.productType'),
|
||||||
title: this.$t('orderAuthor.mapName'),
|
prop: 'productType',
|
||||||
prop: 'mapName',
|
type: 'tag',
|
||||||
},
|
columnValue: (row) => { return this.$convertField(row.productType, this.productTypeList, ['value', 'label']); },
|
||||||
{
|
tagType: (row) => { return 'success'; }
|
||||||
title: this.$t('orderAuthor.productName'),
|
},
|
||||||
prop: 'prdName',
|
{
|
||||||
},
|
title: this.$t('orderAuthor.mapName'),
|
||||||
{
|
prop: 'mapName'
|
||||||
title: this.$t('orderAuthor.courseName'),
|
},
|
||||||
prop: 'lessonName',
|
{
|
||||||
},
|
title: this.$t('orderAuthor.productName'),
|
||||||
{
|
prop: 'prdName'
|
||||||
title: this.$t('orderAuthor.price'),
|
},
|
||||||
prop: 'price'
|
{
|
||||||
},
|
title: this.$t('orderAuthor.courseName'),
|
||||||
{
|
prop: 'lessonName'
|
||||||
title: this.$t('orderAuthor.state'),
|
},
|
||||||
prop: 'status',
|
{
|
||||||
type: 'tag',
|
title: this.$t('orderAuthor.price'),
|
||||||
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']) },
|
prop: 'price'
|
||||||
tagType: (row) => {
|
},
|
||||||
switch (row.status) {
|
{
|
||||||
case '1': return 'success';
|
title: this.$t('orderAuthor.state'),
|
||||||
default: return 'danger';
|
prop: 'status',
|
||||||
}
|
type: 'tag',
|
||||||
}
|
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']); },
|
||||||
},
|
tagType: (row) => {
|
||||||
{
|
switch (row.status) {
|
||||||
title: this.$t('orderAuthor.describtion'),
|
case '1': return 'success';
|
||||||
prop: 'remarks'
|
default: return 'danger';
|
||||||
},
|
}
|
||||||
{
|
}
|
||||||
title: this.$t('orderAuthor.creationTime'),
|
},
|
||||||
prop: 'createTime'
|
{
|
||||||
},
|
title: this.$t('orderAuthor.describtion'),
|
||||||
{
|
prop: 'remarks'
|
||||||
type: 'button',
|
},
|
||||||
title: this.$t('global.operate'),
|
{
|
||||||
width: '250',
|
title: this.$t('orderAuthor.creationTime'),
|
||||||
buttons: [
|
prop: 'createTime'
|
||||||
{
|
},
|
||||||
name: '选择',
|
{
|
||||||
type: 'primary',
|
type: 'button',
|
||||||
handleClick: this.handleAdd
|
title: this.$t('global.operate'),
|
||||||
},
|
width: '250',
|
||||||
]
|
buttons: [
|
||||||
}
|
{
|
||||||
],
|
name: this.$t('orderAuthor.select'),
|
||||||
actions: [
|
type: 'primary',
|
||||||
]
|
handleClick: this.handleAdd
|
||||||
},
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
actions: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
|
||||||
currentModel: {}
|
currentModel: {}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
doShow() {
|
doShow() {
|
||||||
this.show = true;
|
this.show = true;
|
||||||
this.reloadTable();
|
this.reloadTable();
|
||||||
},
|
},
|
||||||
doClose() {
|
doClose() {
|
||||||
this.show = false;
|
this.show = false;
|
||||||
},
|
},
|
||||||
async loadInitData() {
|
async loadInitData() {
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
// 产品类型
|
// 产品类型
|
||||||
this.$Dictionary.productType().then(list => {
|
this.$Dictionary.productType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.productType.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.productType.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
this.$convertList(list, this.productTypeList, elem => {
|
this.$convertList(list, this.productTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
try {
|
try {
|
||||||
// 获取地图
|
// 获取地图
|
||||||
let res = await listPublishMap();
|
const res = await listPublishMap();
|
||||||
res.data.forEach(elem => {
|
res.data.forEach(elem => {
|
||||||
this.queryForm.queryObject.mapId.config.data.push({ value: elem.id, label: elem.name });
|
this.queryForm.queryObject.mapId.config.data.push({ value: elem.id, label: elem.name });
|
||||||
});
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error, '获取发布地图');
|
console.error(error, '获取发布地图');
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
handleAdd(index, row) {
|
handleAdd(index, row) {
|
||||||
this.$emit('selectGoods', row);
|
this.$emit('selectGoods', row);
|
||||||
this.doClose();
|
this.doClose();
|
||||||
},
|
},
|
||||||
|
|
||||||
reloadTable() {
|
reloadTable() {
|
||||||
if (this.queryList && this.queryList.reload) {
|
if (this.queryList && this.queryList.reload) {
|
||||||
this.queryList.reload();
|
this.queryList.reload();
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,54 +1,62 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="title" :visible.sync="show" width="360px" :before-close="doClose" :zIndex="2000" :modal="false"
|
<el-dialog
|
||||||
:close-on-click-modal="false" v-dialogDrag>
|
v-dialogDrag
|
||||||
<div style="text-align:center">
|
:title="title"
|
||||||
<el-radio-group v-model="formModel.canDistribute">
|
:visible.sync="show"
|
||||||
<el-radio :label="true">{{$t('orderAuthor.publicAuthority')}}</el-radio>
|
width="360px"
|
||||||
<el-radio :label="false">{{$t('orderAuthor.privateAuthority')}}</el-radio>
|
:before-close="doClose"
|
||||||
</el-radio-group>
|
:z-index="2000"
|
||||||
</div>
|
:modal="false"
|
||||||
<span slot="footer" class="dialog-footer">
|
:close-on-click-modal="false"
|
||||||
<el-button @click="handleClose">{{$t('global.cancel')}}</el-button>
|
>
|
||||||
<el-button type="primary" @click="handleSure">{{$t('global.confirm')}}</el-button>
|
<div style="text-align:center">
|
||||||
</span>
|
<el-radio-group v-model="formModel.canDistribute">
|
||||||
</el-dialog>
|
<el-radio :label="true">{{ $t('orderAuthor.publicAuthority') }}</el-radio>
|
||||||
|
<el-radio :label="false">{{ $t('orderAuthor.privateAuthority') }}</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</div>
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="handleClose">{{ $t('global.cancel') }}</el-button>
|
||||||
|
<el-button type="primary" @click="handleSure">{{ $t('global.confirm') }}</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: 'CanTransfer',
|
name: 'CanTransfer',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
dialogShow: false,
|
dialogShow: false,
|
||||||
formModel: {
|
formModel: {
|
||||||
canDistribute: true,
|
canDistribute: true
|
||||||
},
|
},
|
||||||
data: {},
|
data: {}
|
||||||
|
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
show() {
|
show() {
|
||||||
return this.dialogShow;
|
return this.dialogShow;
|
||||||
},
|
},
|
||||||
title() { return this.$t('orderAuthor.optionPrivilegeTransfer'); }
|
title() { return this.$t('orderAuthor.optionPrivilegeTransfer'); }
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
doShow(data) {
|
doShow(data) {
|
||||||
this.dialogShow = true;
|
this.dialogShow = true;
|
||||||
this.formModel.canDistribute = true;
|
this.formModel.canDistribute = true;
|
||||||
this.data = data;
|
this.data = data;
|
||||||
},
|
},
|
||||||
doClose() {
|
doClose() {
|
||||||
this.dialogShow = false;
|
this.dialogShow = false;
|
||||||
},
|
},
|
||||||
handleSure() {
|
handleSure() {
|
||||||
this.doClose();
|
this.doClose();
|
||||||
Object.assign(this.data, this.formModel);
|
Object.assign(this.data, this.formModel);
|
||||||
this.$emit('distribute', this.data);
|
this.$emit('distribute', this.data);
|
||||||
},
|
},
|
||||||
handleClose() {
|
handleClose() {
|
||||||
this.doClose();
|
this.doClose();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,312 +1,310 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
</QueryListPage>
|
<can-distribute ref="canDistribute" @distribute="distribute" />
|
||||||
<can-distribute ref="canDistribute" @distribute="distribute"></can-distribute>
|
<qr-code ref="qrCode" />
|
||||||
<qr-code ref="qrCode"></qr-code>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getOrderPageList, giveOrder } from '@/api/management/order';
|
import { getOrderPageList } from '@/api/management/order';
|
||||||
import { getSellerList } from '@/api/management/user';
|
import { getSellerList } from '@/api/management/user';
|
||||||
import { getOrganizationList } from '@/api/management/organization';
|
import { getOrganizationList } from '@/api/management/organization';
|
||||||
import { giveLessons } from '@/api/management/distribute';
|
import { giveLessons } from '@/api/management/distribute';
|
||||||
import { OperatorModel } from '@/scripts/ConstDic';
|
import { OperatorModel } from '@/scripts/ConstDic';
|
||||||
import { UrlConfig } from '@/router/index';
|
import { UrlConfig } from '@/router/index';
|
||||||
import QrCode from '@/components/QrCode';
|
import QrCode from '@/components/QrCode';
|
||||||
import CanDistribute from './canDistribute';
|
import CanDistribute from './canDistribute';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'List',
|
name: 'List',
|
||||||
components: {
|
components: {
|
||||||
QrCode,
|
QrCode,
|
||||||
CanDistribute
|
CanDistribute
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
SellerList: [],
|
SellerList: [],
|
||||||
BizTypeList: [],
|
BizTypeList: [],
|
||||||
OrderTypeList: [],
|
OrderTypeList: [],
|
||||||
PayTypeList: [],
|
PayTypeList: [],
|
||||||
PayStatusList: [],
|
PayStatusList: [],
|
||||||
// OrganizationList: [],
|
// OrganizationList: [],
|
||||||
WhetherTypeList: [],
|
WhetherTypeList: [],
|
||||||
EffectiveTypeList: [],
|
EffectiveTypeList: [],
|
||||||
PermissionTypeList: [],
|
PermissionTypeList: [],
|
||||||
pagerConfig: {
|
pagerConfig: {
|
||||||
pageSize: 'pageSize',
|
pageSize: 'pageSize',
|
||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '180px',
|
labelWidth: '180px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
'organizationId': {
|
'organizationId': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.organizationOrEnterprise'),
|
label: this.$t('orderAuthor.organizationOrEnterprise'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
'userName': {
|
'userName': {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.userName'),
|
label: this.$t('orderAuthor.userName')
|
||||||
},
|
},
|
||||||
'permissionType': {
|
'permissionType': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.permissionType'),
|
label: this.$t('orderAuthor.permissionType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
query: this.queryFunction,
|
query: this.queryFunction,
|
||||||
selectCheckShow: false,
|
selectCheckShow: false,
|
||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
||||||
prop: 'organizationName',
|
prop: 'organizationName',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return row.organizationName },
|
columnValue: (row) => { return row.organizationName; },
|
||||||
tagType: (row) => { return '' }
|
tagType: (row) => { return ''; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.userName'),
|
title: this.$t('orderAuthor.userName'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.commodityName'),
|
title: this.$t('orderAuthor.commodityName'),
|
||||||
prop: 'goodsName',
|
prop: 'goodsName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permissionType'),
|
title: this.$t('orderAuthor.permissionType'),
|
||||||
prop: 'permissionType',
|
prop: 'permissionType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return '' }
|
tagType: (row) => { return ''; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permissionNumber'),
|
title: this.$t('orderAuthor.permissionNumber'),
|
||||||
prop: 'amount'
|
prop: 'amount'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permanenceOrNot'),
|
title: this.$t('orderAuthor.permanenceOrNot'),
|
||||||
prop: 'forever',
|
prop: 'forever',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
return row.forever ? 'success' : 'danger';
|
return row.forever ? 'success' : 'danger';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.startDate'),
|
title: this.$t('orderAuthor.startDate'),
|
||||||
prop: 'startTime',
|
prop: 'startTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
format: 'yyyy-MM-dd'
|
format: 'yyyy-MM-dd'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.purchaseMonths'),
|
title: this.$t('orderAuthor.purchaseMonths'),
|
||||||
prop: 'monthAmount'
|
prop: 'monthAmount'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.totalPrice'),
|
title: this.$t('orderAuthor.totalPrice'),
|
||||||
prop: 'totalPrice'
|
prop: 'totalPrice'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.paymentMethod'),
|
title: this.$t('orderAuthor.paymentMethod'),
|
||||||
prop: 'payWays',
|
prop: 'payWays',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.payWays, this.PayTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.payWays, this.PayTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success' }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.creationDate'),
|
title: this.$t('orderAuthor.creationDate'),
|
||||||
prop: 'createTime'
|
prop: 'createTime'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.orderType'),
|
title: this.$t('orderAuthor.orderType'),
|
||||||
prop: 'orderType',
|
prop: 'orderType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.orderType, this.OrderTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.orderType, this.OrderTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success' }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.contractNumber'),
|
title: this.$t('orderAuthor.contractNumber'),
|
||||||
prop: 'contractNo'
|
prop: 'contractNo'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.businessType'),
|
title: this.$t('orderAuthor.businessType'),
|
||||||
prop: 'bizType',
|
prop: 'bizType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.bizType, this.BizTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.bizType, this.BizTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return 'success' }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.paymentStatus'),
|
title: this.$t('orderAuthor.paymentStatus'),
|
||||||
prop: 'payStatus',
|
prop: 'payStatus',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.payStatus, this.PayStatusList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.payStatus, this.PayStatusList, ['value', 'label']); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.payStatus) {
|
switch (row.payStatus) {
|
||||||
case '01': return 'danger';
|
case '01': return 'danger';
|
||||||
case '02': return 'success';
|
case '02': return 'success';
|
||||||
case '03': return 'info';
|
case '03': return 'info';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.salesman'),
|
title: this.$t('orderAuthor.salesman'),
|
||||||
prop: 'sellerName',
|
prop: 'sellerName',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return row.sellerName },
|
columnValue: (row) => { return row.sellerName; },
|
||||||
tagType: (row) => { return 'success' }
|
tagType: (row) => { return 'success'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: this.$t('global.operate'),
|
title: this.$t('global.operate'),
|
||||||
width: '260',
|
width: '260',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: this.$t('global.edit'),
|
name: this.$t('global.edit'),
|
||||||
handleClick: this.handleEdit
|
handleClick: this.handleEdit
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.obtainQrCode'),
|
name: this.$t('orderAuthor.obtainQrCode'),
|
||||||
type: "warning",
|
type: 'warning',
|
||||||
handleClick: this.handleCanDistribute,
|
handleClick: this.handleCanDistribute,
|
||||||
showControl: (row) => { return row.bizType !== '02' && row.orderType !== '01' && row.qrCodeGenerated }
|
showControl: (row) => { return row.bizType !== '02' && row.orderType !== '01' && row.qrCodeGenerated; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.generatingQRCode'),
|
name: this.$t('orderAuthor.generatingQRCode'),
|
||||||
type: "warning",
|
type: 'warning',
|
||||||
handleClick: this.handleCanDistribute,
|
handleClick: this.handleCanDistribute,
|
||||||
showControl: (row) => { return row.bizType !== '02' && row.orderType !== '01' && !row.qrCodeGenerated }
|
showControl: (row) => { return row.bizType !== '02' && row.orderType !== '01' && !row.qrCodeGenerated; }
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: this.$t('global.add'), btnCode: 'employee_insert', handler: this.handleNormalAdd },
|
{ text: this.$t('global.add'), btnCode: 'employee_insert', handler: this.handleNormalAdd }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
loadInitData() {
|
loadInitData() {
|
||||||
this.queryForm.queryObject.organizationId.config.data.length = 0;
|
this.queryForm.queryObject.organizationId.config.data.length = 0;
|
||||||
getOrganizationList().then(response => {
|
getOrganizationList().then(response => {
|
||||||
// this.OrganizationList = response.data;
|
// this.OrganizationList = response.data;
|
||||||
response.data.forEach(elem => {
|
response.data.forEach(elem => {
|
||||||
this.queryForm.queryObject.organizationId.config.data.push({ value: elem.id, label: elem.name });
|
this.queryForm.queryObject.organizationId.config.data.push({ value: elem.id, label: elem.name });
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
getSellerList().then(response => {
|
getSellerList().then(response => {
|
||||||
this.SellerList = response.data;
|
this.SellerList = response.data;
|
||||||
})
|
});
|
||||||
|
|
||||||
this.$Dictionary.bizType().then(list => {
|
this.$Dictionary.bizType().then(list => {
|
||||||
this.$convertList(list, this.BizTypeList, elem => {
|
this.$convertList(list, this.BizTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
})
|
});
|
||||||
|
|
||||||
|
this.$Dictionary.orderType().then(list => {
|
||||||
|
this.$convertList(list, this.OrderTypeList, elem => {
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
this.$Dictionary.orderType().then(list => {
|
this.$Dictionary.payType().then(list => {
|
||||||
this.$convertList(list, this.OrderTypeList, elem => {
|
this.$convertList(list, this.PayTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
})
|
});
|
||||||
|
|
||||||
this.$Dictionary.payType().then(list => {
|
this.$Dictionary.payStatus().then(list => {
|
||||||
this.$convertList(list, this.PayTypeList, elem => {
|
this.$convertList(list, this.PayStatusList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
})
|
});
|
||||||
|
|
||||||
this.$Dictionary.payStatus().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
this.$convertList(list, this.PayStatusList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
})
|
});
|
||||||
|
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.permissionType().then(list => {
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
list.forEach(elem => {
|
||||||
return true;
|
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
})
|
this.$convertList(list, this.PermissionTypeList, elem => {
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
queryFunction(params) {
|
||||||
|
return getOrderPageList(params);
|
||||||
|
},
|
||||||
|
handleNormalAdd() {
|
||||||
|
this.$router.push({ path: `${UrlConfig.orderauthor.orderDraft}/add/0` });
|
||||||
|
},
|
||||||
|
handleEdit(index, data) {
|
||||||
|
this.$alert('功能待开发', this.$t('tip.hint'), {
|
||||||
|
confirmButtonText: this.$t('tip.confirm'),
|
||||||
|
callback: action => {
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleCanDistribute(index, data) {
|
||||||
|
if (data.qrCodeGenerated) {
|
||||||
|
data.canDistribute = true;
|
||||||
|
this.distribute(data);
|
||||||
|
} else {
|
||||||
|
this.$refs.canDistribute.doShow(data);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
distribute(data) {
|
||||||
|
const model = {
|
||||||
|
amount: data.amount,
|
||||||
|
forever: data.forever,
|
||||||
|
orderCode: data.code,
|
||||||
|
startTime: data.startTime + ' 00:00:00',
|
||||||
|
monthAmount: data.monthAmount,
|
||||||
|
canDistribute: data.canDistribute,
|
||||||
|
operator: OperatorModel.TRANSFER,
|
||||||
|
mapId: data.mapId,
|
||||||
|
lessonId: data.lessonId || '',
|
||||||
|
mapProductCode: data.mapProductCode || '',
|
||||||
|
permissionType: data.permissionType,
|
||||||
|
organizationId: data.organizationId
|
||||||
|
};
|
||||||
|
|
||||||
this.$Dictionary.permissionType().then(list => {
|
giveLessons(model).then(response => {
|
||||||
list.forEach(elem => {
|
this.reloadTable();
|
||||||
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
if (data.qrCodeGenerated) {
|
||||||
});
|
this.$refs.qrCode.doShow({
|
||||||
this.$convertList(list, this.PermissionTypeList, elem => {
|
url: response.data,
|
||||||
return true;
|
title: this.$t('orderAuthor.transferQRCode')
|
||||||
});
|
});
|
||||||
})
|
}
|
||||||
},
|
|
||||||
queryFunction(params) {
|
|
||||||
return getOrderPageList(params);
|
|
||||||
},
|
|
||||||
handleNormalAdd() {
|
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.orderDraft}/add/0` })
|
|
||||||
},
|
|
||||||
handleEdit(index, data) {
|
|
||||||
this.$alert('功能待开发', this.$t('tip.hint'), {
|
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
|
||||||
callback: action => {
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
handleCanDistribute(index, data) {
|
|
||||||
if (data.qrCodeGenerated) {
|
|
||||||
data.canDistribute = true;
|
|
||||||
this.distribute(data);
|
|
||||||
} else {
|
|
||||||
this.$refs.canDistribute.doShow(data);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
distribute(data) {
|
|
||||||
let model = {
|
|
||||||
amount: data.amount,
|
|
||||||
forever: data.forever,
|
|
||||||
orderCode: data.code,
|
|
||||||
startTime: data.startTime + " 00:00:00",
|
|
||||||
monthAmount: data.monthAmount,
|
|
||||||
canDistribute: data.canDistribute,
|
|
||||||
operator: OperatorModel.TRANSFER,
|
|
||||||
mapId: data.mapId,
|
|
||||||
lessonId: data.lessonId || '',
|
|
||||||
mapProductCode: data.mapProductCode || '',
|
|
||||||
permissionType: data.permissionType,
|
|
||||||
organizationId: data.organizationId
|
|
||||||
}
|
|
||||||
|
|
||||||
giveLessons(model).then(response => {
|
}).catch(() => {
|
||||||
this.reloadTable();
|
this.$messageBox(this.$t('error.transferredQRCodeFailed'));
|
||||||
if (data.qrCodeGenerated) {
|
});
|
||||||
this.$refs.qrCode.doShow({
|
},
|
||||||
url: response.data,
|
reloadTable() {
|
||||||
title: this.$t('orderAuthor.transferQRCode')
|
if (this.queryList && this.queryList.reload) {
|
||||||
});
|
this.queryList.reload();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}).catch(error => {
|
}
|
||||||
this.$messageBox(this.$t('error.transferredQRCodeFailed'));
|
};
|
||||||
});
|
|
||||||
},
|
|
||||||
reloadTable() {
|
|
||||||
if (this.queryList && this.queryList.reload) {
|
|
||||||
this.queryList.reload()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,174 +1,169 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
</QueryListPage>
|
<div class="draft">
|
||||||
<div class="draft">
|
<el-button-group>
|
||||||
<el-button-group>
|
<el-button type="primary" @click="turnback">{{ $t('global.return') }}</el-button>
|
||||||
<el-button type="primary" @click="turnback">{{$t('global.return')}}</el-button>
|
</el-button-group>
|
||||||
</el-button-group>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { superAdmin } from '@/router';
|
import { getPermissionPackageDetail } from '@/api/management/distribute';
|
||||||
import { listPackagePermission, restorePackagePermission, getPermissionPackageDetail } from '@/api/management/distribute';
|
|
||||||
import { UrlConfig } from '@/router/index';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'TrainsferDetail',
|
name: 'TrainsferDetail',
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
show: false,
|
show: false,
|
||||||
height: 0,
|
height: 0,
|
||||||
WhetherTypeList: [],
|
WhetherTypeList: [],
|
||||||
EffectiveTypeList: [],
|
EffectiveTypeList: [],
|
||||||
PermissionTypeList: [],
|
PermissionTypeList: [],
|
||||||
pagerConfig: {
|
pagerConfig: {
|
||||||
pageSize: 'pageSize',
|
pageSize: 'pageSize',
|
||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
'permissionType': {
|
'permissionType': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.permissionType'),
|
label: this.$t('orderAuthor.permissionType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
query: this.queryFunction,
|
query: this.queryFunction,
|
||||||
selectCheckShow: false,
|
selectCheckShow: false,
|
||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
||||||
prop: 'organizationName'
|
prop: 'organizationName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.userName'),
|
title: this.$t('orderAuthor.userName'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.userMobile'),
|
title: this.$t('orderAuthor.userMobile'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapName'),
|
title: this.$t('orderAuthor.mapName'),
|
||||||
prop: 'mapName',
|
prop: 'mapName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapProductName'),
|
title: this.$t('orderAuthor.mapProductName'),
|
||||||
prop: 'mapProductName',
|
prop: 'mapProductName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseName'),
|
title: this.$t('orderAuthor.courseName'),
|
||||||
prop: 'lessonName',
|
prop: 'lessonName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permissionType'),
|
title: this.$t('orderAuthor.permissionType'),
|
||||||
prop: 'permissionType',
|
prop: 'permissionType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return '' }
|
tagType: (row) => { return ''; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.publicOrPrivate'),
|
title: this.$t('orderAuthor.publicOrPrivate'),
|
||||||
prop: 'canDistribute',
|
prop: 'canDistribute',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.canDistribute) {
|
switch (row.canDistribute) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permanenceOrNot'),
|
title: this.$t('orderAuthor.permanenceOrNot'),
|
||||||
prop: 'forever',
|
prop: 'forever',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.forever) {
|
switch (row.forever) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.startTime'),
|
title: this.$t('orderAuthor.startTime'),
|
||||||
prop: 'startTime',
|
prop: 'startTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.endTime'),
|
title: this.$t('orderAuthor.endTime'),
|
||||||
prop: 'endTime',
|
prop: 'endTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseAuthorityStatus'),
|
title: this.$t('orderAuthor.courseAuthorityStatus'),
|
||||||
prop: 'status',
|
prop: 'status',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.status) {
|
switch (row.status) {
|
||||||
case '1': return 'success';
|
case '1': return 'success';
|
||||||
default: return 'danger';
|
default: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
loadInitData() {
|
loadInitData() {
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.$Dictionary.permissionType().then(list => {
|
this.$Dictionary.permissionType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
this.$convertList(list, this.PermissionTypeList, elem => {
|
this.$convertList(list, this.PermissionTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
formatterDate(row, porpInfo) {
|
formatterDate(row, porpInfo) {
|
||||||
if (row.hasOwnProperty(porpInfo.property)) {
|
return row[porpInfo.property];
|
||||||
}
|
},
|
||||||
return row[porpInfo.property];
|
queryFunction(params) {
|
||||||
},
|
// if (params.permissionType) {
|
||||||
queryFunction(params) {
|
return getPermissionPackageDetail(this.$route.params.permissionId, params);
|
||||||
// if (params.permissionType) {
|
// }
|
||||||
return getPermissionPackageDetail(this.$route.params.permissionId, params)
|
},
|
||||||
// }
|
reloadTable() {
|
||||||
},
|
if (this.queryList && this.queryList.reload) {
|
||||||
reloadTable() {
|
this.queryList.reload();
|
||||||
if (this.queryList && this.queryList.reload) {
|
}
|
||||||
this.queryList.reload()
|
},
|
||||||
}
|
turnback() {
|
||||||
},
|
this.$router.go(-1);
|
||||||
turnback() {
|
}
|
||||||
this.$router.go(-1)
|
}
|
||||||
}
|
};
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
.draft {
|
.draft {
|
||||||
|
@ -1,208 +1,221 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="title" :visible.sync="show" top="20px" width="90%" :before-close="doClose"
|
<el-dialog
|
||||||
:close-on-click-modal="false">
|
:title="title"
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
:visible.sync="show"
|
||||||
</QueryListPage>
|
top="20px"
|
||||||
</el-dialog>
|
width="90%"
|
||||||
|
:before-close="doClose"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
>
|
||||||
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { listCanPackagePermission } from '@/api/management/distribute';
|
import { listCanPackagePermission } from '@/api/management/distribute';
|
||||||
import { UrlConfig } from '@/router/index';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'author',
|
name: 'Author',
|
||||||
props: {
|
props: {
|
||||||
ruleList: {
|
ruleList: {
|
||||||
type: Array
|
type: Array,
|
||||||
},
|
default() {
|
||||||
EffectiveTypeList: {
|
return [];
|
||||||
type: Array,
|
}
|
||||||
},
|
},
|
||||||
PermissionTypeList: {
|
effectiveTypeList: {
|
||||||
type: Array
|
type: Array,
|
||||||
},
|
default() {
|
||||||
},
|
return [];
|
||||||
data() {
|
}
|
||||||
return {
|
},
|
||||||
show: false,
|
permissionTypeList: {
|
||||||
param: '',
|
type: Array,
|
||||||
pagerConfig: {
|
default() {
|
||||||
pageSize: 'pageSize',
|
return [];
|
||||||
pageIndex: 'pageNum'
|
}
|
||||||
},
|
}
|
||||||
queryForm: {
|
},
|
||||||
labelWidth: '100px',
|
data() {
|
||||||
reset: true,
|
return {
|
||||||
queryObject: {
|
show: false,
|
||||||
'permissionType': {
|
param: '',
|
||||||
type: 'select',
|
pagerConfig: {
|
||||||
label: this.$t('orderAuthor.permissionType'),
|
pageSize: 'pageSize',
|
||||||
config: {
|
pageIndex: 'pageNum'
|
||||||
data: []
|
},
|
||||||
}
|
queryForm: {
|
||||||
},
|
labelWidth: '100px',
|
||||||
'canDistribute': {
|
reset: true,
|
||||||
type: 'select',
|
queryObject: {
|
||||||
label: this.$t('orderAuthor.publicOrPrivate'),
|
'permissionType': {
|
||||||
config: {
|
type: 'select',
|
||||||
data: []
|
label: this.$t('orderAuthor.permissionType'),
|
||||||
}
|
config: {
|
||||||
}
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
'canDistribute': {
|
||||||
query: this.queryFunction,
|
type: 'select',
|
||||||
selectCheckShow: false,
|
label: this.$t('orderAuthor.publicOrPrivate'),
|
||||||
indexShow: true,
|
config: {
|
||||||
columns: [
|
data: []
|
||||||
{
|
}
|
||||||
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
}
|
||||||
prop: 'organizationName'
|
}
|
||||||
},
|
},
|
||||||
{
|
queryList: {
|
||||||
title: this.$t('orderAuthor.userName'),
|
query: this.queryFunction,
|
||||||
prop: 'userName'
|
selectCheckShow: false,
|
||||||
},
|
indexShow: true,
|
||||||
{
|
columns: [
|
||||||
title: this.$t('orderAuthor.userMobile'),
|
{
|
||||||
prop: 'userMobile'
|
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
||||||
},
|
prop: 'organizationName'
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.mapName'),
|
{
|
||||||
prop: 'mapName',
|
title: this.$t('orderAuthor.userName'),
|
||||||
},
|
prop: 'userName'
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.mapProductName'),
|
{
|
||||||
prop: 'mapProductName',
|
title: this.$t('orderAuthor.userMobile'),
|
||||||
},
|
prop: 'userMobile'
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.courseName'),
|
{
|
||||||
prop: 'lessonName',
|
title: this.$t('orderAuthor.mapName'),
|
||||||
},
|
prop: 'mapName'
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.permissionType'),
|
{
|
||||||
prop: 'permissionType',
|
title: this.$t('orderAuthor.mapProductName'),
|
||||||
type: 'tag',
|
prop: 'mapProductName'
|
||||||
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']) },
|
},
|
||||||
tagType: (row) => { return '' }
|
{
|
||||||
},
|
title: this.$t('orderAuthor.courseName'),
|
||||||
{
|
prop: 'lessonName'
|
||||||
title: this.$t('orderAuthor.publicOrPrivate'),
|
},
|
||||||
prop: 'canDistribute',
|
{
|
||||||
type: 'tag',
|
title: this.$t('orderAuthor.permissionType'),
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList') },
|
prop: 'permissionType',
|
||||||
tagType: (row) => {
|
type: 'tag',
|
||||||
switch (row.canDistribute) {
|
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']); },
|
||||||
case true: return 'success';
|
tagType: (row) => { return ''; }
|
||||||
case false: return 'danger';
|
},
|
||||||
}
|
{
|
||||||
}
|
title: this.$t('orderAuthor.publicOrPrivate'),
|
||||||
},
|
prop: 'canDistribute',
|
||||||
{
|
type: 'tag',
|
||||||
title: this.$t('orderAuthor.permanenceOrNot'),
|
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList'); },
|
||||||
prop: 'forever',
|
tagType: (row) => {
|
||||||
type: 'tag',
|
switch (row.canDistribute) {
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether') },
|
case true: return 'success';
|
||||||
tagType: (row) => {
|
case false: return 'danger';
|
||||||
switch (row.forever) {
|
}
|
||||||
case true: return 'success';
|
}
|
||||||
case false: return 'danger';
|
},
|
||||||
}
|
{
|
||||||
}
|
title: this.$t('orderAuthor.permanenceOrNot'),
|
||||||
},
|
prop: 'forever',
|
||||||
// {
|
type: 'tag',
|
||||||
// title: '权限总数',
|
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether'); },
|
||||||
// prop: 'amount'
|
tagType: (row) => {
|
||||||
// },
|
switch (row.forever) {
|
||||||
// {
|
case true: return 'success';
|
||||||
// title: '剩余权限数量',
|
case false: return 'danger';
|
||||||
// prop: 'remains'
|
}
|
||||||
// },
|
}
|
||||||
{
|
},
|
||||||
title: this.$t('orderAuthor.startTime'),
|
// {
|
||||||
prop: 'startTime',
|
// title: '权限总数',
|
||||||
type: 'formatter',
|
// prop: 'amount'
|
||||||
formatter: this.formatterDate
|
// },
|
||||||
|
// {
|
||||||
|
// title: '剩余权限数量',
|
||||||
|
// prop: 'remains'
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
title: this.$t('orderAuthor.startTime'),
|
||||||
|
prop: 'startTime',
|
||||||
|
type: 'formatter',
|
||||||
|
formatter: this.formatterDate
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.endTime'),
|
title: this.$t('orderAuthor.endTime'),
|
||||||
prop: 'endTime',
|
prop: 'endTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: this.$t('global.operate'),
|
title: this.$t('global.operate'),
|
||||||
width: '120',
|
width: '120',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: this.$t('global.add'),
|
name: this.$t('global.add'),
|
||||||
handleClick: this.handlePut,
|
handleClick: this.handlePut,
|
||||||
type: '',
|
type: '',
|
||||||
showControl: (row) => { return !row.isPut && row.permissionType }
|
showControl: (row) => { return !row.isPut && row.permissionType; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('global.delete'),
|
name: this.$t('global.delete'),
|
||||||
handleClick: this.handlePop,
|
handleClick: this.handlePop,
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
showControl: (row) => { return row.isPut && row.permissionType }
|
showControl: (row) => { return row.isPut && row.permissionType; }
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
watch: {
|
computed: {
|
||||||
PermissionTypeList: function (list) {
|
title() {
|
||||||
if (list && list.length) {
|
return this.$t('orderAuthor.editPermissionRules');
|
||||||
this.queryForm.queryObject.permissionType.config.data = list;
|
}
|
||||||
}
|
},
|
||||||
}
|
watch: {
|
||||||
},
|
PermissionTypeList: function (list) {
|
||||||
computed: {
|
if (list && list.length) {
|
||||||
title() {
|
this.queryForm.queryObject.permissionType.config.data = list;
|
||||||
return this.$t('orderAuthor.editPermissionRules');
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.queryForm.queryObject.canDistribute.config.data = this.$ConstSelect.PermissionUseList;
|
this.queryForm.queryObject.canDistribute.config.data = this.$ConstSelect.PermissionUseList;
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
formatterDate(row, porpInfo) {
|
formatterDate(row, porpInfo) {
|
||||||
return String(row[porpInfo.property] || '').split(' ')[0];
|
return String(row[porpInfo.property] || '').split(' ')[0];
|
||||||
},
|
},
|
||||||
async queryFunction(params) {
|
async queryFunction(params) {
|
||||||
let resp = await listCanPackagePermission(params);
|
const resp = await listCanPackagePermission(params);
|
||||||
this.ruleList.forEach(elem => {
|
this.ruleList.forEach(elem => {
|
||||||
resp.data.list.forEach(item => {
|
resp.data.list.forEach(item => {
|
||||||
if (item.id == elem.id) {
|
if (item.id == elem.id) {
|
||||||
item.isPut = true;
|
item.isPut = true;
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
return resp;
|
return resp;
|
||||||
},
|
},
|
||||||
reloadTable() {
|
reloadTable() {
|
||||||
if (this.queryList && this.queryList.reload) {
|
if (this.queryList && this.queryList.reload) {
|
||||||
this.queryList.reload()
|
this.queryList.reload();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
doShow() {
|
doShow() {
|
||||||
this.show = true
|
this.show = true;
|
||||||
},
|
},
|
||||||
doClose() {
|
doClose() {
|
||||||
this.show = false;
|
this.show = false;
|
||||||
},
|
},
|
||||||
handlePut(index, row) {
|
handlePut(index, row) {
|
||||||
this.$emit('addRuleForm', index, row);
|
this.$emit('addRuleForm', index, row);
|
||||||
},
|
},
|
||||||
handlePop(index, row) {
|
handlePop(index, row) {
|
||||||
this.$emit('deleteForm', index, row);
|
this.$emit('deleteForm', index, row);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
</script>
|
</script>
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
<el-step icon="el-icon-setting" />
|
<el-step icon="el-icon-setting" />
|
||||||
</el-steps>
|
</el-steps>
|
||||||
<el-card class="forms pack-rule">
|
<el-card class="forms pack-rule">
|
||||||
<el-button class="addList" size="small" @click="dialogSelect">{{$t('orderAuthor.addRecords')}}</el-button>
|
<el-button class="addList" size="small" @click="dialogSelect">{{ $t('orderAuthor.addRecords') }}</el-button>
|
||||||
<el-table
|
<el-table
|
||||||
:data="ruleList"
|
:data="ruleList"
|
||||||
border
|
border
|
||||||
@ -28,7 +28,7 @@
|
|||||||
<el-table-column prop="remains" :label="this.$t('orderAuthor.residualPermissionNumber')" width="80" />
|
<el-table-column prop="remains" :label="this.$t('orderAuthor.residualPermissionNumber')" width="80" />
|
||||||
<el-table-column :label="this.$t('global.operate')" width="60">
|
<el-table-column :label="this.$t('global.operate')" width="60">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button type="text" size="small" @click="deleteForm(scope.$index, scope.row)">{{$t('global.delete')}}
|
<el-button type="text" size="small" @click="deleteForm(scope.$index, scope.row)">{{ $t('global.delete') }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -36,9 +36,9 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
<div class="draft">
|
<div class="draft">
|
||||||
<el-button-group>
|
<el-button-group>
|
||||||
<el-button v-if="!urlInfo.url" type="primary" @click="packForm">{{$t('orderAuthor.packaging')}}</el-button>
|
<el-button v-if="!urlInfo.url" type="primary" @click="packForm">{{ $t('orderAuthor.packaging') }}</el-button>
|
||||||
<el-button v-if="urlInfo.url" type="primary" @click="QrCodeShow">{{$t('orderAuthor.obtainQrCode')}}</el-button>
|
<el-button v-if="urlInfo.url" type="primary" @click="QrCodeShow">{{ $t('orderAuthor.obtainQrCode') }}</el-button>
|
||||||
<el-button type="primary" @click="turnback">{{$t('global.return')}}</el-button>
|
<el-button type="primary" @click="turnback">{{ $t('global.return') }}</el-button>
|
||||||
</el-button-group>
|
</el-button-group>
|
||||||
</div>
|
</div>
|
||||||
<choose-permission
|
<choose-permission
|
||||||
@ -168,10 +168,10 @@ export default {
|
|||||||
};
|
};
|
||||||
this.qrCodeShow();
|
this.qrCodeShow();
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$messageBox(this.$t('orderAuthor.packagingFailed'));
|
this.$messageBox(this.$t('tip.packagingFailed'));
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.$messageBox(this.$t('orderAuthor.selectPackagingRecord'));
|
this.$messageBox(this.$t('tip.selectPackagingRecord'));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
qrCodeShow() {
|
qrCodeShow() {
|
||||||
|
@ -1,264 +1,261 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList">
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
</QueryListPage>
|
<qr-code ref="qrCode" />
|
||||||
<qr-code ref="qrCode"></qr-code>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { superAdmin } from '@/router';
|
import { superAdmin } from '@/router';
|
||||||
import { listPackagePermission, restorePackagePermission, getPackageQrCode, permissionDistributeUnPackage } from '@/api/management/distribute';
|
import { listPackagePermission, restorePackagePermission, getPackageQrCode, permissionDistributeUnPackage } from '@/api/management/distribute';
|
||||||
import { UrlConfig } from '@/router/index';
|
import { UrlConfig } from '@/router/index';
|
||||||
import QrCode from "@/components/QrCode";
|
import QrCode from '@/components/QrCode';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'author',
|
name: 'Author',
|
||||||
components: {
|
components: {
|
||||||
QrCode
|
QrCode
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
EffectiveTypeList: [],
|
EffectiveTypeList: [],
|
||||||
PermissionTypeList: [],
|
PermissionTypeList: [],
|
||||||
pagerConfig: {
|
pagerConfig: {
|
||||||
pageSize: 'pageSize',
|
pageSize: 'pageSize',
|
||||||
pageIndex: 'pageNum'
|
pageIndex: 'pageNum'
|
||||||
},
|
},
|
||||||
queryForm: {
|
queryForm: {
|
||||||
labelWidth: '120px',
|
labelWidth: '120px',
|
||||||
reset: true,
|
reset: true,
|
||||||
queryObject: {
|
queryObject: {
|
||||||
'userMobile': {
|
'userMobile': {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.founderPhone')
|
label: this.$t('orderAuthor.founderPhone')
|
||||||
},
|
},
|
||||||
'userName': {
|
'userName': {
|
||||||
type: 'text',
|
type: 'text',
|
||||||
label: this.$t('orderAuthor.founder')
|
label: this.$t('orderAuthor.founder')
|
||||||
},
|
},
|
||||||
'permissionType': {
|
'permissionType': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.permissionType'),
|
label: this.$t('orderAuthor.permissionType'),
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
'status': {
|
'status': {
|
||||||
type: 'select',
|
type: 'select',
|
||||||
label: this.$t('orderAuthor.authorityStatus'),
|
label: this.$t('orderAuthor.authorityStatus'),
|
||||||
value: '1',
|
value: '1',
|
||||||
config: {
|
config: {
|
||||||
data: []
|
data: []
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
queryList: {
|
queryList: {
|
||||||
query: this.queryFunction,
|
query: this.queryFunction,
|
||||||
selectCheckShow: false,
|
selectCheckShow: false,
|
||||||
indexShow: true,
|
indexShow: true,
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
title: this.$t('orderAuthor.organizationOrEnterprise'),
|
||||||
prop: 'organizationName'
|
prop: 'organizationName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.founder'),
|
title: this.$t('orderAuthor.founder'),
|
||||||
prop: 'userName'
|
prop: 'userName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.founderPhone'),
|
title: this.$t('orderAuthor.founderPhone'),
|
||||||
prop: 'userMobile'
|
prop: 'userMobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapName'),
|
title: this.$t('orderAuthor.mapName'),
|
||||||
prop: 'mapName',
|
prop: 'mapName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.mapProductName'),
|
title: this.$t('orderAuthor.mapProductName'),
|
||||||
prop: 'mapProductName',
|
prop: 'mapProductName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.courseName'),
|
title: this.$t('orderAuthor.courseName'),
|
||||||
prop: 'lessonName',
|
prop: 'lessonName'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permissionType'),
|
title: this.$t('orderAuthor.permissionType'),
|
||||||
prop: 'permissionType',
|
prop: 'permissionType',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.permissionType, this.PermissionTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => { return '' }
|
tagType: (row) => { return ''; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.publicOrPrivate'),
|
title: this.$t('orderAuthor.publicOrPrivate'),
|
||||||
prop: 'canDistribute',
|
prop: 'canDistribute',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.canDistribute, 'PermissionUseList'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.canDistribute) {
|
switch (row.canDistribute) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.permanenceOrNot'),
|
title: this.$t('orderAuthor.permanenceOrNot'),
|
||||||
prop: 'forever',
|
prop: 'forever',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether') },
|
columnValue: (row) => { return this.$ConstSelect.translate(row.forever, 'Whether'); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.forever) {
|
switch (row.forever) {
|
||||||
case true: return 'success';
|
case true: return 'success';
|
||||||
case false: return 'danger';
|
case false: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.startTime'),
|
title: this.$t('orderAuthor.startTime'),
|
||||||
prop: 'startTime',
|
prop: 'startTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.endTime'),
|
title: this.$t('orderAuthor.endTime'),
|
||||||
prop: 'endTime',
|
prop: 'endTime',
|
||||||
type: 'formatter',
|
type: 'formatter',
|
||||||
formatter: this.formatterDate
|
formatter: this.formatterDate
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('orderAuthor.authorityStatus'),
|
title: this.$t('orderAuthor.authorityStatus'),
|
||||||
prop: 'status',
|
prop: 'status',
|
||||||
type: 'tag',
|
type: 'tag',
|
||||||
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']) },
|
columnValue: (row) => { return this.$convertField(row.status, this.EffectiveTypeList, ['value', 'label']); },
|
||||||
tagType: (row) => {
|
tagType: (row) => {
|
||||||
switch (row.status) {
|
switch (row.status) {
|
||||||
case '1': return 'success';
|
case '1': return 'success';
|
||||||
default: return 'danger';
|
default: return 'danger';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'button',
|
type: 'button',
|
||||||
title: this.$t('global.operate'),
|
title: this.$t('global.operate'),
|
||||||
width: '300',
|
width: this.$i18n.locale == 'en' ? '370': '300',
|
||||||
hide: (row) => { return this.$store.state.user.roles.indexOf(superAdmin) < 0; },
|
hide: (row) => { return this.$store.state.user.roles.indexOf(superAdmin) < 0; },
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.obtainQrCode'),
|
name: this.$t('orderAuthor.obtainQrCode'),
|
||||||
handleClick: this.handleRtCodeShow,
|
handleClick: this.handleRtCodeShow,
|
||||||
type: '',
|
type: '',
|
||||||
showControl: (row) => { return true }
|
showControl: (row) => { return true; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.authorityDetails'),
|
name: this.$t('orderAuthor.authorityDetails'),
|
||||||
handleClick: this.handlePermissionDetail,
|
handleClick: this.handlePermissionDetail,
|
||||||
type: '',
|
type: '',
|
||||||
showControl: (row) => { return row.status == '1' && (row.source == '02' || row.source == '04') }
|
showControl: (row) => { return row.status == '1' && (row.source == '02' || row.source == '04'); }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.recovery'),
|
name: this.$t('orderAuthor.recovery'),
|
||||||
handleClick: this.handleRestore,
|
handleClick: this.handleRestore,
|
||||||
type: 'danger',
|
type: 'danger',
|
||||||
showControl: (row) => { return row.status == '1' && row.source == '04' }
|
showControl: (row) => { return row.status == '1' && row.source == '04'; }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: this.$t('orderAuthor.unpacking'),
|
name: this.$t('orderAuthor.unpacking'),
|
||||||
handleClick: this.handleUnPackage,
|
handleClick: this.handleUnPackage,
|
||||||
type: 'danger',
|
type: 'danger',
|
||||||
showControl: (row) => { return row.status == '1' && row.source == '02' }
|
showControl: (row) => { return row.status == '1' && row.source == '02'; }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
{ text: this.$t('orderAuthor.privilegePackaging'), btnCode: 'employee_insert', handler: this.handlePackage },
|
{ text: this.$t('orderAuthor.privilegePackaging'), btnCode: 'employee_insert', handler: this.handlePackage }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
loadInitData() {
|
loadInitData() {
|
||||||
this.$Dictionary.effectiveType().then(list => {
|
this.$Dictionary.effectiveType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.status.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.status.config.data.push({ value: elem.code, label: elem.name });
|
||||||
})
|
});
|
||||||
this.$convertList(list, this.EffectiveTypeList, elem => {
|
this.$convertList(list, this.EffectiveTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.$Dictionary.permissionType().then(list => {
|
this.$Dictionary.permissionType().then(list => {
|
||||||
list.forEach(elem => {
|
list.forEach(elem => {
|
||||||
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
this.queryForm.queryObject.permissionType.config.data.push({ value: elem.code, label: elem.name });
|
||||||
});
|
});
|
||||||
this.$convertList(list, this.PermissionTypeList, elem => {
|
this.$convertList(list, this.PermissionTypeList, elem => {
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
this.PermissionTypeList.push({ value: undefined, label: this.$t('orderAuthor.permissionPack') });
|
this.PermissionTypeList.push({ value: undefined, label: this.$t('orderAuthor.permissionPack') });
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
formatterDate(row, porpInfo) {
|
formatterDate(row, porpInfo) {
|
||||||
if (row.hasOwnProperty(porpInfo.property)) {
|
return row[porpInfo.property];
|
||||||
}
|
},
|
||||||
return row[porpInfo.property];
|
queryFunction(params) {
|
||||||
},
|
return listPackagePermission(params);
|
||||||
queryFunction(params) {
|
},
|
||||||
return listPackagePermission(params);
|
reloadTable() {
|
||||||
},
|
if (this.queryList && this.queryList.reload) {
|
||||||
reloadTable() {
|
this.queryList.reload();
|
||||||
if (this.queryList && this.queryList.reload) {
|
}
|
||||||
this.queryList.reload()
|
},
|
||||||
}
|
handlePermissionDetail(index, row) {
|
||||||
},
|
this.$router.push({ path: `${UrlConfig.orderauthor.transferDetail}/${row.id}` });
|
||||||
handlePermissionDetail(index, row) {
|
},
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.transferDetail}/${row.id}` })
|
handleRtCodeShow(index, row) {
|
||||||
},
|
getPackageQrCode({ id: row.id }).then(resp => {
|
||||||
handleRtCodeShow(index, row) {
|
this.$refs.qrCode.doShow({
|
||||||
getPackageQrCode({ id: row.id }).then(resp => {
|
url: resp.data,
|
||||||
this.$refs.qrCode.doShow({
|
title: this.$t('orderAuthor.privilegeTransferQRCode')
|
||||||
url: resp.data,
|
});
|
||||||
title: this.$t('orderAuthor.privilegeTransferQRCode')
|
}).catch(() => {
|
||||||
});
|
this.$messageBox(this.$t('tip.getQRCodeFailure'));
|
||||||
}).catch(error => {
|
});
|
||||||
this.$messageBox(this.$t('orderAuthor.getQRCodeFailure'));
|
},
|
||||||
})
|
handleRestore(index, row) {
|
||||||
},
|
this.$confirm(this.$t('tip.recoveryPrivilegeTip'), this.$t('global.tips'), {
|
||||||
handleRestore(index, row) {
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
this.$confirm(this.$t('orderAuthor.recoveryPrivilegeTip'), this.$t('tip.hint'), {
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
type: 'warning'
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
}).then(() => {
|
||||||
type: 'warning'
|
restorePackagePermission(row.id).then(resp => {
|
||||||
}).then(() => {
|
this.reloadTable();
|
||||||
restorePackagePermission(row.id).then(resp => {
|
this.$message.success(this.$t('tip.recoveryPrivilegesSuccessful'));
|
||||||
this.reloadTable();
|
}).catch(() => {
|
||||||
this.$message.success(this.$t('tip.recoveryPrivilegesSuccessful'));
|
this.$messageBox(this.$t('tip.recoveryPrivilegesFailed'));
|
||||||
}).catch(error => {
|
});
|
||||||
this.$messageBox(this.$t('tip.recoveryPrivilegesFailed'));
|
}).catch(() => { });
|
||||||
})
|
},
|
||||||
}).catch(() => { });
|
handleUnPackage(index, row) {
|
||||||
},
|
this.$confirm(this.$t('tip.unpackingTip'), this.$t('global.tips'), {
|
||||||
handleUnPackage(index, row) {
|
confirmButtonText: this.$t('global.confirm'),
|
||||||
this.$confirm(this.$t('orderAuthor.unpackingTip'), this.$t('tip.hint'), {
|
cancelButtonText: this.$t('global.cancel'),
|
||||||
confirmButtonText: this.$t('tip.confirm'),
|
type: 'warning'
|
||||||
cancelButtonText: this.$t('tip.cancel'),
|
}).then(() => {
|
||||||
type: 'warning'
|
permissionDistributeUnPackage(row.id).then(resp => {
|
||||||
}).then(() => {
|
this.reloadTable();
|
||||||
permissionDistributeUnPackage(row.id).then(resp => {
|
this.$message.success(this.$t('tip.unpackingSuccessful'));
|
||||||
this.reloadTable();
|
}).catch(() => {
|
||||||
this.$message.success(this.$t('tip.unpackingSuccessful'));
|
this.$messageBox(this.$t('tip.unpackingFailed'));
|
||||||
}).catch(error => {
|
});
|
||||||
this.$messageBox(this.$t('tip.unpackingFailed'));
|
}).catch(() => { });
|
||||||
})
|
},
|
||||||
}).catch(() => { });
|
handlePackage() {
|
||||||
},
|
this.$router.push({ path: `${UrlConfig.orderauthor.trainferPackage}` });
|
||||||
handlePackage() {
|
}
|
||||||
this.$router.push({ path: `${UrlConfig.orderauthor.trainferPackage}` })
|
}
|
||||||
}
|
};
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -67,9 +67,9 @@ export default {
|
|||||||
this.height = this._clientHeight - 50;
|
this.height = this._clientHeight - 50;
|
||||||
},
|
},
|
||||||
initLoadPage() {
|
initLoadPage() {
|
||||||
const data = { id: this.$route.params.trainingId };
|
const trainingId = this.$route.params.trainingId;
|
||||||
if (parseInt(data.id)) {
|
if (parseInt(trainingId)) {
|
||||||
getTrainingDetail(data)
|
getTrainingDetail(trainingId)
|
||||||
.then(res => {
|
.then(res => {
|
||||||
this.courseModel = {
|
this.courseModel = {
|
||||||
id: res.data.id,
|
id: res.data.id,
|
||||||
|
Loading…
Reference in New Issue
Block a user