Commit 93186f57197c321120355c7d2ce7a55436e38526

Authored by monkeyhouyi
1 parent aa59b742

前端整改页面

src/views/DisposalSuggestions/Form.vue
@@ -68,21 +68,14 @@ @@ -68,21 +68,14 @@
68 </el-col> 68 </el-col>
69 <el-form ref="suggestionForm" :model="suggestionForm" size="small" label-width="100px" label-position="right"> 69 <el-form ref="suggestionForm" :model="suggestionForm" size="small" label-width="100px" label-position="right">
70 <el-col :span="24"> 70 <el-col :span="24">
71 - <el-form-item label="处置建议" prop="disposalSuggestions"> 71 + <el-form-item :label="isSHILevel ? '处置要求' : '处置建议'" prop="disposalSuggestions">
72 <el-input v-model="suggestionForm.disposalSuggestions" placeholder="请输入处置建议" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' > 72 <el-input v-model="suggestionForm.disposalSuggestions" placeholder="请输入处置建议" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' >
73 </el-input> 73 </el-input>
74 </el-form-item> 74 </el-form-item>
75 </el-col> 75 </el-col>
76 <el-col :span="24"> 76 <el-col :span="24">
77 - <el-form-item label="判断意见" prop="judgmentOpinions">  
78 - <el-input v-model="suggestionForm.judgmentOpinions" placeholder="请输入判断意见" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' >  
79 - </el-input>  
80 - </el-form-item>  
81 - </el-col>  
82 - <el-col :span="24">  
83 - <el-form-item label="判断分类" prop="judgmentClass">  
84 - <el-input v-model="suggestionForm.judgmentClass" placeholder="请输入判断分类" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' >  
85 - </el-input> 77 + <el-form-item label="截止时间" prop="endTime">
  78 + <el-date-picker v-model="suggestionForm.endTime" type="date" placeholder="选择日期"></el-date-picker>
86 </el-form-item> 79 </el-form-item>
87 </el-col> 80 </el-col>
88 </el-form> 81 </el-form>
@@ -90,6 +83,7 @@ @@ -90,6 +83,7 @@
90 <span slot="footer" class="dialog-footer"> 83 <span slot="footer" class="dialog-footer">
91 <el-button @click="visible = false">取 消</el-button> 84 <el-button @click="visible = false">取 消</el-button>
92 <el-button type="primary" @click="dataFormSubmit()">确 定</el-button> 85 <el-button type="primary" @click="dataFormSubmit()">确 定</el-button>
  86 + <el-button type="primary" @click="dataFormSubmit()">存 档</el-button>
93 </span> 87 </span>
94 </el-dialog> 88 </el-dialog>
95 </template> 89 </template>
@@ -127,11 +121,17 @@ @@ -127,11 +121,17 @@
127 suggestionForm: { 121 suggestionForm: {
128 disposalSuggestions: "", //处置建议 122 disposalSuggestions: "", //处置建议
129 judgmentOpinions: "", //判断意见 123 judgmentOpinions: "", //判断意见
130 - judgmentClass: "" //判断分类 124 + judgmentClass: "", //判断分类
  125 + endTime: '',
131 } 126 }
132 } 127 }
133 }, 128 },
134 - computed: {}, 129 + computed: {
  130 + isSHILevel() {
  131 + // 判断角色是否为‘市级办公室’
  132 + return this.$store.state.user.userInfo.organizeId == '580547494862128389';
  133 + },
  134 + },
135 watch: {}, 135 watch: {},
136 created() { 136 created() {
137 this.getplatformTypeOptions(); 137 this.getplatformTypeOptions();
src/views/baseComapnyInfo/Form.vue
@@ -44,13 +44,6 @@ @@ -44,13 +44,6 @@
44 </el-form-item> 44 </el-form-item>
45 </el-col> 45 </el-col>
46 <el-col :span="24"> 46 <el-col :span="24">
47 - <el-form-item label="资质证明" prop="qualificationCertificate">  
48 - <NCC-UploadFz v-model="dataForm.qualificationCertificate" :fileSize="5" sizeUnit="MB" :limit="9"  
49 - buttonText="点击上传">  
50 - </NCC-UploadFz>  
51 - </el-form-item>  
52 - </el-col>  
53 - <el-col :span="24">  
54 <el-form-item label="其他信息" prop="otherInfo"> 47 <el-form-item label="其他信息" prop="otherInfo">
55 <NCC-Quill v-model="dataForm.otherInfo" placeholder="请输入内容..."> 48 <NCC-Quill v-model="dataForm.otherInfo" placeholder="请输入内容...">
56 </NCC-Quill> 49 </NCC-Quill>
src/views/baseInspectionReport/Form.vue
@@ -17,7 +17,7 @@ @@ -17,7 +17,7 @@
17 :disabled="!!isDetail" 17 :disabled="!!isDetail"
18 :rules="rules" 18 :rules="rules"
19 > 19 >
20 - <el-col :span="24" v-if="false"> 20 + <el-col :span="23" v-if="false">
21 <el-form-item label="主键" prop="id"> 21 <el-form-item label="主键" prop="id">
22 <el-input 22 <el-input
23 v-model="dataForm.id" 23 v-model="dataForm.id"
@@ -28,7 +28,18 @@ @@ -28,7 +28,18 @@
28 </el-input> 28 </el-input>
29 </el-form-item> 29 </el-form-item>
30 </el-col> 30 </el-col>
31 - <el-col :span="24"> 31 + <el-col :span="23">
  32 + <el-form-item label="问题来源" prop="platformName">
  33 + <el-input
  34 + v-model="dataForm.platformName"
  35 + placeholder="请输入问题来源"
  36 + clearable
  37 + :style="{ width: '100%' }"
  38 + >
  39 + </el-input>
  40 + </el-form-item>
  41 + </el-col>
  42 + <el-col :span="23">
32 <el-form-item label="平台名称" prop="platformName"> 43 <el-form-item label="平台名称" prop="platformName">
33 <SelsctLoad v-model="dataForm.platformName"/> 44 <SelsctLoad v-model="dataForm.platformName"/>
34 <!-- <el-input 45 <!-- <el-input
@@ -40,25 +51,20 @@ @@ -40,25 +51,20 @@
40 </el-input> --> 51 </el-input> -->
41 </el-form-item> 52 </el-form-item>
42 </el-col> 53 </el-col>
43 - <el-col :span="24"> 54 + <el-col :span="23">
44 <el-form-item label="平台类型" prop="platformType"> 55 <el-form-item label="平台类型" prop="platformType">
45 - <el-select  
46 - v-model="dataForm.platformType"  
47 - placeholder="请选择"  
48 - clearable  
49 - :style="{ width: '100%' }"  
50 - >  
51 - <el-option 56 + <el-radio-group v-model="dataForm.platformType" :style="{}">
  57 + <el-radio
52 v-for="(item, index) in platformTypeOptions" 58 v-for="(item, index) in platformTypeOptions"
53 :key="index" 59 :key="index"
54 - :label="item.FullName"  
55 - :value="item.Id"  
56 - ></el-option>  
57 - </el-select> 60 + :label="item.Id"
  61 + >{{ item.FullName }}</el-radio
  62 + >
  63 + </el-radio-group>
58 </el-form-item> 64 </el-form-item>
59 </el-col> 65 </el-col>
60 66
61 - <el-col :span="24"> 67 + <el-col :span="23">
62 <el-form-item label="问题类型" prop="questionType"> 68 <el-form-item label="问题类型" prop="questionType">
63 <el-radio-group v-model="dataForm.questionType" :style="{}"> 69 <el-radio-group v-model="dataForm.questionType" :style="{}">
64 <el-radio 70 <el-radio
@@ -70,8 +76,8 @@ @@ -70,8 +76,8 @@
70 </el-radio-group> 76 </el-radio-group>
71 </el-form-item> 77 </el-form-item>
72 </el-col> 78 </el-col>
73 - <el-col :span="24">  
74 - <el-form-item label="问题分类" prop="questionClass"> 79 + <el-col :span="23">
  80 + <el-form-item label="关键词" prop="questionClass">
75 <el-select 81 <el-select
76 v-model="dataForm.questionClass" 82 v-model="dataForm.questionClass"
77 placeholder="请选择" 83 placeholder="请选择"
@@ -87,7 +93,7 @@ @@ -87,7 +93,7 @@
87 </el-select> 93 </el-select>
88 </el-form-item> 94 </el-form-item>
89 </el-col> 95 </el-col>
90 - <el-col :span="24"> 96 + <el-col :span="23">
91 <el-form-item label="问题内容" prop="questionContent"> 97 <el-form-item label="问题内容" prop="questionContent">
92 <el-input 98 <el-input
93 v-model="dataForm.questionContent" 99 v-model="dataForm.questionContent"
@@ -100,7 +106,7 @@ @@ -100,7 +106,7 @@
100 </el-input> 106 </el-input>
101 </el-form-item> 107 </el-form-item>
102 </el-col> 108 </el-col>
103 - <el-col :span="24"> 109 + <el-col :span="23">
104 <el-form-item label="有害链接" prop="link"> 110 <el-form-item label="有害链接" prop="link">
105 <el-input 111 <el-input
106 v-model="dataForm.link" 112 v-model="dataForm.link"
@@ -111,22 +117,32 @@ @@ -111,22 +117,32 @@
111 </el-input> 117 </el-input>
112 </el-form-item> 118 </el-form-item>
113 </el-col> 119 </el-col>
114 - <el-col :span="24">  
115 - <el-form-item label="取证内容" prop="obtainEvidence">  
116 - <NCC-UploadFz  
117 - v-model="dataForm.obtainEvidence"  
118 - :fileSize="5"  
119 - sizeUnit="MB"  
120 - :limit="9"  
121 - buttonText="点击上传" 120 + <el-col :span="12">
  121 + <el-form-item label="正确描述" prop="platformName">
  122 + <el-input
  123 + v-model="dataForm.platformName"
  124 + placeholder="请输入正确描述"
  125 + clearable
  126 + :style="{ width: '100%' }"
122 > 127 >
123 - </NCC-UploadFz> 128 + </el-input>
124 </el-form-item> 129 </el-form-item>
125 </el-col> 130 </el-col>
126 - <el-col :span="24">  
127 - <el-form-item label="附件上传" prop="annex"> 131 + <el-col :span="11">
  132 + <el-form-item label="错误描述" prop="platformName">
  133 + <el-input
  134 + v-model="dataForm.platformName"
  135 + placeholder="请输入错误描述"
  136 + clearable
  137 + :style="{ width: '100%' }"
  138 + >
  139 + </el-input>
  140 + </el-form-item>
  141 + </el-col>
  142 + <el-col :span="23">
  143 + <el-form-item label="取证内容" prop="obtainEvidence">
128 <NCC-UploadFz 144 <NCC-UploadFz
129 - v-model="dataForm.annex" 145 + v-model="dataForm.obtainEvidence"
130 :fileSize="5" 146 :fileSize="5"
131 sizeUnit="MB" 147 sizeUnit="MB"
132 :limit="9" 148 :limit="9"
@@ -169,7 +185,17 @@ export default { @@ -169,7 +185,17 @@ export default {
169 obtainEvidence: [], 185 obtainEvidence: [],
170 annex: [], 186 annex: [],
171 }, 187 },
172 - rules: {}, 188 + rules: {
  189 + platformType: [
  190 + { required: true, message: "请选择平台类型", trigger: "change" },
  191 + ],
  192 + questionType: [
  193 + { required: true, message: "请选择问题类型", trigger: "change" },
  194 + ],
  195 + questionClass: [
  196 + { required: true, message: "请选择关键词", trigger: "change" },
  197 + ],
  198 + },
173 sourceOptions: [ 199 sourceOptions: [
174 { fullName: "市网信办线索", id: "市网信办线索" }, 200 { fullName: "市网信办线索", id: "市网信办线索" },
175 { fullName: "自主巡查发现", id: "自主巡查发现" }, 201 { fullName: "自主巡查发现", id: "自主巡查发现" },
src/views/baseInspectionReport/index.vue
@@ -230,8 +230,5 @@ @@ -230,8 +230,5 @@
230 height: calc(100% - 47px); 230 height: calc(100% - 47px);
231 overflow-y: scroll; 231 overflow-y: scroll;
232 } 232 }
233 - .item-body {  
234 - height: calc(100% - 35px);  
235 - }  
236 } 233 }
237 </style> 234 </style>
238 \ No newline at end of file 235 \ No newline at end of file
src/views/baseSpecialAction/Form.vue
1 <template> 1 <template>
2 - <el-dialog :title="!dataForm.id ? '新建' : isDetail ? '详情':'编辑'" :close-on-click-modal="false" :visible.sync="visible" class="NCC-dialog NCC-dialog_center" lock-scroll width="70%">  
3 - <el-row :gutter="15" class="" >  
4 - <el-form ref="elForm" :model="dataForm" size="small" label-width="100px" label-position="right" :disabled="!!isDetail" :rules="rules">  
5 - <el-col :span="24" v-if="false" >  
6 - <el-form-item label="主键" prop="id">  
7 - <el-input v-model="dataForm.id" placeholder="请输入" clearable :style='{"width":"100%"}' >  
8 - </el-input>  
9 - </el-form-item>  
10 - </el-col>  
11 - <el-col :span="24" v-if="ncc.hasFormP('specialActionType')">  
12 - <el-form-item label="类型" prop="specialActionType">  
13 - <el-select v-model="dataForm.specialActionType" placeholder="请选择" clearable required :style='{"width":"100%"}' >  
14 - <el-option v-for="(item, index) in specialActionTypeOptions" :key="index" :label="item.fullName" :value="item.id" ></el-option>  
15 - </el-select>  
16 - </el-form-item>  
17 - </el-col>  
18 - <el-col :span="24" v-if="ncc.hasFormP('title')">  
19 - <el-form-item label="标题" prop="title">  
20 - <el-input v-model="dataForm.title" placeholder="请输入" clearable required :style='{"width":"100%"}' >  
21 - </el-input>  
22 - </el-form-item>  
23 - </el-col>  
24 - <el-col :span="24" v-if="ncc.hasFormP('content')">  
25 - <el-form-item label="内容" prop="content">  
26 - <el-input v-model="dataForm.content" placeholder="请输入" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' >  
27 - </el-input>  
28 - </el-form-item>  
29 - </el-col>  
30 - <el-col :span="24" v-if="ncc.hasFormP('releaseTime')">  
31 - <el-form-item label="发布时间" prop="releaseTime">  
32 - <el-date-picker v-model="dataForm.releaseTime" placeholder="请选择" clearable :style='{"width":"100%"}' type='datetime' format="yyyy-MM-dd HH:mm:ss" value-format="timestamp" >  
33 - </el-date-picker>  
34 - </el-form-item>  
35 - </el-col>  
36 - <el-col :span="24" v-if="ncc.hasFormP('annex')">  
37 - <el-form-item label="附件" prop="annex">  
38 - <NCC-UploadFz v-model="dataForm.annex" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" >  
39 - </NCC-UploadFz>  
40 - </el-form-item>  
41 - </el-col>  
42 - <el-col :span="24" v-if="ncc.hasFormP('communicationArea')">  
43 - <el-form-item label="传达区域" prop="communicationArea">  
44 - <el-checkbox-group v-model="dataForm.communicationArea" :style='{}' >  
45 - <el-checkbox v-for="(item, index) in communicationAreaOptions" :key="index" :label="item.id" >{{item.fullName}}</el-checkbox>  
46 - </el-checkbox-group>  
47 - </el-form-item>  
48 - </el-col>  
49 - <el-col :span="24" v-if="false" >  
50 - <el-form-item label="状态" prop="state">  
51 - <el-input v-model="dataForm.state" placeholder="请输入" clearable :style='{"width":"100%"}' >  
52 - </el-input>  
53 - </el-form-item>  
54 - </el-col>  
55 - <el-col :span="24" v-if="false" >  
56 - <el-form-item label="创建用户" prop="creatorUserId">  
57 - <el-input v-model="dataForm.creatorUserId" placeholder="系统自动生成" readonly >  
58 - </el-input>  
59 - </el-form-item>  
60 - </el-col>  
61 - <el-col :span="24" v-if="false" >  
62 - <el-form-item label="创建时间" prop="creatorTime">  
63 - <el-input v-model="dataForm.creatorTime" placeholder="系统自动生成" readonly >  
64 - </el-input>  
65 - </el-form-item>  
66 - </el-col>  
67 - <el-col :span="24" v-if="false" >  
68 - <el-form-item label="修改用户" prop="lastModifyUserId">  
69 - <el-input v-model="dataForm.lastModifyUserId" placeholder="系统自动生成" readonly >  
70 - </el-input>  
71 - </el-form-item>  
72 - </el-col>  
73 - <el-col :span="24" v-if="false" >  
74 - <el-form-item label="修改时间" prop="lastModifyTime">  
75 - <el-input v-model="dataForm.lastModifyTime" placeholder="系统自动生成" readonly >  
76 - </el-input>  
77 - </el-form-item>  
78 - </el-col>  
79 - </el-form>  
80 - </el-row>  
81 - <span slot="footer" class="dialog-footer">  
82 - <el-button @click="visible = false">取 消</el-button>  
83 - <el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail">确 定</el-button>  
84 - </span>  
85 - </el-dialog> 2 + <el-dialog
  3 + :title="!dataForm.id ? '新建' : isDetail ? '详情' : '编辑'"
  4 + :close-on-click-modal="false"
  5 + :visible.sync="visible"
  6 + class="NCC-dialog NCC-dialog_center"
  7 + lock-scroll
  8 + width="70%"
  9 + >
  10 + <el-row :gutter="15" style="padding-top: 10px">
  11 + <el-form
  12 + ref="elForm"
  13 + :model="dataForm"
  14 + size="small"
  15 + label-width="100px"
  16 + label-position="right"
  17 + :disabled="!!isDetail"
  18 + :rules="rules"
  19 + >
  20 + <el-col :span="23" v-if="false">
  21 + <el-form-item label="主键" prop="id">
  22 + <el-input
  23 + v-model="dataForm.id"
  24 + placeholder="请输入"
  25 + clearable
  26 + :style="{ width: '100%' }"
  27 + >
  28 + </el-input>
  29 + </el-form-item>
  30 + </el-col>
  31 + <el-col :span="23" v-if="ncc.hasFormP('title')">
  32 + <el-form-item label="标题" prop="title">
  33 + <el-input
  34 + v-model="dataForm.title"
  35 + placeholder="请输入"
  36 + clearable
  37 + required
  38 + :style="{ width: '100%' }"
  39 + >
  40 + </el-input>
  41 + </el-form-item>
  42 + </el-col>
  43 + <el-col :span="23" v-if="ncc.hasFormP('annex')">
  44 + <el-form-item label="附件" prop="annex">
  45 + <NCC-UploadFz
  46 + v-model="dataForm.annex"
  47 + :fileSize="5"
  48 + sizeUnit="MB"
  49 + :limit="9"
  50 + buttonText="点击上传"
  51 + >
  52 + </NCC-UploadFz>
  53 + </el-form-item>
  54 + </el-col>
  55 + <el-col :span="23" v-if="ncc.hasFormP('communicationArea')">
  56 + <el-form-item label="传达区域" prop="communicationArea">
  57 + <el-checkbox-group v-model="dataForm.communicationArea" :style="{}">
  58 + <el-checkbox
  59 + v-for="(item, index) in areaOptions"
  60 + :key="index"
  61 + :label="item.id"
  62 + >{{ item.fullName }}</el-checkbox
  63 + >
  64 + </el-checkbox-group>
  65 + <div style="margin-top: 10px">
  66 + <el-button size="mini" @click="selectAreaAll">全选</el-button>
  67 + <el-button size="mini" @click="closeAreaAll">反选</el-button>
  68 + </div>
  69 + </el-form-item>
  70 + </el-col>
  71 + <el-col :span="23" v-if="ncc.hasFormP('communicationArea')">
  72 + <el-form-item label="传达外协" prop="communicationArea">
  73 + <el-checkbox-group v-model="dataForm.communicationArea" :style="{}">
  74 + <el-checkbox
  75 + v-for="(item, index) in communicationAreaOptions"
  76 + :key="index"
  77 + :label="item.id"
  78 + >{{ item.fullName }}</el-checkbox
  79 + >
  80 + </el-checkbox-group>
  81 + </el-form-item>
  82 + </el-col>
  83 + </el-form>
  84 + </el-row>
  85 + <span slot="footer" class="dialog-footer">
  86 + <el-button @click="visible = false">取 消</el-button>
  87 + <el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail"
  88 + >确 定</el-button
  89 + >
  90 + </span>
  91 + </el-dialog>
86 </template> 92 </template>
87 <script> 93 <script>
88 - import request from '@/utils/request'  
89 - import { getDictionaryDataSelector } from '@/api/systemData/dictionary'  
90 - import { previewDataInterface } from '@/api/systemData/dataInterface'  
91 - export default {  
92 - components: {},  
93 - props: [],  
94 - data() {  
95 - return {  
96 - loading: false,  
97 - visible: false,  
98 - isDetail: false,  
99 - dataForm: {  
100 - id:'',  
101 - id:undefined,  
102 - specialActionType:undefined,  
103 - title:undefined,  
104 - content:undefined,  
105 - releaseTime:undefined,  
106 - annex:[],  
107 - communicationArea:[],  
108 - state:undefined,  
109 - creatorUserId:undefined,  
110 - creatorTime:undefined,  
111 - lastModifyUserId:undefined,  
112 - lastModifyTime:undefined,  
113 - },  
114 - rules: {  
115 - specialActionType:[  
116 - {  
117 - required:true,  
118 - message:'请输入类型',  
119 - trigger:'change'  
120 - },  
121 - ],  
122 - title:[  
123 - {  
124 - required:true,  
125 - message:'请输入标题',  
126 - trigger:'blur'  
127 - },  
128 - ],  
129 - },  
130 - specialActionTypeOptions : [],  
131 - communicationAreaOptions:[],  
132 - }  
133 - },  
134 - computed: {},  
135 - watch: {},  
136 - created() {  
137 - this.getspecialActionTypeOptions();  
138 - },  
139 - mounted() {  
140 - },  
141 - methods: {  
142 - getspecialActionTypeOptions(){  
143 - getDictionaryDataSelector('576310654982423813').then(res => {  
144 - this.specialActionTypeOptions = res.data.list  
145 - });  
146 - },  
147 - goBack() {  
148 - this.$emit('refresh')  
149 - },  
150 - init(id, isDetail) {  
151 - this.dataForm.id = id || 0;  
152 - this.visible = true;  
153 - this.isDetail = isDetail || false;  
154 - this.$nextTick(() => {  
155 - this.$refs['elForm'].resetFields();  
156 - if (this.dataForm.id) {  
157 - request({  
158 - url: '/Extend/BaseSpecialAction/' + this.dataForm.id,  
159 - method: 'get'  
160 - }).then(res =>{  
161 - this.dataForm = res.data;  
162 - if(!this.dataForm.annex)this.dataForm.annex=[];  
163 - if(!this.dataForm.communicationArea)this.dataForm.communicationArea=[];  
164 - })  
165 - }  
166 - })  
167 - },  
168 - dataFormSubmit() {  
169 - this.$refs['elForm'].validate((valid) => {  
170 - if (valid) {  
171 - if (!this.dataForm.id) {  
172 - request({  
173 - url: `/Extend/BaseSpecialAction`,  
174 - method: 'post',  
175 - data: this.dataForm,  
176 - }).then((res) => {  
177 - this.$message({  
178 - message: res.msg,  
179 - type: 'success',  
180 - duration: 1000,  
181 - onClose: () => {  
182 - this.visible = false,  
183 - this.$emit('refresh', true)  
184 - }  
185 - })  
186 - })  
187 - } else {  
188 - request({  
189 - url: '/Extend/BaseSpecialAction/' + this.dataForm.id,  
190 - method: 'PUT',  
191 - data: this.dataForm  
192 - }).then((res) => {  
193 - this.$message({  
194 - message: res.msg,  
195 - type: 'success',  
196 - duration: 1000,  
197 - onClose: () => {  
198 - this.visible = false  
199 - this.$emit('refresh', true)  
200 - }  
201 - })  
202 - })  
203 - }  
204 - }  
205 - })  
206 - },  
207 - }  
208 - } 94 +import request from "@/utils/request";
  95 +import { getDictionaryDataSelector } from "@/api/systemData/dictionary";
  96 +import { previewDataInterface } from "@/api/systemData/dataInterface";
  97 +export default {
  98 + components: {},
  99 + props: [],
  100 + data() {
  101 + return {
  102 + loading: false,
  103 + visible: false,
  104 + isDetail: false,
  105 + dataForm: {
  106 + id: "",
  107 + id: undefined,
  108 + specialActionType: undefined,
  109 + title: undefined,
  110 + content: undefined,
  111 + releaseTime: undefined,
  112 + annex: [],
  113 + communicationArea: [],
  114 + state: undefined,
  115 + creatorUserId: undefined,
  116 + creatorTime: undefined,
  117 + lastModifyUserId: undefined,
  118 + lastModifyTime: undefined,
  119 + },
  120 + rules: {
  121 + specialActionType: [
  122 + {
  123 + required: true,
  124 + message: "请输入类型",
  125 + trigger: "change",
  126 + },
  127 + ],
  128 + title: [
  129 + {
  130 + required: true,
  131 + message: "请输入标题",
  132 + trigger: "blur",
  133 + },
  134 + ],
  135 + },
  136 + areaOptions: [],
  137 + communicationAreaOptions: [],
  138 + };
  139 + },
  140 + computed: {},
  141 + watch: {},
  142 + created() {
  143 + this.initAreaTypeList();
  144 + },
  145 + mounted() {},
  146 + methods: {
  147 + async initAreaTypeList() {
  148 + let list = this.$store.state.meta.area;
  149 + !list && (list = await this.$store.dispatch("getTypeListByCode", "area"));
  150 + this.areaOptions = list;
  151 + },
  152 + selectAreaAll() {
  153 + this.dataForm.communicationArea = this.areaOptions.map(
  154 + (option) => option.id
  155 + );
  156 + },
  157 + closeAreaAll() {
  158 + this.dataForm.communicationArea = this.areaOptions
  159 + .filter(
  160 + (option) => !this.dataForm.communicationArea.includes(option.id)
  161 + )
  162 + .map((option) => option.id);
  163 + },
  164 + goBack() {
  165 + this.$emit("refresh");
  166 + },
  167 + init(id, isDetail) {
  168 + this.dataForm.id = id || 0;
  169 + this.visible = true;
  170 + this.isDetail = isDetail || false;
  171 + this.$nextTick(() => {
  172 + this.$refs["elForm"].resetFields();
  173 + if (this.dataForm.id) {
  174 + request({
  175 + url: "/Extend/BaseSpecialAction/" + this.dataForm.id,
  176 + method: "get",
  177 + }).then((res) => {
  178 + this.dataForm = res.data;
  179 + if (!this.dataForm.annex) this.dataForm.annex = [];
  180 + if (!this.dataForm.communicationArea)
  181 + this.dataForm.communicationArea = [];
  182 + });
  183 + }
  184 + });
  185 + },
  186 + dataFormSubmit() {
  187 + this.$refs["elForm"].validate((valid) => {
  188 + if (valid) {
  189 + if (!this.dataForm.id) {
  190 + request({
  191 + url: `/Extend/BaseSpecialAction`,
  192 + method: "post",
  193 + data: this.dataForm,
  194 + }).then((res) => {
  195 + this.$message({
  196 + message: res.msg,
  197 + type: "success",
  198 + duration: 1000,
  199 + onClose: () => {
  200 + (this.visible = false), this.$emit("refresh", true);
  201 + },
  202 + });
  203 + });
  204 + } else {
  205 + request({
  206 + url: "/Extend/BaseSpecialAction/" + this.dataForm.id,
  207 + method: "PUT",
  208 + data: this.dataForm,
  209 + }).then((res) => {
  210 + this.$message({
  211 + message: res.msg,
  212 + type: "success",
  213 + duration: 1000,
  214 + onClose: () => {
  215 + this.visible = false;
  216 + this.$emit("refresh", true);
  217 + },
  218 + });
  219 + });
  220 + }
  221 + }
  222 + });
  223 + },
  224 + },
  225 +};
209 </script> 226 </script>
src/views/baseSpecialAction/index.vue
@@ -55,55 +55,42 @@ @@ -55,55 +55,42 @@
55 </div> 55 </div>
56 </div> 56 </div>
57 <NCC-table v-loading="listLoading" :data="list"> 57 <NCC-table v-loading="listLoading" :data="list">
58 - <el-table-column prop="id" label="主键" align="left" />  
59 - <el-table-column  
60 - label="类型"  
61 - prop="specialActionType"  
62 - align="left"  
63 - >  
64 - <template slot-scope="scope">{{  
65 - scope.row.specialActionType  
66 - | dynamicText(specialActionTypeOptions)  
67 - }}</template>  
68 - </el-table-column>  
69 - <el-table-column prop="title" label="标题" align="left" /> 58 + <el-table-column prop="id" label="主键" align="left" show-overflow-tooltip/>
  59 + <el-table-column prop="title" label="标题" align="left" show-overflow-tooltip/>
70 <el-table-column 60 <el-table-column
71 prop="releaseTime" 61 prop="releaseTime"
72 label="发布时间" 62 label="发布时间"
73 align="left" 63 align="left"
  64 + show-overflow-tooltip
74 /> 65 />
75 <el-table-column 66 <el-table-column
76 label="传达区域" 67 label="传达区域"
77 prop="communicationArea" 68 prop="communicationArea"
78 align="left" 69 align="left"
  70 + show-overflow-tooltip
79 > 71 >
80 <template slot-scope="scope">{{ 72 <template slot-scope="scope">{{
81 scope.row.communicationArea 73 scope.row.communicationArea
82 | dynamicText(communicationAreaOptions) 74 | dynamicText(communicationAreaOptions)
83 }}</template> 75 }}</template>
84 </el-table-column> 76 </el-table-column>
85 - <el-table-column prop="state" label="状态" align="left" />  
86 <el-table-column 77 <el-table-column
87 - prop="creatorUserId"  
88 - label="创建用户"  
89 - align="left"  
90 - />  
91 - <el-table-column  
92 - prop="creatorTime"  
93 - label="创建时间"  
94 - align="left"  
95 - />  
96 - <el-table-column  
97 - prop="lastModifyUserId"  
98 - label="修改用户" 78 + label="传达外协"
  79 + prop="communicationArea"
99 align="left" 80 align="left"
100 - /> 81 + show-overflow-tooltip
  82 + >
  83 + <template slot-scope="scope">{{
  84 + scope.row.communicationArea
  85 + | dynamicText(communicationAreaOptions)
  86 + }}</template>
  87 + </el-table-column>
101 <el-table-column 88 <el-table-column
102 - prop="lastModifyTime"  
103 - label="修改时间" 89 + prop="creatorUserId"
  90 + show-overflow-tooltip
  91 + label="创建用户"
104 align="left" 92 align="left"
105 /> 93 />
106 - <el-table-column prop="content" label="内容" align="left" />  
107 <el-table-column label="操作" fixed="right" width="100"> 94 <el-table-column label="操作" fixed="right" width="100">
108 <template slot-scope="scope"> 95 <template slot-scope="scope">
109 <el-button 96 <el-button
@@ -183,8 +170,8 @@ export default { @@ -183,8 +170,8 @@ export default {
183 }, 170 },
184 computed: {}, 171 computed: {},
185 created() { 172 created() {
186 - // this.initData()  
187 - // this.getspecialActionTypeOptions(); 173 + this.initData()
  174 + this.getspecialActionTypeOptions();
188 }, 175 },
189 methods: { 176 methods: {
190 getspecialActionTypeOptions() { 177 getspecialActionTypeOptions() {
@@ -295,8 +282,5 @@ export default { @@ -295,8 +282,5 @@ export default {
295 height: calc(100% - 47px); 282 height: calc(100% - 47px);
296 overflow-y: scroll; 283 overflow-y: scroll;
297 } 284 }
298 - .item-body {  
299 - height: calc(100% - 35px);  
300 - }  
301 } 285 }
302 </style> 286 </style>
src/views/baseSystemInfo/ChangeRecord.vue 0 → 100644
  1 +<template>
  2 + <!-- 整改清单 -->
  3 + <el-dialog
  4 + title="整改清单"
  5 + :close-on-click-modal="false"
  6 + :visible.sync="visible"
  7 + class="NCC-dialog NCC-dialog_center"
  8 + lock-scroll
  9 + width="70%"
  10 + >
  11 + <el-row :gutter="15" style="height: 65vh;">
  12 + <el-table :data="tableData" style="width: 100%" v-loading="loading" stripe>
  13 + <el-table-column type="index" width="50" />
  14 + <el-table-column prop="date" label="整改原因" width="180" />
  15 + <el-table-column prop="date" label="整改内容" width="180" />
  16 + <el-table-column prop="date" label="整改人员" width="180" />
  17 + <el-table-column prop="name" label="开始时间" width="180" />
  18 + <el-table-column prop="address" label="完成时间" />
  19 + </el-table>
  20 + </el-row>
  21 + <span slot="footer" class="dialog-footer">
  22 + <el-button @click="visible = false">取 消</el-button>
  23 + </span>
  24 + </el-dialog>
  25 +</template>
  26 +<script>
  27 +import request from "@/utils/request";
  28 +export default {
  29 + components: {},
  30 + props: [],
  31 + data() {
  32 + return {
  33 + loading: false,
  34 + visible: false,
  35 + tableData: [{}],
  36 + };
  37 + },
  38 + computed: {},
  39 + watch: {},
  40 + created() {},
  41 + mounted() {},
  42 + methods: {
  43 + init(id) {
  44 + this.visible = true;
  45 + // this.loading = true;
  46 + this.tableData = [{}, {}, {},{}, {}, {},{}, {}, {},{}, {}, {},{}, {}, {},{}, {}, {},{}, {}, {},{}, {}, {},];
  47 + // request({
  48 + // url: "",
  49 + // method: "get",
  50 + // }).then(res => {
  51 + // this.tableData = res.data;
  52 + // });
  53 + },
  54 + },
  55 +};
  56 +</script>
src/views/baseSystemInfo/Form.vue deleted
1 -<template>  
2 - <el-dialog :title="!dataForm.id ? '新建' : isDetail ? '详情':'编辑'" :close-on-click-modal="false" :visible.sync="visible" class="NCC-dialog NCC-dialog_center" lock-scroll width="70%">  
3 - <el-row :gutter="15" class="" >  
4 - <el-form ref="elForm" :model="dataForm" size="small" label-width="100px" label-position="right" :disabled="!!isDetail" :rules="rules">  
5 - <el-col :span="24" v-if="false" >  
6 - <el-form-item label="主键" prop="id">  
7 - <el-input v-model="dataForm.id" placeholder="请输入" clearable :style='{"width":"100%"}' >  
8 - </el-input>  
9 - </el-form-item>  
10 - </el-col>  
11 - <el-col :span="24" v-if="ncc.hasFormP('companyId')">  
12 - <el-form-item label="所属公司" prop="companyId">  
13 - <el-select v-model="dataForm.companyId" placeholder="请选择" clearable required :style='{"width":"100%"}' filterable >  
14 - <el-option v-for="(item, index) in companyIdOptions" :key="index" :label="item.F_CompanyName" :value="item.F_id" ></el-option>  
15 - </el-select>  
16 - </el-form-item>  
17 - </el-col>  
18 - <el-col :span="12" v-if="ncc.hasFormP('systemClass')">  
19 - <el-form-item label="系统分类" prop="systemClass">  
20 - <el-select v-model="dataForm.systemClass" placeholder="请选择" clearable required :style='{"width":"100%"}' >  
21 - <el-option v-for="(item, index) in systemClassOptions" :key="index" :label="item.F_ClassName" :value="item.F_Id" ></el-option>  
22 - </el-select>  
23 - </el-form-item>  
24 - </el-col>  
25 - <el-col :span="12" v-if="ncc.hasFormP('systemType')">  
26 - <el-form-item label="系统类型" prop="systemType">  
27 - <el-select v-model="dataForm.systemType" placeholder="请选择" clearable required :style='{"width":"100%"}' >  
28 - <el-option v-for="(item, index) in systemTypeOptions" :key="index" :label="item.fullName" :value="item.id" ></el-option>  
29 - </el-select>  
30 - </el-form-item>  
31 - </el-col>  
32 - <el-col :span="24" v-if="ncc.hasFormP('systemName')">  
33 - <el-form-item label="系统名称" prop="systemName">  
34 - <el-input v-model="dataForm.systemName" placeholder="请输入" clearable required :style='{"width":"100%"}' >  
35 - </el-input>  
36 - </el-form-item>  
37 - </el-col>  
38 - <el-col :span="12" v-if="ncc.hasFormP('systemState')">  
39 - <el-form-item label="状态" prop="systemState">  
40 - <el-radio-group v-model="dataForm.systemState" required :style='{}' >  
41 - <el-radio v-for="(item, index) in systemStateOptions" :key="index" :label="item.id" >{{item.fullName}}</el-radio>  
42 - </el-radio-group>  
43 - </el-form-item>  
44 - </el-col>  
45 - <el-col :span="12" v-if="ncc.hasFormP('systemChangeSituation')">  
46 - <el-form-item label="变更情况" prop="systemChangeSituation">  
47 - <el-radio-group v-model="dataForm.systemChangeSituation" required :style='{}' >  
48 - <el-radio v-for="(item, index) in systemChangeSituationOptions" :key="index" :label="item.id" >{{item.fullName}}</el-radio>  
49 - </el-radio-group>  
50 - </el-form-item>  
51 - </el-col>  
52 - <el-col :span="24" v-if="ncc.hasFormP('systemIcon')">  
53 - <el-form-item label="系统图标" prop="systemIcon">  
54 - <NCC-UploadImg v-model="dataForm.systemIcon" :fileSize="5" sizeUnit="MB" :limit="9" >  
55 - </NCC-UploadImg>  
56 - </el-form-item>  
57 - </el-col>  
58 - <el-col :span="24" v-if="ncc.hasFormP('systemRecordNumber')">  
59 - <el-form-item label="备案号" prop="systemRecordNumber">  
60 - <el-input v-model="dataForm.systemRecordNumber" placeholder="请输入" clearable :style='{"width":"100%"}' >  
61 - </el-input>  
62 - </el-form-item>  
63 - </el-col>  
64 - <el-col :span="24" v-if="ncc.hasFormP('systemLocation')">  
65 - <el-form-item label="所在区县" prop="systemLocation">  
66 - <NCC-Address v-model="dataForm.systemLocation" placeholder="请选择" clearable :level="2" >  
67 - </NCC-Address>  
68 - </el-form-item>  
69 - </el-col>  
70 - <el-col :span="24" v-if="ncc.hasFormP('systemIntroduce')">  
71 - <el-form-item label="简介" prop="systemIntroduce">  
72 - <el-input v-model="dataForm.systemIntroduce" placeholder="请输入" show-word-limit :style='{"width":"100%"}' type='textarea' :autosize='{"minRows":4,"maxRows":4}' >  
73 - </el-input>  
74 - </el-form-item>  
75 - </el-col>  
76 - <el-col :span="24" v-if="ncc.hasFormP('systemDownloadVolume')">  
77 - <el-form-item label="下载量" prop="systemDownloadVolume">  
78 - <el-input-number v-model="dataForm.systemDownloadVolume" placeholder="数字文本" :step="1" >  
79 - </el-input-number>  
80 - </el-form-item>  
81 - </el-col>  
82 - <el-col :span="24" v-if="false" >  
83 - <el-form-item label="创建用户" prop="creatorUserId">  
84 - <el-input v-model="dataForm.creatorUserId" placeholder="系统自动生成" readonly >  
85 - </el-input>  
86 - </el-form-item>  
87 - </el-col>  
88 - <el-col :span="24" v-if="false" >  
89 - <el-form-item label="创建时间" prop="creatorTime">  
90 - <el-input v-model="dataForm.creatorTime" placeholder="系统自动生成" readonly >  
91 - </el-input>  
92 - </el-form-item>  
93 - </el-col>  
94 - <el-col :span="24" v-if="false" >  
95 - <el-form-item label="修改用户" prop="lastModifyUserId">  
96 - <el-input v-model="dataForm.lastModifyUserId" placeholder="系统自动生成" readonly >  
97 - </el-input>  
98 - </el-form-item>  
99 - </el-col>  
100 - <el-col :span="24" v-if="false" >  
101 - <el-form-item label="修改时间" prop="lastModifyTime">  
102 - <el-input v-model="dataForm.lastModifyTime" placeholder="系统自动生成" readonly >  
103 - </el-input>  
104 - </el-form-item>  
105 - </el-col>  
106 - </el-form>  
107 - </el-row>  
108 - <span slot="footer" class="dialog-footer">  
109 - <el-button @click="visible = false">取 消</el-button>  
110 - <el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail">确 定</el-button>  
111 - </span>  
112 - </el-dialog>  
113 -</template>  
114 -<script>  
115 - import request from '@/utils/request'  
116 - import { getDictionaryDataSelector } from '@/api/systemData/dictionary'  
117 - import { previewDataInterface } from '@/api/systemData/dataInterface'  
118 - export default {  
119 - components: {},  
120 - props: [],  
121 - data() {  
122 - return {  
123 - loading: false,  
124 - visible: false,  
125 - isDetail: false,  
126 - dataForm: {  
127 - id:'',  
128 - id:undefined,  
129 - companyId:undefined,  
130 - systemClass:undefined,  
131 - systemType:undefined,  
132 - systemName:undefined,  
133 - systemState:undefined,  
134 - systemChangeSituation:undefined,  
135 - systemIcon:[],  
136 - systemRecordNumber:undefined,  
137 - systemLocation:[],  
138 - systemIntroduce:undefined,  
139 - systemDownloadVolume:undefined,  
140 - creatorUserId:undefined,  
141 - creatorTime:undefined,  
142 - lastModifyUserId:undefined,  
143 - lastModifyTime:undefined,  
144 - },  
145 - rules: {  
146 - companyId:[  
147 - {  
148 - required:true,  
149 - message:'请输入所属公司',  
150 - trigger:'change'  
151 - },  
152 - ],  
153 - systemClass:[  
154 - {  
155 - required:true,  
156 - message:'请输入系统分类',  
157 - trigger:'change'  
158 - },  
159 - ],  
160 - systemType:[  
161 - {  
162 - required:true,  
163 - message:'请输入系统类型',  
164 - trigger:'change'  
165 - },  
166 - ],  
167 - systemName:[  
168 - {  
169 - required:true,  
170 - message:'请输入系统名称',  
171 - trigger:'blur'  
172 - },  
173 - ],  
174 - systemState:[  
175 - {  
176 - required:true,  
177 - message:'请输入状态',  
178 - trigger:'change'  
179 - },  
180 - ],  
181 - systemChangeSituation:[  
182 - {  
183 - required:true,  
184 - message:'请输入变更情况',  
185 - trigger:'change'  
186 - },  
187 - ],  
188 - },  
189 - companyIdOptions : [],  
190 - systemClassOptions : [],  
191 - systemTypeOptions : [],  
192 - systemStateOptions : [],  
193 - systemChangeSituationOptions : [],  
194 - }  
195 - },  
196 - computed: {},  
197 - watch: {},  
198 - created() {  
199 - this.getcompanyIdOptions();  
200 - this.getsystemClassOptions();  
201 - this.getsystemTypeOptions();  
202 - this.getsystemStateOptions();  
203 - this.getsystemChangeSituationOptions();  
204 - },  
205 - mounted() {  
206 - },  
207 - methods: {  
208 - getcompanyIdOptions(){  
209 - previewDataInterface('576296400682222853').then(res => {  
210 - this.companyIdOptions = res.data  
211 - });  
212 - },  
213 - getsystemClassOptions(){  
214 - previewDataInterface('576295179435115781').then(res => {  
215 - this.systemClassOptions = res.data  
216 - });  
217 - },  
218 - getsystemTypeOptions(){  
219 - getDictionaryDataSelector('576279943168656645').then(res => {  
220 - this.systemTypeOptions = res.data.list  
221 - });  
222 - },  
223 - getsystemStateOptions(){  
224 - getDictionaryDataSelector('576291549546022149').then(res => {  
225 - this.systemStateOptions = res.data.list  
226 - });  
227 - },  
228 - getsystemChangeSituationOptions(){  
229 - getDictionaryDataSelector('576291912521090309').then(res => {  
230 - this.systemChangeSituationOptions = res.data.list  
231 - });  
232 - },  
233 - goBack() {  
234 - this.$emit('refresh')  
235 - },  
236 - init(id, isDetail) {  
237 - this.dataForm.id = id || 0;  
238 - this.visible = true;  
239 - this.isDetail = isDetail || false;  
240 - this.$nextTick(() => {  
241 - this.$refs['elForm'].resetFields();  
242 - if (this.dataForm.id) {  
243 - request({  
244 - url: '/api/Extend/BaseSysteminfo/' + this.dataForm.id,  
245 - method: 'get'  
246 - }).then(res =>{  
247 - this.dataForm = res.data;  
248 - if(!this.dataForm.systemIcon)this.dataForm.systemIcon=[];  
249 - if(!this.dataForm.systemLocation)this.dataForm.systemLocation=[];  
250 - })  
251 - }  
252 - })  
253 - },  
254 - dataFormSubmit() {  
255 - this.$refs['elForm'].validate((valid) => {  
256 - if (valid) {  
257 - if (!this.dataForm.id) {  
258 - request({  
259 - url: `/api/Extend/BaseSysteminfo`,  
260 - method: 'post',  
261 - data: this.dataForm,  
262 - }).then((res) => {  
263 - this.$message({  
264 - message: res.msg,  
265 - type: 'success',  
266 - duration: 1000,  
267 - onClose: () => {  
268 - this.visible = false,  
269 - this.$emit('refresh', true)  
270 - }  
271 - })  
272 - })  
273 - } else {  
274 - request({  
275 - url: '/api/Extend/BaseSysteminfo/' + this.dataForm.id,  
276 - method: 'PUT',  
277 - data: this.dataForm  
278 - }).then((res) => {  
279 - this.$message({  
280 - message: res.msg,  
281 - type: 'success',  
282 - duration: 1000,  
283 - onClose: () => {  
284 - this.visible = false  
285 - this.$emit('refresh', true)  
286 - }  
287 - })  
288 - })  
289 - }  
290 - }  
291 - })  
292 - },  
293 - }  
294 - }  
295 -</script>  
src/views/baseSystemInfo/index.vue
@@ -128,7 +128,7 @@ @@ -128,7 +128,7 @@
128 label="所属区域" 128 label="所属区域"
129 align="center" 129 align="center"
130 /> 130 />
131 - <el-table-column label="操作" width="200"> 131 + <el-table-column label="操作" width="250">
132 <!-- 查看,修改,归属地变更,上报 --> 132 <!-- 查看,修改,归属地变更,上报 -->
133 <template slot-scope="scope"> 133 <template slot-scope="scope">
134 <InfoEditRecord class="btn_dialog" :systemId="scope.row.Id"> 134 <InfoEditRecord class="btn_dialog" :systemId="scope.row.Id">
@@ -154,6 +154,12 @@ @@ -154,6 +154,12 @@
154 @click="toInspection(scope.row)" 154 @click="toInspection(scope.row)"
155 >上报</el-button 155 >上报</el-button
156 > 156 >
  157 + <el-button
  158 + size="mini"
  159 + type="text"
  160 + @click="toChangeRecord(scope.row)"
  161 + >整改清单</el-button
  162 + >
157 </template> 163 </template>
158 </el-table-column> 164 </el-table-column>
159 </NCC-table> 165 </NCC-table>
@@ -178,6 +184,13 @@ @@ -178,6 +184,13 @@
178 label-width="100px" 184 label-width="100px"
179 v-loading="areaDialogLoading" 185 v-loading="areaDialogLoading"
180 > 186 >
  187 + <el-form-item label="市属" prop="city">
  188 + <el-input
  189 + v-model="areaForm.city"
  190 + placeholder="请输入市属"
  191 + maxlength="20"
  192 + ></el-input>
  193 + </el-form-item>
181 <el-form-item label="所属区县" prop="areaId"> 194 <el-form-item label="所属区县" prop="areaId">
182 <el-radio-group 195 <el-radio-group
183 v-model="areaForm.areaId" 196 v-model="areaForm.areaId"
@@ -209,6 +222,7 @@ @@ -209,6 +222,7 @@
209 ref="InspectionForm" 222 ref="InspectionForm"
210 @refresh="refresh" 223 @refresh="refresh"
211 /> 224 />
  225 + <ChangeRecord v-if="ChangeRecordVisible" ref="ChangeRecord"/>
212 </div> 226 </div>
213 </div> 227 </div>
214 </div> 228 </div>
@@ -219,12 +233,13 @@ import { getInfoList } from &quot;@/api/baseData/info&quot;; @@ -219,12 +233,13 @@ import { getInfoList } from &quot;@/api/baseData/info&quot;;
219 import { applnyChageArea } from "@/api/baseData/info"; 233 import { applnyChageArea } from "@/api/baseData/info";
220 import infoMixin from "@/mixins/info"; 234 import infoMixin from "@/mixins/info";
221 import InspectionForm from "./InspectForm.vue"; 235 import InspectionForm from "./InspectForm.vue";
  236 +import ChangeRecord from "./ChangeRecord.vue";
222 237
223 export default { 238 export default {
224 name: "SystemInfo", 239 name: "SystemInfo",
225 mixins: [infoMixin], 240 mixins: [infoMixin],
226 components: { 241 components: {
227 - InspectionForm, 242 + InspectionForm, ChangeRecord
228 }, 243 },
229 data() { 244 data() {
230 return { 245 return {
@@ -250,6 +265,7 @@ export default { @@ -250,6 +265,7 @@ export default {
250 areaDialogLoading: false, 265 areaDialogLoading: false,
251 activeAreaId: "", 266 activeAreaId: "",
252 areaForm: { 267 areaForm: {
  268 + city: '',
253 areaId: "", 269 areaId: "",
254 applnycontent: "", 270 applnycontent: "",
255 }, 271 },
@@ -264,6 +280,7 @@ export default { @@ -264,6 +280,7 @@ export default {
264 280
265 // 上报 281 // 上报
266 InspectionFormVisible: false, 282 InspectionFormVisible: false,
  283 + ChangeRecordVisible: false
267 }; 284 };
268 }, 285 },
269 created() { 286 created() {
@@ -342,6 +359,13 @@ export default { @@ -342,6 +359,13 @@ export default {
342 this.$refs.InspectionForm.init(row); 359 this.$refs.InspectionForm.init(row);
343 }); 360 });
344 }, 361 },
  362 + // 整改清单
  363 + toChangeRecord(row) {
  364 + this.ChangeRecordVisible = true;
  365 + this.$nextTick(() => {
  366 + this.$refs.ChangeRecord.init(row);
  367 + });
  368 + },
345 refresh(isrRefresh) { 369 refresh(isrRefresh) {
346 this.InspectionFormVisible = false; 370 this.InspectionFormVisible = false;
347 if (isrRefresh) this.reset(); 371 if (isrRefresh) this.reset();
@@ -375,8 +399,5 @@ export default { @@ -375,8 +399,5 @@ export default {
375 height: calc(100% - 47px); 399 height: calc(100% - 47px);
376 overflow-y: scroll; 400 overflow-y: scroll;
377 } 401 }
378 - .item-body {  
379 - height: calc(100% - 35px);  
380 - }  
381 } 402 }
382 </style> 403 </style>
src/views/homePage/components/Header.vue
1 <template> 1 <template>
2 <header> 2 <header>
3 <div class="slogin"> 3 <div class="slogin">
4 - 举旗帜聚民心、防风险保安全、强治理惠民生、 增动能促发展、谋合作图共赢 4 + <!-- 举旗帜聚民心、防风险保安全、强治理惠民生、 增动能促发展、谋合作图共赢 -->
5 </div> 5 </div>
6 <div class="title">内部系统</div> 6 <div class="title">内部系统</div>
7 <div class="user"> 7 <div class="user">
src/views/homePage/components/news/NewsDialog.vue
@@ -3,7 +3,9 @@ @@ -3,7 +3,9 @@
3 <div class="news-title"> 3 <div class="news-title">
4 <div class="left">我的消息</div> 4 <div class="left">我的消息</div>
5 <div class="right"> 5 <div class="right">
6 - <el-button type="primary" size="small" @click="toReadAll">标记全部已读</el-button> 6 + <el-button type="primary" size="small" @click="toReadAll"
  7 + >标记全部已读</el-button
  8 + >
7 </div> 9 </div>
8 </div> 10 </div>
9 <div class="infinite-list-wrapper" style="overflow: auto"> 11 <div class="infinite-list-wrapper" style="overflow: auto">
@@ -14,13 +16,15 @@ @@ -14,13 +16,15 @@
14 infinite-scroll-immediate 16 infinite-scroll-immediate
15 > 17 >
16 <li class="list-item" v-for="v in messageList" :key="v.id"> 18 <li class="list-item" v-for="v in messageList" :key="v.id">
17 - <div class="item-title">{{v.title}}</div> 19 + <div class="item-title">{{ v.title }}</div>
18 <!-- <p>这个应用应该归属到青羊区,不在金牛区的管辖范围内。</p> --> 20 <!-- <p>这个应用应该归属到青羊区,不在金牛区的管辖范围内。</p> -->
19 <div class="item-info"> 21 <div class="item-info">
20 - <div class="left">发送人:{{v.creatorUser}}</div> 22 + <div class="left">发送人:{{ v.creatorUser }}</div>
21 </div> 23 </div>
22 <div class="item-info"> 24 <div class="item-info">
23 - <div class="right">时间:{{ncc.dateFormat(v.lastModifyTime)}}</div> 25 + <div class="right">
  26 + 时间:{{ ncc.dateFormat(v.lastModifyTime) }}
  27 + </div>
24 </div> 28 </div>
25 </li> 29 </li>
26 </ul> 30 </ul>
@@ -31,7 +35,7 @@ @@ -31,7 +35,7 @@
31 </template> 35 </template>
32 36
33 <script> 37 <script>
34 -import {getMessageList} from "@/api/system/message"; 38 +import { getMessageList } from "@/api/system/message";
35 export default { 39 export default {
36 name: "NewsDialog", 40 name: "NewsDialog",
37 data() { 41 data() {
@@ -40,8 +44,8 @@ export default { @@ -40,8 +44,8 @@ export default {
40 loading: false, 44 loading: false,
41 messageList: [], 45 messageList: [],
42 searchList: { 46 searchList: {
43 - pageIndex: 1,  
44 - pageSize: 10 47 + pageIndex: 1,
  48 + pageSize: 10,
45 }, 49 },
46 total: 0, 50 total: 0,
47 }; 51 };
@@ -54,26 +58,32 @@ export default { @@ -54,26 +58,32 @@ export default {
54 return this.loading || this.noMore; 58 return this.loading || this.noMore;
55 }, 59 },
56 }, 60 },
57 - created() {  
58 - this.load();  
59 - }, 61 + created() {},
60 mounted() {}, 62 mounted() {},
61 methods: { 63 methods: {
  64 + init() {
  65 + this.messageList = [];
  66 + this.searchList = {
  67 + pageIndex: 1,
  68 + pageSize: 10,
  69 + };
  70 + this.load();
  71 + },
62 load() { 72 load() {
63 this.loading = true; 73 this.loading = true;
64 - getMessageList(this.searchList).then(({data}) => { 74 + getMessageList(this.searchList).then(({ data }) => {
65 this.messageList = this.messageList.concat(data.list); 75 this.messageList = this.messageList.concat(data.list);
66 this.total = data.pagination.total; 76 this.total = data.pagination.total;
67 this.loading = false; 77 this.loading = false;
68 - this.searchList.pageIndex += 1  
69 - this.$emit('changeMagNum', data.pagination.total); 78 + this.searchList.pageIndex += 1;
  79 + this.$emit("changeMagNum", data.pagination.total);
70 }); 80 });
71 }, 81 },
72 toReadAll() { 82 toReadAll() {
73 MessageAllRead().then(() => { 83 MessageAllRead().then(() => {
74 this.load(); 84 this.load();
75 - })  
76 - } 85 + });
  86 + },
77 }, 87 },
78 }; 88 };
79 </script> 89 </script>
src/views/homePage/components/news/index.vue
1 <template> 1 <template>
2 <div class="News"> 2 <div class="News">
3 - <el-popover  
4 - placement="left"  
5 - width="300"  
6 - trigger="click"  
7 - >  
8 - <NewsDialog ref="MessageDialog" @changeMagNum="changeMagNum"/> 3 + <el-popover placement="left" width="300" trigger="click">
  4 + <NewsDialog ref="MessageDialog" @changeMagNum="changeMagNum" />
9 <div slot="reference" class="news-item"> 5 <div slot="reference" class="news-item">
10 <div class="icon-item"> 6 <div class="icon-item">
11 <div class="red-spot" v-show="isHaveMsg"></div> 7 <div class="red-spot" v-show="isHaveMsg"></div>
@@ -25,11 +21,14 @@ export default { @@ -25,11 +21,14 @@ export default {
25 components: { NewsDialog }, 21 components: { NewsDialog },
26 data() { 22 data() {
27 return { 23 return {
28 - isHaveMsg: false 24 + isHaveMsg: false,
  25 + isTwinkle: false,
  26 + messageCount: 0,
  27 + userList: [],
29 }; 28 };
30 }, 29 },
31 created() { 30 created() {
32 - // this.initWebSocket() 31 + this.initWebSocket();
33 }, 32 },
34 computed: {}, 33 computed: {},
35 mounted() {}, 34 mounted() {},
@@ -47,6 +46,7 @@ export default { @@ -47,6 +46,7 @@ export default {
47 this.isHaveMsg = val ? true : false; 46 this.isHaveMsg = val ? true : false;
48 }, 47 },
49 initWebSocket() { 48 initWebSocket() {
  49 + console.log("1");
50 this.socket = this.$store.getters.socket || null; 50 this.socket = this.$store.getters.socket || null;
51 if ("WebSocket" in window) { 51 if ("WebSocket" in window) {
52 if (!this.socket) { 52 if (!this.socket) {
@@ -65,10 +65,12 @@ export default { @@ -65,10 +65,12 @@ export default {
65 }; 65 };
66 socket.onmessage = (event) => { 66 socket.onmessage = (event) => {
67 let data = JSON.parse(event.data); 67 let data = JSON.parse(event.data);
  68 + console.log(data, "event.data");
68 if (data.method == "initMessage") { 69 if (data.method == "initMessage") {
69 this.messageCount = 70 this.messageCount =
70 data.unreadMessageCount + data.unreadNoticeCount; 71 data.unreadMessageCount + data.unreadNoticeCount;
71 this.isTwinkle = !!data.unreadNums.length; 72 this.isTwinkle = !!data.unreadNums.length;
  73 + this.$refs.MessageDialog.init();
72 } 74 }
73 //用户在线 75 //用户在线
74 if (data.method == "Online") { 76 if (data.method == "Online") {
src/views/overView/Overview.vue
@@ -83,7 +83,7 @@ @@ -83,7 +83,7 @@
83 </div> 83 </div>
84 </el-col> 84 </el-col>
85 <el-col :span="8"> 85 <el-col :span="8">
86 - <div class="item-box tip"> 86 + <!-- <div class="item-box tip">
87 <div class="item-title">工作提示</div> 87 <div class="item-title">工作提示</div>
88 <div class="item-body"> 88 <div class="item-body">
89 <template> 89 <template>
@@ -103,7 +103,7 @@ @@ -103,7 +103,7 @@
103 </el-table> 103 </el-table>
104 </template> 104 </template>
105 </div> 105 </div>
106 - </div> 106 + </div> -->
107 <div class="item-box msg"> 107 <div class="item-box msg">
108 <div class="item-title">通知公告</div> 108 <div class="item-title">通知公告</div>
109 <div class="item-body"> 109 <div class="item-body">
@@ -196,11 +196,11 @@ export default { @@ -196,11 +196,11 @@ export default {
196 // height: calc(50vh - 115px); 196 // height: calc(50vh - 115px);
197 margin-bottom: 0; 197 margin-bottom: 0;
198 } 198 }
199 - &.tip {  
200 - height: calc(50vh - 60px);  
201 - } 199 + // &.tip {
  200 + // height: calc(50vh - 60px);
  201 + // }
202 &.msg { 202 &.msg {
203 - height: calc(50vh - 175px); 203 + height: calc(100vh - 200px);
204 margin-bottom: 0; 204 margin-bottom: 0;
205 } 205 }
206 .item-title { 206 .item-title {