Blame view

src/views/baseSystemInfo/index.vue 8.68 KB
0af91599   monkeyhouyi   弹框请求优化
1
  <template>
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
    <!-- 应用信息 -->
    <div class="SystemInfo item-box common-info-box">
      <div class="item-title">应用信息</div>
      <div class="item-body">
        <div class="NCC-common-layout">
          <div class="NCC-common-layout-center">
            <el-row class="NCC-common-search-box" :gutter="5">
              <el-form @submit.native.prevent size="mini">
                <el-col :span="5">
                  <el-form-item label="">
                    <el-input v-model="query.keyword" placeholder="请输入应用名称、企业名称进行查询" />
                  </el-form-item>
                </el-col>
                <el-col :span="3">
                  <el-form-item label="">
                    <el-select v-model="query.systemType" placeholder="请选择应用类型" clearable @change="handleSystemTypeChange">
                      <el-option
                        v-for="(item) in systemTypeOptions"
                        :key="item.Id"
                        :label="item.FullName"
                        :value="item.Id"
                      />
                    </el-select>
                  </el-form-item>
                </el-col>
                <el-col :span="3">
                  <el-form-item label="">
  					<el-select
                      v-model="query.proId"
                      placeholder="请选择应用分类"
  					:disabled="!query.systemType"
                      clearable
                    >
                      <el-option
                        v-for="(item) in systemClassOptions"
                        :key="item.Id"
                        :label="item.ClassName"
                        :value="item.Id"
                      />
                    </el-select>
                  </el-form-item>
                </el-col>
  			  <el-col :span="4">
                  <el-form-item label="">
                    <el-input
                      v-model="query.contactUser"
                      placeholder="请输入联系人"
                    />
                  </el-form-item>
                </el-col>
  			  <el-col :span="4">
                  <el-form-item label="">
                    <el-input
                      v-model="query.contactPhone"
                      placeholder="请输入联系电话"
                    />
                  </el-form-item>
                </el-col>
                <el-col :span="2">
                  <el-form-item>
                    <el-button
                      type="primary"
                      icon="el-icon-search"
                      @click="search()"
                      >搜索</el-button
                    >
                  </el-form-item>
                </el-col>
              </el-form>
              <div class="NCC-common-search-box-right">
                <el-button type="success" icon="el-icon-upload2" size="mini">导入</el-button>
                <el-button type="primary" icon="el-icon-download" size="mini">导出</el-button>
              </div>
            </el-row>
            <div class="NCC-common-layout-main NCC-flex-main">
  			<NCC-table v-loading="loading" :data="infoDataList">
c21fb5b0   monkeyhouyi   巡查上报页面
78
79
80
81
82
83
  				<el-table-column show-overflow-tooltip prop="companyName" label="主体企业" align="center" />
  				<el-table-column show-overflow-tooltip prop="systemName" label="应用名称" align="center" />
  				<el-table-column show-overflow-tooltip prop="systemType" label="应用类型" align="center" />
  				<el-table-column show-overflow-tooltip prop="systemClass" label="应用分类" align="center" />
  				<el-table-column show-overflow-tooltip prop="contactUser" label="联系人" align="center" />
  				<el-table-column show-overflow-tooltip prop="contactPhone" label="联系电话" align="center" />
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
                  <el-table-column prop="areaName" label="所属区域" align="center" />
                  <el-table-column label="操作" width="200">
  					<!-- 查看,修改,归属地变更,上报 -->
  					<template slot-scope="scope">
  						<infoForm class="btn_dialog" type="edit" :systemId="scope.row.Id">
  							<el-button size="mini" type="text">修改</el-button>
              			</infoForm>
              			<InfoEditRecord class="btn_dialog" :systemId="scope.row.Id">
  							<el-button size="mini" type="text">查看</el-button>
              			</InfoEditRecord>
              		  <el-button size="mini" type="text" @click="toChangeArea(scope.row)">归属地变更</el-button>
              		  <el-button size="mini" type="text" @click="toDetail(scope.row)">上报</el-button>
              		</template>
              	</el-table-column>
  			</NCC-table>
              <pagination :total="total" :page.sync="listQuery.pageIndex" :limit.sync="listQuery.pageSize" @pagination="initList" />
  		  </div>
          </div>
  		<el-dialog
  		  	title="归属地变更"
  		  	:visible.sync="areaChangeVisible"
  		  	width="50%">
  		  	<el-form
       		  :model="areaForm"
       		  :rules="areaRules"
       		  ref="areaForm"
       		  size="small"
       		  label-width="100px"
5330d757   monkeyhouyi   公司信息管理完成
112
  			    v-loading="areaDialogLoading"
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
113
114
       		>
  			 <el-form-item label="所属区县" prop="areaId">
5330d757   monkeyhouyi   公司信息管理完成
115
116
117
118
119
120
121
122
123
124
125
126
  			  <el-radio-group
  			    v-model="areaForm.areaId"
  			    placeholder="请选择所属区县"
  			    style="line-height: 22px"
  			  >
  			    <el-radio v-for="v in areaOptions" :key="v.id" :label="v.id">{{
  			  	 v.fullName
  			    }}</el-radio>
  			  </el-radio-group>
  		   </el-form-item>
  			 <el-form-item label="申请内容描述" prop="applnycontent">
          <el-input type="textarea" v-model="areaForm.applnycontent" placeholder="请输入申请内容描述" maxlength="300"></el-input>
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
  		   </el-form-item>
  		</el-form>
  
  		  
  		  <span slot="footer" class="dialog-footer">
  		    <el-button @click="areaChangeVisible = false">取 消</el-button>
  		    <el-button type="primary" @click="areaSubmit">确 定</el-button>
  		  </span>
  		</el-dialog>
        </div>
      </div>
    </div>
  </template>
  
  <script>
  import { getInfoList } from "@/api/baseData/info";
5330d757   monkeyhouyi   公司信息管理完成
143
  import { applnyChageArea } from "@/api/baseData/info";
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
144
145
146
147
148
149
150
  import infoMixin from "@/mixins/info";
  export default {
    name: "SystemInfo",
    mixins: [infoMixin],
    data() {
      return {
        loading: false,
5330d757   monkeyhouyi   公司信息管理完成
151
152
  	    query: {
  	    	keyword: '',
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
153
154
155
156
          systemType: "",
          systemClass: "",
          contactUser: "",
          contactPhone: "",
5330d757   monkeyhouyi   公司信息管理完成
157
  	    },
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
158
159
160
161
162
163
164
165
166
167
168
169
        listQuery: {
          pageIndex: 1,
          pageSize: 10,
          sort: "desc",
          sidx: "",
        },
        total: 0,
        infoDataList: [],
  
  	//   归属地变更
  	areaChangeVisible: false,
  	areaDialogLoading: false,
5330d757   monkeyhouyi   公司信息管理完成
170
    activeAreaId: '',
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
171
  	areaForm: {
5330d757   monkeyhouyi   公司信息管理完成
172
173
  		areaId: '',
      applnycontent: ''
0af91599   monkeyhouyi   弹框请求优化
174
  	},
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
175
176
177
178
179
180
  	areaRules: {
  		areaId: {
            required: true,
            message: "请输入所属区县",
            trigger: "change",
          },
0af91599   monkeyhouyi   弹框请求优化
181
  	},
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
182
183
184
185
186
187
188
189
190
191
  	activeSystemId: '',
      };
    },
    created() {
  	this.initList();
  	this.initSystemTypeList();
    },
    mounted() {
    },
    watch: {
5330d757   monkeyhouyi   公司信息管理完成
192
193
194
195
196
197
198
      $route: {
        handler: function (route) {
          this.query.keyword = route.query.keyword || '';
          this.initList();
        },
        immediate: true,
      },
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
199
200
201
202
203
    },
    methods: {
  	handleSystemTypeChange(val) {
  		this.query.systemClass = '';
  		this.initSystemClassList(val)
0af91599   monkeyhouyi   弹框请求优化
204
  	},
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
  	search() {
  		this.listQuery = {
  			pageIndex: 1,
          	pageSize: 10,
          	sort: "desc",
          	sidx: "",
  		}
  		this.initList();
  	},
      initList() {
  	  this.loading = true
  	  let query = {
          ...this.listQuery,
          ...this.query,
        };
        getInfoList(query).then(({ data }) => {
          let list = [];
          data.list.length && data.list.forEach((v) => {
            let obj = {
              companyName: v.compayInfo.CompanyName,
              systemName: v.SysytemInfo.SystemName,
              systemType: v.SysytemInfo.SystemType,
              systemClass: v.SysytemInfo.SystemClass,
              areaName: v.SysytemInfo.AreaName,
              areaId: v.SysytemInfo.AreaId,
              principalName: v.SysytemInfo.PrincipalName,
              principalPhone: v.SysytemInfo.PrincipalPhone,
              Id: v.SysytemInfo.Id,
            };
            list.push(obj);
          });
          this.infoDataList = list;
          this.total = data.totalCount;
          this.loading = false;
        });
      },
  	// 上报
  	toDetail(row) {
0af91599   monkeyhouyi   弹框请求优化
243
  	},
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
244
245
246
  	async toChangeArea(row) {
  		this.areaChangeVisible = true;
  		this.areaDialogLoading = true;
5330d757   monkeyhouyi   公司信息管理完成
247
      this.activeAreaId = row.areaId;
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
248
249
250
251
252
253
  		this.areaForm.areaId = row.areaId;
  		this.activeSystemId = row.Id;
  		await this.initAreaTypeList();
  		this.areaDialogLoading = false;
  	},
  	areaSubmit() {
5330d757   monkeyhouyi   公司信息管理完成
254
255
      if(this.activeAreaId == this.areaForm.areaId) return;
  		applnyChageArea({
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
256
  			id: this.activeSystemId,
5330d757   monkeyhouyi   公司信息管理完成
257
258
  			ToChangeIntoId: this.areaForm.areaId,
  			applnycontent: this.areaForm.applnycontent,
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
259
260
261
262
  		}).then((res) => {
  			this.areaChangeVisible = false;
  			this.initList();
  		});
0af91599   monkeyhouyi   弹框请求优化
263
  	}
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
264
265
266
267
268
269
270
271
272
273
274
    },
  };
  </script>
  <style scoped lang="scss">
  .common-info-box {
    :deep(.el-table__body-wrapper.is-scrolling-none) {
      height: calc(100% - 47px);
      overflow-y: scroll;
    }
    .item-body {
  	height: calc(100% - 35px);
0af91599   monkeyhouyi   弹框请求优化
275
    }
7af40104   monkeyhouyi   应用信息页面完成(上报没写)
276
277
  }
  </style>