fengdong777 2 years ago
parent
commit
efd99bf026
  1. 2
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchmodletemplate.js
  2. 12
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchorderinfo.js
  3. 2
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchpatrolmodle.js
  4. 2
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchstandards.js
  5. 16
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchtemplate.js
  6. 2
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchworker.js
  7. 2
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/sysmenu.js
  8. 162
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/layout/components/Sidebar/index.vue
  9. 125
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/router/index.js
  10. 4
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/router/modules/codemenu.js
  11. 153
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchmodletemplate.vue
  12. 42
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchmodletemplateAdd.vue
  13. 116
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandards.vue
  14. 8
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandardsAdds.vue
  15. 0
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandardsInfos.vue
  16. 230
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchorderinfo.vue
  17. 259
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchorderinfoAdd.vue
  18. 27
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplan.vue
  19. 0
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplanAdds.vue
  20. 0
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplanInfos.vue
  21. 138
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchpatrolmodle/dispatchpatrolmodle.vue
  22. 241
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchworker/dispatchworker.vue
  23. 275
      yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchworker/dispatchworkerAdd.vue

2
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchmodletemplate.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchmodletemplate/delBySids',
method: 'delete',
method: 'post',
data: params
})
},

12
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchorderinfo.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchorderinfo/delBySids',
method: 'delete',
method: 'post',
data: params
})
},
@ -55,5 +55,13 @@ export default {
method: 'post',
data: params
})
}
},
// 告警新增
saveOrUpdates: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchopmalarm/save',
method: 'post',
data: params
})
},
}

2
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchpatrolmodle.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchpatrolmodle/delBySids',
method: 'delete',
method: 'post',
data: params
})
},

2
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchstandards.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchstandards/delBySids',
method: 'delete',
method: 'post',
data: params
})
},

16
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchtemplate.js

@ -3,7 +3,7 @@ import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
listPage: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/listPage',
method: 'post',
@ -11,7 +11,7 @@ export default {
})
},
// 保存新增记录
saveOrUpdate: function(params) {
saveOrUpdate: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/save',
method: 'post',
@ -19,21 +19,21 @@ export default {
})
},
// 通过sid删除一条或多条记录
delBySids: function(params) {
delBySids: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/delBySids',
method: 'delete',
method: 'post',
data: params
})
},
// 通过sid查询一条记录
fetchBySid: function(sid) {
fetchBySid: function (sid) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/fetchDetailsBySid/' + sid
})
},
// 提交
doSubmit: function(params) {
doSubmit: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/doSubmit',
method: 'post',
@ -41,7 +41,7 @@ export default {
})
},
// 导入
importExcel: function(params) {
importExcel: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/importExcel',
method: 'post',
@ -49,7 +49,7 @@ export default {
})
},
// 导出
exportExcel: function(params) {
exportExcel: function (params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchtemplate/exportExcel',
method: 'post',

2
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/dispatchworker.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/dispatchworker/delBySids',
method: 'delete',
method: 'post',
data: params
})
},

2
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/api/yxtdispatchcenter/sysmenu.js

@ -22,7 +22,7 @@ export default {
delBySids: function(params) {
return request({
url: '/yxtdispatchcenter/v1/sysmenu/delBySids',
method: 'delete',
method: 'post',
data: params
})
},

162
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/layout/components/Sidebar/index.vue

@ -40,69 +40,27 @@ export default {
routes: [
{
alwaysShow: true,
component: "Template-task",
meta: {
icon: "el-icon-menu",
title: "模板任务项",
},
name: "",
path: "/Template-task",
children: [
{
alwaysShow: true,
component: "index",
meta: {
icon: "el-icon-help",
title: "任务项管理",
},
name: "/Template-task/TaskItemManagement",
path: "/Template-task/TaskItemManagement",
},
{
alwaysShow: true,
component: "index",
meta: {
icon: "el-icon-help",
title: "模板管理",
},
name: "/Template-task/templateManagement",
path: "/Template-task/templateManagement",
},
],
},
{
path: "/dispatchpatrolplan",
component: "DispatchPatrolPlan",
redirect: "/dispatchpatrolplan/index",
meta: {
icon: "el-icon-menu",
title: "巡视计划",
},
name: "",
children: [
{
path: "/dispatchpatrolplan/index",
component: "DispatchPatrolPlanIndex",
name: "DispatchPatrolPlanIndex",
meta: { title: "巡视计划" },
},
],
},
{
path: "/dispatchmodletemplate",
component: "DispatchModleTemplateIndex",
component: "dispatchmodletemplate",
redirect: "/dispatchmodletemplate/index",
meta: {
icon: "el-icon-menu",
title: "模型模板对照",
title: "模版任务项",
},
name: "",
children: [
{
alwaysShow: true,
path: "/dispatchmodletemplate/index",
component: "DispatchModleTemplateIndex",
name: "DispatchModleTemplateIndex",
meta: { title: "模型模板对照" },
name: "dispatchmodletemplate",
component: "dispatchmodletemplate",
meta: { title: "模板管理" ,icon: "el-icon-help"},
},
{
path: "/dispatchmodletemplate/indexs",
component: "dispatchstandards",
name: "dispatchstandards",
meta: { title: "任务项管理",icon: "el-icon-help" },
},
],
},
@ -112,7 +70,7 @@ export default {
redirect: "/dispatchorderinfo/index",
meta: {
icon: "el-icon-menu",
title: "汇总工单数据",
title: "工单管理",
},
name: "",
children: [
@ -120,7 +78,13 @@ export default {
path: "/dispatchorderinfo/index",
component: "DispatchOrderinfoIndex",
name: "DispatchOrderinfoIndex",
meta: { title: "汇总工单数据" },
meta: { title: "巡视工单管理",icon: "el-icon-help" },
},
{
path: "/dispatchorderinfo/indexs",
component: "DispatchPatrolPlanIndex",
name: "DispatchPatrolPlanIndex",
meta: { title: "巡视计划管理",icon: "el-icon-help" },
},
],
},
@ -130,7 +94,7 @@ export default {
redirect: "/dispatchpatrolmodle/index",
meta: {
icon: "el-icon-menu",
title: "巡视任务模型",
title: "工单管理",
},
name: "",
children: [
@ -138,25 +102,7 @@ export default {
path: "/dispatchpatrolmodle/index",
component: "DispatchPatrolModleIndex",
name: "DispatchPatrolModleIndex",
meta: { title: "巡视任务模型" },
},
],
},
{
path: "/dispatchstandards",
component: "DispatchStandardsIndex",
redirect: "/dispatchstandards/index",
meta: {
icon: "el-icon-menu",
title: "运维任务标准库",
},
name: "",
children: [
{
path: "/dispatchstandards/index",
component: "DispatchStandardsIndex",
name: "DispatchStandardsIndex",
meta: { title: "运维任务标准库" },
meta: { title: "巡视工单管理",icon: "el-icon-help" },
},
],
},
@ -196,70 +142,6 @@ export default {
},
],
},
// {
// alwaysShow: true,
// component: "WorkManagement",
// meta: {
// icon: "el-icon-menu",
// title: "",
// },
// name: "",
// path: "/WorkManagement",
// children: [
// {
// alwaysShow: true,
// component: "index",
// meta: {
// icon: "el-icon-help",
// title: "",
// },
// name: "/WorkManagement/planManagement",
// path: "/WorkManagement/planManagement",
// },
// {
// alwaysShow: true,
// component: "index",
// meta: {
// icon: "el-icon-help",
// title: "",
// },
// name: "/WorkManagement/WorkManagements",
// path: "/WorkManagement/WorkManagements",
// },
// ],
// },
// {
// alwaysShow: true,
// component: "alarmManagement",
// meta: {
// icon: "el-icon-menu",
// title: "",
// },
// name: "",
// path: "/alarmManagement",
// children: [
// {
// alwaysShow: true,
// component: "index",
// meta: {
// icon: "el-icon-help",
// title: "",
// },
// name: "/alarmManagement/realTime",
// path: "/alarmManagement/realTime",
// },
// {
// alwaysShow: true,
// component: "index",
// meta: {
// icon: "el-icon-help",
// title: "",
// },
// name: "/alarmManagement/historyAlarm",
// path: "/alarmManagement/historyAlarm",
// },
// ],
// },
],
};
},

125
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/router/index.js

@ -45,92 +45,6 @@ export const constantRoutes = [
affix: true
}
}]
}, {
path: '/alarmManagement',
component: Layout,
redirect: '/alarmManagement/realTime',
meta: {
title: '告警管理'
},
children: [
{
path: '/alarmManagement/historyAlarm',
component: () => import('@/views/yxtPrototypeUi/alarmManagement/historyAlarm/index.vue'),
name: 'index',
meta: {
title: '历史告警',
noCache: true
}
},
{
path: '/alarmManagement/realTime',
component: () => import('@/views/yxtPrototypeUi/alarmManagement/realTime/index.vue'),
name: 'index',
meta: {
title: '实时告警',
noCache: true
}
},
]
},
{
path: '/Template-task',
component: Layout,
redirect: '/Template-task/templateManagement',
meta: {
title: '模板任务项'
},
children: [
{
path: '/Template-task/TaskItemManagement',
component: () => import('@/views/yxtPrototypeUi/Template-task/TaskItemManagement/index.vue'),
name: 'index',
meta: {
title: '任务项管理',
noCache: true
}
},
{
path: '/Template-task/templateManagement',
component: () => import('@/views/yxtPrototypeUi/Template-task/templateManagement/index.vue'),
name: 'index',
meta: {
title: '模板管理',
noCache: true
}
},
]
},
{
path: '/WorkManagement',
component: Layout,
redirect: '/WorkManagement/WorkManagements',
meta: {
title: '工单管理'
},
children: [
{
path: '/WorkManagement/planManagement',
component: () => import('@/views/yxtPrototypeUi/WorkManagement/planManagement/index.vue'),
name: 'index',
meta: {
title: '计划管理',
noCache: true
}
},
{
path: '/WorkManagement/WorkManagements',
component: () => import('@/views/yxtPrototypeUi/WorkManagement/WorkManagements/index.vue'),
name: 'index',
meta: {
title: '工单管理',
noCache: true
}
},
]
},
{
path: '/dispatchpatrolplan',
@ -139,40 +53,49 @@ export const constantRoutes = [
meta: {
title: '巡视计划'
},
children: [{
path: '/dispatchpatrolplan/index',
component: () => import('@/views/yxtdispatchcenter/dispatchpatrolplan/dispatchpatrolplan.vue'),
name: 'DispatchPatrolPlanIndex',
meta: { title: '巡视计划' }
}]
children: []
},
{
path: '/dispatchmodletemplate',
component: Layout,
redirect: '/dispatchmodletemplate/index',
meta: {
title: '模型模板对照'
title: '模版任务项'
},
children: [{
children: [
{
path: '/dispatchmodletemplate/index',
component: () => import('@/views/yxtdispatchcenter/dispatchmodletemplate/dispatchmodletemplate.vue'),
name: 'DispatchModleTemplateIndex',
meta: { title: '模型模板对照' }
}]
name: 'dispatchmodletemplate',
meta: { title: '模板管理' }
},
{
path: '/dispatchmodletemplate/indexs',
component: () => import('@/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandards.vue'),
name: 'dispatchstandards',
meta: { title: '任务项管理' }
}
]
},
{
path: '/dispatchorderinfo',
component: Layout,
redirect: '/dispatchorderinfo/index',
meta: {
title: '汇总工单数据'
title: '巡视工单管理'
},
children: [{
path: '/dispatchorderinfo/index',
component: () => import('@/views/yxtdispatchcenter/dispatchorderinfo/dispatchorderinfo.vue'),
name: 'DispatchOrderinfoIndex',
meta: { title: '汇总工单数据' }
}]
meta: { title: '巡视工单管理' }
},{
path: '/dispatchorderinfo/indexs',
component: () => import('@/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplan.vue'),
name: 'DispatchPatrolPlanIndex',
meta: { title: '巡视计划管理' }
}
]
},
{
path: '/dispatchpatrolmodle',
@ -197,7 +120,7 @@ export const constantRoutes = [
},
children: [{
path: '/dispatchstandards/index',
component: () => import('@/views/yxtdispatchcenter/dispatchstandards/dispatchstandards.vue'),
component: () => import('@/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandards.vue'),
name: 'DispatchStandardsIndex',
meta: { title: '(运维任务标准库)' }
}]

4
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/router/modules/codemenu.js

@ -52,7 +52,7 @@ const codemenu = [
},
children: [{
path: '/dispatchpatrolplan/index',
component: () => import('@/views/yxtdispatchcenter/dispatchpatrolplan/dispatchpatrolplan.vue'),
component: () => import('@/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplan.vue'),
name: 'DispatchPatrolPlanIndex',
meta: { title: '(巡视计划包含客户信息、仓库等)' }
}]
@ -66,7 +66,7 @@ const codemenu = [
},
children: [{
path: '/dispatchstandards/index',
component: () => import('@/views/yxtdispatchcenter/dispatchstandards/dispatchstandards.vue'),
component: () => import('@/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandards.vue'),
name: 'DispatchStandardsIndex',
meta: { title: '(运维任务标准库)' }
}]

153
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchmodletemplate.vue

@ -1,40 +1,40 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar view-title="模型模板对照" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<button-bar ref="btnbar" view-title="模版管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : '显示查询条件' }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<div v-show="isSearchShow" class="search">
<el-form ref="queryParams" :model="queryParams.params" :inline="true" class="tab-header">
<el-form-item label="模板id"><el-input v-model="queryParams.params.templateid" placeholder="请输入模板id" clearable /></el-form-item>
<el-form-item label="任务项标准库id"><el-input v-model="queryParams.params.taskid" placeholder="请输入任务项标准库id" clearable /></el-form-item>
<el-divider />
<div class="btn" style="text-align: center;">
<el-button type="primary" @click="dosearch">查询</el-button>
<el-button type="primary" @click="resetQuery">重置</el-button>
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</div>
</el-form>
</div>
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">型模对照列表</div>
<div class="tit">模板列表</div>
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div>
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="listcon">
<div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column label="SID" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="toInfo(scope.row)">{{ scope.row.sid }}</span>
</template>
</el-table-column>
<el-table-column prop="templateid" label="模板id" align="center" />
<el-table-column prop="taskid" label="任务项标准库id" align="center" />
<el-table-column fixed="right" label="操作" align="center">
<template slot-scope="scope">
<i class="el-icon-edit-outline" @click="toEdit(scope.row)"></i>
<i class="el-icon-delete" @click="doDel(scope.row)"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- End 项目列表 -->
@ -51,6 +51,7 @@
/>
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
@ -82,7 +83,7 @@ export default {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: true,
isSearchShow: false,
tableLoading: false,
dataList: [],
queryParams: {
@ -95,9 +96,29 @@ export default {
taskid: '' // id
}
},
multipleSelection: []
multipleSelection: [],
btnList: [
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
]
}
},
mounted() {
//
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
@ -110,40 +131,19 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doSubmit':
this.doSubmit()
break
case 'doDel':
this.doDel()
break
case 'doImport':
this.doImport()
break
case 'doExport':
this.doExport()
break
case 'doClose': //
this.doClose()
break
default:
break
}
},
toAdd(row) {
toAdd() {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
toEdit() {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行编辑' })
return
}
if (this.multipleSelection.length > 1) {
this.$message({ showClose: true, type: 'error', message: '只能选择一条记录进行编辑' })
return
}
toEdit(row) {
this.viewState = 3
const row = this.multipleSelection[0]
this.$refs['divadd'].showEdit(row)
},
doSubmit(row) {
@ -165,80 +165,25 @@ export default {
})
},
doDel(row) {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' })
return
}
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?'
sids.push(row.sid)
const tip = '请确认是否删除该条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},
doImport(row) {
//
req
.importExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
console.log(resp)
}
})
.catch(() => {})
},
doExport(row) {
//
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
this.queryParams.params.sids = sids
req
.exportExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
var map = resp.data
const fileName = map.filename //
// // <a> Firefox Chrome download
// // IE10blobdownload
const link = document.createElement('a') // a
link.download = fileName // a
link.style.display = 'none'
link.href = map.downurl
document.body.appendChild(link)
link.click() //
URL.revokeObjectURL(link.href) // url
document.body.removeChild(link) //
}
})
.catch(() => {})
},
@ -283,7 +228,11 @@ export default {
toInfo(row) {
this.$refs['divinfo'].showInfo(row)
this.viewState = 4
}
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
}
}
</script>

42
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchmodletemplateAdd.vue

@ -14,12 +14,15 @@
</div>
<!-- 标题按钮部分结束 -->
<!-- Start 新增修改部分 -->
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="formadd">
<div class="wlInfo"><span>模型模板对照</span></div>
<div class="main-content">
<div class="searchcon">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="demo-form-inline">
<div class="listtop">
<div class="tit">模板信息</div>
</div>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>模板id</span>
<span><span class="icon">*</span>模板id</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="templateid"><el-input v-model="formobj.templateid" placeholder="模板id" class="addinputw" clearable /></el-form-item>
@ -27,7 +30,7 @@
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>任务项标准库id</span>
<span><span class="icon">*</span>任务项标准库id</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="taskid"><el-input v-model="formobj.taskid" placeholder="任务项标准库id" class="addinputw" clearable /></el-form-item>
@ -35,6 +38,7 @@
</el-row>
</el-form>
</div>
</div>
<!-- End 添加修改部分 -->
</div>
</template>
@ -46,6 +50,7 @@ export default {
data() {
return {
submitdisabled: false,
isSearchShow: true,
viewTitle: '',
formobj: {
id: '',
@ -76,31 +81,18 @@ export default {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【新增】模型模板对照'
this.viewTitle = '【新增】模版信息'
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【修改】模型模板对照'
const _this = this
req
.fetchBySid(row.sid)
.then(resp => {
if (resp.sucess) {
const vdata = resp.data
_this.formobj.id = vdata.id
_this.formobj.sid = vdata.sid // SID
_this.formobj.templateid = vdata.templateid // id
_this.formobj.taskid = vdata.taskid // id
} else {
// resp.code
}
})
.catch(e => {
this.formobj = row
})
this.viewTitle = '【修改】模版信息'
const vdata = row
this.formobj.id = vdata.id
this.formobj.sid = vdata.sid // SID
this.formobj.templateid = vdata.templateid // id
this.formobj.taskid = vdata.taskid // id
},
saveOrUpdate() {
const _this = this

116
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchstandards/dispatchstandards.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandards.vue

@ -24,20 +24,20 @@
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="listcon">
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column label="SID" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="toInfo(scope.row)">{{ scope.row.sid }}</span>
</template>
</el-table-column>
<el-table-column prop="taskname" label="任务项名称" align="center" />
<el-table-column prop="tasktype" label="任务项分类" align="center" />
<el-table-column prop="taskdesc" label="任务描述" align="center" />
<el-table-column prop="taskreturn" label="反馈形式(1选项 2图片 3文字)" align="center" />
<el-table-column prop="tasktypeparent" label="任务项父级分类+" align="center" />
<el-table-column prop="taskreturn" :formatter="formatPrivilegeType" label="反馈形式" align="center" />
<el-table-column fixed="right" label="操作" align="center">
<template slot-scope="scope">
<i class="el-icon-edit-outline" @click="toEdit(scope.row)"></i>
<i class="el-icon-delete" @click="doDel(scope.row)"></i>
<i class="el-icon-notebook-2" @click="toInfo(scope.row)"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- End 项目列表 -->
@ -70,8 +70,8 @@ import req from '@/api/yxtdispatchcenter/dispatchstandards'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './dispatchstandardsAdd'
import divInfo from './dispatchstandardsInfo'
import divAdd from './dispatchstandardsAdds'
import divInfo from './dispatchstandardsInfos'
export default {
name: 'DispatchStandardsIndex',
@ -86,7 +86,7 @@ export default {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: true,
isSearchShow: false,
tableLoading: false,
dataList: [],
queryParams: {
@ -148,17 +148,8 @@ export default {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
toEdit() {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行编辑' })
return
}
if (this.multipleSelection.length > 1) {
this.$message({ showClose: true, type: 'error', message: '只能选择一条记录进行编辑' })
return
}
toEdit(row) {
this.viewState = 3
const row = this.multipleSelection[0]
this.$refs['divadd'].showEdit(row)
},
doSubmit(row) {
@ -180,80 +171,25 @@ export default {
})
},
doDel(row) {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' })
return
}
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?'
sids.push(row.sid)
const tip = '请确认是否删除所选记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
if (resp.code==200) {
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},
doImport(row) {
//
req
.importExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
console.log(resp)
}
})
.catch(() => {})
},
doExport(row) {
//
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
this.queryParams.params.sids = sids
req
.exportExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
var map = resp.data
const fileName = map.filename //
// // <a> Firefox Chrome download
// // IE10blobdownload
const link = document.createElement('a') // a
link.download = fileName // a
link.style.display = 'none'
link.href = map.downurl
document.body.appendChild(link)
link.click() //
URL.revokeObjectURL(link.href) // url
document.body.removeChild(link) //
}
})
.catch(() => {})
},
@ -286,9 +222,6 @@ export default {
_this.tableLoading = false
})
},
handleSelectionChange(val) {
this.multipleSelection = val
},
//
indexMethod(index) {
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
@ -303,6 +236,17 @@ export default {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
formatPrivilegeType: function( row, column) {
if(row.taskreturn === '1'){
return '文字'
} else if(row.taskreturn === '2') {
return '图片'
} else if (row.taskreturn === '3') {
return '选项'
} else {
return ''
}
}
}
}
</script>

8
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchstandards/dispatchstandardsAdd.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandardsAdds.vue

@ -33,9 +33,9 @@
<div class="item_input">
<template>
<el-radio-group v-model="formobj.taskreturn">
<el-radio :label="1">文字</el-radio>
<el-radio :label="2">图片</el-radio>
<el-radio :label="3">选项</el-radio>
<el-radio :label="'1'">文字</el-radio>
<el-radio :label="'2'">图片</el-radio>
<el-radio :label="'3'">选项</el-radio>
</el-radio-group>
</template>
</div>
@ -109,7 +109,7 @@ export default {
req
.fetchBySid(row.sid)
.then(resp => {
if (resp.sucess) {
if (resp.code==200) {
const vdata = resp.data
_this.formobj.id = vdata.id
_this.formobj.sid = vdata.sid // SID

0
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchstandards/dispatchstandardsInfo.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchmodletemplate/dispatchstandardsInfos.vue

230
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchorderinfo.vue

@ -1,28 +1,32 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar view-title="汇总工单数据" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<button-bar ref="btnbar" view-title="巡视工单管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : '显示查询条件' }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="客户ID"><el-input v-model="queryParams.params.custid" placeholder="请输入客户ID" clearable /></el-form-item>
<div v-show="isSearchShow" class="search">
<el-form ref="queryParams" :model="queryParams.params" :inline="true" class="tab-header">
<el-form-item label="客户名称"><el-input v-model="queryParams.params.custname" placeholder="请输入客户名称" clearable /></el-form-item>
<el-form-item label="监管公司id"><el-input v-model="queryParams.params.supervisesid" placeholder="请输入监管公司id" clearable /></el-form-item>
<el-form-item label="用法说明:工单编号规则。"><el-input v-model="queryParams.params.orderno" placeholder="请输入用法说明:工单编号规则。" clearable /></el-form-item>
<el-form-item label="工单名称"><el-input v-model="queryParams.params.ordername" placeholder="请输入工单名称" clearable /></el-form-item>
<el-form-item label="描述:1-一般;2-重要; 3-紧急;4-督办。"><el-input v-model="queryParams.params.orderdegree" placeholder="请输入描述:1-一般;2-重要; 3-紧急;4-督办。" clearable /></el-form-item>
<el-form-item label="描述:1-计划巡视;"><el-input v-model="queryParams.params.ordertype" placeholder="请输入描述:1-计划巡视;" clearable /></el-form-item>
<el-form-item label="工单内容"><el-input v-model="queryParams.params.ordercontent" placeholder="请输入工单内容" clearable /></el-form-item>
<el-form-item label="到达现场时间"><el-input v-model="queryParams.params.arrivetime" placeholder="请输入到达现场时间" clearable /></el-form-item>
<el-form-item label="完成时间"><el-input v-model="queryParams.params.planfinishtime" placeholder="请输入完成时间" clearable /></el-form-item>
<el-form-item label="处理情况"><el-input v-model="queryParams.params.operationcontent" placeholder="请输入处理情况" clearable /></el-form-item>
<el-form-item label="现场联系人"><el-input v-model="queryParams.params.receiveperson" placeholder="请输入现场联系人" clearable /></el-form-item>
<el-form-item label="现场联系人电话"><el-input v-model="queryParams.params.receivetel" placeholder="请输入现场联系人电话" clearable /></el-form-item>
<el-divider />
<el-form-item label="等级">
<el-select
v-model="queryParams.params.orderdegree"
class="addinputw"
placeholder="等级"
size="small"
>
<el-option
v-for="(item, i) in arrList"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-form-item>
<div class="btn" style="text-align: center;">
<el-button type="primary" @click="dosearch">查询</el-button>
<el-button type="primary" @click="resetQuery">重置</el-button>
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</div>
</el-form>
</div>
@ -35,28 +39,23 @@
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="listcon">
<div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column label="SID" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="toInfo(scope.row)">{{ scope.row.sid }}</span>
</template>
</el-table-column>
<el-table-column prop="custid" label="客户ID" align="center" />
<el-table-column prop="custname" label="客户名称" align="center" />
<el-table-column prop="supervisesid" label="监管公司id" align="center" />
<el-table-column prop="orderno" label="用法说明:工单编号规则。" align="center" />
<el-table-column prop="orderno" label="工单编号" align="center" />
<el-table-column prop="ordername" label="工单名称" align="center" />
<el-table-column prop="orderdegree" label="描述:1-一般;2-重要; 3-紧急;4-督办。" align="center" />
<el-table-column prop="ordertype" label="描述:1-计划巡视;" align="center" />
<el-table-column prop="custname" label="客户名称" align="center" />
<el-table-column prop="orderdegree" :formatter="formatorderdegree" label="等级" align="center" />
<el-table-column prop="ordercontent" label="工单内容" align="center" />
<el-table-column prop="arrivetime" label="到达现场时间" align="center" />
<el-table-column prop="planfinishtime" label="完成时间" align="center" />
<el-table-column prop="operationcontent" label="处理情况" align="center" />
<el-table-column prop="receiveperson" label="现场联系人" align="center" />
<el-table-column prop="receivetel" label="现场联系人电话" align="center" />
<el-table-column fixed="right" label="操作" align="center">
<template slot-scope="scope">
<i class="el-icon-edit-outline" @click="toEdit(scope.row)"></i>
<i class="el-icon-delete" @click="doDel(scope.row)"></i>
<i class="el-icon-notebook-2" @click="purchase(scope.row)"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- End 项目列表 -->
@ -73,8 +72,16 @@
/>
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<el-drawer
title="我是外面的 Drawer"
:visible.sync="drawer"
size="60%">
<div>
<div>666</div>
</div>
</el-drawer>
<!-- 新增修改部分组件 -->
<div-add v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
@ -104,33 +111,48 @@ export default {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: true,
isSearchShow: false,
tableLoading: false,
drawer: false,
dataList: [],
queryParams: {
current: 1,
size: 10,
total: 0,
params: {
sids: [], // SID
sids: [], // SID
custid: '', // ID
custname: '', //
supervisesid: '', // id
orderno: '', //
orderno: '', //
ordername: '', //
orderdegree: '', // 1-2- 3-4-
ordertype: '', // 1-
ordercontent: '', //
arrivetime: '', //
planfinishtime: '', //
operationcontent: '', //
receiveperson: '', //
receivetel: '' //
}
},
multipleSelection: []
arr:[{value:1,type:'计划巡视'},{value:2,type:'专项巡视'},{value:3,type:'告警巡视'}],
arrList:[{value:1,type:'一般'},{value:2,type:'重要'},{value:3,type:'紧急'},{value:4,type:'督办'}],
multipleSelection: [],
btnList: [
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
]
}
},
mounted() {
//
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
@ -143,40 +165,19 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doSubmit':
this.doSubmit()
break
case 'doDel':
this.doDel()
break
case 'doImport':
this.doImport()
break
case 'doExport':
this.doExport()
break
case 'doClose': //
this.doClose()
break
default:
break
}
},
toAdd(row) {
toAdd() {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
toEdit() {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行编辑' })
return
}
if (this.multipleSelection.length > 1) {
this.$message({ showClose: true, type: 'error', message: '只能选择一条记录进行编辑' })
return
}
toEdit(row) {
this.viewState = 3
const row = this.multipleSelection[0]
this.$refs['divadd'].showEdit(row)
},
doSubmit(row) {
@ -198,80 +199,25 @@ export default {
})
},
doDel(row) {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' })
return
}
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?'
sids.push(row.sid)
const tip = '请确认是否是否删除该条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},
doImport(row) {
//
req
.importExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
console.log(resp)
}
})
.catch(() => {})
},
doExport(row) {
//
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
this.queryParams.params.sids = sids
req
.exportExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
var map = resp.data
const fileName = map.filename //
// // <a> Firefox Chrome download
// // IE10blobdownload
const link = document.createElement('a') // a
link.download = fileName // a
link.style.display = 'none'
link.href = map.downurl
document.body.appendChild(link)
link.click() //
URL.revokeObjectURL(link.href) // url
document.body.removeChild(link) //
}
})
.catch(() => {})
},
@ -316,7 +262,27 @@ export default {
toInfo(row) {
this.$refs['divinfo'].showInfo(row)
this.viewState = 4
}
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
formatorderdegree: function( row, column) {
if(row.orderdegree === '1'){
return '一般'
} else if(row.orderdegree === '2') {
return '重要'
} else if (row.orderdegree === '3') {
return '紧急'
} else if(row.orderdegree === '4'){
return '督办'
}else{
return ''
}
},
purchase(row){
this.drawer=true
},
}
}
</script>

259
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchorderinfoAdd.vue

@ -14,116 +14,118 @@
</div>
<!-- 标题按钮部分结束 -->
<!-- Start 新增修改部分 -->
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="formadd">
<div class="wlInfo"><span>汇总工单数据</span></div>
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<el-form v-show="isSearchShow" ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="demo-form-inline">
<div class="listtop">
<div class="tit">巡视工单信息</div>
</div>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>客户ID</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>客户名称</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="custid"><el-input v-model="formobj.custid" placeholder="客户ID" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="custname"><el-input size="small" v-model="formobj.custname" placeholder="客户名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>客户名称</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="custname"><el-input v-model="formobj.custname" placeholder="客户名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>监管公司id</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="supervisesid"><el-input v-model="formobj.supervisesid" placeholder="监管公司id" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>用法说明工单编号规则</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="orderno"><el-input v-model="formobj.orderno" placeholder="用法说明:工单编号规则。" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>工单名称</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="ordername"><el-input v-model="formobj.ordername" placeholder="工单名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>描述1-一般2-重要 3-紧急4-督办</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="orderdegree"><el-input v-model="formobj.orderdegree" placeholder="描述:1-一般;2-重要; 3-紧急;4-督办。" class="addinputw" clearable /></el-form-item>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>工单编号</span>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>描述1-计划巡视</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="ordertype"><el-input v-model="formobj.ordertype" placeholder="描述:1-计划巡视;" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="orderno"><el-input size="small" v-model="formobj.orderno" placeholder="工单编号" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>工单内容</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>工单名称</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="ordercontent"><el-input v-model="formobj.ordercontent" placeholder="工单内容" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="ordername"><el-input size="small" v-model="formobj.ordername" placeholder="工单名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>到达现场时间</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>工单内容</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="arrivetime"><el-input v-model="formobj.arrivetime" placeholder="到达现场时间" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="ordercontent"><el-input size="small" v-model="formobj.ordercontent" placeholder="工单内容" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>完成时间</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>现场联系人</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="planfinishtime"><el-input v-model="formobj.planfinishtime" placeholder="完成时间" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="receiveperson"><el-input size="small" v-model="formobj.receiveperson" placeholder="现场联系人" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>处理情况</span>
<el-col :span="3" class="tleftb">
<span><span class="icon">*</span>现场联系人电话</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="operationcontent"><el-input v-model="formobj.operationcontent" placeholder="处理情况" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="receivetel"><el-input size="small" v-model="formobj.receivetel" placeholder="现场联系人电话" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>现场联系人</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>巡视类型</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="receiveperson"><el-input v-model="formobj.receiveperson" placeholder="现场联系人" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-select
v-model="formobj.ordertype"
class="addinputw"
placeholder="类型"
size="small"
>
<el-option
v-for="(item, i) in arr"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>现场联系人电话</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>等级</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="receivetel"><el-input v-model="formobj.receivetel" placeholder="现场联系人电话" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-select
v-model="formobj.orderdegree"
class="addinputw"
placeholder="等级"
size="small"
>
<el-option
v-for="(item, i) in arrList"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-col>
</el-row>
</el-form>
</div>
<!-- End 添加修改部分 -->
<div class="listtop">
<div class="tit">巡视人员</div>
</div>
<div>
<el-table ref="table" tooltip-effect="dark" :data="TabList" border style="width: 100%"
@selection-change="handleSelectionChange" @select="handleSelection" stripe>
>
<el-table-column type="selection" width="55"/>
<el-table-column fixed width="100" type="index" label="序号" align="center" />
<el-table-column prop="principalname" label="巡视人名称" align="center" />
<el-table-column prop="principalcontact" label="联系方式" align="center" />
<el-table-column prop="workteam" label="班组组织" align="center" />
<el-table-column prop="executorname" label="是否负责人" width="150px" align="center" />
</el-table>
</div>
<div class="listtop">
<div class="tit">任务模板</div>
</div>
<div>
<el-table :data="list" border style="width: 100%;text-align: center;">
<el-table-column fixed width="100" type="index" label="序号" align="center" />
<el-table-column prop="a" width="200" label="设备类别" align="center" />
<el-table-column prop="b" label="任务模板名称" width="200" align="center" />
<el-table-column prop="c" label="巡视内容" align="center" />
</el-table>
</div>
</div>
</div>
</template>
@ -134,35 +136,65 @@ export default {
data() {
return {
submitdisabled: false,
isSearchShow: true,
viewTitle: '',
searchxianshitit: '显示添加条件',
formobj: {
id: '',
sid: '',
custid: '', // ID
custname: '', //
supervisesid: '', // id
orderno: '', //
orderno: '', //
ordername: '', //
orderdegree: '', // 1-2- 3-4-
ordertype: '', // 1-
ordercontent: '', //
arrivetime: '', //
planfinishtime: '', //
operationcontent: '', //
receiveperson: '', //
receivetel: '' //
},
arr:[{value:1,type:'计划巡视'},{value:2,type:'专项巡视'},{value:3,type:'告警巡视'}],
arrList:[{value:1,type:'一般'},{value:2,type:'重要'},{value:3,type:'紧急'},{value:4,type:'督办'}],
TabList:[{
principalname:'1',//
principalsid:'1',//sid
principalcontact:'1',//
executorname:'1',//
executornamekey:'1',//key
workteam:'1',//
workteamid:'110',//id
},{
principalname:'1',//
principalsid:'1',//sid
principalcontact:'1',//
executorname:'1',//
executornamekey:'1',//key
workteam:'1',//
workteamid:'110',//id
}],
list:[
{
a:'变压器',
b:'变压器巡视',
c:'设备类型占位符_巡视标准占位符占位符占位符占位符占位符占位符占位符',
},
{
a:'感应器',
b:'感应器巡视',
c:'设备类型占位符_巡视标准占位符',
},
],
rules: {
custid: [{ required: true, message: '客户ID不能为空', trigger: 'blur' }], // ID
custname: [{ required: true, message: '客户名称不能为空', trigger: 'blur' }], //
supervisesid: [{ required: true, message: '监管公司id不能为空', trigger: 'blur' }], // id
orderno: [{ required: true, message: '用法说明:工单编号规则。不能为空', trigger: 'blur' }], //
ordername: [{ required: true, message: '工单名称不能为空', trigger: 'blur' }], //
orderdegree: [{ required: true, message: '描述:1-一般;2-重要; 3-紧急;4-督办。不能为空', trigger: 'blur' }], // 1-2- 3-4-
ordertype: [{ required: true, message: '描述:1-计划巡视;不能为空', trigger: 'blur' }], // 1-
orderdegree: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 1-2- 3-4-
ordertype: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 1-
ordercontent: [{ required: true, message: '工单内容不能为空', trigger: 'blur' }], //
arrivetime: [{ required: true, message: '到达现场时间不能为空', trigger: 'blur' }], //
planfinishtime: [{ required: true, message: '完成时间不能为空', trigger: 'blur' }], //
// arrivetime: [{ required: true, message: '', trigger: 'blur' }], //
// planfinishtime: [{ required: true, message: '', trigger: 'blur' }], //
operationcontent: [{ required: true, message: '处理情况不能为空', trigger: 'blur' }], //
receiveperson: [{ required: true, message: '现场联系人不能为空', trigger: 'blur' }], //
receivetel: [{ required: true, message: '现场联系人电话不能为空', trigger: 'blur' }] //
@ -193,37 +225,44 @@ export default {
this.$refs['form_obj'].resetFields()
this.$emit('doback')
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏添加条件'
} else {
this.searchxianshitit = '显示添加条件'
}
},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【新增】汇总工单数据'
this.viewTitle = '【新增】工单数据'
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【修改】汇总工单数据'
this.searchxianshitit = '显示添加条件'
this.isSearchShow = true
this.viewTitle = '【修改】工单数据'
const _this = this
req
.fetchBySid(row.sid)
.then(resp => {
if (resp.sucess) {
if (resp.code==200) {
const vdata = resp.data
_this.formobj.id = vdata.id
_this.formobj.sid = vdata.sid // SID
_this.formobj.custid = vdata.custid // ID
_this.formobj.custname = vdata.custname //
_this.formobj.supervisesid = vdata.supervisesid // id
_this.formobj.orderno = vdata.orderno //
_this.formobj.orderno = vdata.orderno //
_this.formobj.ordername = vdata.ordername //
_this.formobj.orderdegree = vdata.orderdegree // 1-2- 3-4-
_this.formobj.ordertype = vdata.ordertype // 1-
_this.formobj.ordercontent = vdata.ordercontent //
_this.formobj.arrivetime = vdata.arrivetime //
_this.formobj.planfinishtime = vdata.planfinishtime //
_this.formobj.operationcontent = vdata.operationcontent //
_this.formobj.receiveperson = vdata.receiveperson //
_this.formobj.receivetel = vdata.receivetel //
} else {
@ -257,7 +296,17 @@ export default {
return false
}
})
}
},
handleSelectionChange(val) {
this.formobj.workers = val;
console.log(this.formobj);
},
handleSelection(selection){
if (selection.length > 1){
let del_row = selection.shift();
this.$refs.table.toggleRowSelection(del_row, false)
}
}
}
}
</script>

27
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchpatrolplan/dispatchpatrolplan.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplan.vue

@ -19,7 +19,7 @@
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">巡视工单列表</div>
<div class="tit">巡视计划列表</div>
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div>
<!-- End 项目列表头部 -->
@ -82,8 +82,8 @@ import req from '@/api/yxtdispatchcenter/dispatchpatrolplan'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './dispatchpatrolplanAdd'
import divInfo from './dispatchpatrolplanInfo'
import divAdd from './dispatchpatrolplanAdds'
import divInfo from './dispatchpatrolplanInfos'
export default {
name: 'DispatchPatrolPlanIndex',
@ -191,11 +191,8 @@ export default {
})
},
doDel(row) {
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
sids.push(row.sid)
const tip = '请确认是否删除该条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
@ -203,26 +200,16 @@ export default {
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
if (resp.code==200) {
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},

0
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchpatrolplan/dispatchpatrolplanAdd.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplanAdds.vue

0
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchpatrolplan/dispatchpatrolplanInfo.vue → yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchorderinfo/dispatchpatrolplanInfos.vue

138
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchpatrolmodle/dispatchpatrolmodle.vue

@ -1,31 +1,32 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar view-title="巡视任务模型,工单和模型之间的关联关系" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<button-bar ref="btnbar" view-title="巡视工单管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : '显示查询条件' }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<div v-show="isSearchShow" class="search">
<el-form ref="queryParams" :model="queryParams.params" :inline="true" class="tab-header">
<el-form-item label="模型id"><el-input v-model="queryParams.params.modleid" placeholder="请输入模型id" clearable /></el-form-item>
<el-form-item label="工单id(与工单表一致)"><el-input v-model="queryParams.params.orderid" placeholder="请输入工单id(与工单表一致)" clearable /></el-form-item>
<el-form-item label="模型名称"><el-input v-model="queryParams.params.modlename" placeholder="请输入模型名称" clearable /></el-form-item>
<el-divider />
<div class="btn" style="text-align: center;">
<el-button type="primary" @click="dosearch">查询</el-button>
<el-button type="primary" @click="resetQuery">重置</el-button>
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</div>
</el-form>
</div>
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">巡视任务模型,工单和模型之间的关联关系列表</div>
<div class="tit">巡视工单列表</div>
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div>
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="listcon">
<div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
@ -53,6 +54,7 @@
/>
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
@ -98,9 +100,29 @@ export default {
modlename: '' //
}
},
multipleSelection: []
multipleSelection: [],
btnList: [
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
]
}
},
mounted() {
//
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
@ -113,40 +135,19 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doSubmit':
this.doSubmit()
break
case 'doDel':
this.doDel()
break
case 'doImport':
this.doImport()
break
case 'doExport':
this.doExport()
break
case 'doClose': //
this.doClose()
break
default:
break
}
},
toAdd(row) {
toAdd() {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
toEdit() {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行编辑' })
return
}
if (this.multipleSelection.length > 1) {
this.$message({ showClose: true, type: 'error', message: '只能选择一条记录进行编辑' })
return
}
toEdit(row) {
this.viewState = 3
const row = this.multipleSelection[0]
this.$refs['divadd'].showEdit(row)
},
doSubmit(row) {
@ -168,80 +169,25 @@ export default {
})
},
doDel(row) {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' })
return
}
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?'
sids.push(row.sid)
const tip = '请确认是否删除该条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},
doImport(row) {
//
req
.importExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
console.log(resp)
}
})
.catch(() => {})
},
doExport(row) {
//
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
this.queryParams.params.sids = sids
req
.exportExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
var map = resp.data
const fileName = map.filename //
// // <a> Firefox Chrome download
// // IE10blobdownload
const link = document.createElement('a') // a
link.download = fileName // a
link.style.display = 'none'
link.href = map.downurl
document.body.appendChild(link)
link.click() //
URL.revokeObjectURL(link.href) // url
document.body.removeChild(link) //
}
})
.catch(() => {})
},
@ -286,7 +232,11 @@ export default {
toInfo(row) {
this.$refs['divinfo'].showInfo(row)
this.viewState = 4
}
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
}
}
</script>

241
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchworker/dispatchworker.vue

@ -1,52 +1,61 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar view-title="工单运维人员情况" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<button-bar ref="btnbar" view-title="巡视工单管理" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="isSearchShow = !isSearchShow">{{ isSearchShow ? '隐藏查询条件' : '显示查询条件' }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="工单id"><el-input v-model="queryParams.params.orderid" placeholder="请输入工单id" clearable /></el-form-item>
<el-form-item label="巡视人名称"><el-input v-model="queryParams.params.principalname" placeholder="请输入巡视人名称" clearable /></el-form-item>
<el-form-item label="巡视人sid"><el-input v-model="queryParams.params.principalsid" placeholder="请输入巡视人sid" clearable /></el-form-item>
<el-form-item label="联系方式"><el-input v-model="queryParams.params.principalcontact" placeholder="请输入联系方式" clearable /></el-form-item>
<el-form-item label="是否负责人"><el-input v-model="queryParams.params.executorname" placeholder="请输入是否负责人" clearable /></el-form-item>
<el-form-item label="班组组织。"><el-input v-model="queryParams.params.workteam" placeholder="请输入班组组织。" clearable /></el-form-item>
<el-form-item label="响应状态(接受、拒绝)"><el-input v-model="queryParams.params.assignstate" placeholder="请输入响应状态(接受、拒绝)" clearable /></el-form-item>
<el-form-item label="响应时间(接受、拒绝)"><el-input v-model="queryParams.params.assigntime" placeholder="请输入响应时间(接受、拒绝)" clearable /></el-form-item>
<el-divider />
<div v-show="isSearchShow" class="search">
<el-form ref="queryParams" :model="queryParams.params" :inline="true" class="tab-header">
<el-form-item label="客户名称"><el-input v-model="queryParams.params.custname" placeholder="请输入客户名称" clearable /></el-form-item>
<el-form-item label="工单名称"><el-input v-model="queryParams.params.ordername" placeholder="请输入工单名称" clearable /></el-form-item>
<el-form-item label="等级">
<el-select
v-model="queryParams.params.orderdegree"
class="addinputw"
placeholder="等级"
size="small"
>
<el-option
v-for="(item, i) in arrList"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-form-item>
<div class="btn" style="text-align: center;">
<el-button type="primary" @click="dosearch">查询</el-button>
<el-button type="primary" @click="resetQuery">重置</el-button>
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</div>
</el-form>
</div>
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">工单运维人员情况列表</div>
<div class="tit">汇总工单数据列表</div>
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div>
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="listcon">
<div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column label="SID" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="toInfo(scope.row)">{{ scope.row.sid }}</span>
</template>
</el-table-column>
<el-table-column prop="orderid" label="工单id" align="center" />
<el-table-column prop="principalname" label="巡视人名称" align="center" />
<el-table-column prop="principalsid" label="巡视人sid" align="center" />
<el-table-column prop="principalcontact" label="联系方式" align="center" />
<el-table-column prop="executorname" label="是否负责人" align="center" />
<el-table-column prop="workteam" label="班组组织。" align="center" />
<el-table-column prop="assignstate" label="响应状态(接受、拒绝)" align="center" />
<el-table-column prop="assigntime" label="响应时间(接受、拒绝)" align="center" />
<el-table-column prop="orderno" label="工单编号" align="center" />
<el-table-column prop="ordername" label="工单名称" align="center" />
<el-table-column prop="custname" label="客户名称" align="center" />
<el-table-column prop="orderdegree" :formatter="formatorderdegree" label="等级" align="center" />
<el-table-column prop="ordercontent" label="工单内容" align="center" />
<el-table-column prop="receiveperson" label="现场联系人" align="center" />
<el-table-column prop="receivetel" label="现场联系人电话" align="center" />
<el-table-column fixed="right" label="操作" align="center">
<template slot-scope="scope">
<i class="el-icon-edit-outline" @click="toEdit(scope.row)"></i>
<i class="el-icon-delete" @click="doDel(scope.row)"></i>
<i class="el-icon-notebook-2" @click="purchase(scope.row)"></i>
</template>
</el-table-column>
</el-table>
</div>
<!-- End 项目列表 -->
@ -63,8 +72,16 @@
/>
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<el-drawer
title="我是外面的 Drawer"
:visible.sync="drawer"
size="60%">
<div>
<div>666</div>
</div>
</el-drawer>
<!-- 新增修改部分组件 -->
<div-add v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
@ -74,7 +91,7 @@
</template>
<script>
import req from '@/api/yxtdispatchcenter/dispatchworker'
import req from '@/api/yxtdispatchcenter/dispatchorderinfo'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
@ -82,7 +99,7 @@ import divAdd from './dispatchworkerAdd'
import divInfo from './dispatchworkerInfo'
export default {
name: 'DispatchWorkerIndex',
name: 'DispatchOrderinfoIndex',
components: {
ButtonBar,
Pagination,
@ -94,28 +111,48 @@ export default {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: true,
isSearchShow: false,
tableLoading: false,
drawer: false,
dataList: [],
queryParams: {
current: 1,
size: 10,
total: 0,
params: {
sids: [], // SID
orderid: '', // id
principalname: '', //
principalsid: '', // sid
principalcontact: '', //
executorname: '', //
workteam: '', //
assignstate: '', //
assigntime: '' //
sids: [], // SID
custid: '', // ID
custname: '', //
orderno: '', //
ordername: '', //
orderdegree: '', // 1-2- 3-4-
}
},
multipleSelection: []
arr:[{value:1,type:'计划巡视'},{value:2,type:'专项巡视'},{value:3,type:'告警巡视'}],
arrList:[{value:1,type:'一般'},{value:2,type:'重要'},{value:3,type:'紧急'},{value:4,type:'督办'}],
multipleSelection: [],
btnList: [
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
]
}
},
mounted() {
//
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
@ -128,40 +165,19 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doSubmit':
this.doSubmit()
break
case 'doDel':
this.doDel()
break
case 'doImport':
this.doImport()
break
case 'doExport':
this.doExport()
break
case 'doClose': //
this.doClose()
break
default:
break
}
},
toAdd(row) {
toAdd() {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
toEdit() {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行编辑' })
return
}
if (this.multipleSelection.length > 1) {
this.$message({ showClose: true, type: 'error', message: '只能选择一条记录进行编辑' })
return
}
toEdit(row) {
this.viewState = 3
const row = this.multipleSelection[0]
this.$refs['divadd'].showEdit(row)
},
doSubmit(row) {
@ -183,80 +199,25 @@ export default {
})
},
doDel(row) {
if (this.multipleSelection.length === 0) {
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' })
return
}
const _this = this
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
const tip = '请确认是否删除所选 ' + this.multipleSelection.length + ' 条记录?'
sids.push(row.sid)
const tip = '请确认是否是否删除该条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req
.delBySids(sids)
.then(resp => {
loading.close()
if (resp.success) {
_this.$message({ type: 'success', message: resp.msg, showClose: true })
_this.loadList()
this.$message({ type: 'success', message: resp.msg, showClose: true })
this.loadList()
} else {
// resp.code
}
})
.catch(e => {
loading.close()
})
})
.catch(() => {})
},
doImport(row) {
//
req
.importExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
console.log(resp)
}
})
.catch(() => {})
},
doExport(row) {
//
const sids = []
this.multipleSelection.forEach(row => {
sids.push(row.sid)
})
this.queryParams.params.sids = sids
req
.exportExcel(this.queryParams.params)
.then(resp => {
if (resp.success) {
var map = resp.data
const fileName = map.filename //
// // <a> Firefox Chrome download
// // IE10blobdownload
const link = document.createElement('a') // a
link.download = fileName // a
link.style.display = 'none'
link.href = map.downurl
document.body.appendChild(link)
link.click() //
URL.revokeObjectURL(link.href) // url
document.body.removeChild(link) //
}
})
.catch(() => {})
},
@ -301,7 +262,27 @@ export default {
toInfo(row) {
this.$refs['divinfo'].showInfo(row)
this.viewState = 4
}
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
formatorderdegree: function( row, column) {
if(row.orderdegree === '1'){
return '一般'
} else if(row.orderdegree === '2') {
return '重要'
} else if (row.orderdegree === '3') {
return '紧急'
} else if(row.orderdegree === '4'){
return '督办'
}else{
return ''
}
},
purchase(row){
this.drawer=true
},
}
}
</script>

275
yxt_supervise/supervise-dispatchcenter/supervise-dispatchcenter-ui/src/views/yxtdispatchcenter/dispatchworker/dispatchworkerAdd.vue

@ -14,108 +14,177 @@
</div>
<!-- 标题按钮部分结束 -->
<!-- Start 新增修改部分 -->
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="formadd">
<div class="wlInfo"><span>工单运维人员情况</span></div>
<div class="main-content">
<div class="searchcon">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="right" class="demo-form-inline">
<div class="listtop">
<div class="tit">巡视工单信息</div>
</div>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>工单id</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>客户标识</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="orderid"><el-input v-model="formobj.orderid" placeholder="工单id" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="custid"><el-input size="small" v-model="formobj.custid" placeholder="客户标识" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>巡视人名称</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>告警设备id</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="principalname"><el-input v-model="formobj.principalname" placeholder="巡视人名称" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="warneterid"><el-input size="small" v-model="formobj.warneterid" placeholder="工单编号" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>巡视人sid</span>
<el-col :span="3" class="tleftb">
<span><span class="icon">*</span>告警对象监测点</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="principalsid"><el-input v-model="formobj.principalsid" placeholder="巡视人sid" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="warnobjectmpsn"><el-input size="small" v-model="formobj.warnobjectmpsn" placeholder="工单名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>联系方式</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>告警内容</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="principalcontact"><el-input v-model="formobj.principalcontact" placeholder="联系方式" class="addinputw" clearable /></el-form-item>
<el-col :span="3" class="trightb">
<el-form-item prop="alarmcontent"><el-input size="small" v-model="formobj.alarmcontent" placeholder="工单内容" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>是否负责人</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>告警原因</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="executorname"><el-input v-model="formobj.executorname" placeholder="是否负责人" class="addinputw" clearable /></el-form-item>
<el-col :span="2" class="trightb">
<el-form-item prop="alarmreason"><el-input size="small" v-model="formobj.alarmreason" placeholder="告警原因" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>班组组织</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>处理人</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="workteam"><el-input v-model="formobj.workteam" placeholder="班组组织。" class="addinputw" clearable /></el-form-item>
<el-col :span="2" class="trightb">
<el-form-item prop="operationuser"><el-input size="small" v-model="formobj.operationuser" placeholder="处理人" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>响应状态接受拒绝</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>处理人名称</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="assignstate"><el-input v-model="formobj.assignstate" placeholder="响应状态(接受、拒绝)" class="addinputw" clearable /></el-form-item>
<el-col :span="2" class="trightb">
<el-form-item prop="operationuserrname"><el-input size="small" v-model="formobj.operationuserrname" placeholder="处理人名称" class="addinputw" clearable /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>响应时间接受拒绝</span>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>处理说明</span>
</el-col>
<el-col :span="3" class="trightb">
<el-form-item prop="operationcontent"><el-input size="small" v-model="formobj.operationcontent" placeholder="处理人名称" class="addinputw" clearable /></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item prop="assigntime"><el-input v-model="formobj.assigntime" placeholder="响应时间(接受、拒绝)" class="addinputw" clearable /></el-form-item>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>处理时间</span>
</el-col>
<el-col :span="3" class="trightb">
<el-form-item prop="operationtime">
<el-date-picker v-model="formobj.operationtime" type="date" size="small" clearable value-format="yyyy-MM-dd" placeholder="处理时间" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="3" class="tleftb">
<span><span class="icon">*</span>首次告警时间</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="firsttime">
<el-date-picker v-model="formobj.firsttime" type="date" size="small" clearable value-format="yyyy-MM-dd" placeholder="首次告警时间" />
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<span><span class="icon">*</span>最后告警时间</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="lasttime">
<el-date-picker v-model="formobj.lasttime" type="date" size="small" clearable value-format="yyyy-MM-dd" placeholder="最后告警时间" />
</el-form-item>
</el-col>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>告警状态</span>
</el-col>
<el-col :span="2" class="trightb">
<el-select
v-model="formobj.warnlevelkey"
class="addinputw"
placeholder="类型"
size="small"
>
<el-option
v-for="(item, i) in arr"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-col>
<el-col :span="2" class="tleftb">
<span><span class="icon">*</span>处理状态</span>
</el-col>
<el-col :span="2" class="trightb">
<el-select
v-model="formobj.operationstatus"
class="addinputw"
placeholder="等级"
size="small"
>
<el-option
v-for="(item, i) in arrList"
:key="i"
:label="item.type"
:value="item.value"
/>
</el-select>
</el-col>
</el-row>
</el-form>
</div>
<!-- End 添加修改部分 -->
</div>
</div>
</template>
<script>
import req from '@/api/yxtdispatchcenter/dispatchworker'
import req from '@/api/yxtdispatchcenter/dispatchorderinfo'
export default {
name: 'DispatchWorkerAdd',
name: 'DispatchOrderinfoAdd',
data() {
return {
submitdisabled: false,
isSearchShow: true,
viewTitle: '',
searchxianshitit: '显示添加条件',
formobj: {
id: '',
sid: '',
orderid: '', // id
principalname: '', //
principalsid: '', // sid
principalcontact: '', //
executorname: '', //
workteam: '', //
assignstate: '', //
assigntime: '' //
custid: '', // id
alarmreason: '', //
warneterid: '', // id
orderno: '', //
warnobjectmpsn: '', //
operationuser: '', //
operationuserrname: '', //
operationtime: '', //
operationcontent: '', //
firsttime: '', //
lasttime: '', //
warnlevelkey: '', //
operationstatus: '', //
alarmcontent: '', //
alarmtypekey: '1', // key
},
arr:[{value:1,type:'一级'},{value:2,type:'二级'}],
arrList:[{value:1,type:'待处理'},{value:2,type:'已处理'},{value:3,type:'处理中'},{value:4,type:'忽略处理'}],
rules: {
orderid: [{ required: true, message: '工单id不能为空', trigger: 'blur' }], // id
principalname: [{ required: true, message: '巡视人名称不能为空', trigger: 'blur' }], //
principalsid: [{ required: true, message: '巡视人sid不能为空', trigger: 'blur' }], // sid
principalcontact: [{ required: true, message: '联系方式不能为空', trigger: 'blur' }], //
executorname: [{ required: true, message: '是否负责人不能为空', trigger: 'blur' }], //
workteam: [{ required: true, message: '班组组织。不能为空', trigger: 'blur' }], //
assignstate: [{ required: true, message: '响应状态(接受、拒绝)不能为空', trigger: 'blur' }], //
assigntime: [{ required: true, message: '响应时间(接受、拒绝)不能为空', trigger: 'blur' }] //
custid: [{ required: true, message: '客户ID不能为空', trigger: 'blur' }], // ID
custname: [{ required: true, message: '客户名称不能为空', trigger: 'blur' }], //
supervisesid: [{ required: true, message: '监管公司id不能为空', trigger: 'blur' }], // id
orderno: [{ required: true, message: '用法说明:工单编号规则。不能为空', trigger: 'blur' }], //
ordername: [{ required: true, message: '工单名称不能为空', trigger: 'blur' }], //
orderdegree: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 1-2- 3-4-
ordertype: [{ required: true, message: '描述不能为空', trigger: 'blur' }], // 1-
ordercontent: [{ required: true, message: '工单内容不能为空', trigger: 'blur' }], //
// arrivetime: [{ required: true, message: '', trigger: 'blur' }], //
// planfinishtime: [{ required: true, message: '', trigger: 'blur' }], //
operationcontent: [{ required: true, message: '处理情况不能为空', trigger: 'blur' }], //
receiveperson: [{ required: true, message: '现场联系人不能为空', trigger: 'blur' }], //
receivetel: [{ required: true, message: '现场联系人电话不能为空', trigger: 'blur' }] //
}
}
},
@ -126,46 +195,66 @@ export default {
this.formobj.id = ''
this.formobj.sid = '' // SID
this.orderid = '' // id
this.principalname = '' //
this.principalsid = '' // sid
this.principalcontact = '' //
this.executorname = '' //
this.workteam = '' //
this.assignstate = '' //
this.assigntime = '' //
this.formobj.sid='',
this.formobj.custid= '', // id
this.formobj.alarmreason= '', //
this.formobj.warneterid= '', // id
this.formobj.orderno= '', //
this.formobj.warnobjectmpsn='', //
this.formobj.operationuser= '', //
this.formobj.operationuserrname= '', //
this.formobj.operationtime= '', //
this.formobj.operationcontent= '', //
this.formobj.firsttime= '', //
this.formobj.lasttime='', //
this.formobj.warnlevelkey= '', //
this.formobj.operationstatus='', //
this.formobj.alarmcontent= '', //
this.formobj.alarmtypekey= '', // key
this.$refs['form_obj'].resetFields()
this.$emit('doback')
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏添加条件'
} else {
this.searchxianshitit = '显示添加条件'
}
},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【新增】工单运维人员情况'
this.viewTitle = '【新增】工单数据'
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '【修改】工单运维人员情况'
this.searchxianshitit = '显示添加条件'
this.isSearchShow = true
this.viewTitle = '【修改】工单数据'
const _this = this
req
.fetchBySid(row.sid)
.then(resp => {
if (resp.sucess) {
if (resp.code==200) {
const vdata = resp.data
_this.formobj.id = vdata.id
_this.formobj.sid = vdata.sid // SID
_this.formobj.orderid = vdata.orderid // id
_this.formobj.principalname = vdata.principalname //
_this.formobj.principalsid = vdata.principalsid // sid
_this.formobj.principalcontact = vdata.principalcontact //
_this.formobj.executorname = vdata.executorname //
_this.formobj.workteam = vdata.workteam //
_this.formobj.assignstate = vdata.assignstate //
_this.formobj.assigntime = vdata.assigntime //
_this.formobj.custid = vdata.custid // ID
_this.formobj.custname = vdata.custname //
_this.formobj.supervisesid = vdata.supervisesid // id
_this.formobj.orderno = vdata.orderno //
_this.formobj.ordername = vdata.ordername //
_this.formobj.orderdegree = vdata.orderdegree // 1-2- 3-4-
_this.formobj.ordertype = vdata.ordertype // 1-
_this.formobj.ordercontent = vdata.ordercontent //
_this.formobj.receiveperson = vdata.receiveperson //
_this.formobj.receivetel = vdata.receivetel //
} else {
// resp.code
}
@ -180,7 +269,7 @@ export default {
if (valid) {
this.submitdisabled = true
req
.saveOrUpdate(this.formobj)
.saveOrUpdates(this.formobj)
.then(resp => {
this.submitdisabled = false
if (resp.success) {
@ -197,7 +286,17 @@ export default {
return false
}
})
}
},
handleSelectionChange(val) {
this.formobj.workers = val;
console.log(this.formobj);
},
handleSelection(selection){
if (selection.length > 1){
let del_row = selection.shift();
this.$refs.table.toggleRowSelection(del_row, false)
}
}
}
}
</script>

Loading…
Cancel
Save