Commit c8753517239080adc20dbc37b6080b7cece3d9f0

Authored by monkeyhouyi
1 parent 93186f57

前端页面整改

src/assets/style/common.scss
... ... @@ -64,3 +64,18 @@ a {
64 64  
65 65 }
66 66  
  67 +.form-item {
  68 + display: flex;
  69 + justify-content: flex-start;
  70 + align-items: center;
  71 + flex-direction: row;
  72 + color: #C0C4CC;
  73 + line-height: 30px;
  74 + .label {
  75 + color: #000;
  76 + &.w-100 {
  77 + width: 100px;
  78 + }
  79 + }
  80 +}
  81 +
... ...
src/components/CompanyForm/index.vue
... ... @@ -58,13 +58,6 @@
58 58 </el-form-item>
59 59 </el-col>
60 60 <el-col :span="24">
61   - <el-form-item label="资质证明" prop="qualificationCertificate">
62   - <NCC-UploadFz v-model="dataForm.qualificationCertificate" :fileSize="5" sizeUnit="MB" :limit="9"
63   - buttonText="点击上传">
64   - </NCC-UploadFz>
65   - </el-form-item>
66   - </el-col>
67   - <el-col :span="24">
68 61 <el-form-item label="其他信息" prop="otherInfo">
69 62 <NCC-Quill v-model="dataForm.otherInfo" placeholder="请输入内容...">
70 63 </NCC-Quill>
... ...
src/components/InfoEditRecord/index.vue
... ... @@ -27,97 +27,27 @@
27 27 v-loading="infoForm_loading"
28 28 >
29 29 <el-row :gutter="20">
30   - <el-col :span="24">
31   - <el-col :span="12">
32   - <el-form-item label="主体企业" prop="companyId">
33   - <el-select
34   - v-model="infoForm.companyId"
35   - placeholder="请选择主体企业"
36   - clearable
37   - v-loadMore="nextCompanyList"
38   - style="width: 100%"
39   - @change="companyChange"
40   - >
41   - <el-option
42   - v-for="item in companyOptions"
43   - :key="item.id"
44   - :label="item.companyName"
45   - :value="item.id"
46   - >
47   - </el-option>
48   - </el-select>
49   - </el-form-item>
50   - </el-col>
51   - </el-col>
52   - <el-col :span="24" v-if="isShowCompanyInfo">
53   - <div class="company-info">
54   - <div class="company-info-items">
55   - <div :span="12">
56   - 企业归属:{{ companyInfo.areaName || "--" }}
57   - </div>
58   - <div :span="12">
59   - 联系人:{{ companyInfo.contactUser || "--" }}
60   - </div>
61   - <div :span="12">
62   - 公司地址:{{ companyInfo.address || "--" }}
63   - </div>
64   - </div>
65   - <div class="company-info-items">
66   - <div :span="12">
67   - 社会信用代码:{{ companyInfo.socialCreditAgency || "--" }}
68   - </div>
69   - <div :span="12">
70   - 联系电话:{{ companyInfo.contactPhone || "--" }}
71   - </div>
72   - </div>
73   - </div>
74   - </el-col>
75   - <el-col :span="24">
  30 + <el-col :span="12">
76 31 <el-form-item label="系统类型" prop="systemType">
77   - <el-radio-group v-model="infoForm.systemType">
78   - <el-radio
79   - v-for="v in systemTypeOptions"
80   - :key="v.Id"
81   - :label="v.Id"
82   - @change="initSystemClassList"
83   - >{{ v.FullName }}</el-radio
84   - >
85   - </el-radio-group>
  32 + <el-input
  33 + v-model="infoForm.systemTypeName"
  34 + placeholder="--"
  35 + ></el-input>
86 36 </el-form-item>
87 37 </el-col>
88 38 <el-col :span="12">
89 39 <el-form-item label="系统名称" prop="systemName">
90 40 <el-input
91 41 v-model="infoForm.systemName"
92   - placeholder="请输入系统名称"
93   - maxlength="50"
  42 + placeholder="--"
94 43 ></el-input>
95 44 </el-form-item>
96 45 </el-col>
97 46 <el-col :span="12">
98 47 <el-form-item label="系统分类" prop="systemClass">
99   - <el-select
100   - v-model="infoForm.systemClass"
101   - placeholder="请选择系统分类"
102   - :disabled="!infoForm.systemType"
103   - style="width: 100%"
104   - >
105   - <el-option
106   - v-for="item in systemClassOptions"
107   - :key="item.Id"
108   - :label="item.ClassName"
109   - :value="item.Id"
110   - >
111   - </el-option>
112   - </el-select>
113   - </el-form-item>
114   - </el-col>
115   - <el-col :span="12">
116   - <el-form-item label="备案号" prop="systemRecordNumber">
117 48 <el-input
118   - v-model="infoForm.systemRecordNumber"
119   - placeholder="请输入备案号"
120   - maxlength="200"
  49 + v-model="infoForm.systemClassName"
  50 + placeholder="--"
121 51 ></el-input>
122 52 </el-form-item>
123 53 </el-col>
... ... @@ -125,8 +55,7 @@
125 55 <el-form-item label="备案许可证" prop="recordLicense">
126 56 <el-input
127 57 v-model="infoForm.recordLicense"
128   - placeholder="请输入备案许可证"
129   - maxlength="200"
  58 + placeholder="--"
130 59 ></el-input>
131 60 </el-form-item>
132 61 </el-col>
... ... @@ -134,8 +63,7 @@
134 63 <el-form-item label="归属平台" prop="platform">
135 64 <el-input
136 65 v-model="infoForm.platform"
137   - placeholder="请输入归属平台"
138   - maxlength="200"
  66 + placeholder="--"
139 67 ></el-input>
140 68 </el-form-item>
141 69 </el-col>
... ... @@ -143,8 +71,7 @@
143 71 <el-form-item label="域名" prop="domain">
144 72 <el-input
145 73 v-model="infoForm.domain"
146   - placeholder="请输入域名"
147   - maxlength="200"
  74 + placeholder="--"
148 75 ></el-input>
149 76 </el-form-item>
150 77 </el-col>
... ... @@ -152,8 +79,7 @@
152 79 <el-form-item label="下载量" prop="systemDownloadVolume">
153 80 <el-input
154 81 v-model.number="infoForm.systemDownloadVolume"
155   - maxlength="200"
156   - placeholder="请输入下载量"
  82 + placeholder="--"
157 83 ></el-input>
158 84 </el-form-item>
159 85 </el-col>
... ... @@ -161,8 +87,7 @@
161 87 <el-form-item label="版本" prop="version">
162 88 <el-input
163 89 v-model="infoForm.version"
164   - maxlength="200"
165   - placeholder="请输入版本"
  90 + placeholder="--"
166 91 ></el-input>
167 92 </el-form-item>
168 93 </el-col>
... ... @@ -170,8 +95,7 @@
170 95 <el-form-item label="负责人姓名" prop="principalName">
171 96 <el-input
172 97 v-model="infoForm.principalName"
173   - maxlength="50"
174   - placeholder="请输入负责人姓名"
  98 + placeholder="--"
175 99 ></el-input>
176 100 </el-form-item>
177 101 </el-col>
... ... @@ -179,8 +103,7 @@
179 103 <el-form-item label="负责人电话" prop="principalPhone">
180 104 <el-input
181 105 v-model="infoForm.principalPhone"
182   - maxlength="20"
183   - placeholder="请输入负责人电话"
  106 + placeholder="--"
184 107 ></el-input>
185 108 </el-form-item>
186 109 </el-col>
... ... @@ -188,8 +111,7 @@
188 111 <el-form-item label="办公地址" prop="officeAddress">
189 112 <el-input
190 113 v-model="infoForm.officeAddress"
191   - maxlength="200"
192   - placeholder="请输入办公地址"
  114 + placeholder="--"
193 115 ></el-input>
194 116 </el-form-item>
195 117 </el-col>
... ... @@ -212,29 +134,52 @@
212 134 </el-upload>
213 135 </el-form-item>
214 136 </el-col>
215   - <el-col :span="24">
  137 + <el-col :span="12">
216 138 <el-form-item label="所属区县" prop="areaId">
217   - <el-radio-group
218   - v-model="infoForm.areaId"
219   - placeholder="请选择所属区县"
220   - style="line-height: 22px"
221   - >
222   - <el-radio
223   - v-for="v in areaOptions"
224   - :key="v.id"
225   - :label="v.id"
226   - >{{ v.fullName }}</el-radio
227   - >
228   - </el-radio-group>
  139 + <el-input
  140 + v-model="infoForm.areaName"
  141 + placeholder="--"
  142 + ></el-input>
  143 + </el-form-item>
  144 + </el-col>
  145 + <el-col :span="12">
  146 + <el-form-item label="主体企业" prop="companyId">
  147 + <el-input
  148 + v-model="infoForm.companyName"
  149 + placeholder="--"
  150 + ></el-input>
229 151 </el-form-item>
230 152 </el-col>
  153 + <el-col :span="24" v-if="isShowCompanyInfo">
  154 + <div class="company-info">
  155 + <div class="company-info-items">
  156 + <div :span="12">
  157 + 企业归属:{{ companyInfo.areaName || "--" }}
  158 + </div>
  159 + <div :span="12">
  160 + 联系人:{{ companyInfo.contactUser || "--" }}
  161 + </div>
  162 + <div :span="12">
  163 + 公司地址:{{ companyInfo.address || "--" }}
  164 + </div>
  165 + </div>
  166 + <div class="company-info-items">
  167 + <div :span="12">
  168 + 社会信用代码:{{ companyInfo.socialCreditAgency || "--" }}
  169 + </div>
  170 + <div :span="12">
  171 + 联系电话:{{ companyInfo.contactPhone || "--" }}
  172 + </div>
  173 + </div>
  174 + </div>
  175 + </el-col>
231 176 </el-row>
232 177 </el-form>
233 178 </el-col>
234 179 <el-col :span="10">
235 180 <el-col :span="24"> 修改记录: </el-col>
236 181 <el-col :span="24">
237   - <el-timeline v-loading="record_loading">
  182 + <el-timeline v-loading="record_loading" style="max-height: 570px; overflow-y: scroll">
238 183 <template v-if="updataRecordList.length">
239 184 <el-timeline-item
240 185 placement="top"
... ... @@ -245,9 +190,9 @@
245 190 <h4 v-if="v.content">
246 191 更新
247 192 <p v-for="(item, index) in v.updataList" :key="index">
248   - 将“{{ item.PropertyName }}”从“{{ item.OldValue }}”改为“{{
249   - item.NewValue
250   - }}”
  193 + 将“{{ item.PropertyName }}”从“{{
  194 + item.OldValue
  195 + }}”改为“{{ item.NewValue }}”
251 196 </p>
252 197 </h4>
253 198 <h4 v-else>
... ... @@ -310,39 +255,9 @@ export default {
310 255 officeAddress: "",
311 256 systemIcon: "",
312 257 areaId: "",
  258 + systemClassName: '',
313 259 },
314   - infoRules: {
315   - systemName: {
316   - required: true,
317   - message: "请输入系统名称",
318   - trigger: "blur",
319   - },
320   - systemClass: {
321   - required: true,
322   - message: "请输入系统分类",
323   - trigger: "change",
324   - },
325   - systemType: {
326   - required: true,
327   - message: "请输入系统类型",
328   - trigger: "change",
329   - },
330   - companyId: {
331   - required: true,
332   - message: "请输入主体企业",
333   - trigger: "change",
334   - },
335   - areaId: {
336   - required: true,
337   - message: "请输入所属区县",
338   - trigger: "change",
339   - },
340   - pincipalPhone: {
341   - pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
342   - message: "请输入正确的手机号码",
343   - trigger: "blur",
344   - },
345   - },
  260 + infoRules: {},
346 261 value: "",
347 262 companyOptions: [],
348 263 listQuery_company: {
... ... @@ -378,6 +293,7 @@ export default {
378 293 async companyChange(val) {
379 294 // 公司信息
380 295 let { data } = await getCompanyInfoById(val);
  296 + this.infoForm.companyName = data.companyName;
381 297 this.companyInfo = data;
382 298 this.isShowCompanyInfo = true;
383 299 },
... ... @@ -436,10 +352,15 @@ export default {
436 352 },
437 353 async initForm() {
438 354 let { data } = await getSystemDetail(this.systemId);
  355 + data.systemTypeName = this.systemTypeOptions.find(v => v.Id == data.systemType).FullName;
  356 + data.areaName = this.areaOptions.find(v => v.id == data.areaId).fullName;
439 357 this.infoForm = data;
440 358 this.initSystemClassList(data.systemType);
441 359 await this.companyChange(data.companyId);
442   - this.$forceUpdate();
  360 + this.$nextTick(() => {
  361 + this.infoForm.systemClassName = this.systemClassOptions.find(v => v.Id == this.infoForm.systemClass).ClassName;
  362 + this.$forceUpdate();
  363 + })
443 364 },
444 365 },
445 366 };
... ...
src/components/InfoForm/index.vue
... ... @@ -23,7 +23,7 @@
23 23 v-loading="infoForm_loading"
24 24 label-width="100px"
25 25 >
26   - <el-row :gutter="20">
  26 + <el-row :gutter="20" style="margin: unset;">
27 27 <el-col :span="24">
28 28 <el-col :span="12">
29 29 <el-form-item label="主体企业" prop="companyId">
... ... @@ -113,15 +113,6 @@
113 113 </el-form-item>
114 114 </el-col>
115 115 <el-col :span="12">
116   - <el-form-item label="备案号" prop="systemRecordNumber">
117   - <el-input
118   - v-model="infoForm.systemRecordNumber"
119   - placeholder="请输入备案号"
120   - maxlength="200"
121   - ></el-input>
122   - </el-form-item>
123   - </el-col>
124   - <el-col :span="12">
125 116 <el-form-item label="备案许可证" prop="recordLicense">
126 117 <el-input
127 118 v-model="infoForm.recordLicense"
... ...
vue.config.js
... ... @@ -6,6 +6,7 @@ function resolve(dir) {
6 6 const CompressionPlugin = require('compression-webpack-plugin')
7 7  
8 8 module.exports = defineConfig({
  9 +
9 10 // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。
10 11 productionSourceMap: false,
11 12 transpileDependencies: true,
... ... @@ -48,6 +49,33 @@ module.exports = defineConfig({
48 49 })
49 50 ],
50 51 },
  52 + chainWebpack(config) {
  53 + config.externals({
  54 + // 'monaco-editor': 'monaco-editor',
  55 + 'echarts': 'echarts'
  56 + })
  57 +
  58 + // when there are many pages, it will cause too many meaningless requests
  59 + config.plugins.delete('prefetch')
  60 +
  61 + // set svg-sprite-loader
  62 + config.module
  63 + .rule('svg')
  64 + .exclude.add(resolve('src/icons'))
  65 + .end()
  66 + config.module
  67 + .rule('icons')
  68 + .test(/\.svg$/)
  69 + .include.add(resolve('src/icons'))
  70 + .end()
  71 + .use('svg-sprite-loader')
  72 + .loader('svg-sprite-loader')
  73 + .options({
  74 + symbolId: 'icon-[name]'
  75 + })
  76 + .end()
  77 +
  78 + },
51 79 // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist)
52 80 outputDir: 'dist',
53 81 // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下)
... ...