Commit 6cd34f81fa64dfa165610f0bf130546c72b24a8d
1 parent
dc42979c
对接接口优化
Showing
11 changed files
with
604 additions
and
308 deletions
src/api/systemData/dataInterface.js
| @@ -40,7 +40,7 @@ export function updataForm(data) { | @@ -40,7 +40,7 @@ export function updataForm(data) { | ||
| 40 | }) | 40 | }) |
| 41 | } | 41 | } |
| 42 | // 判研 | 42 | // 判研 |
| 43 | -export function disposalSuggestions(data) { | 43 | +export function disposalSuggestionsAPI(data) { |
| 44 | return request({ | 44 | return request({ |
| 45 | url: `/Extend/BaseInspectionReport/${data.id}/disposalSuggestions`, | 45 | url: `/Extend/BaseInspectionReport/${data.id}/disposalSuggestions`, |
| 46 | method: 'PUT', | 46 | method: 'PUT', |
src/assets/style/common.scss
src/views/DisposalSuggestions/Form.vue
| @@ -91,10 +91,10 @@ | @@ -91,10 +91,10 @@ | ||
| 91 | {{ dataForm.disposalSuggestions || "--" }} | 91 | {{ dataForm.disposalSuggestions || "--" }} |
| 92 | </div> | 92 | </div> |
| 93 | </el-col> | 93 | </el-col> |
| 94 | - <el-col :span="24" v-if="dataForm.disposalFiles && dataForm.disposalFiles.length"> | 94 | + <el-col :span="24" v-if="dataForm.disposalResult && dataForm.disposalResult.length"> |
| 95 | <div class="form-item"> | 95 | <div class="form-item"> |
| 96 | <div class="label w-100">附件:</div> | 96 | <div class="label w-100">附件:</div> |
| 97 | - <NCC-UploadFz v-model="dataForm.disposalFiles" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | 97 | + <NCC-UploadFz v-model="dataForm.disposalResult" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> |
| 98 | </div> | 98 | </div> |
| 99 | </el-col> | 99 | </el-col> |
| 100 | </el-row> | 100 | </el-row> |
| @@ -121,14 +121,14 @@ | @@ -121,14 +121,14 @@ | ||
| 121 | </el-radio-group> | 121 | </el-radio-group> |
| 122 | </el-form-item> | 122 | </el-form-item> |
| 123 | </el-col> | 123 | </el-col> |
| 124 | - <el-col :span="24" v-show="(!dataForm.areaId || dataForm.areaId == '580548871316383493') && showarea"> | 124 | + <el-col :span="24" v-if="(!dataForm.areaId || dataForm.areaId == '580548871316383493') && showarea"> |
| 125 | <el-form-item label="所属区县" prop="area"> | 125 | <el-form-item label="所属区县" prop="area"> |
| 126 | <el-radio-group v-removeAriaHidden v-model="suggestionForm.area" placeholder="请选择所属区县" style="line-height: 22px"> | 126 | <el-radio-group v-removeAriaHidden v-model="suggestionForm.area" placeholder="请选择所属区县" style="line-height: 22px"> |
| 127 | <el-radio v-for="v in areaOptions" :key="v.id" :label="v.id">{{ v.fullName }}</el-radio> | 127 | <el-radio v-for="v in areaOptions" :key="v.id" :label="v.id">{{ v.fullName }}</el-radio> |
| 128 | </el-radio-group> | 128 | </el-radio-group> |
| 129 | </el-form-item> | 129 | </el-form-item> |
| 130 | </el-col> | 130 | </el-col> |
| 131 | - <el-col :span="24" v-show="!dataForm.externalAssistanceId && showarea"> | 131 | + <el-col :span="24" v-if="!dataForm.externalAssistanceId && showarea"> |
| 132 | <el-form-item label="所属外协" prop="externalAssistanceId"> | 132 | <el-form-item label="所属外协" prop="externalAssistanceId"> |
| 133 | <el-radio-group v-removeAriaHidden v-model="suggestionForm.externalAssistanceId" placeholder="请选择所属外协" style="line-height: 22px"> | 133 | <el-radio-group v-removeAriaHidden v-model="suggestionForm.externalAssistanceId" placeholder="请选择所属外协" style="line-height: 22px"> |
| 134 | <el-radio v-for="v in communicationOutOptions" :key="v.id" :label="v.id">{{ v.fullName }}</el-radio> | 134 | <el-radio v-for="v in communicationOutOptions" :key="v.id" :label="v.id">{{ v.fullName }}</el-radio> |
| @@ -164,7 +164,7 @@ import request from "@/utils/request"; | @@ -164,7 +164,7 @@ import request from "@/utils/request"; | ||
| 164 | import infoMixin from "@/mixins/info"; | 164 | import infoMixin from "@/mixins/info"; |
| 165 | import { dynamicText } from "@/filters/index"; | 165 | import { dynamicText } from "@/filters/index"; |
| 166 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; | 166 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; |
| 167 | -import { getDetail, disposalSuggestions } from "@/api/systemData/dataInterface"; | 167 | +import { getDetail, disposalSuggestionsAPI } from "@/api/systemData/dataInterface"; |
| 168 | export default { | 168 | export default { |
| 169 | components: {}, | 169 | components: {}, |
| 170 | mixins: [infoMixin], | 170 | mixins: [infoMixin], |
| @@ -305,7 +305,7 @@ export default { | @@ -305,7 +305,7 @@ export default { | ||
| 305 | id: this.dataForm.id, | 305 | id: this.dataForm.id, |
| 306 | }; | 306 | }; |
| 307 | this.btnLoading = true; | 307 | this.btnLoading = true; |
| 308 | - let res = await disposalSuggestions(obj); | 308 | + let res = await disposalSuggestionsAPI(obj); |
| 309 | if(res.code != 200) return this.btnLoading = false; | 309 | if(res.code != 200) return this.btnLoading = false; |
| 310 | this.$message({ | 310 | this.$message({ |
| 311 | message: res.msg, | 311 | message: res.msg, |
src/views/DisposalSuggestions/HandleForm.vue
| @@ -96,8 +96,8 @@ | @@ -96,8 +96,8 @@ | ||
| 96 | </el-form-item> | 96 | </el-form-item> |
| 97 | </el-col> | 97 | </el-col> |
| 98 | <el-col :span="24"> | 98 | <el-col :span="24"> |
| 99 | - <el-form-item label="上传附件" prop="disposalFiles"> | ||
| 100 | - <NCC-UploadFz v-model="suggestionForm.disposalFiles" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | 99 | + <el-form-item label="上传附件" prop="disposalResult"> |
| 100 | + <NCC-UploadFz v-model="suggestionForm.disposalResult" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 101 | </el-form-item> | 101 | </el-form-item> |
| 102 | </el-col> | 102 | </el-col> |
| 103 | </el-form> | 103 | </el-form> |
| @@ -115,7 +115,7 @@ | @@ -115,7 +115,7 @@ | ||
| 115 | import infoMixin from "@/mixins/info"; | 115 | import infoMixin from "@/mixins/info"; |
| 116 | import { dynamicText } from "@/filters/index"; | 116 | import { dynamicText } from "@/filters/index"; |
| 117 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; | 117 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; |
| 118 | - import { getDetail, disposalSuggestions } from "@/api/systemData/dataInterface"; | 118 | + import { getDetail, disposalSuggestionsAPI } from "@/api/systemData/dataInterface"; |
| 119 | export default { | 119 | export default { |
| 120 | components: {}, | 120 | components: {}, |
| 121 | mixins: [infoMixin], | 121 | mixins: [infoMixin], |
| @@ -158,7 +158,7 @@ | @@ -158,7 +158,7 @@ | ||
| 158 | deadline: "", | 158 | deadline: "", |
| 159 | area: '', | 159 | area: '', |
| 160 | disposalSuggestions: '', // 处置建议 | 160 | disposalSuggestions: '', // 处置建议 |
| 161 | - disposalFiles: [], | 161 | + disposalResult: [], |
| 162 | }, | 162 | }, |
| 163 | rules: { | 163 | rules: { |
| 164 | disposalSuggestions: [ | 164 | disposalSuggestions: [ |
| @@ -247,7 +247,7 @@ | @@ -247,7 +247,7 @@ | ||
| 247 | id: this.dataForm.id, | 247 | id: this.dataForm.id, |
| 248 | }; | 248 | }; |
| 249 | this.btnLoading = true; | 249 | this.btnLoading = true; |
| 250 | - let res = await disposalSuggestions(obj); | 250 | + let res = await disposalSuggestionsAPI(obj); |
| 251 | if(res.code != 200) return this.btnLoading = false; | 251 | if(res.code != 200) return this.btnLoading = false; |
| 252 | this.$message({ | 252 | this.$message({ |
| 253 | message: res.msg, | 253 | message: res.msg, |
src/views/DisposalSuggestions/index.vue
| @@ -42,9 +42,7 @@ | @@ -42,9 +42,7 @@ | ||
| 42 | <el-table-column show-overflow-tooltip label="应用类型" prop="platformType" align="left"> | 42 | <el-table-column show-overflow-tooltip label="应用类型" prop="platformType" align="left"> |
| 43 | <template slot-scope="scope">{{ scope.row.platformNameStr || scope.row.platformName }}</template> | 43 | <template slot-scope="scope">{{ scope.row.platformNameStr || scope.row.platformName }}</template> |
| 44 | </el-table-column> | 44 | </el-table-column> |
| 45 | - <el-table-column show-overflow-tooltip label="问题类型" prop="questionType" align="left" > | ||
| 46 | - <template slot-scope="scope">{{ scope.row.questionType }}{{ scope.row.questionCode }}</template> | ||
| 47 | - </el-table-column> | 45 | + <el-table-column show-overflow-tooltip label="问题类型" prop="leadNumber" align="left" ></el-table-column> |
| 48 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> | 46 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> |
| 49 | <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> | 47 | <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> |
| 50 | <el-table-column show-overflow-tooltip prop="creatorTime" label="录入时间" align="left" :formatter="ncc.tableDateFormat"/> | 48 | <el-table-column show-overflow-tooltip prop="creatorTime" label="录入时间" align="left" :formatter="ncc.tableDateFormat"/> |
src/views/baseCaseHandling/Form.vue
| @@ -5,7 +5,7 @@ | @@ -5,7 +5,7 @@ | ||
| 5 | :visible.sync="visible" | 5 | :visible.sync="visible" |
| 6 | class="NCC-dialog NCC-dialog_center" | 6 | class="NCC-dialog NCC-dialog_center" |
| 7 | lock-scroll | 7 | lock-scroll |
| 8 | - width="50%" | 8 | + width="60%" |
| 9 | v-loading="loading" | 9 | v-loading="loading" |
| 10 | :modal="false" | 10 | :modal="false" |
| 11 | > | 11 | > |
| @@ -14,7 +14,7 @@ | @@ -14,7 +14,7 @@ | ||
| 14 | ref="elForm" | 14 | ref="elForm" |
| 15 | :model="dataForm" | 15 | :model="dataForm" |
| 16 | size="small" | 16 | size="small" |
| 17 | - label-width="110px" | 17 | + label-width="180px" |
| 18 | label-position="right" | 18 | label-position="right" |
| 19 | :disabled="!!isDetail" | 19 | :disabled="!!isDetail" |
| 20 | :rules="rules" | 20 | :rules="rules" |
| @@ -25,26 +25,8 @@ | @@ -25,26 +25,8 @@ | ||
| 25 | </el-form-item> | 25 | </el-form-item> |
| 26 | </el-col> | 26 | </el-col> |
| 27 | <el-col :span="24"> | 27 | <el-col :span="24"> |
| 28 | - <el-form-item label="来源登记" prop="sourceRecord"> | ||
| 29 | - <el-input v-model="dataForm.sourceRecord" placeholder="请输入来源登记" clearable/> | ||
| 30 | - </el-form-item> | ||
| 31 | - </el-col> | ||
| 32 | - <el-col :span="24"> | ||
| 33 | - <el-form-item label="案件名称" prop="systemName"> | ||
| 34 | - <el-select | ||
| 35 | - ref="select" | ||
| 36 | - v-model="dataForm.systemName" | ||
| 37 | - filterable | ||
| 38 | - remote | ||
| 39 | - reserve-keyword | ||
| 40 | - placeholder="请输入案件名称" | ||
| 41 | - @blur.native.capture="selectBlur" | ||
| 42 | - @visible-change="visibleNameChange" | ||
| 43 | - @change="(val) => platformNameChange(val, 'change')" | ||
| 44 | - :disabled="formType != 0" | ||
| 45 | - :loading="system_loading"> | ||
| 46 | - <el-option v-for="item in systemOption" :key="item.value" :label="item.systemName" :value="item.id" /> | ||
| 47 | - </el-select> | 28 | + <el-form-item label="来源登记" prop="sourceRegistration"> |
| 29 | + <el-input v-model="dataForm.sourceRegistration" placeholder="请输入来源登记" clearable :disabled="formType != 0"/> | ||
| 48 | </el-form-item> | 30 | </el-form-item> |
| 49 | </el-col> | 31 | </el-col> |
| 50 | <el-col :span="24"> | 32 | <el-col :span="24"> |
| @@ -58,7 +40,8 @@ | @@ -58,7 +40,8 @@ | ||
| 58 | style="width: 100%" | 40 | style="width: 100%" |
| 59 | @blur.native.capture="selectCompanyBlur" | 41 | @blur.native.capture="selectCompanyBlur" |
| 60 | @visible-change="visibleNameCompanyChange" | 42 | @visible-change="visibleNameCompanyChange" |
| 61 | - :disabled="formType != 0 || dataForm.isHaveSystem" | 43 | + :disabled="formType != 0" |
| 44 | + @change="(val) => companyChange(val, 'change')" | ||
| 62 | > | 45 | > |
| 63 | <el-option | 46 | <el-option |
| 64 | v-for="item in companyOptions" | 47 | v-for="item in companyOptions" |
| @@ -71,8 +54,26 @@ | @@ -71,8 +54,26 @@ | ||
| 71 | </el-form-item> | 54 | </el-form-item> |
| 72 | </el-col> | 55 | </el-col> |
| 73 | <el-col :span="24"> | 56 | <el-col :span="24"> |
| 57 | + <el-form-item label="案件名称" prop="systemName"> | ||
| 58 | + <el-select | ||
| 59 | + ref="select" | ||
| 60 | + v-model="dataForm.systemName" | ||
| 61 | + filterable | ||
| 62 | + remote | ||
| 63 | + reserve-keyword | ||
| 64 | + placeholder="请输入案件名称" | ||
| 65 | + @blur.native.capture="selectBlur" | ||
| 66 | + @visible-change="visibleNameChange" | ||
| 67 | + @change="(val) => platformNameChange(val, 'change')" | ||
| 68 | + :disabled="formType != 0 || !dataForm.registeredEntity" | ||
| 69 | + :loading="system_loading"> | ||
| 70 | + <el-option v-for="item in systemOption" :key="item.value" :label="item.systemName" :value="item.id" /> | ||
| 71 | + </el-select> | ||
| 72 | + </el-form-item> | ||
| 73 | + </el-col> | ||
| 74 | + <el-col :span="24"> | ||
| 74 | <el-form-item label="应用类别" prop="category"> | 75 | <el-form-item label="应用类别" prop="category"> |
| 75 | - <el-radio-group v-model="dataForm.category" :disabled="formType != 0 || dataForm.isHaveSystem"> | 76 | + <el-radio-group v-model="dataForm.category" :disabled="formType != 0"> |
| 76 | <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio> | 77 | <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio> |
| 77 | </el-radio-group> | 78 | </el-radio-group> |
| 78 | </el-form-item> | 79 | </el-form-item> |
| @@ -124,62 +125,208 @@ | @@ -124,62 +125,208 @@ | ||
| 124 | <el-input type="textarea" v-model="dataForm.enforcecontent" placeholder="请输入执法说明" clearable maxlength="200"/> | 125 | <el-input type="textarea" v-model="dataForm.enforcecontent" placeholder="请输入执法说明" clearable maxlength="200"/> |
| 125 | </el-form-item> | 126 | </el-form-item> |
| 126 | </el-col> | 127 | </el-col> |
| 128 | + <!-- 立案审批、调查(询问)笔录、案件处理意见、执法约谈、行政处罚意见告知、行政处罚决定、行政处罚结案报告、其他(每个流程都为填空+上传附件,非必填) --> | ||
| 129 | + <el-col :span="24"> | ||
| 130 | + <el-form-item label="立案审批" prop="registerApproval"> | ||
| 131 | + <el-input type="textarea" v-model="dataForm.registerApproval" placeholder="请输入立案审批" clearable maxlength="200"/> | ||
| 132 | + </el-form-item> | ||
| 133 | + </el-col> | ||
| 134 | + <el-col :span="24"> | ||
| 135 | + <el-form-item label="立案审批附件" prop="registerApprovalFileModel"> | ||
| 136 | + <NCC-UploadFz v-model="dataForm.registerApprovalFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 137 | + </el-form-item> | ||
| 138 | + </el-col> | ||
| 139 | + <el-col :span="24"> | ||
| 140 | + <el-form-item label="调查(询问)笔录" prop="record"> | ||
| 141 | + <el-input type="textarea" v-model="dataForm.record" placeholder="请输入调查(询问)笔录" clearable maxlength="200"/> | ||
| 142 | + </el-form-item> | ||
| 143 | + </el-col> | ||
| 144 | + <el-col :span="24"> | ||
| 145 | + <el-form-item label="调查(询问)笔录附件" prop="recordFileModel"> | ||
| 146 | + <NCC-UploadFz v-model="dataForm.recordFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 147 | + </el-form-item> | ||
| 148 | + </el-col> | ||
| 149 | + <el-col :span="24"> | ||
| 150 | + <el-form-item label="案件处理意见" prop="caseHandlingOpinions"> | ||
| 151 | + <el-input type="textarea" v-model="dataForm.caseHandlingOpinions" placeholder="请输入案件处理意见示例" clearable maxlength="200"/> | ||
| 152 | + </el-form-item> | ||
| 153 | + </el-col> | ||
| 154 | + <el-col :span="24"> | ||
| 155 | + <el-form-item label="案件处理意见附件" prop="caseHandlingOpinionsFileModel"> | ||
| 156 | + <NCC-UploadFz v-model="dataForm.caseHandlingOpinionsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 157 | + </el-form-item> | ||
| 158 | + </el-col> | ||
| 159 | + <el-col :span="24"> | ||
| 160 | + <el-form-item label="执法约谈" prop="enforcementRecords"> | ||
| 161 | + <el-input type="textarea" v-model="dataForm.enforcementRecords" placeholder="请输入执法约谈" clearable maxlength="200"/> | ||
| 162 | + </el-form-item> | ||
| 163 | + </el-col> | ||
| 164 | + <el-col :span="24"> | ||
| 165 | + <el-form-item label="执法约谈附件" prop="enforcementRecordsFileModel"> | ||
| 166 | + <NCC-UploadFz v-model="dataForm.enforcementRecordsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 167 | + </el-form-item> | ||
| 168 | + </el-col> | ||
| 169 | + <el-col :span="24"> | ||
| 170 | + <el-form-item label="行政处罚意见告知" prop="noticeLetter"> | ||
| 171 | + <el-input type="textarea" v-model="dataForm.noticeLetter" placeholder="请输入行政处罚意见告知" clearable maxlength="200"/> | ||
| 172 | + </el-form-item> | ||
| 173 | + </el-col> | ||
| 174 | + <el-col :span="24"> | ||
| 175 | + <el-form-item label="行政处罚意见告知附件" prop="noticeLetterFileModel"> | ||
| 176 | + <NCC-UploadFz v-model="dataForm.noticeLetterFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 177 | + </el-form-item> | ||
| 178 | + </el-col> | ||
| 179 | + <el-col :span="24"> | ||
| 180 | + <el-form-item label="行政处罚决定" prop="punishmentDecision"> | ||
| 181 | + <el-input type="textarea" v-model="dataForm.punishmentDecision" placeholder="请输入行政处罚决定" clearable maxlength="200"/> | ||
| 182 | + </el-form-item> | ||
| 183 | + </el-col> | ||
| 184 | + <el-col :span="24"> | ||
| 185 | + <el-form-item label="行政处罚决定附件" prop="punishmentDecisionFileModel"> | ||
| 186 | + <NCC-UploadFz v-model="dataForm.punishmentDecisionFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 187 | + </el-form-item> | ||
| 188 | + </el-col> | ||
| 189 | + <el-col :span="24"> | ||
| 190 | + <el-form-item label="行政处罚结案报告" prop="closingReport"> | ||
| 191 | + <el-input type="textarea" v-model="dataForm.closingReport" placeholder="请输入行政处罚结案报告" clearable maxlength="200"/> | ||
| 192 | + </el-form-item> | ||
| 193 | + </el-col> | ||
| 194 | + <el-col :span="24"> | ||
| 195 | + <el-form-item label="行政处罚结案报告附件" prop="closingReportFileModel"> | ||
| 196 | + <NCC-UploadFz v-model="dataForm.closingReportFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 197 | + </el-form-item> | ||
| 198 | + </el-col> | ||
| 199 | + <el-col :span="24"> | ||
| 200 | + <el-form-item label="其他" prop="other"> | ||
| 201 | + <el-input type="textarea" v-model="dataForm.other" placeholder="请输入其他" clearable maxlength="200"/> | ||
| 202 | + </el-form-item> | ||
| 203 | + </el-col> | ||
| 204 | + <el-col :span="24"> | ||
| 205 | + <el-form-item label="其他附件" prop="otherFileModel"> | ||
| 206 | + <NCC-UploadFz v-model="dataForm.otherFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 207 | + </el-form-item> | ||
| 208 | + </el-col> | ||
| 127 | </el-form> | 209 | </el-form> |
| 128 | </el-row> | 210 | </el-row> |
| 129 | <el-row v-show="!!isDetail"> | 211 | <el-row v-show="!!isDetail"> |
| 130 | <el-col class="form-item"> | 212 | <el-col class="form-item"> |
| 131 | - <div class="label w-120">来源登记:</div> | ||
| 132 | - <div class="text">{{ dataForm.sourceRecord || '--' }}</div> | 213 | + <div class="label w-180">来源登记:</div> |
| 214 | + <div class="text">{{ dataForm.sourceRegistration || '--' }}</div> | ||
| 133 | </el-col> | 215 | </el-col> |
| 134 | <el-col class="form-item"> | 216 | <el-col class="form-item"> |
| 135 | - <div class="label w-120">案件名称:</div> | 217 | + <div class="label w-180">案件名称:</div> |
| 136 | <div class="text">{{ dataForm.systemNameStr || '--' }}</div> | 218 | <div class="text">{{ dataForm.systemNameStr || '--' }}</div> |
| 137 | </el-col> | 219 | </el-col> |
| 138 | <el-col class="form-item"> | 220 | <el-col class="form-item"> |
| 139 | - <div class="label w-120">运营主体:</div> | 221 | + <div class="label w-180">运营主体:</div> |
| 140 | <div class="text">{{ dataForm.registeredEntityStr || '--' }}</div> | 222 | <div class="text">{{ dataForm.registeredEntityStr || '--' }}</div> |
| 141 | </el-col> | 223 | </el-col> |
| 142 | <el-col class="form-item"> | 224 | <el-col class="form-item"> |
| 143 | - <div class="label w-120">应用类别:</div> | 225 | + <div class="label w-180">应用类别:</div> |
| 144 | <div class="text">{{ dataForm.categoryName || '--' }}</div> | 226 | <div class="text">{{ dataForm.categoryName || '--' }}</div> |
| 145 | </el-col> | 227 | </el-col> |
| 146 | <el-col class="form-item"> | 228 | <el-col class="form-item"> |
| 147 | - <div class="label w-120">备案号:</div> | 229 | + <div class="label w-180">备案号:</div> |
| 148 | <div class="text">{{ dataForm.recordNumber || '--' }}</div> | 230 | <div class="text">{{ dataForm.recordNumber || '--' }}</div> |
| 149 | </el-col> | 231 | </el-col> |
| 150 | <el-col class="form-item"> | 232 | <el-col class="form-item"> |
| 151 | - <div class="label w-120">所属区县:</div> | 233 | + <div class="label w-180">所属区县:</div> |
| 152 | <div class="text">{{ dataForm.districtCountyName }}</div> | 234 | <div class="text">{{ dataForm.districtCountyName }}</div> |
| 153 | </el-col> | 235 | </el-col> |
| 154 | <el-col class="form-item"> | 236 | <el-col class="form-item"> |
| 155 | - <div class="label w-120">违法原因:</div> | 237 | + <div class="label w-180">违法原因:</div> |
| 156 | <p class="text">{{ dataForm.illegalReasons || '--' }}</p> | 238 | <p class="text">{{ dataForm.illegalReasons || '--' }}</p> |
| 157 | </el-col> | 239 | </el-col> |
| 158 | <el-col class="form-item"> | 240 | <el-col class="form-item"> |
| 159 | - <div class="label w-120">处罚要求:</div> | 241 | + <div class="label w-180">处罚要求:</div> |
| 160 | <p class="text">{{ dataForm.punishmentRequirements || '--' }}</p> | 242 | <p class="text">{{ dataForm.punishmentRequirements || '--' }}</p> |
| 161 | </el-col> | 243 | </el-col> |
| 162 | <el-col class="form-item"> | 244 | <el-col class="form-item"> |
| 163 | - <div class="label w-120">处罚内容:</div> | 245 | + <div class="label w-180">处罚内容:</div> |
| 164 | <p class="text">{{ dataForm.punishmentContent || '--' }}</p> | 246 | <p class="text">{{ dataForm.punishmentContent || '--' }}</p> |
| 165 | </el-col> | 247 | </el-col> |
| 166 | <el-col class="form-item" v-if="dataForm.enforceType"> | 248 | <el-col class="form-item" v-if="dataForm.enforceType"> |
| 167 | - <div class="label w-120">执法方式:</div> | 249 | + <div class="label w-180">执法方式:</div> |
| 168 | <p class="text">{{ dataForm.enforceType || '--' }}</p> | 250 | <p class="text">{{ dataForm.enforceType || '--' }}</p> |
| 169 | </el-col> | 251 | </el-col> |
| 170 | <el-col class="form-item" v-if="dataForm.enforcecontent"> | 252 | <el-col class="form-item" v-if="dataForm.enforcecontent"> |
| 171 | - <div class="label w-120">执法说明:</div> | 253 | + <div class="label w-180">执法说明:</div> |
| 172 | <p class="text">{{ dataForm.enforcecontent || '--' }}</p> | 254 | <p class="text">{{ dataForm.enforcecontent || '--' }}</p> |
| 173 | </el-col> | 255 | </el-col> |
| 256 | + <el-col class="form-item"> | ||
| 257 | + <div class="label w-180">立案审批:</div> | ||
| 258 | + <p class="text">{{ dataForm.registerApproval || '--' }}</p> | ||
| 259 | + </el-col> | ||
| 260 | + <el-col class="form-item"> | ||
| 261 | + <div class="label w-180">立案审批附件:</div> | ||
| 262 | + <NCC-UploadFz v-model="dataForm.registerApprovalFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 263 | + </el-col> | ||
| 264 | + <el-col class="form-item"> | ||
| 265 | + <div class="label w-180">调查(询问)笔录:</div> | ||
| 266 | + <p class="text">{{ dataForm.record || '--' }}</p> | ||
| 267 | + </el-col> | ||
| 268 | + <el-col class="form-item"> | ||
| 269 | + <div class="label w-180">调查(询问)笔录附件:</div> | ||
| 270 | + <NCC-UploadFz v-model="dataForm.recordFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 271 | + </el-col> | ||
| 272 | + <el-col class="form-item"> | ||
| 273 | + <div class="label w-180">案件处理意见:</div> | ||
| 274 | + <p class="text">{{ dataForm.caseHandlingOpinions || '--' }}</p> | ||
| 275 | + </el-col> | ||
| 276 | + <el-col class="form-item"> | ||
| 277 | + <div class="label w-180">案件处理意见附件:</div> | ||
| 278 | + <NCC-UploadFz v-model="dataForm.caseHandlingOpinionsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 279 | + </el-col> | ||
| 280 | + <el-col class="form-item"> | ||
| 281 | + <div class="label w-180">执法约谈:</div> | ||
| 282 | + <p class="text">{{ dataForm.enforcementRecords || '--' }}</p> | ||
| 283 | + </el-col> | ||
| 284 | + <el-col class="form-item"> | ||
| 285 | + <div class="label w-180">执法约谈附件:</div> | ||
| 286 | + <NCC-UploadFz v-model="dataForm.enforcementRecordsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 287 | + </el-col> | ||
| 288 | + <el-col class="form-item"> | ||
| 289 | + <div class="label w-180">行政处罚意见告知:</div> | ||
| 290 | + <p class="text">{{ dataForm.noticeLetter || '--' }}</p> | ||
| 291 | + </el-col> | ||
| 292 | + <el-col class="form-item"> | ||
| 293 | + <div class="label w-180">行政处罚意见告知附件:</div> | ||
| 294 | + <NCC-UploadFz v-model="dataForm.noticeLetterFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 295 | + </el-col> | ||
| 296 | + <el-col class="form-item"> | ||
| 297 | + <div class="label w-180">行政处罚决定:</div> | ||
| 298 | + <p class="text">{{ dataForm.punishmentDecision || '--' }}</p> | ||
| 299 | + </el-col> | ||
| 300 | + <el-col class="form-item"> | ||
| 301 | + <div class="label w-180">行政处罚决定附件:</div> | ||
| 302 | + <NCC-UploadFz v-model="dataForm.punishmentDecisionFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 303 | + </el-col> | ||
| 304 | + <el-col class="form-item"> | ||
| 305 | + <div class="label w-180">行政处罚结案报告:</div> | ||
| 306 | + <p class="text">{{ dataForm.closingReport || '--' }}</p> | ||
| 307 | + </el-col> | ||
| 308 | + <el-col class="form-item"> | ||
| 309 | + <div class="label w-180">行政处罚结案报告附件:</div> | ||
| 310 | + <NCC-UploadFz v-model="dataForm.closingReportFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 311 | + </el-col> | ||
| 312 | + <el-col class="form-item"> | ||
| 313 | + <div class="label w-180">其他:</div> | ||
| 314 | + <p class="text">{{ dataForm.other || '--' }}</p> | ||
| 315 | + </el-col> | ||
| 316 | + <el-col class="form-item"> | ||
| 317 | + <div class="label w-180">其他附件:</div> | ||
| 318 | + <NCC-UploadFz v-model="dataForm.otherFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" disabled/> | ||
| 319 | + </el-col> | ||
| 174 | </el-row> | 320 | </el-row> |
| 175 | <span slot="footer" class="dialog-footer"> | 321 | <span slot="footer" class="dialog-footer"> |
| 176 | <el-button @click="visible = false">取 消</el-button> | 322 | <el-button @click="visible = false">取 消</el-button> |
| 177 | <template v-if="!isDetail"> | 323 | <template v-if="!isDetail"> |
| 178 | - <el-button type="primary" v-if="!isDetail && formType == '0'" @click="submit(1)" :loading="btnLoading">{{isSHILevel ? '下 发' : '上 报'}}</el-button> | ||
| 179 | - <el-button type="info" v-if="!isDetail && formType == '0'" @click="submit(0)" :loading="btnLoading">保 存</el-button> | 324 | + <el-button type="primary" v-if="!isDetail && formType != '2'" @click="submit(1)" :loading="btnLoading">{{isSHILevel ? '下 发' : '上 报'}}</el-button> |
| 325 | + <el-button type="info" v-if="!isDetail && formType != '2'" @click="submit(0)" :loading="btnLoading">保 存</el-button> | ||
| 180 | </template> | 326 | </template> |
| 181 | <template v-if="!isDetail"> | 327 | <template v-if="!isDetail"> |
| 182 | - <el-button type="primary" v-if="!isDetail && formType != '0'" @click="handle" :loading="btnLoading">提 交</el-button> | 328 | + <el-button type="primary" v-if="!isDetail && formType == '2'" @click="handle(1)" :loading="btnLoading">办 结</el-button> |
| 329 | + <el-button type="info" v-if="!isDetail && formType == '2'" @click="handle(0)" :loading="btnLoading">保 存</el-button> | ||
| 183 | </template> | 330 | </template> |
| 184 | </span> | 331 | </span> |
| 185 | </el-dialog> | 332 | </el-dialog> |
| @@ -201,7 +348,7 @@ export default { | @@ -201,7 +348,7 @@ export default { | ||
| 201 | formType: false, // 0 新增 1 编辑 2 处理 | 348 | formType: false, // 0 新增 1 编辑 2 处理 |
| 202 | dataForm: { | 349 | dataForm: { |
| 203 | id: undefined, | 350 | id: undefined, |
| 204 | - sourceRecord: undefined, | 351 | + sourceRegistration: undefined, |
| 205 | registrationTime: undefined, | 352 | registrationTime: undefined, |
| 206 | systemName: undefined, | 353 | systemName: undefined, |
| 207 | registeredEntity: undefined, | 354 | registeredEntity: undefined, |
| @@ -214,18 +361,28 @@ export default { | @@ -214,18 +361,28 @@ export default { | ||
| 214 | punishmentRequirements: undefined, | 361 | punishmentRequirements: undefined, |
| 215 | punishmentContent: undefined, | 362 | punishmentContent: undefined, |
| 216 | state: undefined, | 363 | state: undefined, |
| 217 | - record: undefined, | ||
| 218 | - caseHandlingOpinions: undefined, | ||
| 219 | - enforcementRecords: undefined, | ||
| 220 | - noticeLetter: undefined, | ||
| 221 | - punishmentDecision: undefined, | ||
| 222 | - closingReport: undefined, | ||
| 223 | enforceType: undefined, | 364 | enforceType: undefined, |
| 224 | enforcecontent: undefined, | 365 | enforcecontent: undefined, |
| 225 | isHaveSystem: undefined, | 366 | isHaveSystem: undefined, |
| 367 | + registerApproval: undefined, | ||
| 368 | + registerApprovalFileModel: [], | ||
| 369 | + record: undefined, | ||
| 370 | + recordFileModel: [], | ||
| 371 | + caseHandlingOpinions: undefined, | ||
| 372 | + caseHandlingOpinionsFileModel: [], | ||
| 373 | + enforcementRecords: undefined, | ||
| 374 | + enforcementRecordsFileModel: [], | ||
| 375 | + noticeLetter: undefined, | ||
| 376 | + noticeLetterFileModel: [], | ||
| 377 | + punishmentDecision: undefined, | ||
| 378 | + punishmentDecisionFileModel: [], | ||
| 379 | + closingReport: undefined, | ||
| 380 | + closingReportFileModel: [], | ||
| 381 | + other: undefined, | ||
| 382 | + otherFileModel: [], | ||
| 226 | }, | 383 | }, |
| 227 | rules: { | 384 | rules: { |
| 228 | - sourceRecord: [ | 385 | + sourceRegistration: [ |
| 229 | { required: true, message: "请输入来源登记", trigger: "bulr" } | 386 | { required: true, message: "请输入来源登记", trigger: "bulr" } |
| 230 | ], | 387 | ], |
| 231 | systemName: [ | 388 | systemName: [ |
| @@ -261,7 +418,6 @@ export default { | @@ -261,7 +418,6 @@ export default { | ||
| 261 | watch: {}, | 418 | watch: {}, |
| 262 | created() { | 419 | created() { |
| 263 | this.getplatformTypeOptions(); | 420 | this.getplatformTypeOptions(); |
| 264 | - this.getSystemSelect(); | ||
| 265 | this.initSystemTypeList(); | 421 | this.initSystemTypeList(); |
| 266 | this.initAreaTypeList(); | 422 | this.initAreaTypeList(); |
| 267 | this.initCompanyList(); | 423 | this.initCompanyList(); |
| @@ -283,11 +439,12 @@ export default { | @@ -283,11 +439,12 @@ export default { | ||
| 283 | }) | 439 | }) |
| 284 | }, | 440 | }, |
| 285 | // 获取系统列表 | 441 | // 获取系统列表 |
| 286 | - getSystemSelect() { | 442 | + getSystemSelect(companyId) { |
| 287 | this.system_loading = true; | 443 | this.system_loading = true; |
| 288 | request({ | 444 | request({ |
| 289 | url: "/Extend/basesysteminfo/GetNoPagingList", | 445 | url: "/Extend/basesysteminfo/GetNoPagingList", |
| 290 | method: "get", | 446 | method: "get", |
| 447 | + params: { companyId } | ||
| 291 | }).then(({data}) => { | 448 | }).then(({data}) => { |
| 292 | this.systemOption = data; | 449 | this.systemOption = data; |
| 293 | this.system_loading = false; | 450 | this.system_loading = false; |
| @@ -301,9 +458,9 @@ export default { | @@ -301,9 +458,9 @@ export default { | ||
| 301 | }, | 458 | }, |
| 302 | platformNameChange(val, type) { | 459 | platformNameChange(val, type) { |
| 303 | let obj = this.systemOption.find(v => type == 'blur' ? val == v.fullName : val == v.id); | 460 | let obj = this.systemOption.find(v => type == 'blur' ? val == v.fullName : val == v.id); |
| 461 | + console.log(obj); | ||
| 304 | this.dataForm.isHaveSystem = obj ? true : false; | 462 | this.dataForm.isHaveSystem = obj ? true : false; |
| 305 | this.dataForm.systemName = obj ? obj.id : val; | 463 | this.dataForm.systemName = obj ? obj.id : val; |
| 306 | - this.dataForm.registeredEntity = obj ? obj.companyId : ''; | ||
| 307 | this.dataForm.category = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; | 464 | this.dataForm.category = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; |
| 308 | // this.dataForm.recordNumber = obj ? obj.platform : ''; | 465 | // this.dataForm.recordNumber = obj ? obj.platform : ''; |
| 309 | }, | 466 | }, |
| @@ -321,6 +478,12 @@ export default { | @@ -321,6 +478,12 @@ export default { | ||
| 321 | let input = this.$refs.select.$children[0].$refs.input; | 478 | let input = this.$refs.select.$children[0].$refs.input; |
| 322 | input.blur(); | 479 | input.blur(); |
| 323 | }, | 480 | }, |
| 481 | + companyChange(val, type) { | ||
| 482 | + let obj = this.companyOptions.find(v => val == v.id); | ||
| 483 | + obj ? this.getSystemSelect(val) : (this.systemOption == []); | ||
| 484 | + this.dataForm.systemName = ''; | ||
| 485 | + this.dataForm.category = ''; | ||
| 486 | + }, | ||
| 324 | // 运营主体改变 | 487 | // 运营主体改变 |
| 325 | selectCompanyBlur(e) { | 488 | selectCompanyBlur(e) { |
| 326 | let value = e.target.value; | 489 | let value = e.target.value; |
| @@ -362,10 +525,12 @@ export default { | @@ -362,10 +525,12 @@ export default { | ||
| 362 | // 上报/下派 | 525 | // 上报/下派 |
| 363 | submit(type) { | 526 | submit(type) { |
| 364 | // type: 1 上报 0 保存 | 527 | // type: 1 上报 0 保存 |
| 528 | + // status 状态 0保存/1办结 | ||
| 365 | let obj = { | 529 | let obj = { |
| 366 | ...this.dataForm, | 530 | ...this.dataForm, |
| 367 | isReport: type, | 531 | isReport: type, |
| 368 | } | 532 | } |
| 533 | + | ||
| 369 | this.$refs['elForm'].validate((valid) => { | 534 | this.$refs['elForm'].validate((valid) => { |
| 370 | if(valid) { | 535 | if(valid) { |
| 371 | !this.dataForm.id ? this.toRequest('/Extend/BaseCaseHandling', 'POST', obj) : this.toRequest(`/Extend/BaseCaseHandling/${this.dataForm.id}`, 'PUT', obj); | 536 | !this.dataForm.id ? this.toRequest('/Extend/BaseCaseHandling', 'POST', obj) : this.toRequest(`/Extend/BaseCaseHandling/${this.dataForm.id}`, 'PUT', obj); |
| @@ -373,15 +538,15 @@ export default { | @@ -373,15 +538,15 @@ export default { | ||
| 373 | }) | 538 | }) |
| 374 | }, | 539 | }, |
| 375 | // 处理 | 540 | // 处理 |
| 376 | - handle() { | 541 | + handle(status) { |
| 377 | this.$refs['elForm'].validate((valid) => { | 542 | this.$refs['elForm'].validate((valid) => { |
| 378 | if(valid) { | 543 | if(valid) { |
| 379 | this.btnLoading = true; | 544 | this.btnLoading = true; |
| 380 | - let { enforceType, enforcecontent } = this.dataForm; | 545 | + this.dataForm.status = status; |
| 381 | request({ | 546 | request({ |
| 382 | url: `/Extend/basecasehandling/HandlingCase/${this.dataForm.id}`, | 547 | url: `/Extend/basecasehandling/HandlingCase/${this.dataForm.id}`, |
| 383 | method: "POST", | 548 | method: "POST", |
| 384 | - data: { enforceType, enforcecontent }, | 549 | + data: this.dataForm, |
| 385 | }).then((res) => { | 550 | }).then((res) => { |
| 386 | this.visible = false; | 551 | this.visible = false; |
| 387 | this.$emit("refresh", true); | 552 | this.$emit("refresh", true); |
src/views/baseCaseHandling/index.vue
| @@ -92,6 +92,11 @@ | @@ -92,6 +92,11 @@ | ||
| 92 | <el-tag :type="ncc.getStateTagType(scope.row.state, stateOptions)">{{ scope.row.state | dynamicTextUP(stateOptions) }}</el-tag> | 92 | <el-tag :type="ncc.getStateTagType(scope.row.state, stateOptions)">{{ scope.row.state | dynamicTextUP(stateOptions) }}</el-tag> |
| 93 | </template> | 93 | </template> |
| 94 | </el-table-column> | 94 | </el-table-column> |
| 95 | + <el-table-column label="办理状态" prop="status" align="left" > | ||
| 96 | + <template slot-scope="scope"> | ||
| 97 | + <el-tag v-if='scope.row.status' :type="scope.row.status == '未办结' ? 'danger' : 'success'">{{ scope.row.status }}</el-tag> | ||
| 98 | + </template> | ||
| 99 | + </el-table-column> | ||
| 95 | <el-table-column label="操作" fixed="right" width="180"> | 100 | <el-table-column label="操作" fixed="right" width="180"> |
| 96 | <template slot-scope="scope"> | 101 | <template slot-scope="scope"> |
| 97 | <el-button size="mini" type="text" @click="addOrUpdateHandle(scope.row.id, true) " >详情</el-button> | 102 | <el-button size="mini" type="text" @click="addOrUpdateHandle(scope.row.id, true) " >详情</el-button> |
| @@ -282,12 +287,12 @@ export default { | @@ -282,12 +287,12 @@ export default { | ||
| 282 | } | 287 | } |
| 283 | } | 288 | } |
| 284 | this.exportBtnLoading = true; | 289 | this.exportBtnLoading = true; |
| 290 | + console.log(111); | ||
| 285 | request({ | 291 | request({ |
| 286 | url: `/Extend/BaseCaseHandling/Actions/Export`, | 292 | url: `/Extend/BaseCaseHandling/Actions/Export`, |
| 287 | method: "POST", | 293 | method: "POST", |
| 288 | data: query, | 294 | data: query, |
| 289 | - responseType: 'blob', | ||
| 290 | - }).then((res) => { | 295 | + }).then(res => { |
| 291 | const url = process.env.VUE_APP_BASE_API + res.data.url; | 296 | const url = process.env.VUE_APP_BASE_API + res.data.url; |
| 292 | const link = document.createElement("a"); | 297 | const link = document.createElement("a"); |
| 293 | link.href = url; | 298 | link.href = url; |
src/views/baseInspectionReport/Form.vue
| @@ -32,24 +32,6 @@ | @@ -32,24 +32,6 @@ | ||
| 32 | </el-form-item> | 32 | </el-form-item> |
| 33 | </el-col> | 33 | </el-col> |
| 34 | <el-col :span="24"> | 34 | <el-col :span="24"> |
| 35 | - <el-form-item label="应用名称" prop="platformName"> | ||
| 36 | - <el-select | ||
| 37 | - ref="select" | ||
| 38 | - v-model="dataForm.platformName" | ||
| 39 | - filterable | ||
| 40 | - remote | ||
| 41 | - reserve-keyword | ||
| 42 | - placeholder="请输入应用名称" | ||
| 43 | - @blur.native.capture="selectBlur" | ||
| 44 | - @visible-change="visibleNameChange" | ||
| 45 | - @change="(val) => platformNameChange(val, 'change')" | ||
| 46 | - :loading="name_loading" | ||
| 47 | - :disabled="!!this.dataForm.id"> | ||
| 48 | - <el-option v-for="item in nameOptions" :key="item.id" :label="item.systemName" :value="item.id"></el-option> | ||
| 49 | - </el-select> | ||
| 50 | - </el-form-item> | ||
| 51 | - </el-col> | ||
| 52 | - <el-col :span="24"> | ||
| 53 | <el-form-item label="运营主体" prop="company"> | 35 | <el-form-item label="运营主体" prop="company"> |
| 54 | <el-select | 36 | <el-select |
| 55 | ref="companySelect" | 37 | ref="companySelect" |
| @@ -60,7 +42,8 @@ | @@ -60,7 +42,8 @@ | ||
| 60 | style="width: 100%" | 42 | style="width: 100%" |
| 61 | @blur.native.capture="selectCompanyBlur" | 43 | @blur.native.capture="selectCompanyBlur" |
| 62 | @visible-change="visibleNameCompanyChange" | 44 | @visible-change="visibleNameCompanyChange" |
| 63 | - :disabled='isDisabledTypeByName || !!this.dataForm.id' | 45 | + @change="(val) => companyChange(val, 'change')" |
| 46 | + :disabled='!!this.dataForm.id' | ||
| 64 | > | 47 | > |
| 65 | <el-option | 48 | <el-option |
| 66 | v-for="item in companyOptions" | 49 | v-for="item in companyOptions" |
| @@ -73,8 +56,26 @@ | @@ -73,8 +56,26 @@ | ||
| 73 | </el-form-item> | 56 | </el-form-item> |
| 74 | </el-col> | 57 | </el-col> |
| 75 | <el-col :span="24"> | 58 | <el-col :span="24"> |
| 59 | + <el-form-item label="应用名称" prop="platformName"> | ||
| 60 | + <el-select | ||
| 61 | + ref="select" | ||
| 62 | + v-model="dataForm.platformName" | ||
| 63 | + filterable | ||
| 64 | + remote | ||
| 65 | + reserve-keyword | ||
| 66 | + placeholder="请输入应用名称" | ||
| 67 | + @blur.native.capture="selectBlur" | ||
| 68 | + @visible-change="visibleNameChange" | ||
| 69 | + @change="(val) => platformNameChange(val, 'change')" | ||
| 70 | + :loading="name_loading" | ||
| 71 | + :disabled="!!this.dataForm.id || !dataForm.company"> | ||
| 72 | + <el-option v-for="item in nameOptions" :key="item.id" :label="item.systemName" :value="item.id"></el-option> | ||
| 73 | + </el-select> | ||
| 74 | + </el-form-item> | ||
| 75 | + </el-col> | ||
| 76 | + <el-col :span="24"> | ||
| 76 | <el-form-item label="应用类型" prop="platformType"> | 77 | <el-form-item label="应用类型" prop="platformType"> |
| 77 | - <el-radio-group v-model="dataForm.platformType" :disabled='isDisabledTypeByName || !!this.dataForm.id'> | 78 | + <el-radio-group v-model="dataForm.platformType" :disabled='!!this.dataForm.id'> |
| 78 | <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio> | 79 | <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio> |
| 79 | </el-radio-group> | 80 | </el-radio-group> |
| 80 | </el-form-item> | 81 | </el-form-item> |
| @@ -325,15 +326,8 @@ export default { | @@ -325,15 +326,8 @@ export default { | ||
| 325 | await getDictionaryDataSelector("577006814432855301").then((res) => { | 326 | await getDictionaryDataSelector("577006814432855301").then((res) => { |
| 326 | this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}]; | 327 | this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}]; |
| 327 | }); | 328 | }); |
| 328 | - this.name_loading = true | ||
| 329 | - await request({ | ||
| 330 | - url: `/Extend/basesysteminfo/GetNoPagingList`, | ||
| 331 | - method: "GET", | ||
| 332 | - }).then(({data}) => { | ||
| 333 | - if(!data) return; | ||
| 334 | - this.nameOptions = data; | ||
| 335 | - this.name_loading = false; | ||
| 336 | - }); | 329 | + // this.name_loading = true |
| 330 | + // this.name_loading = false; | ||
| 337 | }, | 331 | }, |
| 338 | async initCompanyList() { | 332 | async initCompanyList() { |
| 339 | request({ | 333 | request({ |
| @@ -352,7 +346,6 @@ export default { | @@ -352,7 +346,6 @@ export default { | ||
| 352 | platformNameChange(val, type) { | 346 | platformNameChange(val, type) { |
| 353 | let obj = this.nameOptions.find(v => type == 'blur' ? val == v.fullName : val == v.id); | 347 | let obj = this.nameOptions.find(v => type == 'blur' ? val == v.fullName : val == v.id); |
| 354 | this.dataForm.platformName = obj ? obj.id : val; | 348 | this.dataForm.platformName = obj ? obj.id : val; |
| 355 | - this.dataForm.company = obj ? this.companyOptions.find(v => v.id == obj.companyId || v.companyName == obj.companyId).id : ''; | ||
| 356 | this.dataForm.platformType = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; | 349 | this.dataForm.platformType = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; |
| 357 | if(obj && this.dataForm.platformType == '580634746028033285') { | 350 | if(obj && this.dataForm.platformType == '580634746028033285') { |
| 358 | if(this.mediaPlatList.findIndex(j => j == obj.selfMediaPlatformType) == -1) { | 351 | if(this.mediaPlatList.findIndex(j => j == obj.selfMediaPlatformType) == -1) { |
| @@ -375,6 +368,20 @@ export default { | @@ -375,6 +368,20 @@ export default { | ||
| 375 | if(!value) return; | 368 | if(!value) return; |
| 376 | this.dataForm.company = e.target.value; | 369 | this.dataForm.company = e.target.value; |
| 377 | }, | 370 | }, |
| 371 | + async companyChange(val, type) { | ||
| 372 | + let obj = this.companyOptions.find(v => val == v.id); | ||
| 373 | + obj && await request({ | ||
| 374 | + url: `/Extend/basesysteminfo/GetNoPagingList`, | ||
| 375 | + method: "GET", | ||
| 376 | + params: { company: val } | ||
| 377 | + }).then(({data}) => { | ||
| 378 | + if(!data) return; | ||
| 379 | + this.nameOptions = data; | ||
| 380 | + }); | ||
| 381 | + !obj && this.nameOptions == []; | ||
| 382 | + this.dataForm.platformName = ''; | ||
| 383 | + this.dataForm.platformType = ''; | ||
| 384 | + }, | ||
| 378 | visibleNameCompanyChange(val) { | 385 | visibleNameCompanyChange(val) { |
| 379 | if (val) return | 386 | if (val) return |
| 380 | let input = this.$refs.companySelect.$children[0].$refs.input; | 387 | let input = this.$refs.companySelect.$children[0].$refs.input; |
src/views/baseInspectionReport/index.vue
| @@ -55,9 +55,7 @@ | @@ -55,9 +55,7 @@ | ||
| 55 | <el-table-column show-overflow-tooltip label="应用类型" prop="platformType" align="left"> | 55 | <el-table-column show-overflow-tooltip label="应用类型" prop="platformType" align="left"> |
| 56 | <template slot-scope="scope">{{ scope.row.platformType | dynamicTextUP(systemTypeOptions) }}</template> | 56 | <template slot-scope="scope">{{ scope.row.platformType | dynamicTextUP(systemTypeOptions) }}</template> |
| 57 | </el-table-column> | 57 | </el-table-column> |
| 58 | - <el-table-column show-overflow-tooltip label="问题类型" prop="questionType" align="left" > | ||
| 59 | - <template slot-scope="scope">{{ scope.row.questionType }}{{ scope.row.questionCode }}</template> | ||
| 60 | - </el-table-column> | 58 | + <el-table-column show-overflow-tooltip label="问题类型" prop="leadNumber" align="left" ></el-table-column> |
| 61 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> | 59 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> |
| 62 | <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> | 60 | <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> |
| 63 | <el-table-column show-overflow-tooltip prop="creatorTime" label="录入时间" align="left" :formatter="ncc.tableDateFormat"/> | 61 | <el-table-column show-overflow-tooltip prop="creatorTime" label="录入时间" align="left" :formatter="ncc.tableDateFormat"/> |
src/views/baseSpecialAction/Form.vue
| @@ -136,6 +136,7 @@ | @@ -136,6 +136,7 @@ | ||
| 136 | </template> | 136 | </template> |
| 137 | <script> | 137 | <script> |
| 138 | import request from "@/utils/request"; | 138 | import request from "@/utils/request"; |
| 139 | +import ncc from "@/utils/ncc.js" | ||
| 139 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; | 140 | import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; |
| 140 | import { previewDataInterface } from "@/api/systemData/dataInterface"; | 141 | import { previewDataInterface } from "@/api/systemData/dataInterface"; |
| 141 | export default { | 142 | export default { |
| @@ -284,6 +285,7 @@ export default { | @@ -284,6 +285,7 @@ export default { | ||
| 284 | method: "GET", | 285 | method: "GET", |
| 285 | }).then((res) => { | 286 | }).then((res) => { |
| 286 | this.dataForm = res.data; | 287 | this.dataForm = res.data; |
| 288 | + this.dataForm.deadline = new Date(ncc.dateFormat(res.data.deadline, 'YYYY-MM-DD HH:mm:ss')); | ||
| 287 | this.dataForm.annex = res.data.annex == null ? [] : res.data.annex; | 289 | this.dataForm.annex = res.data.annex == null ? [] : res.data.annex; |
| 288 | }) | 290 | }) |
| 289 | } | 291 | } |
src/views/baseSystemInfo/InspectForm.vue
| 1 | <template> | 1 | <template> |
| 2 | <el-dialog | 2 | <el-dialog |
| 3 | - title="上报" | 3 | + title="新建" |
| 4 | :close-on-click-modal="false" | 4 | :close-on-click-modal="false" |
| 5 | :visible.sync="visible" | 5 | :visible.sync="visible" |
| 6 | class="NCC-dialog NCC-dialog_center" | 6 | class="NCC-dialog NCC-dialog_center" |
| 7 | lock-scroll | 7 | lock-scroll |
| 8 | width="60%" | 8 | width="60%" |
| 9 | + v-loading="loading" | ||
| 10 | + :modal="false" | ||
| 9 | > | 11 | > |
| 10 | - <el-row :gutter="15" class="NCC-dialog-content" v-loading="form_loading"> | ||
| 11 | - <el-form ref="elForm" :model="dataForm" size="small" label-width="100px" label-position="right" :rules="rules"> | 12 | + <el-row :gutter="15" class="NCC-dialog-content" v-show="!isDetail"> |
| 13 | + <el-form | ||
| 14 | + ref="elForm" | ||
| 15 | + :model="dataForm" | ||
| 16 | + size="small" | ||
| 17 | + label-width="180px" | ||
| 18 | + label-position="right" | ||
| 19 | + :disabled="!!isDetail" | ||
| 20 | + :rules="rules" | ||
| 21 | + > | ||
| 22 | + <el-col :span="24" v-if="false"> | ||
| 23 | + <el-form-item label="主键" prop="id"> | ||
| 24 | + <el-input v-model="dataForm.id" placeholder="请输入" clearable /> | ||
| 25 | + </el-form-item> | ||
| 26 | + </el-col> | ||
| 12 | <el-col :span="24"> | 27 | <el-col :span="24"> |
| 13 | - <el-form-item label="问题来源" prop="reportSource"> | ||
| 14 | - <el-radio-group v-model="dataForm.reportSource"> | ||
| 15 | - <el-radio v-for="(item, index) in sourceOptions" :key="index" :label="item.Id" >{{ item.FullName }}</el-radio> | ||
| 16 | - </el-radio-group> | 28 | + <el-form-item label="来源登记" prop="sourceRegistration"> |
| 29 | + <el-input v-model="dataForm.sourceRegistration" placeholder="请输入来源登记" clearable :disabled="formType != 0"/> | ||
| 17 | </el-form-item> | 30 | </el-form-item> |
| 18 | </el-col> | 31 | </el-col> |
| 19 | - <el-col :span="23"> | ||
| 20 | - <el-form-item label="应用名称" prop="platformName"> | ||
| 21 | - <el-select | ||
| 22 | - ref="select" | ||
| 23 | - v-model="dataForm.platformName" | ||
| 24 | - filterable | ||
| 25 | - remote | ||
| 26 | - reserve-keyword | ||
| 27 | - placeholder="请输入应用名称" | ||
| 28 | - @blur.native.capture="selectBlur" | ||
| 29 | - @visible-change="visibleNameChange" | ||
| 30 | - @change="(val) => platformNameChange(val, 'change')" | ||
| 31 | - :loading="name_loading" | ||
| 32 | - disabled> | ||
| 33 | - <el-option v-for="item in nameOptions" :key="item.id" :label="item.systemName" :value="item.id"></el-option> | ||
| 34 | - </el-select> | 32 | + <el-col :span="24"> |
| 33 | + <el-form-item label="运营主体" prop="registeredEntity"> | ||
| 34 | + <el-input v-model="dataForm.registeredEntityStr" placeholder="" clearable disabled/> | ||
| 35 | </el-form-item> | 35 | </el-form-item> |
| 36 | </el-col> | 36 | </el-col> |
| 37 | - <el-col :span="23"> | ||
| 38 | - <el-form-item label="运营主体" prop="company"> | ||
| 39 | - <el-select | ||
| 40 | - v-model="dataForm.company" | ||
| 41 | - placeholder="请选择运营主体" | ||
| 42 | - clearable | ||
| 43 | - filterable | ||
| 44 | - style="width: 100%" | ||
| 45 | - disabled | ||
| 46 | - > | ||
| 47 | - <el-option v-for="item in companyOptions" :key="item.id" :label="item.companyName" :value="item.id"> | ||
| 48 | - </el-option> | ||
| 49 | - </el-select> | 37 | + <el-col :span="24"> |
| 38 | + <el-form-item label="案件名称" prop="systemName"> | ||
| 39 | + <el-input v-model="dataForm.systemNameStr" placeholder="" clearable disabled/> | ||
| 50 | </el-form-item> | 40 | </el-form-item> |
| 51 | </el-col> | 41 | </el-col> |
| 52 | <el-col :span="24"> | 42 | <el-col :span="24"> |
| 53 | - <el-form-item label="应用类型" prop="platformType"> | ||
| 54 | - <el-radio-group v-model="dataForm.platformType" disabled> | ||
| 55 | - <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id" >{{ item.FullName }}</el-radio> | 43 | + <el-form-item label="应用类别" prop="category"> |
| 44 | + <el-radio-group v-model="dataForm.category" disabled> | ||
| 45 | + <el-radio v-for="(item, index) in platformTypeOptions" :key="index" :label="item.Id">{{ item.FullName }}</el-radio> | ||
| 56 | </el-radio-group> | 46 | </el-radio-group> |
| 57 | </el-form-item> | 47 | </el-form-item> |
| 58 | </el-col> | 48 | </el-col> |
| 59 | - <el-col :span="23" v-show="dataForm.platformType == '580634746028033285'"> | ||
| 60 | - <el-form-item label="归属平台" prop="selfMediaPlatformType"> | ||
| 61 | - <el-radio-group v-model="dataForm.selfMediaPlatformType" :disabled="!!this.dataForm.id"> | ||
| 62 | - <el-radio v-for="(item, index) in mediaPlatList" :key="index" :label="item" >{{ item }}</el-radio> | ||
| 63 | - </el-radio-group> | 49 | + <el-col :span="24"> |
| 50 | + <el-form-item label="备案号" prop="recordNumber"> | ||
| 51 | + <el-input v-model="dataForm.recordNumber" placeholder="请输入备案号" clearable :disabled="formType == 2"/> | ||
| 64 | </el-form-item> | 52 | </el-form-item> |
| 65 | </el-col> | 53 | </el-col> |
| 66 | - <el-col :span="23" v-show="dataForm.selfMediaPlatformType == '其他'"> | ||
| 67 | - <el-form-item label="其他归属平台" prop="selfMediaPlatformTypeOther"> | ||
| 68 | - <el-input v-model="dataForm.selfMediaPlatformTypeOther" placeholder="请输入其他归属平台" clearable :style="{ width: '100%' }" /> | 54 | + <el-col :span="24" v-if="isSHILevel"> |
| 55 | + <el-form-item label="所属区县" prop="districtCounty"> | ||
| 56 | + <el-radio-group | ||
| 57 | + v-model="dataForm.districtCounty" | ||
| 58 | + placeholder="请选择所属区县" | ||
| 59 | + style="line-height: 22px" | ||
| 60 | + :disabled="formType == 2" | ||
| 61 | + > | ||
| 62 | + <el-radio v-for="v in areaOptions" :key="v.id" :label="v.id">{{ | ||
| 63 | + v.fullName | ||
| 64 | + }}</el-radio> | ||
| 65 | + </el-radio-group> | ||
| 66 | + </el-form-item> | ||
| 67 | + </el-col> | ||
| 68 | + <el-col :span="24"> | ||
| 69 | + <el-form-item label="违法原因" prop="illegalReasons"> | ||
| 70 | + <el-input type="textarea" v-model="dataForm.illegalReasons" placeholder="请输入违法原因" clearable maxlength="200" :disabled="formType == 2"/> | ||
| 69 | </el-form-item> | 71 | </el-form-item> |
| 70 | </el-col> | 72 | </el-col> |
| 71 | - <el-col :span="23"> | ||
| 72 | - <el-form-item label="问题类型" prop="questionType"> | ||
| 73 | - <el-radio-group v-model="dataForm.questionType"> | ||
| 74 | - <el-radio v-for="(item, index) in questionTypeOptions" :key="index" :label="item.fullName" >{{ item.fullName }}</el-radio> | 73 | + <el-col :span="24"> |
| 74 | + <el-form-item label="处罚要求" prop="punishmentRequirements"> | ||
| 75 | + <el-input type="textarea" v-model="dataForm.punishmentRequirements" placeholder="请输入处罚要求" clearable maxlength="200" :disabled="formType == 2"/> | ||
| 76 | + </el-form-item> | ||
| 77 | + </el-col> | ||
| 78 | + <el-col :span="24"> | ||
| 79 | + <el-form-item label="处罚内容" prop="punishmentContent"> | ||
| 80 | + <el-input type="textarea" v-model="dataForm.punishmentContent" placeholder="请输入处罚内容" clearable maxlength="200" :disabled="formType == 2"/> | ||
| 81 | + </el-form-item> | ||
| 82 | + </el-col> | ||
| 83 | + <el-col :span="24" v-if="isSHILevel"> | ||
| 84 | + <el-form-item label="执法方式" prop="enforceType"> | ||
| 85 | + <el-radio-group v-model="dataForm.enforceType"> | ||
| 86 | + <el-radio label="柔性执法">柔性执法</el-radio> | ||
| 87 | + <el-radio label="行政执法">行政执法</el-radio> | ||
| 75 | </el-radio-group> | 88 | </el-radio-group> |
| 76 | </el-form-item> | 89 | </el-form-item> |
| 77 | </el-col> | 90 | </el-col> |
| 78 | - <el-col :span="23" v-show="dataForm.questionType == '其他'"> | ||
| 79 | - <el-form-item label="其他问题类型" prop="otherQuestionType"> | ||
| 80 | - <el-input v-model="dataForm.otherQuestionType" placeholder="请输入其他问题类型" clearable :style="{ width: '100%' }" /> | 91 | + <el-col :span="24" v-if="!isSHILevel && formType == 2"> |
| 92 | + <el-form-item label="执法说明" prop="enforcecontent"> | ||
| 93 | + <el-input type="textarea" v-model="dataForm.enforcecontent" placeholder="请输入执法说明" clearable maxlength="200"/> | ||
| 94 | + </el-form-item> | ||
| 95 | + </el-col> | ||
| 96 | + <!-- 立案审批、调查(询问)笔录、案件处理意见、执法约谈、行政处罚意见告知、行政处罚决定、行政处罚结案报告、其他(每个流程都为填空+上传附件,非必填) --> | ||
| 97 | + <el-col :span="24"> | ||
| 98 | + <el-form-item label="立案审批" prop="registerApproval"> | ||
| 99 | + <el-input type="textarea" v-model="dataForm.registerApproval" placeholder="请输入立案审批" clearable maxlength="200"/> | ||
| 100 | + </el-form-item> | ||
| 101 | + </el-col> | ||
| 102 | + <el-col :span="24"> | ||
| 103 | + <el-form-item label="立案审批附件" prop="registerApprovalFileModel"> | ||
| 104 | + <NCC-UploadFz v-model="dataForm.registerApprovalFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 105 | + </el-form-item> | ||
| 106 | + </el-col> | ||
| 107 | + <el-col :span="24"> | ||
| 108 | + <el-form-item label="调查(询问)笔录" prop="record"> | ||
| 109 | + <el-input type="textarea" v-model="dataForm.record" placeholder="请输入调查(询问)笔录" clearable maxlength="200"/> | ||
| 110 | + </el-form-item> | ||
| 111 | + </el-col> | ||
| 112 | + <el-col :span="24"> | ||
| 113 | + <el-form-item label="调查(询问)笔录附件" prop="recordFileModel"> | ||
| 114 | + <NCC-UploadFz v-model="dataForm.recordFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 115 | + </el-form-item> | ||
| 116 | + </el-col> | ||
| 117 | + <el-col :span="24"> | ||
| 118 | + <el-form-item label="案件处理意见" prop="caseHandlingOpinions"> | ||
| 119 | + <el-input type="textarea" v-model="dataForm.caseHandlingOpinions" placeholder="请输入案件处理意见示例" clearable maxlength="200"/> | ||
| 120 | + </el-form-item> | ||
| 121 | + </el-col> | ||
| 122 | + <el-col :span="24"> | ||
| 123 | + <el-form-item label="案件处理意见附件" prop="caseHandlingOpinionsFileModel"> | ||
| 124 | + <NCC-UploadFz v-model="dataForm.caseHandlingOpinionsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 125 | + </el-form-item> | ||
| 126 | + </el-col> | ||
| 127 | + <el-col :span="24"> | ||
| 128 | + <el-form-item label="执法约谈" prop="enforcementRecords"> | ||
| 129 | + <el-input type="textarea" v-model="dataForm.enforcementRecords" placeholder="请输入执法约谈" clearable maxlength="200"/> | ||
| 81 | </el-form-item> | 130 | </el-form-item> |
| 82 | </el-col> | 131 | </el-col> |
| 83 | - <el-col :span="23" v-show="dataForm.questionType == '错误表述'"> | ||
| 84 | - <el-form-item label="正确描述" prop="accurateDescription"> | ||
| 85 | - <el-input v-model="dataForm.accurateDescription" placeholder="请输入正确描述" clearable :style="{ width: '100%' }"></el-input> | 132 | + <el-col :span="24"> |
| 133 | + <el-form-item label="执法约谈附件" prop="enforcementRecordsFileModel"> | ||
| 134 | + <NCC-UploadFz v-model="dataForm.enforcementRecordsFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 86 | </el-form-item> | 135 | </el-form-item> |
| 87 | </el-col> | 136 | </el-col> |
| 88 | - <el-col :span="23" v-show="dataForm.questionType == '错误表述'"> | ||
| 89 | - <el-form-item label="错误描述" prop="incorrectDescription"> | ||
| 90 | - <el-input v-model="dataForm.incorrectDescription" placeholder="请输入错误描述" clearable :style="{ width: '100%' }"></el-input> | 137 | + <el-col :span="24"> |
| 138 | + <el-form-item label="行政处罚意见告知" prop="noticeLetter"> | ||
| 139 | + <el-input type="textarea" v-model="dataForm.noticeLetter" placeholder="请输入行政处罚意见告知" clearable maxlength="200"/> | ||
| 91 | </el-form-item> | 140 | </el-form-item> |
| 92 | </el-col> | 141 | </el-col> |
| 93 | - <el-col :span="23"> | ||
| 94 | - <el-form-item label="问题内容" prop="questionContent"> | ||
| 95 | - <el-input v-model="dataForm.questionContent" placeholder="请输入" show-word-limit :style="{ width: '100%' }" type="textarea" :autosize="{ minRows: 4, maxRows: 4 }" /> | 142 | + <el-col :span="24"> |
| 143 | + <el-form-item label="行政处罚意见告知附件" prop="noticeLetterFileModel"> | ||
| 144 | + <NCC-UploadFz v-model="dataForm.noticeLetterFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 96 | </el-form-item> | 145 | </el-form-item> |
| 97 | </el-col> | 146 | </el-col> |
| 98 | - <el-col :span="23"> | ||
| 99 | - <el-form-item label="关键词" prop="questionClass"> | ||
| 100 | - <el-input v-model="dataForm.questionClass" placeholder="请输入关键词" clearable :style="{ width: '100%' }"></el-input> | 147 | + <el-col :span="24"> |
| 148 | + <el-form-item label="行政处罚决定" prop="punishmentDecision"> | ||
| 149 | + <el-input type="textarea" v-model="dataForm.punishmentDecision" placeholder="请输入行政处罚决定" clearable maxlength="200"/> | ||
| 101 | </el-form-item> | 150 | </el-form-item> |
| 102 | </el-col> | 151 | </el-col> |
| 103 | - <el-col :span="23"> | ||
| 104 | - <el-form-item label="附件" prop="annex"> | ||
| 105 | - <NCC-UploadFz v-model="dataForm.annex" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | 152 | + <el-col :span="24"> |
| 153 | + <el-form-item label="行政处罚决定附件" prop="punishmentDecisionFileModel"> | ||
| 154 | + <NCC-UploadFz v-model="dataForm.punishmentDecisionFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 155 | + </el-form-item> | ||
| 156 | + </el-col> | ||
| 157 | + <el-col :span="24"> | ||
| 158 | + <el-form-item label="行政处罚结案报告" prop="closingReport"> | ||
| 159 | + <el-input type="textarea" v-model="dataForm.closingReport" placeholder="请输入行政处罚结案报告" clearable maxlength="200"/> | ||
| 160 | + </el-form-item> | ||
| 161 | + </el-col> | ||
| 162 | + <el-col :span="24"> | ||
| 163 | + <el-form-item label="行政处罚结案报告附件" prop="closingReportFileModel"> | ||
| 164 | + <NCC-UploadFz v-model="dataForm.closingReportFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 165 | + </el-form-item> | ||
| 166 | + </el-col> | ||
| 167 | + <el-col :span="24"> | ||
| 168 | + <el-form-item label="其他" prop="other"> | ||
| 169 | + <el-input type="textarea" v-model="dataForm.other" placeholder="请输入其他" clearable maxlength="200"/> | ||
| 170 | + </el-form-item> | ||
| 171 | + </el-col> | ||
| 172 | + <el-col :span="24"> | ||
| 173 | + <el-form-item label="其他附件" prop="otherFileModel"> | ||
| 174 | + <NCC-UploadFz v-model="dataForm.otherFileModel" :fileSize="5" sizeUnit="MB" :limit="9" buttonText="点击上传" /> | ||
| 106 | </el-form-item> | 175 | </el-form-item> |
| 107 | </el-col> | 176 | </el-col> |
| 108 | </el-form> | 177 | </el-form> |
| 109 | </el-row> | 178 | </el-row> |
| 110 | <span slot="footer" class="dialog-footer"> | 179 | <span slot="footer" class="dialog-footer"> |
| 111 | - <el-button @click="visible = false">取 消</el-button> | ||
| 112 | - <el-button type="primary" @click="dataFormSubmit()">确 定</el-button> | 180 | + <template> |
| 181 | + <el-button @click="visible = false">取 消</el-button> | ||
| 182 | + <el-button type="primary" v-if="!isDetail && formType != '2'" @click="submit(1)" :loading="btnLoading">{{isSHILevel ? '下 发' : '上 报'}}</el-button> | ||
| 183 | + <el-button type="info" v-if="!isDetail && formType != '2'" @click="submit(0)" :loading="btnLoading">保 存</el-button> | ||
| 184 | + </template> | ||
| 113 | </span> | 185 | </span> |
| 114 | </el-dialog> | 186 | </el-dialog> |
| 115 | </template> | 187 | </template> |
| 116 | <script> | 188 | <script> |
| 189 | +import infoMixin from "@/mixins/info"; | ||
| 117 | import request from "@/utils/request"; | 190 | import request from "@/utils/request"; |
| 118 | -import { getDictionaryDataSelector } from "@/api/systemData/dictionary"; | ||
| 119 | -import { getDetail, addForm, updataForm } from "@/api/systemData/dataInterface"; | ||
| 120 | -import { MediaPlatList } from "@/assets/data" | 191 | +import { getSystemDetail } from "@/api/baseData/info"; |
| 192 | +import { getCompanyInfoList, getCompanyInfoById } from "@/api/baseData/company"; | ||
| 193 | +import { dynamicTextUP } from "@/filters/index"; | ||
| 194 | + | ||
| 121 | export default { | 195 | export default { |
| 122 | - components: {}, | ||
| 123 | - props: [], | 196 | + mixins: [infoMixin], |
| 124 | data() { | 197 | data() { |
| 125 | return { | 198 | return { |
| 126 | - loading: false, | ||
| 127 | visible: false, | 199 | visible: false, |
| 128 | - name_loading: false, | 200 | + loading: false, |
| 129 | isDetail: false, | 201 | isDetail: false, |
| 130 | - form_loading: true, | 202 | + formType: false, // 0 新增 1 编辑 2 处理 |
| 131 | dataForm: { | 203 | dataForm: { |
| 132 | - id: undefined, | ||
| 133 | - reportSource: undefined, | ||
| 134 | - platformNameStr: undefined, | ||
| 135 | - platformTypeStr: undefined, | ||
| 136 | - companyStr: undefined, | ||
| 137 | - platformName: '', | ||
| 138 | - selfMediaPlatformType: '', | ||
| 139 | - platformType: undefined, | ||
| 140 | - questionType: undefined, | ||
| 141 | - questionClass: undefined, | ||
| 142 | - questionContent: undefined, | ||
| 143 | - link: undefined, | ||
| 144 | - accurateDescription: undefined, | ||
| 145 | - incorrectDescription: undefined, | ||
| 146 | - annex: [], | ||
| 147 | - otherQuestionType: undefined, | ||
| 148 | - selfMediaPlatformTypeOther: undefined, | ||
| 149 | - company: undefined, | ||
| 150 | - }, | 204 | + id: undefined, |
| 205 | + sourceRegistration: undefined, | ||
| 206 | + registrationTime: undefined, | ||
| 207 | + systemName: undefined, | ||
| 208 | + registeredEntity: undefined, | ||
| 209 | + category: undefined, | ||
| 210 | + recordNumber: undefined, | ||
| 211 | + registeredEntityStr: undefined, | ||
| 212 | + districtCounty: undefined, | ||
| 213 | + systemNameStr: undefined, | ||
| 214 | + illegalReasons: undefined, | ||
| 215 | + punishmentRequirements: undefined, | ||
| 216 | + punishmentContent: undefined, | ||
| 217 | + state: undefined, | ||
| 218 | + enforceType: undefined, | ||
| 219 | + enforcecontent: undefined, | ||
| 220 | + isHaveSystem: undefined, | ||
| 221 | + registerApproval: undefined, | ||
| 222 | + registerApprovalFileModel: [], | ||
| 223 | + record: undefined, | ||
| 224 | + recordFileModel: [], | ||
| 225 | + caseHandlingOpinions: undefined, | ||
| 226 | + caseHandlingOpinionsFileModel: [], | ||
| 227 | + enforcementRecords: undefined, | ||
| 228 | + enforcementRecordsFileModel: [], | ||
| 229 | + noticeLetter: undefined, | ||
| 230 | + noticeLetterFileModel: [], | ||
| 231 | + punishmentDecision: undefined, | ||
| 232 | + punishmentDecisionFileModel: [], | ||
| 233 | + closingReport: undefined, | ||
| 234 | + closingReportFileModel: [], | ||
| 235 | + other: undefined, | ||
| 236 | + otherFileModel: [], | ||
| 237 | + }, | ||
| 151 | rules: { | 238 | rules: { |
| 152 | - platformName: [ | ||
| 153 | - { required: true, message: "请选择应用名称", trigger: "blur" }, | 239 | + sourceRegistration: [ |
| 240 | + { required: true, message: "请输入来源登记", trigger: "bulr" } | ||
| 241 | + ], | ||
| 242 | + systemName: [ | ||
| 243 | + { required: true, message: "请选择应用名称", trigger: "bulr" } | ||
| 244 | + ], | ||
| 245 | + registeredEntity: [ | ||
| 246 | + { required: true, message: "请选择运营主体", trigger: "bulr" } | ||
| 154 | ], | 247 | ], |
| 155 | - company: [ | ||
| 156 | - { required: true, message: "请选择运营主体", trigger: "blur" }, | 248 | + districtCounty: [ |
| 249 | + { required: true, message: "请选择所属区域", trigger: "change" } | ||
| 157 | ], | 250 | ], |
| 158 | - platformType: [ | ||
| 159 | - { required: true, message: "请选择应用类型", trigger: "blur" }, | 251 | + enforceType: [ |
| 252 | + { required: true, message: "请选择执法方式", trigger: "bulr" } | ||
| 160 | ], | 253 | ], |
| 161 | - questionType: [ | ||
| 162 | - { required: true, message: "请选择问题类型", trigger: "blur" }, | 254 | + enforcecontent: [ |
| 255 | + { required: true, message: "请填写执法说明", trigger: "bulr" } | ||
| 163 | ], | 256 | ], |
| 164 | - // otherQuestionType: [ | ||
| 165 | - // { required: true, message: "请输入其他问题类型", trigger: "blur" }, | ||
| 166 | - // ], | ||
| 167 | }, | 257 | }, |
| 168 | - sourceOptions: [], | ||
| 169 | - platformTypeOptions: [], | ||
| 170 | - questionTypeOptions: [], | ||
| 171 | - nameOptions: [], | ||
| 172 | - mediaPlatList: MediaPlatList, | ||
| 173 | - companyOptions: [], | 258 | + systemOption: [], |
| 259 | + system_loading: false, | ||
| 260 | + areaOptions: [], | ||
| 174 | btnLoading: false, | 261 | btnLoading: false, |
| 262 | + companyOptions: [], | ||
| 263 | + platformTypeOptions: [], | ||
| 175 | }; | 264 | }; |
| 176 | }, | 265 | }, |
| 177 | - computed: {}, | 266 | + computed: { |
| 267 | + isSHILevel() { | ||
| 268 | + // 判断角色是否为‘市级办公室’ | ||
| 269 | + return this.$store.state.user.islader; | ||
| 270 | + }, | ||
| 271 | + }, | ||
| 178 | watch: {}, | 272 | watch: {}, |
| 179 | - created() {}, | 273 | + created() { |
| 274 | + this.getplatformTypeOptions(); | ||
| 275 | + this.initSystemTypeList(); | ||
| 276 | + this.initAreaTypeList(); | ||
| 277 | + // this.initCompanyList(); | ||
| 278 | + }, | ||
| 180 | mounted() {}, | 279 | mounted() {}, |
| 181 | methods: { | 280 | methods: { |
| 182 | - async initAllList() { | ||
| 183 | - let companyRes = await request({ | ||
| 184 | - url: `/Extend/basecomapnyinfo/GetNoPagingList`, | ||
| 185 | - method: "GET", | ||
| 186 | - }); | ||
| 187 | - this.companyOptions = companyRes.data; | ||
| 188 | - let SourceRes = await request({ | ||
| 189 | - url: `/Extend/baseinspectionreport/GetReportSourceList`, | ||
| 190 | - method: "GET", | ||
| 191 | - }); | ||
| 192 | - this.sourceOptions = SourceRes.data; | 281 | + async getplatformTypeOptions() { |
| 193 | let list = this.$store.state.meta.system; | 282 | let list = this.$store.state.meta.system; |
| 194 | !list && (list = await this.$store.dispatch("getTypeListByCode", "system")); | 283 | !list && (list = await this.$store.dispatch("getTypeListByCode", "system")); |
| 195 | this.platformTypeOptions = list; | 284 | this.platformTypeOptions = list; |
| 196 | - await getDictionaryDataSelector("577006814432855301").then((res) => { | ||
| 197 | - this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}]; | ||
| 198 | - }); | ||
| 199 | - this.name_loading = true | ||
| 200 | - await request({ | ||
| 201 | - url: `/Extend/basesysteminfo/GetNoPagingList`, | ||
| 202 | - method: "GET", | ||
| 203 | - }).then(({data}) => { | ||
| 204 | - if(!data) return; | ||
| 205 | - this.nameOptions = data; | ||
| 206 | - this.name_loading = false; | ||
| 207 | - }); | ||
| 208 | }, | 285 | }, |
| 286 | + // 请求公司列表 | ||
| 209 | async initCompanyList() { | 287 | async initCompanyList() { |
| 210 | request({ | 288 | request({ |
| 211 | url: `/Extend/basecomapnyinfo/GetNoPagingList`, | 289 | url: `/Extend/basecomapnyinfo/GetNoPagingList`, |
| @@ -214,96 +292,136 @@ export default { | @@ -214,96 +292,136 @@ export default { | ||
| 214 | this.companyOptions = data; | 292 | this.companyOptions = data; |
| 215 | }) | 293 | }) |
| 216 | }, | 294 | }, |
| 295 | + // 获取系统列表 | ||
| 296 | + getSystemSelect(companyId) { | ||
| 297 | + this.system_loading = true; | ||
| 298 | + request({ | ||
| 299 | + url: "/Extend/basesysteminfo/GetNoPagingList", | ||
| 300 | + method: "get", | ||
| 301 | + params: { companyId } | ||
| 302 | + }).then(({data}) => { | ||
| 303 | + this.systemOption = data; | ||
| 304 | + this.system_loading = false; | ||
| 305 | + }) | ||
| 306 | + }, | ||
| 217 | selectBlur(e) { | 307 | selectBlur(e) { |
| 218 | let value = e.target.value; | 308 | let value = e.target.value; |
| 219 | if(!value) return; | 309 | if(!value) return; |
| 220 | - this.dataForm.platformName = e.target.value; | 310 | + this.dataForm.systemName = e.target.value; |
| 221 | this.platformNameChange(value, 'blur'); | 311 | this.platformNameChange(value, 'blur'); |
| 222 | }, | 312 | }, |
| 223 | platformNameChange(val, type) { | 313 | platformNameChange(val, type) { |
| 224 | - let obj = this.nameOptions.find(v => type == 'blur' ? val == v.fullName : val == v.id); | ||
| 225 | - this.dataForm.platformName = obj ? obj.id : val; | ||
| 226 | - this.dataForm.company = obj ? this.companyOptions.find(v => v.id == obj.companyId || v.companyName == obj.companyId).id : ''; | ||
| 227 | - this.dataForm.platformType = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; | ||
| 228 | - if(obj && obj.selfMediaPlatformType && this.dataForm.platformType == '580634746028033285') { | ||
| 229 | - if(this.mediaPlatList.findIndex(j => j == obj.selfMediaPlatformType) == -1) { | ||
| 230 | - this.dataForm.selfMediaPlatformType = '其他'; | ||
| 231 | - this.dataForm.selfMediaPlatformTypeOther = obj.selfMediaPlatformType; | ||
| 232 | - } else { | ||
| 233 | - this.dataForm.selfMediaPlatformType = obj.selfMediaPlatformType; | ||
| 234 | - } | ||
| 235 | - } | 314 | + let obj = this.systemOption.find(v => type == 'blur' ? val == v.fullName : val == v.id); |
| 315 | + console.log(obj); | ||
| 316 | + this.dataForm.isHaveSystem = obj ? true : false; | ||
| 317 | + this.dataForm.systemName = obj ? obj.id : val; | ||
| 318 | + this.dataForm.category = obj ? this.platformTypeOptions.find(v => v.Id == obj.systemType || v.FullName == obj.systemType).Id : ''; | ||
| 319 | + // this.dataForm.recordNumber = obj ? obj.platform : ''; | ||
| 320 | + }, | ||
| 321 | + // 系统名称改变 | ||
| 322 | + systemChange(val) { | ||
| 323 | + getSystemDetail(val).then(({data}) => { | ||
| 324 | + this.dataForm.registeredEntity = data.companyId; | ||
| 325 | + this.dataForm.category = dynamicTextUP(data.systemType, this.systemTypeOptions); | ||
| 326 | + this.dataForm.recordNumber = data.specialRecordNumber || '--'; | ||
| 327 | + this.dataForm.districtCounty = data.areaId; | ||
| 328 | + }) | ||
| 236 | }, | 329 | }, |
| 237 | visibleNameChange(val) { | 330 | visibleNameChange(val) { |
| 238 | if (val) return | 331 | if (val) return |
| 239 | let input = this.$refs.select.$children[0].$refs.input; | 332 | let input = this.$refs.select.$children[0].$refs.input; |
| 240 | input.blur(); | 333 | input.blur(); |
| 241 | }, | 334 | }, |
| 242 | - async loadList() { | ||
| 243 | - this.name_loading = true; | ||
| 244 | - request({ | ||
| 245 | - url: `/Extend/basesysteminfo/GetNoPagingList`, | ||
| 246 | - method: "GET", | ||
| 247 | - }).then(({data}) => { | ||
| 248 | - if(!data) return; | ||
| 249 | - this.nameOptions = data; | ||
| 250 | - this.name_loading = false; | ||
| 251 | - }) | 335 | + companyChange(val, type) { |
| 336 | + let obj = this.companyOptions.find(v => val == v.id); | ||
| 337 | + obj ? this.getSystemSelect(val) : (this.systemOption == []); | ||
| 338 | + this.dataForm.systemName = ''; | ||
| 339 | + this.dataForm.category = ''; | ||
| 252 | }, | 340 | }, |
| 253 | - async getplatformTypeOptions() { | ||
| 254 | - let list = this.$store.state.meta.system; | ||
| 255 | - !list && (list = await this.$store.dispatch("getTypeListByCode", "system")); | ||
| 256 | - this.platformTypeOptions = list; | ||
| 257 | - }, | ||
| 258 | - async getSourceOptions() { | ||
| 259 | - let { data } = await request({ | ||
| 260 | - url: `/Extend/baseinspectionreport/GetReportSourceList`, | ||
| 261 | - method: "GET", | ||
| 262 | - }); | ||
| 263 | - this.sourceOptions = data; | 341 | + // 运营主体改变 |
| 342 | + selectCompanyBlur(e) { | ||
| 343 | + let value = e.target.value; | ||
| 344 | + if(!value) return; | ||
| 345 | + this.dataForm.registeredEntity = e.target.value; | ||
| 264 | }, | 346 | }, |
| 265 | - async getquestionTypeOptions() { | ||
| 266 | - getDictionaryDataSelector("577006814432855301").then((res) => { | ||
| 267 | - this.questionTypeOptions = [...res.data.list, {Id: '0', fullName: '其他'}]; | ||
| 268 | - }); | 347 | + visibleNameCompanyChange(val) { |
| 348 | + if (val) return | ||
| 349 | + let input = this.$refs.companySelect.$children[0].$refs.input; | ||
| 350 | + input.blur(); | ||
| 269 | }, | 351 | }, |
| 270 | goBack() { | 352 | goBack() { |
| 271 | this.$emit("refresh"); | 353 | this.$emit("refresh"); |
| 272 | }, | 354 | }, |
| 273 | - async init(row) { | ||
| 274 | - this.dataForm.id = ''; | 355 | + init(row, isDetail, type) { |
| 356 | + // type 0 上报/下派 1 处理 | ||
| 357 | + this.formType = type || '0'; | ||
| 358 | + this.isDetail = isDetail || false; | ||
| 275 | this.visible = true; | 359 | this.visible = true; |
| 276 | - this.isDetail = false; | ||
| 277 | - this.form_loading = true; | ||
| 278 | - await this.initAllList(); | ||
| 279 | - this.$nextTick(async () => { | 360 | + this.$nextTick(() => { |
| 280 | this.$refs["elForm"].resetFields(); | 361 | this.$refs["elForm"].resetFields(); |
| 281 | - this.platformNameChange(row.id); | ||
| 282 | - this.form_loading = false; | 362 | + this.dataForm.registeredEntity = row.companyId; |
| 363 | + this.dataForm.registeredEntityStr = row.companyName; | ||
| 364 | + this.dataForm.systemName = row.id; | ||
| 365 | + this.dataForm.systemNameStr = row.systemName; | ||
| 366 | + this.dataForm.category = row.systemType; | ||
| 283 | }); | 367 | }); |
| 284 | }, | 368 | }, |
| 285 | - dataFormSubmit() { | ||
| 286 | - this.$refs["elForm"].validate(async (valid) => { | ||
| 287 | - if (valid) { | ||
| 288 | - let obj = { | ||
| 289 | - ...this.dataForm, | ||
| 290 | - questionType: this.dataForm.questionType == '其他' ? this.dataForm.otherQuestionType : this.dataForm.questionType, | ||
| 291 | - selfMediaPlatformType: this.dataForm.selfMediaPlatformType == '其他' ? this.dataForm.selfMediaPlatformTypeOther : this.dataForm.selfMediaPlatformType, | ||
| 292 | - } | 369 | + // 上报/下派 |
| 370 | + submit(type) { | ||
| 371 | + // type: 1 上报 0 保存 | ||
| 372 | + // status 状态 0保存/1办结 | ||
| 373 | + let obj = { | ||
| 374 | + ...this.dataForm, | ||
| 375 | + isReport: type, | ||
| 376 | + } | ||
| 377 | + this.$refs['elForm'].validate((valid) => { | ||
| 378 | + if(valid) { | ||
| 379 | + !this.dataForm.id ? this.toRequest('/Extend/BaseCaseHandling', 'POST', obj) : this.toRequest(`/Extend/BaseCaseHandling/${this.dataForm.id}`, 'PUT', obj); | ||
| 380 | + } | ||
| 381 | + }) | ||
| 382 | + }, | ||
| 383 | + // 处理 | ||
| 384 | + handle(status) { | ||
| 385 | + this.$refs['elForm'].validate((valid) => { | ||
| 386 | + if(valid) { | ||
| 293 | this.btnLoading = true; | 387 | this.btnLoading = true; |
| 294 | - let res = !this.dataForm.id ? await addForm(obj) : await updataForm(obj); | ||
| 295 | - if (res.code != 200) return this.btnLoading = false; | ||
| 296 | - this.$message({ | ||
| 297 | - message: res.msg, | ||
| 298 | - type: "success", | ||
| 299 | - duration: 1000, | ||
| 300 | - onClose: () => { | ||
| 301 | - (this.visible = false), this.$emit("refresh", true); | ||
| 302 | - }, | ||
| 303 | - }); | 388 | + this.dataForm.status = status; |
| 389 | + request({ | ||
| 390 | + url: `/Extend/basecasehandling/HandlingCase/${this.dataForm.id}`, | ||
| 391 | + method: "POST", | ||
| 392 | + data: this.dataForm, | ||
| 393 | + }).then((res) => { | ||
| 394 | + this.visible = false; | ||
| 395 | + this.$emit("refresh", true); | ||
| 396 | + this.$message({ | ||
| 397 | + type: "success", | ||
| 398 | + message: res.msg, | ||
| 399 | + }) | ||
| 400 | + }).catch(() => { | ||
| 401 | + this.btnLoading = false; | ||
| 402 | + }) | ||
| 304 | } | 403 | } |
| 305 | - }); | 404 | + }) |
| 306 | }, | 405 | }, |
| 406 | + toRequest(url, method, data) { | ||
| 407 | + this.btnLoading = true; | ||
| 408 | + request({ | ||
| 409 | + url, | ||
| 410 | + method, | ||
| 411 | + data, | ||
| 412 | + }).then((res) => { | ||
| 413 | + this.$message({ | ||
| 414 | + type: "success", | ||
| 415 | + message: res.msg, | ||
| 416 | + onClose: () => { | ||
| 417 | + this.visible = false; | ||
| 418 | + this.$emit("refresh", true); | ||
| 419 | + }, | ||
| 420 | + }); | ||
| 421 | + }).catch(() => { | ||
| 422 | + this.btnLoading = false; | ||
| 423 | + }); | ||
| 424 | + } | ||
| 307 | }, | 425 | }, |
| 308 | }; | 426 | }; |
| 309 | </script> | 427 | </script> |