Blame view

src/views/baseInspectionReport/Form.vue 18.7 KB
c21fb5b0   monkeyhouyi   巡查上报页面
1
  <template>
006cc67a   monkeyhouyi   巡查上报
2
    <el-dialog
8994407e   monkeyhouyi   优化
3
      :title="!dataForm.id ? '新增' : isDetail ? '详情' : '编辑'"
006cc67a   monkeyhouyi   巡查上报
4
5
      :close-on-click-modal="false"
      :visible.sync="visible"
541d55ac   monkeyhouyi   优化
6
      class="NCC-dialog NCC-dialog_center dialog-box baseInspectionReportForm"
006cc67a   monkeyhouyi   巡查上报
7
      lock-scroll
ff36c85d   monkeyhouyi   1
8
      width="50%"
73755355   monkeyhouyi   优化
9
      :modal="false"
006cc67a   monkeyhouyi   巡查上报
10
    >
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
11
12
13
      <el-row v-loading="form_loading">
        <el-row :gutter="15" class="NCC-dialog-content" v-if="!isDetail">
          <el-form
006cc67a   monkeyhouyi   巡查上报
14
15
16
17
18
19
20
21
          ref="elForm"
          :model="dataForm"
          size="small"
          label-width="100px"
          label-position="right"
          :disabled="!!isDetail"
          :rules="rules"
        >
b1b3be19   monkeyhouyi   对18号提出需求进行整改
22
          <el-col :span="24" v-if="false">
006cc67a   monkeyhouyi   巡查上报
23
            <el-form-item label="主键" prop="id">
ff36c85d   monkeyhouyi   1
24
              <el-input v-model="dataForm.id" placeholder="请输入" clearable :style="{ width: '100%' }"></el-input>
006cc67a   monkeyhouyi   巡查上报
25
26
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
27
          <el-col :span="24">
94f06e38   monkeyhouyi   优化
28
29
            <el-form-item label="问题来源" prop="reportSource">
              <el-radio-group v-model="dataForm.reportSource">
ff36c85d   monkeyhouyi   1
30
                <el-radio v-for="(item, index) in sourceOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio>
61009cfc   monkeyhouyi   2024/8/8
31
              </el-radio-group>
93186f57   monkeyhouyi   前端整改页面
32
33
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
34
          <el-col :span="24">
94f06e38   monkeyhouyi   优化
35
36
            <el-form-item label="运营主体" prop="company">
              <el-select
df22ed7d   monkeyhouyi   运营主体可手动输入
37
                ref="companySelect"
94f06e38   monkeyhouyi   优化
38
39
40
41
42
                v-model="dataForm.company"
                placeholder="请选择运营主体"
                clearable
                filterable 
                style="width: 100%"
df22ed7d   monkeyhouyi   运营主体可手动输入
43
44
                @blur.native.capture="selectCompanyBlur"
                @visible-change="visibleNameCompanyChange"
6cd34f81   monkeyhouyi   对接接口优化
45
46
                @change="(val) => companyChange(val, 'change')"
                :disabled='!!this.dataForm.id'
94f06e38   monkeyhouyi   优化
47
48
49
50
51
52
53
54
55
56
57
              >
                <el-option
                  v-for="item in companyOptions"
                  :key="item.id"
                  :label="item.companyName"
                  :value="item.id"
                >
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
58
          <el-col :span="24">
6cd34f81   monkeyhouyi   对接接口优化
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
            <el-form-item label="应用名称" prop="platformName">
              <el-select
                ref="select"
                v-model="dataForm.platformName"
                filterable
                remote
                reserve-keyword
                placeholder="请输入应用名称"
                @blur.native.capture="selectBlur"
                @visible-change="visibleNameChange"
                @change="(val) => platformNameChange(val, 'change')"
                :loading="name_loading"
                :disabled="!!this.dataForm.id || !dataForm.company">
                <el-option v-for="item in nameOptions" :key="item.id" :label="item.systemName" :value="item.id"></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="24">
73755355   monkeyhouyi   优化
77
            <el-form-item label="应用类型" prop="platformType">
6cd34f81   monkeyhouyi   对接接口优化
78
              <el-radio-group v-model="dataForm.platformType" :disabled='!!this.dataForm.id'>
ff36c85d   monkeyhouyi   1
79
                <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio>
93186f57   monkeyhouyi   前端整改页面
80
              </el-radio-group>
006cc67a   monkeyhouyi   巡查上报
81
82
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
83
          <el-col :span="24" v-show="dataForm.platformType == '580634746028033285'">
ff36c85d   monkeyhouyi   1
84
            <el-form-item label="归属平台" prop="selfMediaPlatformType">
a2d1a53f   monkeyhouyi   提交
85
86
87
88
89
              <el-radio-group v-model="dataForm.selfMediaPlatformType" :disabled="!!this.dataForm.id">
                <el-radio v-for="(item, index) in mediaPlatList" :key="index" :label="item" >{{ item }}</el-radio>
              </el-radio-group>
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
90
          <el-col :span="24" v-show="dataForm.selfMediaPlatformType == '其他'">
a2d1a53f   monkeyhouyi   提交
91
92
            <el-form-item label="其他归属平台" prop="selfMediaPlatformTypeOther">
              <el-input v-model="dataForm.selfMediaPlatformTypeOther" placeholder="请输入其他归属平台" clearable :style="{ width: '100%' }" />
ff36c85d   monkeyhouyi   1
93
94
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
95
          <el-col :span="24">
006cc67a   monkeyhouyi   巡查上报
96
            <el-form-item label="问题类型" prop="questionType">
ff36c85d   monkeyhouyi   1
97
98
              <el-radio-group v-model="dataForm.questionType">
                <el-radio v-for="(item, index) in questionTypeOptions" :key="index" :label="item.fullName" >{{ item.fullName }}</el-radio>
006cc67a   monkeyhouyi   巡查上报
99
100
101
              </el-radio-group>
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
102
          <el-col :span="24" v-show="dataForm.questionType == '其他'">
ff36c85d   monkeyhouyi   1
103
104
105
106
            <el-form-item label="其他问题类型" prop="otherQuestionType">
              <el-input v-model="dataForm.otherQuestionType" placeholder="请输入其他问题类型" clearable :style="{ width: '100%' }" />
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
107
          <el-col :span="24" v-show="dataForm.questionType == '错误表述'">
ff36c85d   monkeyhouyi   1
108
109
110
111
            <el-form-item label="正确描述" prop="accurateDescription">
              <el-input v-model="dataForm.accurateDescription" placeholder="请输入正确描述" clearable :style="{ width: '100%' }"></el-input>
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
112
          <el-col :span="24" v-show="dataForm.questionType == '错误表述'">
ff36c85d   monkeyhouyi   1
113
114
115
116
            <el-form-item label="错误描述" prop="incorrectDescription">
              <el-input v-model="dataForm.incorrectDescription" placeholder="请输入错误描述" clearable :style="{ width: '100%' }"></el-input>
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
117
          <el-col :span="24">
006cc67a   monkeyhouyi   巡查上报
118
            <el-form-item label="问题内容" prop="questionContent">
ff36c85d   monkeyhouyi   1
119
              <el-input v-model="dataForm.questionContent" placeholder="请输入" show-word-limit :style="{ width: '100%' }" type="textarea" :autosize="{ minRows: 4, maxRows: 4 }" />
006cc67a   monkeyhouyi   巡查上报
120
121
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
122
          <el-col :span="24">
ff36c85d   monkeyhouyi   1
123
124
            <el-form-item label="链接" prop="link">
              <el-input v-model="dataForm.link" placeholder="请输入链接" clearable :style="{ width: '100%' }"></el-input>
006cc67a   monkeyhouyi   巡查上报
125
            </el-form-item>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
126
127
          </el-col>
          <el-col :span="24">
61009cfc   monkeyhouyi   2024/8/8
128
            <el-form-item label="关键词" prop="questionClass">
ff36c85d   monkeyhouyi   1
129
              <el-input v-model="dataForm.questionClass" placeholder="请输入关键词" clearable :style="{ width: '100%' }"></el-input>
61009cfc   monkeyhouyi   2024/8/8
130
131
            </el-form-item>
          </el-col>
b1b3be19   monkeyhouyi   对18号提出需求进行整改
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
          <el-col :span="24" v-if="isSHILevel">
            <el-form-item label="处置建议" prop="judgmentOpinions">
              <el-input
                v-model="dataForm.judgmentOpinions"
                placeholder="请输入处置建议"
                show-word-limit
                :style="{ width: '100%' }"
                type="textarea"
                :autosize="{ minRows: 4, maxRows: 4 }"
                maxlength="200"
              >
              </el-input>
            </el-form-item>
          </el-col>
          <el-col :span="24" v-if="!isSHILevel">
            <el-form-item label="处置结果" prop="disposalSuggestions">
              <el-input
                v-model="dataForm.disposalSuggestions"
                placeholder="请输入处置结果"
                show-word-limit
                :style="{ width: '100%' }"
                type="textarea"
                :autosize="{ minRows: 4, maxRows: 4 }"
                maxlength="200"
              >
              </el-input>
            </el-form-item>
          </el-col>
          <el-col :span="24">
94f06e38   monkeyhouyi   优化
161
162
            <el-form-item label="附件" prop="annex">
              <NCC-UploadFz v-model="dataForm.annex" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" />
006cc67a   monkeyhouyi   巡查上报
163
164
            </el-form-item>
          </el-col>
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
165
166
167
          </el-form>
        </el-row>
        <el-row v-else>
73755355   monkeyhouyi   优化
168
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
169
          <div class="label w-120">问题来源:</div>
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
170
          <div class="text">{{ dataForm.reportSourceName || '--' }}</div>
73755355   monkeyhouyi   优化
171
172
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
173
          <div class="label w-120">应用名称:</div>
a242b994   monkeyhouyi   附件调试
174
          <div class="text">{{ dataForm.platformNameStr || '--' }}</div>
73755355   monkeyhouyi   优化
175
176
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
177
          <div class="label w-120">运营主体:</div>
a242b994   monkeyhouyi   附件调试
178
          <div class="text">{{ dataForm.companyStr || '--' }}</div>
94f06e38   monkeyhouyi   优化
179
180
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
181
          <div class="label w-120">应用类型:</div>
a242b994   monkeyhouyi   附件调试
182
          <div class="text">{{ dataForm.platformTypeStr || '--' }}</div>
73755355   monkeyhouyi   优化
183
        </el-col>
a242b994   monkeyhouyi   附件调试
184
        <el-col class="form-item" v-if="dataForm.platformType == '580634746028033285'">
4755ec66   monkeyhouyi   1
185
          <div class="label w-120">归属平台:</div>
73755355   monkeyhouyi   优化
186
187
188
          <div class="text">{{ dataForm.selfMediaPlatformType || '--' }}</div>
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
189
          <div class="label w-120">问题类型:</div>
73755355   monkeyhouyi   优化
190
191
192
          <div class="text">{{ dataForm.questionType || '--' }}</div>
        </el-col>
        <el-col class="form-item" v-show="dataForm.questionType == '错误表述'">
4755ec66   monkeyhouyi   1
193
          <div class="label w-120">正确描述:</div>
73755355   monkeyhouyi   优化
194
195
196
          <div class="text">{{ dataForm.accurateDescription || '--' }}</div>
        </el-col>
        <el-col class="form-item" v-show="dataForm.questionType == '错误表述'">
4755ec66   monkeyhouyi   1
197
          <div class="label w-120">错误描述:</div>
73755355   monkeyhouyi   优化
198
199
200
          <div class="text">{{ dataForm.incorrectDescription || '--' }}</div>
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
201
          <div class="label w-120">问题内容:</div>
73755355   monkeyhouyi   优化
202
203
204
          <div class="text">{{ dataForm.questionContent || '--' }}</div>
        </el-col>
        <el-col class="form-item">
b1b3be19   monkeyhouyi   对18号提出需求进行整改
205
206
207
208
          <div class="label w-120">链接:</div>
          <div class="text">{{ dataForm.link || '--' }}</div>
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
209
          <div class="label w-120">关键词:</div>
73755355   monkeyhouyi   优化
210
211
212
          <div class="text">{{ dataForm.questionClass || '--' }}</div>
        </el-col>
        <el-col class="form-item">
4755ec66   monkeyhouyi   1
213
          <div class="label w-120">附件:</div>
6143a919   monkeyhouyi   研判附件
214
215
216
          <div class="text" style="width: calc(100% - 120px);">
            <NCC-UploadFz v-model="dataForm.annex" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/>
          </div>
73755355   monkeyhouyi   优化
217
        </el-col>
7180000e   monkeyhouyi   优化
218
        <el-col class="form-item" v-if="dataForm.judgmentOpinions">
b1b3be19   monkeyhouyi   对18号提出需求进行整改
219
          <div class="label w-120">处置建议:</div>
7180000e   monkeyhouyi   优化
220
221
222
          <div class="text">{{ dataForm.judgmentOpinions || '--' }}</div>
        </el-col>
        <el-col class="form-item" v-if="dataForm.disposalSuggestions">
b1b3be19   monkeyhouyi   对18号提出需求进行整改
223
          <div class="label w-120">处置结果:</div>
7180000e   monkeyhouyi   优化
224
225
          <div class="text">{{ dataForm.disposalSuggestions || '--' }}</div>
        </el-col>
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
226
        </el-row>
73755355   monkeyhouyi   优化
227
      </el-row>
006cc67a   monkeyhouyi   巡查上报
228
229
      <span slot="footer" class="dialog-footer">
        <el-button @click="visible = false">取 消</el-button>
94f06e38   monkeyhouyi   优化
230
        <el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail" :loading="btnLoading">确 定</el-button>
006cc67a   monkeyhouyi   巡查上报
231
232
      </span>
    </el-dialog>
c21fb5b0   monkeyhouyi   巡查上报页面
233
234
  </template>
  <script>
006cc67a   monkeyhouyi   巡查上报
235
236
237
  import request from "@/utils/request";
  import { getDictionaryDataSelector } from "@/api/systemData/dictionary";
  import { getDetail, addForm, updataForm } from "@/api/systemData/dataInterface";
a2d1a53f   monkeyhouyi   提交
238
  import { MediaPlatList } from "@/assets/data"
fcbf44a0   monkeyhouyi   1
239
  import { getInfoList } from "@/api/baseData/info";
006cc67a   monkeyhouyi   巡查上报
240
241
242
243
244
245
246
  export default {
    components: {},
    props: [],
    data() {
      return {
        loading: false,
        visible: false,
fcbf44a0   monkeyhouyi   1
247
        name_loading: false,
006cc67a   monkeyhouyi   巡查上报
248
        isDetail: false,
541d55ac   monkeyhouyi   优化
249
        form_loading: true,
006cc67a   monkeyhouyi   巡查上报
250
        dataForm: {
006cc67a   monkeyhouyi   巡查上报
251
          id: undefined,
94f06e38   monkeyhouyi   优化
252
          reportSource: undefined,
a242b994   monkeyhouyi   附件调试
253
254
255
          platformNameStr: undefined,
          platformTypeStr: undefined,
          companyStr: undefined,
ff36c85d   monkeyhouyi   1
256
257
          platformName: '',
          selfMediaPlatformType: '',
006cc67a   monkeyhouyi   巡查上报
258
259
260
261
262
          platformType: undefined,
          questionType: undefined,
          questionClass: undefined,
          questionContent: undefined,
          link: undefined,
fcbf44a0   monkeyhouyi   1
263
264
          accurateDescription: undefined,
          incorrectDescription: undefined,
006cc67a   monkeyhouyi   巡查上报
265
          annex: [],
a2d1a53f   monkeyhouyi   提交
266
267
          otherQuestionType: undefined,
          selfMediaPlatformTypeOther: undefined,
94f06e38   monkeyhouyi   优化
268
          company: undefined,
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
269
          reportSourceName: undefined,
b1b3be19   monkeyhouyi   对18号提出需求进行整改
270
271
          judgmentOpinions: undefined,
          disposalSuggestions: undefined,
006cc67a   monkeyhouyi   巡查上报
272
        },
93186f57   monkeyhouyi   前端整改页面
273
        rules: {
ff36c85d   monkeyhouyi   1
274
          platformName: [
94f06e38   monkeyhouyi   优化
275
276
277
278
            { required: true, message: "请选择应用名称", trigger: "blur" },
          ],
          company: [
            { required: true, message: "请选择运营主体", trigger: "blur" },
ff36c85d   monkeyhouyi   1
279
          ],
93186f57   monkeyhouyi   前端整改页面
280
          platformType: [
94f06e38   monkeyhouyi   优化
281
            { required: true, message: "请选择应用类型", trigger: "blur" },
93186f57   monkeyhouyi   前端整改页面
282
283
          ],
          questionType: [
ff36c85d   monkeyhouyi   1
284
            { required: true, message: "请选择问题类型", trigger: "blur" },
93186f57   monkeyhouyi   前端整改页面
285
          ],
ff36c85d   monkeyhouyi   1
286
287
288
          // otherQuestionType: [
          //   { required: true, message: "请输入其他问题类型", trigger: "blur" },
          // ],
93186f57   monkeyhouyi   前端整改页面
289
        },
ff36c85d   monkeyhouyi   1
290
        sourceOptions: [],
006cc67a   monkeyhouyi   巡查上报
291
292
        platformTypeOptions: [],
        questionTypeOptions: [],
fcbf44a0   monkeyhouyi   1
293
        nameOptions: [],
a2d1a53f   monkeyhouyi   提交
294
        mediaPlatList: MediaPlatList,
94f06e38   monkeyhouyi   优化
295
296
        companyOptions: [],
        btnLoading: false,
006cc67a   monkeyhouyi   巡查上报
297
298
      };
    },
ff36c85d   monkeyhouyi   1
299
300
301
302
303
    computed: {
      isDisabledTypeByName() {
        if(!this.nameOptions.length) return false;
        let index = this.nameOptions.findIndex(v => v.id == this.dataForm.platformName);
        return index != -1;
b1b3be19   monkeyhouyi   对18号提出需求进行整改
304
305
306
307
308
      },
      isSHILevel() {
        // 判断角色是否为‘市级办公室’
        return this.$store.state.user.islader;
      },
ff36c85d   monkeyhouyi   1
309
    },
006cc67a   monkeyhouyi   巡查上报
310
    watch: {},
541d55ac   monkeyhouyi   优化
311
    created() {},
006cc67a   monkeyhouyi   巡查上报
312
313
    mounted() {},
    methods: {
7180000e   monkeyhouyi   优化
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
      async initAllList() {
        let companyRes = await request({
          url: `/Extend/basecomapnyinfo/GetNoPagingList`,
          method: "GET",
        });
        this.companyOptions = companyRes.data;
        let SourceRes = await request({
          url: `/Extend/baseinspectionreport/GetReportSourceList`,
          method: "GET",
        });
        this.sourceOptions = SourceRes.data;
        let list = this.$store.state.meta.system;
        !list && (list = await this.$store.dispatch("getTypeListByCode", "system"));
        this.platformTypeOptions = list;
        await getDictionaryDataSelector("577006814432855301").then((res) => {
          this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}];
        });
6cd34f81   monkeyhouyi   对接接口优化
331
332
        // this.name_loading = true
        // this.name_loading = false;
7180000e   monkeyhouyi   优化
333
      },
94f06e38   monkeyhouyi   优化
334
335
336
337
338
339
340
341
      async initCompanyList() {
        request({
          url: `/Extend/basecomapnyinfo/GetNoPagingList`,
          method: "GET",
        }).then(({data}) => {
          this.companyOptions = data;
        })
      },
ff36c85d   monkeyhouyi   1
342
343
344
345
346
347
348
349
      selectBlur(e) {
        let value = e.target.value;
        if(!value) return;
        this.dataForm.platformName = e.target.value;
        this.platformNameChange(value, 'blur');
      },
      platformNameChange(val, type) {
        let obj = this.nameOptions.find(v => type == 'blur' ? val == v.fullName : val == v.id);
ff36c85d   monkeyhouyi   1
350
        this.dataForm.platformName = obj ? obj.id : val;
7180000e   monkeyhouyi   优化
351
352
353
354
355
356
357
358
359
        this.dataForm.platformType = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : '';
        if(obj && this.dataForm.platformType == '580634746028033285') {
          if(this.mediaPlatList.findIndex(j => j == obj.selfMediaPlatformType) == -1) {
            this.dataForm.selfMediaPlatformType = '其他';
            this.dataForm.selfMediaPlatformTypeOther = obj.selfMediaPlatformType;
          } else {
            this.dataForm.selfMediaPlatformType = obj.selfMediaPlatformType;
          }
        }
ff36c85d   monkeyhouyi   1
360
361
362
363
364
365
      },
      visibleNameChange(val) {
        if (val) return
        let input = this.$refs.select.$children[0].$refs.input;
        input.blur();
      },
df22ed7d   monkeyhouyi   运营主体可手动输入
366
367
368
369
370
371
372
  
      // 运营主体改变
      selectCompanyBlur(e) {
        let value = e.target.value;
        if(!value) return;
        this.dataForm.company = e.target.value;
      },
6cd34f81   monkeyhouyi   对接接口优化
373
374
375
376
377
      async companyChange(val, type) {
        let obj = this.companyOptions.find(v => val == v.id);
        obj && await request({
          url: `/Extend/basesysteminfo/GetNoPagingList`,
          method: "GET",
6bbb60ba   monkeyhouyi   1
378
          params: { companyId: val }
6cd34f81   monkeyhouyi   对接接口优化
379
380
381
382
383
384
385
386
        }).then(({data}) => {
          if(!data) return;
          this.nameOptions = data;
        });
        !obj && this.nameOptions == [];
        this.dataForm.platformName = '';
        this.dataForm.platformType = '';
      },
df22ed7d   monkeyhouyi   运营主体可手动输入
387
388
389
390
391
      visibleNameCompanyChange(val) {
        if (val) return
        let input = this.$refs.companySelect.$children[0].$refs.input;
        input.blur();
      },
ff36c85d   monkeyhouyi   1
392
      loadList() {
fcbf44a0   monkeyhouyi   1
393
        this.name_loading = true;
ff36c85d   monkeyhouyi   1
394
395
396
397
398
        request({
          url: `/Extend/basesysteminfo/GetNoPagingList`,
          method: "GET",
        }).then(({data}) => {
          this.nameOptions = data;
fcbf44a0   monkeyhouyi   1
399
          this.name_loading = false;
ff36c85d   monkeyhouyi   1
400
        })
fcbf44a0   monkeyhouyi   1
401
      },
006cc67a   monkeyhouyi   巡查上报
402
403
      async getplatformTypeOptions() {
        let list = this.$store.state.meta.system;
ff36c85d   monkeyhouyi   1
404
        !list && (list = await this.$store.dispatch("getTypeListByCode", "system"));
006cc67a   monkeyhouyi   巡查上报
405
406
        this.platformTypeOptions = list;
      },
61009cfc   monkeyhouyi   2024/8/8
407
      async getSourceOptions() {
541d55ac   monkeyhouyi   优化
408
        let { data } = await request({
61009cfc   monkeyhouyi   2024/8/8
409
410
          url: `/Extend/baseinspectionreport/GetReportSourceList`,
          method: "GET",
541d55ac   monkeyhouyi   优化
411
412
        });
        this.sourceOptions = data;
61009cfc   monkeyhouyi   2024/8/8
413
      },
541d55ac   monkeyhouyi   优化
414
      async getquestionTypeOptions() {
006cc67a   monkeyhouyi   巡查上报
415
        getDictionaryDataSelector("577006814432855301").then((res) => {
ff36c85d   monkeyhouyi   1
416
          this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}];
006cc67a   monkeyhouyi   巡查上报
417
418
419
420
421
        });
      },
      goBack() {
        this.$emit("refresh");
      },
541d55ac   monkeyhouyi   优化
422
      async init(id, isDetail) {
ff36c85d   monkeyhouyi   1
423
        this.dataForm.id = id || '';
006cc67a   monkeyhouyi   巡查上报
424
        this.visible = true;
006cc67a   monkeyhouyi   巡查上报
425
        this.isDetail = isDetail || false;
541d55ac   monkeyhouyi   优化
426
        this.form_loading = true;
7180000e   monkeyhouyi   优化
427
        await this.initAllList();
006cc67a   monkeyhouyi   巡查上报
428
        this.$nextTick(async () => {
73755355   monkeyhouyi   优化
429
          !isDetail && this.$refs["elForm"].resetFields();
006cc67a   monkeyhouyi   巡查上报
430
          if (this.dataForm.id) {
541d55ac   monkeyhouyi   优化
431
            this.form_loading = true;
006cc67a   monkeyhouyi   巡查上报
432
            let res = await getDetail(this.dataForm.id);
541d55ac   monkeyhouyi   优化
433
            if(res.code != 200) return this.form_loading = false;
73755355   monkeyhouyi   优化
434
            if(!res.data) return;
006cc67a   monkeyhouyi   巡查上报
435
            this.dataForm = res.data;
d8ed082d   monkeyhouyi   研判页面添加研判按钮校验和详情弹框
436
            this.sourceOptions.length && this.dataForm.reportSource && (this.dataForm.reportSourceName = this.sourceOptions.find(v => v.Id == this.dataForm.reportSource).FullName);
fcbf44a0   monkeyhouyi   1
437
438
439
440
            if(this.questionTypeOptions.findIndex(v => v.fullName == this.dataForm.questionType) == -1) {
              this.dataForm.otherQuestionType = res.data.questionType;
              this.dataForm.questionType = '其他';
            }
ff36c85d   monkeyhouyi   1
441
            this.dataForm.selfMediaPlatformType = res.data.selfMediaPlatformType || '--';
541d55ac   monkeyhouyi   优化
442
443
444
            this.form_loading = false;
          } else {
            this.form_loading = false;
006cc67a   monkeyhouyi   巡查上报
445
446
447
          }
        });
      },
006cc67a   monkeyhouyi   巡查上报
448
449
450
      dataFormSubmit() {
        this.$refs["elForm"].validate(async (valid) => {
          if (valid) {
ff36c85d   monkeyhouyi   1
451
452
453
            let obj = {
              ...this.dataForm,
              questionType: this.dataForm.questionType == '其他' ? this.dataForm.otherQuestionType : this.dataForm.questionType,
541d55ac   monkeyhouyi   优化
454
              selfMediaPlatformType: this.dataForm.selfMediaPlatformType == '其他' ? this.dataForm.selfMediaPlatformTypeOther : this.dataForm.selfMediaPlatformType,
ff36c85d   monkeyhouyi   1
455
            }
94f06e38   monkeyhouyi   优化
456
            this.btnLoading = true;
b1b3be19   monkeyhouyi   对18号提出需求进行整改
457
458
459
460
461
462
463
464
465
466
467
468
469
            try {
              let res = !this.dataForm.id ? await addForm(obj) : await updataForm(obj);
              this.$message({
                message: res.msg,
                type: "success",
                duration: 1000,
                onClose: () => {
                  (this.visible = false), this.$emit("refresh", true);
                },
              });
            } catch (error) {
              this.btnLoading = false;
            }
006cc67a   monkeyhouyi   巡查上报
470
471
472
473
474
          }
        });
      },
    },
  };
c21fb5b0   monkeyhouyi   巡查上报页面
475
  </script>
ff36c85d   monkeyhouyi   1
476
477
478
479
480
481
482
  <style lang="scss" scoped>
  .baseInspectionReportForm {
    :deep(.el-radio) {
      margin: 0 30px 8px 0;
    }
  }
  </style>