Commit 87c2c2ff by 史敦盼

Merge branch 'sdp-v1'

2 parents ac386d7f 9498082b
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-03-12 14:55:59 * @Date: 2024-03-12 14:55:59
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-03-18 09:56:15 * @LastEditTime: 2024-03-28 17:01:26
--> -->
<!-- /** <!-- /**
* 搜索栏公共组件 * 搜索栏公共组件
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
class="btn-search" class="btn-search"
icon="el-icon-search" icon="el-icon-search"
@click="onSearch" @click="onSearch"
v-preventReClick
>查询</el-button >查询</el-button
> >
<el-button <el-button
......
export default function initDirective(vue) { export default function initDirective(vue) {
/** 节流 */ /** 节流 */
vue.directive('throttle', { vue.directive('throttle', {
inserted: function (el, binding) { inserted: function (el, binding) {
let stop = false; let stop = false
el.addEventListener(binding.arg, (e) => { el.addEventListener(binding.arg, (e) => {
if (stop) return; if (stop) return
binding.value(e) binding.value(e)
stop = true; stop = true
setTimeout(() => { setTimeout(() => {
stop = false stop = false
}, 500) }, 500)
}) })
} },
}) })
/** 防抖 */ /** 防抖 */
vue.directive('debounce', { vue.directive('debounce', {
inserted: function (el, binding) { inserted: function (el, binding) {
let stopTime; let stopTime
el.addEventListener(binding.arg, (e) => { el.addEventListener(binding.arg, (e) => {
clearTimeout(stopTime); clearTimeout(stopTime)
stopTime = setTimeout(binding.value, 1000, e) stopTime = setTimeout(binding.value, 1000, e)
}) })
} },
}) })
vue.directive('no-backslash', { vue.directive('no-backslash', {
...@@ -31,21 +30,34 @@ export default function initDirective(vue) { ...@@ -31,21 +30,34 @@ export default function initDirective(vue) {
// 绑定 @input 监听方法 // 绑定 @input 监听方法
el.addEventListener('input', function (event) { el.addEventListener('input', function (event) {
// 获取输入的值 // 获取输入的值
const value = event.target.value; const value = event.target.value
// 使用正则表达式检测特殊字(根据需要匹配相应限制字符) // 使用正则表达式检测特殊字(根据需要匹配相应限制字符)
const regex = /(?:')|(?:-- )|(\/\*(?:.|[\n\r])*?\*\/)|(\b(select|update|and|or|delete|insert|truncate|char|into|substr|ascii|declare|exec|count|master|into|drop|execute)\b)/i; const regex =
/(?:')|(?:-- )|(\/\*(?:.|[\n\r])*?\*\/)|(\b(select|update|and|or|delete|insert|truncate|char|into|substr|ascii|declare|exec|count|master|into|drop|execute)\b)/i
// 如果输入值包含特殊字符,则替换为空格 // 如果输入值包含特殊字符,则替换为空格
if (regex.test(value)) { if (regex.test(value)) {
// 使用 replace 方法替换特殊字为空格 // 使用 replace 方法替换特殊字为空格
const newValue = value.replace(regex, ' '); const newValue = value.replace(regex, ' ')
// 将新值设置回输入框 // 将新值设置回输入框
event.target.value = newValue; event.target.value = newValue
// 触发 @input 事件,使其更新组件中的数据 // 触发 @input 事件,使其更新组件中的数据
vnode.componentInstance.$emit('input', newValue); vnode.componentInstance.$emit('input', newValue)
} }
}); })
}, },
}); })
}
vue.directive('preventReClick', {
inserted: function (el, binding) {
el.addEventListener('click', () => {
if (!el.disabled) {
el.disabled = true
setTimeout(() => {
el.disabled = false
}, binding.value || 1500)
}
})
},
})
}
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* @Autor: pan * @Autor: pan
* @Date: 2024-03-21 20:58:31 * @Date: 2024-03-21 20:58:31
* @LastEditors: pan * @LastEditors: pan
* @LastEditTime: 2024-03-27 19:49:01 * @LastEditTime: 2024-03-28 17:36:40
--> -->
<template> <template>
<div class="flex-column m-10 w-100 conceptualExamine"> <div class="flex-column m-10 w-100 conceptualExamine">
...@@ -254,7 +254,7 @@ export default { ...@@ -254,7 +254,7 @@ export default {
this.leftContentType === 'onlyoffice' || this.leftContentType === 'onlyoffice' ||
this.rightContentType === 'onlyoffice' this.rightContentType === 'onlyoffice'
) { ) {
// this.fnQueryPrjNeedFile() this.fnQueryPrjNeedFile()
} }
}, },
computed: { computed: {
......
<!--
* @Description: 项目信息详情
* @Version: 2.0
* @Autor: pan
* @Date: 2024-03-28 16:08:56
* @LastEditors: pan
* @LastEditTime: 2024-03-28 17:31:20
-->
<template>
<div>
<el-dialog
:title="getTitle"
:visible.sync="showDialog"
:close-on-click-modal="false"
width="90%"
@close="handleClose()"
@open="handleOpen()"
>
<div>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="基本信息" name="1">
<div class="base-info-item m-t-20">
<div class="base-info-item-title">系统基本信息</div>
<div class="base-info-item-content">
<el-row class="m-t-20">
<el-col :span="6" class="flex">
<div class="label">单位</div>
<div class="value">总部</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">部门</div>
<div class="value">发展策划部</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">关联系统名称</div>
<div class="value">
电力营销-2023年网上国网(网上国网V1.0)
</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">建设类型</div>
<div class="value">统建</div>
</el-col>
</el-row>
<el-row class="m-t-20">
<el-col :span="6" class="flex">
<div class="label">项目名称</div>
<div class="value">Sora大模型系统</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">是否续建</div>
<div class="value"></div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">前期项目</div>
<div class="value">
电力营销-2023年网上国网(网上国网V1.0)
</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">承建单位</div>
<div class="value">国网数字科技有限公司</div>
</el-col>
</el-row>
<el-row class="m-t-20">
<el-col :span="6" class="flex">
<div class="label">项目经理</div>
<div class="value">李雷</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">创建人</div>
<div class="value">李雷</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">创建时间</div>
<div class="value">2024-03-28</div>
</el-col>
<el-col :span="6" class="flex">
<div class="label">修改人</div>
<div class="value">李雷</div>
</el-col>
</el-row>
<el-row class="m-t-20">
<el-col :span="24" class="flex">
<div class="label">修改时间</div>
<div class="value">2024-03-28</div>
</el-col>
</el-row>
<el-row class="m-t-20">
<el-col :span="24" class="flex">
<div class="label">修改时间</div>
<div class="value">
<el-table height="300" :data="tableData" stripe border>
<el-table-column
type="index"
label="序号"
width="80"
align="center"
></el-table-column>
<el-table-column
prop="name"
label="资料类型"
width="300"
align="center"
></el-table-column>
<el-table-column
prop="name2"
width="500"
label="资料名称"
align="center"
></el-table-column>
</el-table>
</div>
</el-col>
</el-row>
</div>
</div>
<div class="base-info-item m-t-20">
<div class="base-info-item-title">系统架构管控要求</div>
<div class="base-info-item-content">
<el-row class="m-t-20">
<el-col :span="8" class="flex">
<div class="label" style="width: 160px">
评审情况(概要设计)
</div>
<div class="value">完成</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">概设架构遵从检查</div>
<div class="value">完成</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">概设架构政策审查</div>
<div class="value">完成</div>
</el-col>
</el-row>
</div>
</div>
<div class="base-info-item m-t-20">
<div class="base-info-item-title">概要设计评审情况</div>
<div class="base-info-item-content">
<el-row class="m-t-20">
<el-col :span="8" class="flex">
<div class="label">批次名称</div>
<div class="value">2023第一批次概设评审</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">需求名称</div>
<div class="value">2023第一批次概设评审需求</div>
</el-col>
<el-col :span="8" class="flex">
<div class="label">关联组织机构</div>
<div class="value">经研院-项目管理部</div>
</el-col>
</el-row>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="架构资产" name="2">架构资产</el-tab-pane>
<el-tab-pane label="架构视图" name="3">架构视图</el-tab-pane>
</el-tabs>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose()" size="mini">关 闭</el-button>
</span></el-dialog
>
</div>
</template>
<script>
export default {
props: {
visible: {
type: Boolean,
default: false,
},
rowData: {
type: Object,
default: () => {},
},
},
data() {
return {
activeName: '1',
tableData: [],
}
},
components: {},
computed: {
showDialog: {
get() {
return this.visible
},
set(value) {
this.$emit('update:visible', value)
},
},
getTitle() {
return `项目名称:${this.rowData.prjName}`
},
},
mounted() {},
methods: {
handleClose() {
this.showDialog = false
},
handleOpen() {},
handleClick() {},
},
}
</script>
<style scoped lang="scss">
@import '@/styles/elementui.scss';
@import '@/styles/common.scss';
.base-info-item {
&-title {
font-size: 16px;
color: #1ec695;
position: relative;
text-align: left;
padding-left: 20px;
&::before {
content: '';
position: absolute;
left: 0;
top: 2px;
width: 6px;
border-radius: 4px;
height: 20px;
background-color: #1ec695;
}
}
&-content {
// padding: 0 50px;
.label {
font-weight: bold;
margin-right: 30px;
width: 120px;
text-align: right;
}
}
}
</style>
...@@ -5,66 +5,180 @@ ...@@ -5,66 +5,180 @@
<div class="search_menu_item_container"> <div class="search_menu_item_container">
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">单位</span> <span class="search_title">单位</span>
<el-input v-no-backslash v-model="searchParams.let1" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams.let1"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">部门</span> <span class="search_title">部门</span>
<el-input v-no-backslash v-model="searchParams.let2" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams.let2"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">项目名称</span> <span class="search_title">项目名称</span>
<el-input v-no-backslash v-model="searchParams.let3" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams.let3"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">建设类型</span> <span class="search_title">建设类型</span>
<el-select v-model="searchParams.let4" placeholder="请选择" class="search_item"> <el-select
<el-option v-for="item in jianSheLeiXingSelect" :key="item.value" :label="item.label" :value="item.value"></el-option> v-model="searchParams.let4"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in jianSheLeiXingSelect"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="search_menu_btn_container"> <div class="search_menu_btn_container">
<div class="query_btn" @click="search_table"> <div class="query_btn" @click="search_table">
<img class="btn_icon" src="@/assets/archi-ele-list/search.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/search.png"
alt=""
/>
<p>查询</p> <p>查询</p>
</div> </div>
<div class="reset_btn" @click="reset"> <div class="reset_btn" @click="reset">
<img class="btn_icon" src="@/assets/archi-ele-list/reset.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/reset.png"
alt=""
/>
<p>重置</p> <p>重置</p>
</div> </div>
</div> </div>
</div> </div>
<div class="search_btn"> <div class="search_btn">
<el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', null)">新建项目</el-button> <el-button
type="primary"
size="medium"
icon="el-icon-document-add"
@click="operation('add', null)"
>新建项目</el-button
>
<!-- <el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', null)">续建项目</el-button> --> <!-- <el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', null)">续建项目</el-button> -->
<!-- <el-button type="primary" size="medium" icon="el-icon-delete">删除</el-button> --> <!-- <el-button type="primary" size="medium" icon="el-icon-delete">删除</el-button> -->
</div> </div>
<el-table :height="tableHeight" v-loading="loading" :data="tableData" stripe border> <el-table
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> :height="tableHeight"
<el-table-column prop="manageOrgId" label="单位" align="center"></el-table-column> v-loading="loading"
<el-table-column prop="manageDeptId" label="部门" align="center"></el-table-column> :data="tableData"
<el-table-column prop="appName" label="系统名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> stripe
border
>
<el-table-column
type="index"
label="序号"
width="80"
align="center"
></el-table-column>
<el-table-column
prop="manageOrgId"
label="单位"
align="center"
></el-table-column>
<el-table-column
prop="manageDeptId"
label="部门"
align="center"
></el-table-column>
<el-table-column
prop="appName"
label="系统名称"
align="center"
width="200"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="建设类型" align="center"> <el-table-column label="建设类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.buildType == 1">统推</span> <span v-if="scope.row.buildType == 1">统推</span>
<span v-else-if="scope.row.buildType == 2">自建</span> <span v-else-if="scope.row.buildType == 2">自建</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="prjName" label="项目名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> <el-table-column
prop="prjName"
label="项目名称"
align="center"
width="200"
:show-overflow-tooltip="true"
>
<template slot-scope="{ row }">
<span class="prjName" @click="openDetail(row)">{{
row.prjName
}}</span>
</template>
</el-table-column>
<el-table-column label="项目类型" align="center"> <el-table-column label="项目类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.prjPlanClass == 1">新建</span> <span v-if="scope.row.prjPlanClass == 1">新建</span>
<span v-else-if="scope.row.prjPlanClass == 2">续建</span> <span v-else-if="scope.row.prjPlanClass == 2">续建</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="buildOrg" label="承建单位" align="center"></el-table-column> <el-table-column
<el-table-column prop="projectManager" label="项目经理" align="center"></el-table-column> prop="buildOrg"
<el-table-column prop="createMan" label="创建人" align="center"></el-table-column> label="承建单位"
<el-table-column prop="createTime" label="创建时间" align="center"></el-table-column> align="center"
></el-table-column>
<el-table-column
prop="projectManager"
label="项目经理"
align="center"
></el-table-column>
<el-table-column
prop="createMan"
label="创建人"
align="center"
></el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
align="center"
></el-table-column>
<el-table-column label="操作" width="260" align="center"> <el-table-column label="操作" width="260" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div style="display: flex;align-items: center;justify-content: center;"> <div
<el-button icon="el-icon-edit" type="primary" size="mini" @click="operation('edit', scope.row)" :disabled="scope.row.state == 1">编辑</el-button> style="
<el-button class="shanChu_btn" icon="el-icon-delete" size="mini" @click="operation('delete', scope.row)" :disabled="scope.row.state == 1">删除</el-button> display: flex;
align-items: center;
justify-content: center;
"
>
<el-button
icon="el-icon-edit"
type="primary"
size="mini"
@click="operation('edit', scope.row)"
:disabled="scope.row.state == 1"
>编辑</el-button
>
<el-button
class="shanChu_btn"
icon="el-icon-delete"
size="mini"
@click="operation('delete', scope.row)"
:disabled="scope.row.state == 1"
>删除</el-button
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -82,7 +196,8 @@ ...@@ -82,7 +196,8 @@
:page-sizes="pager.sizes" :page-sizes="pager.sizes"
:page-size="pager.size" :page-size="pager.size"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="pager.total"> :total="pager.total"
>
</el-pagination> </el-pagination>
</div> </div>
<el-dialog <el-dialog
...@@ -90,25 +205,43 @@ ...@@ -90,25 +205,43 @@
:visible.sync="add_dialog" :visible.sync="add_dialog"
:center="false" :center="false"
:close-on-click-modal="false" :close-on-click-modal="false"
width="80%"> width="80%"
<el-form :model="ruleForm" ref="form" :rules="rules" style="display: flex;flex-wrap: wrap;"> >
<el-form-item label="关联系统:" prop="let1" style="width: 30%;"> <el-form
:model="ruleForm"
ref="form"
:rules="rules"
style="display: flex; flex-wrap: wrap"
>
<el-form-item label="关联系统:" prop="let1" style="width: 30%">
<el-input v-model="ruleForm.let1" readonly> <el-input v-model="ruleForm.let1" readonly>
<div slot="append" @click="operation('open_add_dialog2', null)"> <div slot="append" @click="operation('open_add_dialog2', null)">
选择系统 选择系统
</div> </div>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="项目名称:" prop="let2" style="width: 30%;margin-left: 46px;"> <el-form-item
<el-input v-no-backslash v-model="ruleForm.let2" maxlength="100"></el-input> label="项目名称:"
prop="let2"
style="width: 30%; margin-left: 46px"
>
<el-input
v-no-backslash
v-model="ruleForm.let2"
maxlength="100"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="是否续建:" prop="let3" style="width: 30%;"> <el-form-item label="是否续建:" prop="let3" style="width: 30%">
<el-select v-model="ruleForm.let3" clearable placeholder="请选择"> <el-select v-model="ruleForm.let3" clearable placeholder="请选择">
<el-option label="是" :value="2"></el-option> <el-option label="是" :value="2"></el-option>
<el-option label="否" :value="1"></el-option> <el-option label="否" :value="1"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="前期项目:" prop="let4" style="width: 29.5%;margin-left: 10px;"> <el-form-item
label="前期项目:"
prop="let4"
style="width: 29.5%; margin-left: 10px"
>
<el-input v-model="ruleForm.let4" readonly> <el-input v-model="ruleForm.let4" readonly>
<div slot="append" @click="operation('open_add_dialog3', null)"> <div slot="append" @click="operation('open_add_dialog3', null)">
选择项目 选择项目
...@@ -123,20 +256,35 @@ ...@@ -123,20 +256,35 @@
</el-input> </el-input>
</el-form-item> --> </el-form-item> -->
</el-form> </el-form>
<div style="text-align: left;margin-left: 10px;">项目资料:</div> <div style="text-align: left; margin-left: 10px">项目资料:</div>
<el-table :data="tableData4" stripe border> <el-table :data="tableData4" stripe border>
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> <el-table-column
<el-table-column prop="tableLet1" label="资料类型" align="center"></el-table-column> type="index"
label="序号"
width="80"
align="center"
></el-table-column>
<el-table-column
prop="tableLet1"
label="资料类型"
align="center"
></el-table-column>
<el-table-column label="资料名称" align="center"> <el-table-column label="资料名称" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-upload <el-upload
class="upload-demo" class="upload-demo"
action="/eadc-shared-ability/oss/upload" action="/eadc-shared-ability/oss/upload"
ref="upload" ref="upload"
:on-remove="(file, fileList) => handleRemove(file, fileList, scope.row)" :on-remove="
:on-success="(res, file, fileList) => handleFileUploadSuccess(res, file, fileList, scope.row)" (file, fileList) => handleRemove(file, fileList, scope.row)
"
:on-success="
(res, file, fileList) =>
handleFileUploadSuccess(res, file, fileList, scope.row)
"
:limit="1" :limit="1"
:file-list="scope.row.fileList"> :file-list="scope.row.fileList"
>
<el-button size="small" type="primary">点击上传</el-button> <el-button size="small" type="primary">点击上传</el-button>
</el-upload> </el-upload>
</template> </template>
...@@ -144,65 +292,145 @@ ...@@ -144,65 +292,145 @@
</el-table> </el-table>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="greenButton" @click="dialogOperation('save', null)">保存</el-button> <el-button class="greenButton" @click="dialogOperation('save', null)"
>保存</el-button
>
<el-button @click="add_dialog = false">取消</el-button> <el-button @click="add_dialog = false">取消</el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
title='选择系统' title="选择系统"
:visible.sync="add_dialog2" :visible.sync="add_dialog2"
:center="false" :center="false"
:close-on-click-modal="false" :close-on-click-modal="false"
width="80%"> width="80%"
<div class="search_menu" style="justify-content: center;"> >
<div class="search_menu" style="justify-content: center">
<div class="search_menu_item_container"> <div class="search_menu_item_container">
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">单位</span> <span class="search_title">单位</span>
<el-input v-no-backslash v-model="searchParams2.let1" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams2.let1"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">部门</span> <span class="search_title">部门</span>
<el-input v-no-backslash v-model="searchParams2.let2" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams2.let2"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">项目名称</span> <span class="search_title">项目名称</span>
<el-input v-no-backslash v-model="searchParams2.let3" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams2.let3"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">建设类型</span> <span class="search_title">建设类型</span>
<el-select v-model="searchParams2.let4" placeholder="请选择" class="search_item"> <el-select
<el-option v-for="item in jianSheLeiXingSelect" :key="item.value" :label="item.label" :value="item.value"></el-option> v-model="searchParams2.let4"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in jianSheLeiXingSelect"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="search_menu_btn_container"> <div class="search_menu_btn_container">
<div class="query_btn" @click="search_table2"> <div class="query_btn" @click="search_table2">
<img class="btn_icon" src="@/assets/archi-ele-list/search.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/search.png"
alt=""
/>
<p>查询</p> <p>查询</p>
</div> </div>
<div class="reset_btn" @click="reset2"> <div class="reset_btn" @click="reset2">
<img class="btn_icon" src="@/assets/archi-ele-list/reset.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/reset.png"
alt=""
/>
<p>重置</p> <p>重置</p>
</div> </div>
</div> </div>
</div> </div>
<el-table height="300" v-loading="loading2" @selection-change="select_table_rows" :data="tableData2" stripe border> <el-table
height="300"
v-loading="loading2"
@selection-change="select_table_rows"
:data="tableData2"
stripe
border
>
<el-table-column type="selection" width="55"></el-table-column> <el-table-column type="selection" width="55"></el-table-column>
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> <el-table-column
<el-table-column prop="manageOrgId" label="单位" align="center"></el-table-column> type="index"
<el-table-column prop="manageDeptId" label="部门" align="center"></el-table-column> label="序号"
<el-table-column prop="appName" label="系统名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> width="80"
align="center"
></el-table-column>
<el-table-column
prop="manageOrgId"
label="单位"
align="center"
></el-table-column>
<el-table-column
prop="manageDeptId"
label="部门"
align="center"
></el-table-column>
<el-table-column
prop="appName"
label="系统名称"
align="center"
width="200"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="建设类型" align="center"> <el-table-column label="建设类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.buildType == 1">统推</span> <span v-if="scope.row.buildType == 1">统推</span>
<span v-else>自建</span> <span v-else>自建</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="buildOrg" label="承建单位" align="center"></el-table-column> <el-table-column
<el-table-column prop="projectManager" label="项目经理" align="center"></el-table-column> prop="buildOrg"
<el-table-column prop="createMan" label="创建人" align="center"></el-table-column> label="承建单位"
<el-table-column prop="createTime" label="创建时间" align="center"></el-table-column> align="center"
></el-table-column>
<el-table-column
prop="projectManager"
label="项目经理"
align="center"
></el-table-column>
<el-table-column
prop="createMan"
label="创建人"
align="center"
></el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
align="center"
></el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
background background
...@@ -212,75 +440,166 @@ ...@@ -212,75 +440,166 @@
:page-sizes="pager2.sizes" :page-sizes="pager2.sizes"
:page-size="pager2.size" :page-size="pager2.size"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="pager2.total"> :total="pager2.total"
>
</el-pagination> </el-pagination>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="greenButton" @click="dialogOperation('selectSystem', null)">确定</el-button> <el-button
<el-button @click="dialogOperation('cancelSelectSystem', null)">取消</el-button> class="greenButton"
@click="dialogOperation('selectSystem', null)"
>确定</el-button
>
<el-button @click="dialogOperation('cancelSelectSystem', null)"
>取消</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
title='选择项目' title="选择项目"
:visible.sync="add_dialog3" :visible.sync="add_dialog3"
:center="false" :center="false"
:close-on-click-modal="false" :close-on-click-modal="false"
width="80%"> width="80%"
<div class="search_menu" style="justify-content: center;"> >
<div class="search_menu" style="justify-content: center">
<div class="search_menu_item_container"> <div class="search_menu_item_container">
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">单位</span> <span class="search_title">单位</span>
<el-input v-no-backslash v-model="searchParams3.let1" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams3.let1"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">部门</span> <span class="search_title">部门</span>
<el-input v-no-backslash v-model="searchParams3.let2" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams3.let2"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">系统名称</span> <span class="search_title">系统名称</span>
<el-input v-no-backslash v-model="searchParams.let3" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams.let3"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item" style="width: auto;"> <div class="search_menu_item" style="width: auto">
<span class="search_title">建设类型</span> <span class="search_title">建设类型</span>
<el-select v-model="searchParams3.let4" placeholder="请选择" class="search_item"> <el-select
<el-option v-for="item in jianSheLeiXingSelect" :key="item.value" :label="item.label" :value="item.value"></el-option> v-model="searchParams3.let4"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in jianSheLeiXingSelect"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="search_menu_btn_container"> <div class="search_menu_btn_container">
<div class="query_btn" @click="search_table3"> <div class="query_btn" @click="search_table3">
<img class="btn_icon" src="@/assets/archi-ele-list/search.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/search.png"
alt=""
/>
<p>查询</p> <p>查询</p>
</div> </div>
<div class="reset_btn" @click="reset3"> <div class="reset_btn" @click="reset3">
<img class="btn_icon" src="@/assets/archi-ele-list/reset.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/reset.png"
alt=""
/>
<p>重置</p> <p>重置</p>
</div> </div>
</div> </div>
</div> </div>
<el-table height="300" v-loading="loading3" @selection-change="select_table_row3" :data="tableData3" stripe border> <el-table
height="300"
v-loading="loading3"
@selection-change="select_table_row3"
:data="tableData3"
stripe
border
>
<el-table-column type="selection" width="55"></el-table-column> <el-table-column type="selection" width="55"></el-table-column>
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> <el-table-column
<el-table-column prop="manageOrgId" label="单位" align="center"></el-table-column> type="index"
<el-table-column prop="manageDeptId" label="部门" align="center"></el-table-column> label="序号"
<el-table-column prop="appName" label="系统名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> width="80"
align="center"
></el-table-column>
<el-table-column
prop="manageOrgId"
label="单位"
align="center"
></el-table-column>
<el-table-column
prop="manageDeptId"
label="部门"
align="center"
></el-table-column>
<el-table-column
prop="appName"
label="系统名称"
align="center"
width="200"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="建设类型" align="center"> <el-table-column label="建设类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.buildType == 1">统推</span> <span v-if="scope.row.buildType == 1">统推</span>
<span v-else>自建</span> <span v-else>自建</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="prjName" label="项目名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> <el-table-column
prop="prjName"
label="项目名称"
align="center"
width="200"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="是否续建" align="center"> <el-table-column label="是否续建" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.prjPlanClass == 1"></span> <span v-if="scope.row.prjPlanClass == 1"></span>
<span v-else></span> <span v-else></span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="buildOrg" label="承建单位" align="center"></el-table-column> <el-table-column
<el-table-column prop="projectManager" label="项目经理" align="center"></el-table-column> prop="buildOrg"
<el-table-column prop="createMan" label="创建人" align="center"></el-table-column> label="承建单位"
<el-table-column prop="createTime" label="创建时间" align="center"></el-table-column> align="center"
></el-table-column>
<el-table-column
prop="projectManager"
label="项目经理"
align="center"
></el-table-column>
<el-table-column
prop="createMan"
label="创建人"
align="center"
></el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
align="center"
></el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination
background background
...@@ -290,44 +609,60 @@ ...@@ -290,44 +609,60 @@
:page-sizes="pager3.sizes" :page-sizes="pager3.sizes"
:page-size="pager3.size" :page-size="pager3.size"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="pager3.total"> :total="pager3.total"
>
</el-pagination> </el-pagination>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="greenButton" @click="dialogOperation('selectProject', null)">确定</el-button> <el-button
<el-button @click="dialogOperation('cancelSelectProject', null)">取消</el-button> class="greenButton"
@click="dialogOperation('selectProject', null)"
>确定</el-button
>
<el-button @click="dialogOperation('cancelSelectProject', null)"
>取消</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
title='选择报告' title="选择报告"
:visible.sync="add_dialog4" :visible.sync="add_dialog4"
:center="false" :center="false"
:close-on-click-modal="false" :close-on-click-modal="false"
width="80%"> width="80%"
>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="greenButton" @click="dialogOperation('selectReport', null)">确定</el-button> <el-button
<el-button @click="dialogOperation('cancelSelectReport', null)">取消</el-button> class="greenButton"
@click="dialogOperation('selectReport', null)"
>确定</el-button
>
<el-button @click="dialogOperation('cancelSelectReport', null)"
>取消</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<!-- 项目信息详情 -->
<ProjectDetail :row-data="rowData" :visible.sync="projectDetailVisible" />
</div> </div>
</template> </template>
<script> <script>
import ProjectDetail from '@/views/projectInfoManage/ProjectDetail'
import { import {
queryProjectInfoManageTable, queryProjectInfoManageTable,
getDianXingAnLiSelectData, getDianXingAnLiSelectData,
editDeleteProjectInfoManageTable, editDeleteProjectInfoManageTable,
querysystemInfoManageTable, querysystemInfoManageTable,
addProjectManageTable addProjectManageTable,
} from '@/api/index.js'; } from '@/api/index.js'
import { MessageBox, Message } from 'element-ui'; import { MessageBox, Message } from 'element-ui'
import $ from 'jquery'; import $ from 'jquery'
export default { export default {
name: 'projectInfoManage', name: 'projectInfoManage',
components: { components: { ProjectDetail },
},
data() { data() {
return { return {
add_dialog2: false, add_dialog2: false,
...@@ -341,12 +676,8 @@ export default { ...@@ -341,12 +676,8 @@ export default {
let5: null, let5: null,
}, },
rules: { rules: {
let1: [ let1: [{ required: true, message: '请选择关联系统', trigger: 'blur' }],
{ required: true, message: '请选择关联系统', trigger: 'blur' }, let2: [{ required: true, message: '请输入项目名称', trigger: 'blur' }],
],
let2: [
{ required: true, message: '请输入项目名称', trigger: 'blur' },
],
let3: [ let3: [
{ required: true, message: '请选择是否续建', trigger: 'change' }, { required: true, message: '请选择是否续建', trigger: 'change' },
], ],
...@@ -359,7 +690,7 @@ export default { ...@@ -359,7 +690,7 @@ export default {
current: 1, current: 1,
sizes: [10, 20, 50, 100, 200], sizes: [10, 20, 50, 100, 200],
size: 10, size: 10,
total: 20 //总条数 total: 20, //总条数
}, },
tableHeight: null, tableHeight: null,
searchParams: { searchParams: {
...@@ -387,7 +718,7 @@ export default { ...@@ -387,7 +718,7 @@ export default {
current: 1, current: 1,
sizes: [10, 20, 50, 100, 200], sizes: [10, 20, 50, 100, 200],
size: 10, size: 10,
total: 20 //总条数 total: 20, //总条数
}, },
selectRow: [], selectRow: [],
selectRow3: [], selectRow3: [],
...@@ -397,7 +728,7 @@ export default { ...@@ -397,7 +728,7 @@ export default {
current: 1, current: 1,
sizes: [10, 20, 50, 100, 200], sizes: [10, 20, 50, 100, 200],
size: 10, size: 10,
total: 20 //总条数 total: 20, //总条数
}, },
selectRo3: [], selectRo3: [],
tableData4: [ tableData4: [
...@@ -409,161 +740,177 @@ export default { ...@@ -409,161 +740,177 @@ export default {
{ id: 5, tableLet1: '其他', fileList: [], fileArray: [] }, { id: 5, tableLet1: '其他', fileList: [], fileArray: [] },
], ],
prjId: null, prjId: null,
}; rowData: {},
projectDetailVisible: false,
}
}, },
mounted(){ mounted() {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.set_table_height(); this.set_table_height()
}) })
this.set_table_height(); this.set_table_height()
this.get_table(); this.get_table()
this.getJianSheLeiXingSelect().then(res => { this.getJianSheLeiXingSelect().then((res) => {
this.jianSheLeiXingSelect = res; this.jianSheLeiXingSelect = res
}) })
}, },
methods: { methods: {
openDetail(row) {
this.rowData = row
this.projectDetailVisible = true
},
// 文件上传逻辑 // 文件上传逻辑
handleRemove(file, fileList, row) {//文件移出 handleRemove(file, fileList, row) {
row.fileArray = []; //文件移出
row.fileArray = []
}, },
handleFileUploadSuccess(res, file, fileList, row) {//文件上传 handleFileUploadSuccess(res, file, fileList, row) {
row.fileArray = [{ //文件上传
row.fileArray = [
{
fileName: file.name, fileName: file.name,
fileId: file.response.data.fileId, fileId: file.response.data.fileId,
fileUrl: file.response.data.viewUrl fileUrl: file.response.data.viewUrl,
}]; },
]
}, },
operation(type, data) { operation(type, data) {
switch(type){ switch (type) {
case 'add': case 'add':
this.addItem(); this.addItem()
break; break
case 'open_add_dialog2': case 'open_add_dialog2':
this.open_add_dialog2(); this.open_add_dialog2()
break; break
case 'open_add_dialog3': case 'open_add_dialog3':
this.open_add_dialog3(); this.open_add_dialog3()
break; break
case 'edit': case 'edit':
this.editItem(data); this.editItem(data)
break; break
case 'delete': case 'delete':
this.deleteItem(data); this.deleteItem(data)
break; break
} }
}, },
dialogOperation(type, data) { dialogOperation(type, data) {
switch(type){ switch (type) {
case 'save': case 'save':
this.save_dialog(); this.save_dialog()
break; break
case 'selectSystem': case 'selectSystem':
this.confirmSelectSystem(); this.confirmSelectSystem()
break; break
case 'cancelSelectSystem': case 'cancelSelectSystem':
this.selectRow = []; this.selectRow = []
this.add_dialog2 = false; this.add_dialog2 = false
break; break
case 'selectProject': case 'selectProject':
this.confirmSelectProject(); this.confirmSelectProject()
break; break
case 'cancelSelectProject': case 'cancelSelectProject':
this.selectRow3 = []; this.selectRow3 = []
this.add_dialog3 = false; this.add_dialog3 = false
break; break
} }
}, },
confirmSelectSystem() { confirmSelectSystem() {
if(this.selectRow.length == 0) { if (this.selectRow.length == 0) {
Message({ Message({
type: 'error', type: 'error',
message: '请选择至少一条数据' message: '请选择至少一条数据',
}); })
return; return
} }
if(this.selectRow.length > 1) { if (this.selectRow.length > 1) {
Message({ Message({
type: 'error', type: 'error',
message: '只能选择一条数据' message: '只能选择一条数据',
}); })
return; return
} }
this.ruleForm.let1 = this.selectRow[0].appName; this.ruleForm.let1 = this.selectRow[0].appName
this.add_dialog2 = false; this.add_dialog2 = false
}, },
confirmSelectProject() { confirmSelectProject() {
if(this.selectRow3.length == 0) { if (this.selectRow3.length == 0) {
Message({ Message({
type: 'error', type: 'error',
message: '请选择至少一条数据' message: '请选择至少一条数据',
}); })
return; return
} }
if(this.selectRow3.length > 1) { if (this.selectRow3.length > 1) {
Message({ Message({
type: 'error', type: 'error',
message: '只能选择一条数据' message: '只能选择一条数据',
}); })
return; return
} }
this.ruleForm.let4 = this.selectRow3[0].prjName; this.ruleForm.let4 = this.selectRow3[0].prjName
this.add_dialog3 = false; this.add_dialog3 = false
}, },
deleteItem(row) {//删除 deleteItem(row) {
//删除
MessageBox.confirm('确定删除?', '提示', { MessageBox.confirm('确定删除?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
customClass: 'messageClass', customClass: 'messageClass',
confirmButtonClass: 'confirmClass', confirmButtonClass: 'confirmClass',
type: 'warning' type: 'warning',
}).then(() => { })
.then(() => {
const params = { const params = {
prjId: row.prjId, prjId: row.prjId,
delFlag: 1 delFlag: 1,
} }
editDeleteProjectInfoManageTable(params).then(res => { editDeleteProjectInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.get_table(); this.get_table()
Message({ Message({
type: 'success', type: 'success',
message: '删除成功!' message: '删除成功!',
}); })
}else{ } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
}).catch(() => { })
.catch(() => {
Message({ Message({
type: 'info', type: 'info',
message: '已取消' message: '已取消',
}); })
}); })
}, },
addItem() {//新建项目 addItem() {
this.add_dialog = true; //新建项目
this.is_add_edit = 'add'; this.add_dialog = true
this.is_add_edit = 'add'
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.form.resetFields(); this.$refs.form.resetFields()
this.ruleForm.let1 = null; this.ruleForm.let1 = null
this.ruleForm.let2 = null; this.ruleForm.let2 = null
this.ruleForm.let3 = null; this.ruleForm.let3 = null
this.ruleForm.let4 = null; this.ruleForm.let4 = null
this.selectRow = []; this.selectRow = []
this.selectRow3 = []; this.selectRow3 = []
this.tableData4.forEach(item => { this.tableData4.forEach((item) => {
item.fileList = []; item.fileList = []
item.fileArray = []; item.fileArray = []
}); })
}); })
}, },
editItem(row) {//编辑 editItem(row) {
this.add_dialog = true; //编辑
this.is_add_edit = 'edit'; this.add_dialog = true
this.ruleForm.let1 = row.appName; this.is_add_edit = 'edit'
this.selectRow = [{ this.ruleForm.let1 = row.appName
this.selectRow = [
{
appCode: row.appCode, appCode: row.appCode,
appId: row.appId, appId: row.appId,
appName: row.appName, appName: row.appName,
...@@ -571,127 +918,150 @@ export default { ...@@ -571,127 +918,150 @@ export default {
buildType: row.buildType, buildType: row.buildType,
manageDeptId: row.manageDeptId, manageDeptId: row.manageDeptId,
manageOrgId: row.manageOrgId, manageOrgId: row.manageOrgId,
}]; },
this.ruleForm.let2 = row.prjName; ]
this.ruleForm.let3 = row.prjPlanClass; this.ruleForm.let2 = row.prjName
if(row.prjPlanClass == 2) { this.ruleForm.let3 = row.prjPlanClass
this.selectRow3 = [{ if (row.prjPlanClass == 2) {
this.selectRow3 = [
{
agoPrjCode: row.agoPrjCode, agoPrjCode: row.agoPrjCode,
agoPrjId: row.agoPrjId, agoPrjId: row.agoPrjId,
agoPrjName: row.agoPrjName, agoPrjName: row.agoPrjName,
}] },
this.ruleForm.let4 = row.prjName; ]
this.ruleForm.let4 = row.prjName
} }
if(row.filesValue) { if (row.filesValue) {
let filesValue = JSON.parse(row.filesValue); let filesValue = JSON.parse(row.filesValue)
if(filesValue.length > 0) { if (filesValue.length > 0) {
this.tableData4.forEach((item, index) => { this.tableData4.forEach((item, index) => {
item.fileList = filesValue[index] ? [ item.fileList = filesValue[index]
? [
{ {
name: filesValue[index].fileName, name: filesValue[index].fileName,
url: filesValue[index].fileUrl, url: filesValue[index].fileUrl,
fileId: filesValue[index].fileId, fileId: filesValue[index].fileId,
fileName: filesValue[index].fileName, fileName: filesValue[index].fileName,
fileUrl: filesValue[index].fileUrl, fileUrl: filesValue[index].fileUrl,
} },
] : []; ]
item.fileArray = filesValue[index] ? [ : []
item.fileArray = filesValue[index]
? [
{ {
name: filesValue[index].fileName, name: filesValue[index].fileName,
url: filesValue[index].fileUrl, url: filesValue[index].fileUrl,
fileId: filesValue[index].fileId, fileId: filesValue[index].fileId,
fileName: filesValue[index].fileName, fileName: filesValue[index].fileName,
fileUrl: filesValue[index].fileUrl, fileUrl: filesValue[index].fileUrl,
} },
] : []; ]
}); : []
})
} }
console.log(this.tableData4) console.log(this.tableData4)
} }
this.prjId = row.prjId; this.prjId = row.prjId
}, },
open_add_dialog2() {//打开选择系统窗口 open_add_dialog2() {
this.add_dialog2 = true; //打开选择系统窗口
this.get_system_table(); this.add_dialog2 = true
this.get_system_table()
}, },
open_add_dialog3() {//打开选择项目窗口 open_add_dialog3() {
this.add_dialog3 = true; //打开选择项目窗口
this.get_table2(); this.add_dialog3 = true
this.get_table2()
}, },
search_table3() {//搜索 search_table3() {
this.pager3.current = 1; //搜索
this.get_table2(); this.pager3.current = 1
this.get_table2()
}, },
get_table2() {//查询表格数据 get_table2() {
this.loading3 = true; //查询表格数据
this.loading3 = true
const params = { const params = {
"appId": this.selectRow.length > 0 ? this.selectRow[0].appId : null, appId: this.selectRow.length > 0 ? this.selectRow[0].appId : null,
"manageOrgId": this.searchParams3.let1, manageOrgId: this.searchParams3.let1,
"manageDeptId": this.searchParams3.let2, manageDeptId: this.searchParams3.let2,
"appName": this.searchParams3.let3, appName: this.searchParams3.let3,
"buildType": this.searchParams3.let4, buildType: this.searchParams3.let4,
"current": this.pager3.current, current: this.pager3.current,
"pageSize": this.pager3.size, pageSize: this.pager3.size,
}; }
queryProjectInfoManageTable(params).then(res => { queryProjectInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.loading3 = false; this.loading3 = false
this.tableData3 = res.data.records; this.tableData3 = res.data.records
this.pager3.current = res.data.current; this.pager3.current = res.data.current
this.pager3.total = res.data.total; this.pager3.total = res.data.total
this.pager3.size = res.data.size; this.pager3.size = res.data.size
} }
}); })
}, },
reset3() {//重置 reset3() {
this.searchParams3.let1 = null; //重置
this.searchParams3.let2 = null; this.searchParams3.let1 = null
this.searchParams3.let3 = null; this.searchParams3.let2 = null
this.searchParams3.let4 = null; this.searchParams3.let3 = null
this.searchParams3.let4 = null
}, },
// 每页条数改变 // 每页条数改变
handleSizeChange3(val) { handleSizeChange3(val) {
this.pager3.current = 1; this.pager3.current = 1
this.pager3.size = val; this.pager3.size = val
this.get_table2(); this.get_table2()
}, },
//当前页码改变 //当前页码改变
handleCurrentChange3(val) { handleCurrentChange3(val) {
this.pager3.current = val; this.pager3.current = val
this.get_table2(); this.get_table2()
}, },
select_table_row3(data){//表格的勾选 select_table_row3(data) {
this.selectRow3 = data; //表格的勾选
this.selectRow3 = data
}, },
save_dialog() {//保存系统 save_dialog() {
this.$refs.form.validate(valid => { //保存系统
if(valid) { this.$refs.form.validate((valid) => {
let agoPrjCode, agoPrjId, agoPrjName, appCode, appId, appName, buildOrg, buildType, manageDeptId, manageOrgId; if (valid) {
if(this.ruleForm.let3 == 2) { let agoPrjCode,
if(this.selectRow3.length == 0) { agoPrjId,
agoPrjName,
appCode,
appId,
appName,
buildOrg,
buildType,
manageDeptId,
manageOrgId
if (this.ruleForm.let3 == 2) {
if (this.selectRow3.length == 0) {
Message({ Message({
type: 'error', type: 'error',
message: '请选择前期项目!' message: '请选择前期项目!',
}); })
return; return
} }
} }
if(this.selectRow3.length > 0) { if (this.selectRow3.length > 0) {
agoPrjCode = this.selectRow3[0].agoPrjCode; agoPrjCode = this.selectRow3[0].agoPrjCode
agoPrjId = this.selectRow3[0].agoPrjId; agoPrjId = this.selectRow3[0].agoPrjId
agoPrjName = this.selectRow3[0].agoPrjName; agoPrjName = this.selectRow3[0].agoPrjName
} }
appCode = this.selectRow[0].appCode; appCode = this.selectRow[0].appCode
appId = this.selectRow[0].appId; appId = this.selectRow[0].appId
appName = this.selectRow[0].appName; appName = this.selectRow[0].appName
buildOrg = this.selectRow[0].buildOrg; buildOrg = this.selectRow[0].buildOrg
buildType = this.selectRow[0].buildType; buildType = this.selectRow[0].buildType
manageDeptId = this.selectRow[0].manageDeptId; manageDeptId = this.selectRow[0].manageDeptId
manageOrgId = this.selectRow[0].manageOrgId; manageOrgId = this.selectRow[0].manageOrgId
let filesValue = []; let filesValue = []
this.tableData4.forEach(item => { this.tableData4.forEach((item) => {
if(item.fileArray.length > 0) { if (item.fileArray.length > 0) {
filesValue.push({ filesValue.push({
busiFileName: item.tableLet1, busiFileName: item.tableLet1,
fileId: item.fileArray[0].fileId, fileId: item.fileArray[0].fileId,
...@@ -701,91 +1071,107 @@ export default { ...@@ -701,91 +1071,107 @@ export default {
} }
}) })
const params = { const params = {
agoPrjCode, agoPrjId, agoPrjName, appCode, appId, appName, buildOrg, buildType, manageDeptId, manageOrgId, agoPrjCode,
agoPrjId,
agoPrjName,
appCode,
appId,
appName,
buildOrg,
buildType,
manageDeptId,
manageOrgId,
prjName: this.ruleForm.let2, prjName: this.ruleForm.let2,
prjPlanClass: this.ruleForm.let3, prjPlanClass: this.ruleForm.let3,
filesValue filesValue,
} }
const requestParams = this.is_add_edit == 'add' ? params : { ...params, prjId: this.prjId }; const requestParams =
if(this.is_add_edit == 'add') { this.is_add_edit == 'add'
addProjectManageTable(requestParams).then(res => { ? params
if(res.code == 200) { : { ...params, prjId: this.prjId }
this.get_table(); if (this.is_add_edit == 'add') {
this.add_dialog = false; addProjectManageTable(requestParams).then((res) => {
if (res.code == 200) {
this.get_table()
this.add_dialog = false
Message({ Message({
type: 'success', type: 'success',
message: '保存成功!' message: '保存成功!',
}); })
}else { } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
}else { } else {
editDeleteProjectInfoManageTable(requestParams).then(res => { editDeleteProjectInfoManageTable(requestParams).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.get_table(); this.get_table()
this.add_dialog = false; this.add_dialog = false
Message({ Message({
type: 'success', type: 'success',
message: '保存成功!' message: '保存成功!',
}); })
}else { } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
} }
}else { } else {
return false; return false
} }
}); })
}, },
search_table2() {//搜索 search_table2() {
this.pager2.current = 1; //搜索
this.get_system_table(); this.pager2.current = 1
this.get_system_table()
}, },
reset2() {//重置 reset2() {
this.searchParams2.let1 = null; //重置
this.searchParams2.let2 = null; this.searchParams2.let1 = null
this.searchParams2.let3 = null; this.searchParams2.let2 = null
this.searchParams2.let4 = null; this.searchParams2.let3 = null
this.searchParams2.let4 = null
}, },
// 每页条数改变 // 每页条数改变
handleSizeChange2(val) { handleSizeChange2(val) {
this.pager2.current = 1; this.pager2.current = 1
this.pager2.size = val; this.pager2.size = val
this.get_system_table(); this.get_system_table()
}, },
//当前页码改变 //当前页码改变
handleCurrentChange2(val) { handleCurrentChange2(val) {
this.pager2.current = val; this.pager2.current = val
this.get_system_table(); this.get_system_table()
}, },
select_table_rows(data){//表格的勾选 select_table_rows(data) {
this.selectRow = data; //表格的勾选
this.selectRow = data
}, },
get_system_table() {//查询表格数据 get_system_table() {
this.loading2 = true; //查询表格数据
this.loading2 = true
const params = { const params = {
"manageOrgId": this.searchParams2.let1, manageOrgId: this.searchParams2.let1,
"manageDeptId": this.searchParams2.let2, manageDeptId: this.searchParams2.let2,
"appName": this.searchParams2.let3, appName: this.searchParams2.let3,
"buildType": this.searchParams2.let4, buildType: this.searchParams2.let4,
"current": this.pager.current, current: this.pager.current,
"pageSize": this.pager.size, pageSize: this.pager.size,
}; }
querysystemInfoManageTable(params).then(res => { querysystemInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.loading2 = false; this.loading2 = false
this.tableData2 = res.data.records; this.tableData2 = res.data.records
this.pager2.current = res.data.current; this.pager2.current = res.data.current
this.pager2.total = res.data.total; this.pager2.total = res.data.total
this.pager2.size = res.data.size; this.pager2.size = res.data.size
} }
// res.records.map(item => { // res.records.map(item => {
// const startTime_year = String(new Date(item.startTime).getFullYear()); // const startTime_year = String(new Date(item.startTime).getFullYear());
...@@ -806,64 +1192,74 @@ export default { ...@@ -806,64 +1192,74 @@ export default {
// this.pager.current = res.current; // this.pager.current = res.current;
// this.pager.total = res.total; // this.pager.total = res.total;
// this.pager.size = res.size; // this.pager.size = res.size;
}); })
}, },
getJianSheLeiXingSelect() {//建设类型下拉 getJianSheLeiXingSelect() {
//建设类型下拉
const params = { const params = {
key: "build_type" key: 'build_type',
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getDianXingAnLiSelectData(params).then(res => { getDianXingAnLiSelectData(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
resolve(res.data); resolve(res.data)
} }
}) })
}) })
}, },
set_table_height() {//动态设置表格高度 set_table_height() {
const table_container_height = $(".table_container").height(); //动态设置表格高度
const search_menu_height = $(".search_menu").height(); const table_container_height = $('.table_container').height()
const search_btn_height = $(".search_btn").outerHeight(true); const search_menu_height = $('.search_menu').height()
this.tableHeight = table_container_height - search_menu_height - search_btn_height - 90 + 'px'; const search_btn_height = $('.search_btn').outerHeight(true)
this.tableHeight =
table_container_height -
search_menu_height -
search_btn_height -
90 +
'px'
}, },
search_table() {//搜索 search_table() {
this.pager.current = 1; //搜索
this.get_table(); this.pager.current = 1
this.get_table()
}, },
reset() {//重置 reset() {
this.searchParams.let1 = null; //重置
this.searchParams.let2 = null; this.searchParams.let1 = null
this.searchParams.let3 = null; this.searchParams.let2 = null
this.searchParams.let4 = null; this.searchParams.let3 = null
this.searchParams.let4 = null
}, },
// 每页条数改变 // 每页条数改变
handleSizeChange(val) { handleSizeChange(val) {
this.pager.current = 1; this.pager.current = 1
this.pager.size = val; this.pager.size = val
this.get_table(); this.get_table()
}, },
//当前页码改变 //当前页码改变
handleCurrentChange(val) { handleCurrentChange(val) {
this.pager.current = val; this.pager.current = val
this.get_table(); this.get_table()
}, },
get_table() {//查询表格数据 get_table() {
this.loading = true; //查询表格数据
this.loading = true
const params = { const params = {
"manageOrgId": this.searchParams.let1, manageOrgId: this.searchParams.let1,
"manageDeptId": this.searchParams.let2, manageDeptId: this.searchParams.let2,
"prjName": this.searchParams.let3, prjName: this.searchParams.let3,
"buildType": this.searchParams.let4, buildType: this.searchParams.let4,
"current": this.pager.current, current: this.pager.current,
"pageSize": this.pager.size, pageSize: this.pager.size,
}; }
queryProjectInfoManageTable(params).then(res => { queryProjectInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.loading = false; this.loading = false
this.tableData = res.data.records; this.tableData = res.data.records
this.pager.current = res.data.current; this.pager.current = res.data.current
this.pager.total = res.data.total; this.pager.total = res.data.total
this.pager.size = res.data.size; this.pager.size = res.data.size
} }
// res.records.map(item => { // res.records.map(item => {
// const startTime_year = String(new Date(item.startTime).getFullYear()); // const startTime_year = String(new Date(item.startTime).getFullYear());
...@@ -885,169 +1281,170 @@ export default { ...@@ -885,169 +1281,170 @@ export default {
// this.pager.total = res.total; // this.pager.total = res.total;
// this.pager.size = res.size; // this.pager.size = res.size;
// if(res.code == 200) { // if(res.code == 200) {
// this.loading = false; // this.loading = false;
// console.log(res) // console.log(res)
// // this.tableData = res. // // this.tableData = res.
// } // }
}); })
},
}, },
}
} }
</script> </script>
<style> <style>
.confirmClass{ .confirmClass {
background-color: #0D867F !important; background-color: #0d867f !important;
} }
.el-message-box__content{ .el-message-box__content {
padding: 60px 15px 60px 15px; padding: 60px 15px 60px 15px;
} }
</style> </style>
<style scoped> <style scoped lang="scss">
.version_btn{ @import '@/styles/elementui.scss';
.prjName {
color: $color-primary;
cursor: pointer;
}
.version_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 84px; width: 84px;
height: 32px; height: 32px;
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
/* border: 1px solid #0D867F; */ /* border: 1px solid #0D867F; */
font-size: 14px; font-size: 14px;
color: #0D867F; color: #0d867f;
cursor: pointer; cursor: pointer;
margin-left: 15px; margin-left: 15px;
} }
.cancel_version_btn{ .cancel_version_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 104px; width: 104px;
height: 32px; height: 32px;
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
/* border: 1px solid #0D867F; */ /* border: 1px solid #0D867F; */
font-size: 14px; font-size: 14px;
color: #0D867F; color: #0d867f;
cursor: pointer; cursor: pointer;
margin-left: 15px; margin-left: 15px;
} }
.projectInfoManage{ .projectInfoManage {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: flex-start; justify-content: flex-start;
align-items: center; align-items: center;
} }
.el-button--primary{ .el-button--primary {
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
color: #0D867F; color: #0d867f;
border: 0; border: 0;
} }
/deep/ .el-input-group__append{ /deep/ .el-input-group__append {
background-color: #0D867F; background-color: #0d867f;
color: #fff; color: #fff;
cursor: pointer; cursor: pointer;
} }
.search_btn{ .search_btn {
width: 100%; width: 100%;
display: flex; display: flex;
margin-top: 50px; margin-top: 50px;
margin-bottom: 20px; margin-bottom: 20px;
} }
.search_menu{ .search_menu {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-bottom: 50px; margin-bottom: 50px;
} }
.search_menu_item_container{ .search_menu_item_container {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.shanChu_btn{ .shanChu_btn {
color: #DD6A15; color: #dd6a15;
background-color: #F8EBE2; background-color: #f8ebe2;
} }
.search_menu_btn_container{ .search_menu_btn_container {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.search_menu_item{ .search_menu_item {
display: flex; display: flex;
align-items: center; align-items: center;
width: 344px; width: 344px;
} }
.search_title{ .search_title {
/* width: 20%; */ /* width: 20%; */
flex-shrink: 0; flex-shrink: 0;
margin-right: 15px; margin-right: 15px;
} }
.search_item{ .search_item {
width: 60%; width: 60%;
} }
.query_btn{ .query_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 76px; width: 76px;
height: 32px; height: 32px;
background: rgba(13,134,127,1); background: rgba(13, 134, 127, 1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
border: 1px solid #0D867F; border: 1px solid #0d867f;
font-size: 14px; font-size: 14px;
color: #fff; color: #fff;
margin-right: 10px; margin-right: 10px;
cursor: pointer; cursor: pointer;
}
} .reset_btn {
.reset_btn{
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 76px; width: 76px;
height: 32px; height: 32px;
background: rgba(244,244,244,1); background: rgba(244, 244, 244, 1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
border: 1px solid #ccc; border: 1px solid #ccc;
font-size: 14px; font-size: 14px;
color: #666; color: #666;
cursor: pointer; cursor: pointer;
}
} .btn_icon {
.btn_icon{
margin-right: 10px; margin-right: 10px;
} }
.table_container{ .table_container {
width: 97%; width: 97%;
height: calc(100% - 40px); height: calc(100% - 40px);
margin-top: 20px; margin-top: 20px;
} }
.el-pagination{ .el-pagination {
margin-top: 30px; margin-top: 30px;
} }
/deep/ .el-pagination.is-background .el-pager li:not(.disabled).active{ /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active {
background-color: #0D867F; background-color: #0d867f;
} }
/deep/ .el-dialog__header{ /deep/ .el-dialog__header {
background-color: #0D867F; background-color: #0d867f;
text-align: left; text-align: left;
} }
/deep/ .el-dialog__title{ /deep/ .el-dialog__title {
color: #fff; color: #fff;
} }
/deep/ .el-dialog__close { /deep/ .el-dialog__close {
color: #fff; color: #fff;
} }
.greenButton{ .greenButton {
background-color: #0D867F; background-color: #0d867f;
color: #fff; color: #fff;
} }
.el-form-item{ .el-form-item {
display: flex; display: flex;
align-items: center; align-items: center;
width: 50%; width: 50%;
} }
</style> </style>
...@@ -137,6 +137,7 @@ export default { ...@@ -137,6 +137,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -136,6 +136,7 @@ export default { ...@@ -136,6 +136,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -128,6 +128,7 @@ export default { ...@@ -128,6 +128,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -128,6 +128,7 @@ export default { ...@@ -128,6 +128,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -127,6 +127,7 @@ export default { ...@@ -127,6 +127,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -137,6 +137,7 @@ export default { ...@@ -137,6 +137,7 @@ export default {
}, },
created() { created() {
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容 // 获取下拉文档内容
......
...@@ -3,9 +3,19 @@ ...@@ -3,9 +3,19 @@
<div class="content flex"> <div class="content flex">
<div class="left_container m-r-10 flex-column"> <div class="left_container m-r-10 flex-column">
<div class="left_container_title"> <div class="left_container_title">
<div class="flex">
<i class="el-icon-caret-right icon"></i> <i class="el-icon-caret-right icon"></i>
<span>评审标准</span> <span>评审标准</span>
</div> </div>
<el-select class="select-title" v-model="leftSelect">
<el-option
v-for="(item, idx) in leftSelectData"
:label="item.fileName"
:value="item.fileId"
:key="idx"
></el-option>
</el-select>
</div>
<div class="left_container_content w-100 h-100 flex-1"> <div class="left_container_content w-100 h-100 flex-1">
<vab-only-office <vab-only-office
id="office-preview" id="office-preview"
...@@ -20,9 +30,9 @@ ...@@ -20,9 +30,9 @@
<i class="el-icon-caret-right icon"></i> <i class="el-icon-caret-right icon"></i>
<span>评审内容</span> <span>评审内容</span>
</div> </div>
<el-select class="select-title" v-model="select"> <!-- <el-select class="select-title" v-model="select">
<el-option label="概要设计说明书.doc" value="1"></el-option> <el-option label="概要设计说明书.doc" value="1"></el-option>
</el-select> </el-select> -->
</div> </div>
<div class="right_container_content w-100 h-100 flex-1"> <div class="right_container_content w-100 h-100 flex-1">
<vab-only-office <vab-only-office
...@@ -68,7 +78,11 @@ ...@@ -68,7 +78,11 @@
<script> <script>
import vabOnlyOffice from '@/components/onlyOffice/index.vue' import vabOnlyOffice from '@/components/onlyOffice/index.vue'
import { savePrelDesInspecte, detailPrelDesInspecte } from '@/api/index.js' import {
savePrelDesInspecte,
detailPrelDesInspecte,
queryPrjNeedFile,
} from '@/api/index.js'
import { documentServerUrl, documentServerUrl2 } from '@/config' import { documentServerUrl, documentServerUrl2 } from '@/config'
import { EADC_SHARED_ABILITY } from '@/config/micromodule' import { EADC_SHARED_ABILITY } from '@/config/micromodule'
export default { export default {
...@@ -130,13 +144,32 @@ export default { ...@@ -130,13 +144,32 @@ export default {
callbackUrl: `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=302`, callbackUrl: `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=302`,
}, },
}, },
leftSelectData: [],
} }
}, },
created() { created() {
this.row = JSON.parse(this.$route.query.row) this.row = JSON.parse(this.$route.query.row)
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容
fnQueryPrjNeedFile() {
const params = {
busiFileNameList: ['可行性研究报告', '需求规格说明书'],
busiId: this.row.prjId,
busiIdType: 1,
}
queryPrjNeedFile(params).then((res) => {
if (res.code === 200) {
this.leftSelectData = res.data
if (this.leftSelectData.length) {
this.config.document.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/downloadFile/${this.leftSelectData[0].fileId}`
this.config.editorConfig.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=${this.leftSelectData[0].fileId}`
}
}
})
},
getDetail() { getDetail() {
const params = { const params = {
reviewEnum: 'CONFORMANCE_REVIEW', reviewEnum: 'CONFORMANCE_REVIEW',
......
...@@ -58,7 +58,11 @@ ...@@ -58,7 +58,11 @@
<script> <script>
import vabOnlyOffice from '@/components/onlyOffice/index.vue' import vabOnlyOffice from '@/components/onlyOffice/index.vue'
import { savePrelDesInspecte, detailPrelDesInspecte } from '@/api/index.js' import {
savePrelDesInspecte,
detailPrelDesInspecte,
queryPrjNeedFile,
} from '@/api/index.js'
import { documentServerUrl, documentServerUrl2 } from '@/config' import { documentServerUrl, documentServerUrl2 } from '@/config'
import { EADC_SHARED_ABILITY } from '@/config/micromodule' import { EADC_SHARED_ABILITY } from '@/config/micromodule'
export default { export default {
...@@ -110,13 +114,32 @@ export default { ...@@ -110,13 +114,32 @@ export default {
callbackUrl: `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=302`, callbackUrl: `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=302`,
}, },
}, },
leftSelectData: [],
} }
}, },
created() { created() {
this.row = JSON.parse(this.$route.query.row) this.row = JSON.parse(this.$route.query.row)
this.getDetail() this.getDetail()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容
fnQueryPrjNeedFile() {
const params = {
busiFileNameList: ['可行性研究报告', '需求规格说明书'],
busiId: this.row.prjId,
busiIdType: 1,
}
queryPrjNeedFile(params).then((res) => {
if (res.code === 200) {
this.leftSelectData = res.data
if (this.leftSelectData.length) {
this.config.document.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/downloadFile/${this.leftSelectData[0].fileId}`
this.config.editorConfig.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=${this.leftSelectData[0].fileId}`
}
}
})
},
getDetail() { getDetail() {
const params = { const params = {
reviewEnum: 'FUNCTIONAL_DEPTH_REVIEW', reviewEnum: 'FUNCTIONAL_DEPTH_REVIEW',
......
...@@ -58,6 +58,7 @@ import { ...@@ -58,6 +58,7 @@ import {
savePrelDesInspecte, savePrelDesInspecte,
detailPrelDesInspecte, detailPrelDesInspecte,
qViewPrelDesInspecte, qViewPrelDesInspecte,
queryPrjNeedFile,
} from '@/api/index.js' } from '@/api/index.js'
import { documentServerUrl, documentServerUrl2 } from '@/config' import { documentServerUrl, documentServerUrl2 } from '@/config'
import { EADC_SHARED_ABILITY } from '@/config/micromodule' import { EADC_SHARED_ABILITY } from '@/config/micromodule'
...@@ -111,17 +112,36 @@ export default { ...@@ -111,17 +112,36 @@ export default {
}, },
}, },
rightImgs: [], rightImgs: [],
leftSelectData: [],
} }
}, },
created() { created() {
this.row = JSON.parse(this.$route.query.row) this.row = JSON.parse(this.$route.query.row)
this.getDetail() this.getDetail()
this.getRightQview() this.getRightQview()
this.fnQueryPrjNeedFile()
}, },
methods: { methods: {
// 获取下拉文档内容
fnQueryPrjNeedFile() {
const params = {
busiFileNameList: ['可行性研究报告', '需求规格说明书'],
busiId: this.row.prjId,
busiIdType: 1,
}
queryPrjNeedFile(params).then((res) => {
if (res.code === 200) {
this.leftSelectData = res.data
if (this.leftSelectData.length) {
this.config.document.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/downloadFile/${this.leftSelectData[0].fileId}`
this.config.editorConfig.url = `${documentServerUrl}${EADC_SHARED_ABILITY}/callback?fileId=${this.leftSelectData[0].fileId}`
}
}
})
},
getRightQview() { getRightQview() {
const params = { const params = {
archiBelongId: 1, archiBelongId: 3,
archiStage: 3, archiStage: 3,
reviewEnum: 'DATA_DEPTH_REVIEW', reviewEnum: 'DATA_DEPTH_REVIEW',
prjId: this.row.prjId, prjId: this.row.prjId,
......
...@@ -5,59 +5,185 @@ ...@@ -5,59 +5,185 @@
<div class="search_menu_item_container"> <div class="search_menu_item_container">
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">单位</span> <span class="search_title">单位</span>
<el-input v-no-backslash v-model="searchParams.let1" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <!-- <el-input
v-no-backslash
v-model="searchParams.let1"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input> -->
<el-select
v-model="searchParams.let1"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in sysOrgOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">部门</span> <span class="search_title">部门</span>
<el-input v-no-backslash v-model="searchParams.let2" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <!-- <el-input
v-no-backslash
v-model="searchParams.let2"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input> -->
<el-select
v-model="searchParams.let2"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in sysDeptOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">系统名称</span> <span class="search_title">系统名称</span>
<el-input v-no-backslash v-model="searchParams.let3" maxlength="100" placeholder="请输入内容" class="search_item"></el-input> <el-input
v-no-backslash
v-model="searchParams.let3"
maxlength="100"
placeholder="请输入内容"
class="search_item"
></el-input>
</div> </div>
<div class="search_menu_item"> <div class="search_menu_item">
<span class="search_title">建设类型</span> <span class="search_title">建设类型</span>
<el-select v-model="searchParams.let4" placeholder="请选择" class="search_item"> <el-select
<el-option v-for="item in jianSheLeiXingSelect" :key="item.value" :label="item.label" :value="item.value"></el-option> v-model="searchParams.let4"
placeholder="请选择"
class="search_item"
>
<el-option
v-for="item in jianSheLeiXingSelect"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</div> </div>
</div> </div>
<div class="search_menu_btn_container"> <div class="search_menu_btn_container">
<div class="query_btn" @click="search_table"> <div class="query_btn" @click="search_table">
<img class="btn_icon" src="@/assets/archi-ele-list/search.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/search.png"
alt=""
/>
<p>查询</p> <p>查询</p>
</div> </div>
<div class="reset_btn" @click="reset"> <div class="reset_btn" @click="reset">
<img class="btn_icon" src="@/assets/archi-ele-list/reset.png" alt="" /> <img
class="btn_icon"
src="@/assets/archi-ele-list/reset.png"
alt=""
/>
<p>重置</p> <p>重置</p>
</div> </div>
</div> </div>
</div> </div>
<div class="search_btn"> <div class="search_btn">
<el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', null)">新建系统</el-button> <el-button
type="primary"
size="medium"
icon="el-icon-document-add"
@click="operation('add', null)"
>新建系统</el-button
>
<!-- <el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', 2)">新建自建系统</el-button> --> <!-- <el-button type="primary" size="medium" icon="el-icon-document-add" @click="operation('add', 2)">新建自建系统</el-button> -->
<!-- <el-button type="primary" size="medium" icon="el-icon-delete">删除</el-button> --> <!-- <el-button type="primary" size="medium" icon="el-icon-delete">删除</el-button> -->
</div> </div>
<el-table :height="tableHeight" v-loading="loading" :data="tableData" stripe border> <el-table
<el-table-column type="index" label="序号" width="80" align="center"></el-table-column> :height="tableHeight"
<el-table-column prop="manageOrgId" label="单位" align="center"></el-table-column> v-loading="loading"
<el-table-column prop="manageDeptId" label="部门" align="center"></el-table-column> :data="tableData"
<el-table-column prop="appName" label="系统名称" align="center" width="200" :show-overflow-tooltip="true"></el-table-column> stripe
border
>
<el-table-column
type="index"
label="序号"
width="80"
align="center"
></el-table-column>
<el-table-column
prop="manageOrgId"
label="单位"
align="center"
></el-table-column>
<el-table-column
prop="manageDeptId"
label="部门"
align="center"
></el-table-column>
<el-table-column
prop="appName"
label="系统名称"
align="center"
width="200"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="建设类型" align="center"> <el-table-column label="建设类型" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.buildType == 1">统推</span> <span v-if="scope.row.buildType == 1">统推</span>
<span v-else-if="scope.row.buildType == 2">自建</span> <span v-else-if="scope.row.buildType == 2">自建</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="buildOrg" label="承建单位" align="center"></el-table-column> <el-table-column
<el-table-column prop="projectManager" label="项目经理" align="center"></el-table-column> prop="buildOrg"
<el-table-column prop="createMan" label="创建人" align="center"></el-table-column> label="承建单位"
<el-table-column prop="createTime" label="创建时间" align="center"></el-table-column> align="center"
></el-table-column>
<el-table-column
prop="projectManager"
label="项目经理"
align="center"
></el-table-column>
<el-table-column
prop="createMan"
label="创建人"
align="center"
></el-table-column>
<el-table-column
prop="createTime"
label="创建时间"
align="center"
></el-table-column>
<el-table-column label="操作" width="260" align="center"> <el-table-column label="操作" width="260" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div style="display: flex;align-items: center;justify-content: center;"> <div
<el-button icon="el-icon-edit" type="primary" size="mini" @click="operation('edit', scope.row)" :disabled="scope.row.state == 1">编辑</el-button> style="
<el-button class="shanChu_btn" icon="el-icon-delete" size="mini" @click="operation('delete', scope.row)" :disabled="scope.row.state == 1">删除</el-button> display: flex;
align-items: center;
justify-content: center;
"
>
<el-button
icon="el-icon-edit"
type="primary"
size="mini"
@click="operation('edit', scope.row)"
:disabled="scope.row.state == 1"
>编辑</el-button
>
<el-button
class="shanChu_btn"
icon="el-icon-delete"
size="mini"
@click="operation('delete', scope.row)"
:disabled="scope.row.state == 1"
>删除</el-button
>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -75,7 +201,8 @@ ...@@ -75,7 +201,8 @@
:page-sizes="pager.sizes" :page-sizes="pager.sizes"
:page-size="pager.size" :page-size="pager.size"
layout="total, sizes, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="pager.total"> :total="pager.total"
>
</el-pagination> </el-pagination>
</div> </div>
<el-dialog <el-dialog
...@@ -83,16 +210,50 @@ ...@@ -83,16 +210,50 @@
:visible.sync="add_dialog" :visible.sync="add_dialog"
:center="false" :center="false"
:close-on-click-modal="false" :close-on-click-modal="false"
width="60%"> width="60%"
<el-form :model="ruleForm" ref="form" :rules="rules" style="display: flex;flex-wrap: wrap;"> >
<el-form
:model="ruleForm"
ref="form"
:rules="rules"
style="display: flex; flex-wrap: wrap"
>
<el-form-item label="单位:" prop="let1"> <el-form-item label="单位:" prop="let1">
<el-input v-no-backslash v-model="ruleForm.let1" maxlength="100"></el-input> <!-- <el-input
v-no-backslash
v-model="ruleForm.let1"
maxlength="100"
></el-input> -->
<el-select v-model="ruleForm.let1" placeholder="请选择">
<el-option
v-for="item in sysOrgOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="部门:" prop="let2"> <el-form-item label="部门:" prop="let2">
<el-input v-no-backslash v-model="ruleForm.let2" maxlength="100"></el-input> <!-- <el-input
v-no-backslash
v-model="ruleForm.let2"
maxlength="100"
></el-input> -->
<el-select v-model="ruleForm.let2" placeholder="请选择">
<el-option
v-for="item in sysDeptOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="系统名称:" prop="let3"> <el-form-item label="系统名称:" prop="let3">
<el-input v-no-backslash v-model="ruleForm.let3" maxlength="100"></el-input> <el-input
v-no-backslash
v-model="ruleForm.let3"
maxlength="100"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="系统类型:" prop="let4"> <el-form-item label="系统类型:" prop="let4">
<el-select clearable v-model="ruleForm.let4"> <el-select clearable v-model="ruleForm.let4">
...@@ -101,14 +262,32 @@ ...@@ -101,14 +262,32 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="承建单位:" prop="let5"> <el-form-item label="承建单位:" prop="let5">
<el-input v-no-backslash v-model="ruleForm.let5" maxlength="100"></el-input> <!-- <el-input
v-no-backslash
v-model="ruleForm.let5"
maxlength="100"
></el-input> -->
<el-select v-model="ruleForm.let5" placeholder="请选择">
<el-option
v-for="item in sysBuildOrgOptions"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="项目经理:" prop="let6"> <el-form-item label="项目经理:" prop="let6">
<el-input v-no-backslash v-model="ruleForm.let6" maxlength="100"></el-input> <el-input
v-no-backslash
v-model="ruleForm.let6"
maxlength="100"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="greenButton" @click="dialogOperation('save', null)">保存</el-button> <el-button class="greenButton" @click="dialogOperation('save', null)"
>保存</el-button
>
<el-button @click="add_dialog = false">取消</el-button> <el-button @click="add_dialog = false">取消</el-button>
</span> </span>
</el-dialog> </el-dialog>
...@@ -120,16 +299,14 @@ import { ...@@ -120,16 +299,14 @@ import {
querysystemInfoManageTable, querysystemInfoManageTable,
getDianXingAnLiSelectData, getDianXingAnLiSelectData,
addasystemInfoManageTable, addasystemInfoManageTable,
editDeleteSystemInfoManageTable editDeleteSystemInfoManageTable,
} from '@/api/index.js'; } from '@/api/index.js'
import { MessageBox, Message } from 'element-ui'; import { MessageBox, Message } from 'element-ui'
import $ from 'jquery'; import $ from 'jquery'
export default { export default {
name: 'systemInfoManage', name: 'systemInfoManage',
components: { components: {},
},
data() { data() {
return { return {
ruleForm: { ruleForm: {
...@@ -141,15 +318,9 @@ export default { ...@@ -141,15 +318,9 @@ export default {
let6: null, let6: null,
}, },
rules: { rules: {
let1: [ let1: [{ required: true, message: '请选择单位', trigger: 'change' }],
{ required: true, message: '请选择单位', trigger: 'change' }, let2: [{ required: true, message: '请选择部门', trigger: 'change' }],
], let3: [{ required: true, message: '请输入系统名称', trigger: 'blur' }],
let2: [
{ required: true, message: '请选择部门', trigger: 'change' },
],
let3: [
{ required: true, message: '请输入系统名称', trigger: 'blur' },
],
let4: [ let4: [
{ required: true, message: '请选择系统类型', trigger: 'change' }, { required: true, message: '请选择系统类型', trigger: 'change' },
], ],
...@@ -163,7 +334,7 @@ export default { ...@@ -163,7 +334,7 @@ export default {
current: 1, current: 1,
sizes: [10, 20, 50, 100, 200], sizes: [10, 20, 50, 100, 200],
size: 10, size: 10,
total: 20 //总条数 total: 20, //总条数
}, },
tableHeight: null, tableHeight: null,
searchParams: { searchParams: {
...@@ -174,120 +345,144 @@ export default { ...@@ -174,120 +345,144 @@ export default {
}, },
jianSheLeiXingSelect: [], jianSheLeiXingSelect: [],
appId: null, appId: null,
}; sysOrgOptions: [],
sysDeptOptions: [],
sysBuildOrgOptions: [],
}
}, },
mounted(){ mounted() {
window.addEventListener('resize', () => { window.addEventListener('resize', () => {
this.set_table_height(); this.set_table_height()
}) })
this.set_table_height(); this.set_table_height()
this.get_table(); this.get_table()
this.getJianSheLeiXingSelect().then(res => { this.getJianSheLeiXingSelect().then((res) => {
this.jianSheLeiXingSelect = res; this.jianSheLeiXingSelect = res
}) })
this.getDicts()
}, },
methods: { methods: {
getDicts() {
this.getDictTypeOptions('sys_org', 'sysOrgOptions')
this.getDictTypeOptions('sys_dept', 'sysDeptOptions')
this.getDictTypeOptions('sys_build_org', 'sysBuildOrgOptions')
},
async getDictTypeOptions(key, dictType) {
var dictTypeOptions = []
var storedDic = localStorage.getItem('dic_' + key)
if (storedDic) {
dictTypeOptions = JSON.parse(storedDic)
} else {
const params = { key }
const res = await getDianXingAnLiSelectData(params)
if (res.code !== 200) return
dictTypeOptions = res.data
const jsonStr = JSON.stringify(res.data)
localStorage.setItem('dic_' + key, jsonStr)
}
this[dictType] = dictTypeOptions
},
operation(type, data) { operation(type, data) {
switch(type){ switch (type) {
case 'add': case 'add':
this.openAddDialog(); this.openAddDialog()
this.dialogTitle = '新建系统'; this.dialogTitle = '新建系统'
break; break
case 'edit': case 'edit':
this.editItem(data); this.editItem(data)
break; break
case 'delete': case 'delete':
this.deleteItem(data); this.deleteItem(data)
break; break
case 7680: case 7680:
break
break;
case 11200: case 11200:
break
break;
} }
}, },
editItem(row) {//编辑 editItem(row) {
this.add_dialog = true; //编辑
this.dialogTitle = '编辑系统'; this.add_dialog = true
this.ruleForm.let1 = row.manageOrgId; this.dialogTitle = '编辑系统'
this.ruleForm.let2 = row.manageDeptId; this.ruleForm.let1 = row.manageOrgId
this.ruleForm.let3 = row.appName; this.ruleForm.let2 = row.manageDeptId
this.ruleForm.let4 = row.buildType; this.ruleForm.let3 = row.appName
this.ruleForm.let5 = row.buildOrg; this.ruleForm.let4 = row.buildType
this.ruleForm.let6 = row.projectManager; this.ruleForm.let5 = row.buildOrg
this.appId = row.appId; this.ruleForm.let6 = row.projectManager
this.appId = row.appId
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.form.clearValidate(); this.$refs.form.clearValidate()
}); })
}, },
deleteItem(row) {//删除 deleteItem(row) {
//删除
MessageBox.confirm('确定删除?', '提示', { MessageBox.confirm('确定删除?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
customClass: 'messageClass', customClass: 'messageClass',
confirmButtonClass: 'confirmClass', confirmButtonClass: 'confirmClass',
type: 'warning' type: 'warning',
}).then(() => { })
.then(() => {
const params = { const params = {
appId: row.appId, appId: row.appId,
delFlag: 1 delFlag: 1,
} }
editDeleteSystemInfoManageTable(params).then(res => { editDeleteSystemInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.get_table(); this.get_table()
Message({ Message({
type: 'success', type: 'success',
message: '删除成功!' message: '删除成功!',
}); })
}else{ } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
}).catch(() => { })
.catch(() => {
Message({ Message({
type: 'info', type: 'info',
message: '已取消' message: '已取消',
}); })
}); })
}, },
openAddDialog() {//打开新建系统窗口 openAddDialog() {
this.add_dialog = true; //打开新建系统窗口
this.add_dialog = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.form.resetFields(); this.$refs.form.resetFields()
this.ruleForm.let1 = null; this.ruleForm.let1 = null
this.ruleForm.let2 = null; this.ruleForm.let2 = null
this.ruleForm.let3 = null; this.ruleForm.let3 = null
this.ruleForm.let4 = null; this.ruleForm.let4 = null
this.ruleForm.let5 = null; this.ruleForm.let5 = null
this.ruleForm.let6 = null; this.ruleForm.let6 = null
}); })
}, },
dialogOperation(type, data) { dialogOperation(type, data) {
switch(type){ switch (type) {
case 'save': case 'save':
this.save_dialog(); this.save_dialog()
break; break
case 3200: case 3200:
break
break;
case 3840: case 3840:
break
break;
case 7680: case 7680:
break
break;
case 11200: case 11200:
break
break;
} }
}, },
save_dialog() {//保存 save_dialog() {
this.$refs.form.validate(valid => { //保存
if(valid) { this.$refs.form.validate((valid) => {
if (valid) {
const params = { const params = {
manageOrgId: this.ruleForm.let1, manageOrgId: this.ruleForm.let1,
manageDeptId: this.ruleForm.let2, manageDeptId: this.ruleForm.let2,
...@@ -295,102 +490,115 @@ export default { ...@@ -295,102 +490,115 @@ export default {
buildType: this.ruleForm.let4, buildType: this.ruleForm.let4,
buildOrg: this.ruleForm.let5, buildOrg: this.ruleForm.let5,
projectManager: this.ruleForm.let6, projectManager: this.ruleForm.let6,
}; }
const requestParams = this.dialogTitle == '新建系统' ? params : { ...params, appId: this.appId }; const requestParams =
if(this.dialogTitle == '新建系统') { this.dialogTitle == '新建系统'
addasystemInfoManageTable(requestParams).then(res => { ? params
if(res.code == 200) { : { ...params, appId: this.appId }
this.get_table(); if (this.dialogTitle == '新建系统') {
this.add_dialog = false; addasystemInfoManageTable(requestParams).then((res) => {
if (res.code == 200) {
this.get_table()
this.add_dialog = false
Message({ Message({
type: 'success', type: 'success',
message: '保存成功!' message: '保存成功!',
}); })
}else { } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
}else { } else {
editDeleteSystemInfoManageTable(requestParams).then(res => { editDeleteSystemInfoManageTable(requestParams).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.get_table(); this.get_table()
this.add_dialog = false; this.add_dialog = false
Message({ Message({
type: 'success', type: 'success',
message: '保存成功!' message: '保存成功!',
}); })
}else { } else {
Message({ Message({
type: 'error', type: 'error',
message: res.msg message: res.msg,
}); })
} }
}); })
} }
}else { } else {
return false; return false
} }
}); })
}, },
getJianSheLeiXingSelect() {//建设类型下拉 getJianSheLeiXingSelect() {
//建设类型下拉
const params = { const params = {
key: "build_type" key: 'build_type',
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
getDianXingAnLiSelectData(params).then(res => { getDianXingAnLiSelectData(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
resolve(res.data); resolve(res.data)
} }
}) })
}) })
}, },
set_table_height() {//动态设置表格高度 set_table_height() {
const table_container_height = $(".table_container").height(); //动态设置表格高度
const search_menu_height = $(".search_menu").height(); const table_container_height = $('.table_container').height()
const search_btn_height = $(".search_btn").outerHeight(true); const search_menu_height = $('.search_menu').height()
this.tableHeight = table_container_height - search_menu_height - search_btn_height - 90 + 'px'; const search_btn_height = $('.search_btn').outerHeight(true)
this.tableHeight =
table_container_height -
search_menu_height -
search_btn_height -
90 +
'px'
}, },
search_table() {//搜索 search_table() {
this.pager.current = 1; //搜索
this.get_table(); this.pager.current = 1
this.get_table()
}, },
reset() {//重置 reset() {
this.searchParams.let1 = null; //重置
this.searchParams.let2 = null; this.searchParams.let1 = null
this.searchParams.let3 = null; this.searchParams.let2 = null
this.searchParams.let4 = null; this.searchParams.let3 = null
this.searchParams.let4 = null
}, },
// 每页条数改变 // 每页条数改变
handleSizeChange(val) { handleSizeChange(val) {
this.pager.current = 1; this.pager.current = 1
this.pager.size = val; this.pager.size = val
this.get_table(); this.get_table()
}, },
//当前页码改变 //当前页码改变
handleCurrentChange(val) { handleCurrentChange(val) {
this.pager.current = val; this.pager.current = val
this.get_table(); this.get_table()
}, },
get_table() {//查询表格数据 get_table() {
this.loading = true; //查询表格数据
this.loading = true
const params = { const params = {
"manageOrgId": this.searchParams.let1, manageOrgId: this.searchParams.let1,
"manageDeptId": this.searchParams.let2, manageDeptId: this.searchParams.let2,
"appName": this.searchParams.let3, appName: this.searchParams.let3,
"buildType": this.searchParams.let4, buildType: this.searchParams.let4,
"current": this.pager.current, current: this.pager.current,
"pageSize": this.pager.size, pageSize: this.pager.size,
}; }
querysystemInfoManageTable(params).then(res => { querysystemInfoManageTable(params).then((res) => {
if(res.code == 200) { if (res.code == 200) {
this.loading = false; this.loading = false
this.tableData = res.data.records; this.tableData = res.data.records
this.pager.current = res.data.current; this.pager.current = res.data.current
this.pager.total = res.data.total; this.pager.total = res.data.total
this.pager.size = res.data.size; this.pager.size = res.data.size
} }
// res.records.map(item => { // res.records.map(item => {
// const startTime_year = String(new Date(item.startTime).getFullYear()); // const startTime_year = String(new Date(item.startTime).getFullYear());
...@@ -411,165 +619,163 @@ export default { ...@@ -411,165 +619,163 @@ export default {
// this.pager.current = res.current; // this.pager.current = res.current;
// this.pager.total = res.total; // this.pager.total = res.total;
// this.pager.size = res.size; // this.pager.size = res.size;
}); })
},
}, },
}
} }
</script> </script>
<style> <style>
.confirmClass{ .confirmClass {
background-color: #0D867F !important; background-color: #0d867f !important;
} }
.el-message-box__content{ .el-message-box__content {
padding: 60px 15px 60px 15px; padding: 60px 15px 60px 15px;
} }
</style> </style>
<style scoped> <style scoped lang="scss">
/deep/ .el-form-item__label{ /deep/ .el-form-item__label {
width: 100px; width: 100px;
} }
.version_btn{ .version_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 84px; width: 84px;
height: 32px; height: 32px;
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
/* border: 1px solid #0D867F; */ /* border: 1px solid #0D867F; */
font-size: 14px; font-size: 14px;
color: #0D867F; color: #0d867f;
cursor: pointer; cursor: pointer;
margin-left: 15px; margin-left: 15px;
} }
.cancel_version_btn{ .cancel_version_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 104px; width: 104px;
height: 32px; height: 32px;
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
/* border: 1px solid #0D867F; */ /* border: 1px solid #0D867F; */
font-size: 14px; font-size: 14px;
color: #0D867F; color: #0d867f;
cursor: pointer; cursor: pointer;
margin-left: 15px; margin-left: 15px;
} }
.systemInfoManage{ .systemInfoManage {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
justify-content: flex-start; justify-content: flex-start;
align-items: center; align-items: center;
} }
.el-button--primary{ .el-button--primary {
background: rgba(13,134,127,0.1); background: rgba(13, 134, 127, 0.1);
color: #0D867F; color: #0d867f;
border: 0; border: 0;
} }
/deep/ .el-input-group__append{ /deep/ .el-input-group__append {
background-color: #0D867F; background-color: #0d867f;
color: #fff; color: #fff;
cursor: pointer; cursor: pointer;
} }
.search_btn{ .search_btn {
width: 100%; width: 100%;
display: flex; display: flex;
margin-top: 50px; margin-top: 50px;
margin-bottom: 20px; margin-bottom: 20px;
} }
.search_menu{ .search_menu {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-bottom: 50px; margin-bottom: 50px;
} }
.search_menu_item_container{ .search_menu_item_container {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.search_menu_btn_container{ .search_menu_btn_container {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.search_menu_item{ .search_menu_item {
display: flex; display: flex;
align-items: center; align-items: center;
width: 344px; width: 344px;
} }
.search_title{ .search_title {
/* width: 20%; */ /* width: 20%; */
flex-shrink: 0; flex-shrink: 0;
margin-right: 15px; margin-right: 15px;
} }
.search_item{ .search_item {
width: 60%; width: 60%;
} }
.query_btn{ .query_btn {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 76px; width: 76px;
height: 32px; height: 32px;
background: rgba(13,134,127,1); background: rgba(13, 134, 127, 1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
border: 1px solid #0D867F; border: 1px solid #0d867f;
font-size: 14px; font-size: 14px;
color: #fff; color: #fff;
margin-right: 10px; margin-right: 10px;
cursor: pointer; cursor: pointer;
}
} .shanChu_btn {
.shanChu_btn{ color: #dd6a15;
color: #DD6A15; background-color: #f8ebe2;
background-color: #F8EBE2; }
} .reset_btn {
.reset_btn{
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 76px; width: 76px;
height: 32px; height: 32px;
background: rgba(244,244,244,1); background: rgba(244, 244, 244, 1);
border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px;
border: 1px solid #ccc; border: 1px solid #ccc;
font-size: 14px; font-size: 14px;
color: #666; color: #666;
cursor: pointer; cursor: pointer;
}
} .btn_icon {
.btn_icon{
margin-right: 10px; margin-right: 10px;
} }
.table_container{ .table_container {
width: 97%; width: 97%;
height: calc(100% - 40px); height: calc(100% - 40px);
margin-top: 20px; margin-top: 20px;
} }
.el-pagination{ .el-pagination {
margin-top: 30px; margin-top: 30px;
} }
/deep/ .el-pagination.is-background .el-pager li:not(.disabled).active{ /deep/ .el-pagination.is-background .el-pager li:not(.disabled).active {
background-color: #0D867F; background-color: #0d867f;
} }
/deep/ .el-dialog__header{ /deep/ .el-dialog__header {
background-color: #0D867F; background-color: #0d867f;
text-align: left; text-align: left;
} }
/deep/ .el-dialog__title{ /deep/ .el-dialog__title {
color: #fff; color: #fff;
} }
/deep/ .el-dialog__close { /deep/ .el-dialog__close {
color: #fff; color: #fff;
} }
.greenButton{ .greenButton {
background-color: #0D867F; background-color: #0d867f;
color: #fff; color: #fff;
} }
.el-form-item{ .el-form-item {
display: flex; display: flex;
align-items: center; align-items: center;
width: 33%; width: 33%;
} }
</style> </style>
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!