Commit 2e81c59f0280bbf18c5be0fe55492e014b929520
1 parent
c0ea09a1
完成办公功能测试
Showing
16 changed files
with
110 additions
and
218 deletions
src/components/editor/RichTextEditor.vue
| ... | ... | @@ -2,7 +2,7 @@ |
| 2 | 2 | <template> |
| 3 | 3 | <div ref="editor" class="rich-text-editor" style="text-align: left;"></div> |
| 4 | 4 | </template> |
| 5 | - | |
| 5 | + | |
| 6 | 6 | <script> |
| 7 | 7 | import E from 'wangeditor' |
| 8 | 8 | import { getHeader } from '@/utils/header' |
| ... | ... | @@ -57,28 +57,53 @@ export default { |
| 57 | 57 | ] |
| 58 | 58 | |
| 59 | 59 | // Image upload configuration |
| 60 | - this.editor.config.uploadImgServer = '/upload/uploadFile' | |
| 60 | + this.editor.config.uploadImgServer = '/callComponent/upload/uploadFile/uploadImage' | |
| 61 | 61 | let headers = getHeader() |
| 62 | 62 | this.editor.config.uploadImgHeaders = headers |
| 63 | 63 | this.editor.config.uploadFileName = 'uploadFile' |
| 64 | 64 | this.editor.config.uploadImgMaxSize = 10 * 1024 * 1024 // 10M |
| 65 | 65 | |
| 66 | - // Custom image upload callback | |
| 67 | - this.editor.config.uploadImgHooks = { | |
| 68 | - customInsert: (insertImgFn, result) => { | |
| 69 | - if (result.code === 0) { | |
| 70 | - const url = result.data.url || result.data.path | |
| 71 | - insertImgFn(url) | |
| 72 | - } else { | |
| 73 | - this.$message.error(result.msg || this.$t('upload.error')) | |
| 74 | - } | |
| 75 | - }, | |
| 76 | - error: (err) => { | |
| 77 | - this.$message.error(this.$t('upload.error')) | |
| 78 | - console.error('Image upload error:', err) | |
| 79 | - } | |
| 66 | + this.editor.config.customUploadImg = (resultFiles, insertImgFn) => { | |
| 67 | + // 创建 FormData | |
| 68 | + const formData = new FormData() | |
| 69 | + formData.append('uploadFile', resultFiles[0]) | |
| 70 | + formData.append('communityId', '-1') // 添加 communityId 参数 | |
| 71 | + | |
| 72 | + // 发送请求 | |
| 73 | + fetch('/callComponent/upload/uploadFile/uploadImage', { | |
| 74 | + method: 'POST', | |
| 75 | + headers: headers, | |
| 76 | + body: formData | |
| 77 | + }) | |
| 78 | + .then(response => response.json()) | |
| 79 | + .then(result => { | |
| 80 | + console.log(result) | |
| 81 | + const url = result.url | |
| 82 | + insertImgFn(url) | |
| 83 | + | |
| 84 | + }) | |
| 85 | + .catch(err => { | |
| 86 | + this.$message.error(this.$t('upload.error')) | |
| 87 | + console.error('Image upload error:', err) | |
| 88 | + }) | |
| 80 | 89 | } |
| 81 | 90 | |
| 91 | + // Custom image upload callback | |
| 92 | + // this.editor.config.uploadImgHooks = { | |
| 93 | + // customInsert: (insertImgFn, result) => { | |
| 94 | + // if (result.code === 0) { | |
| 95 | + // const url = result.data.url || result.data.path | |
| 96 | + // insertImgFn(url) | |
| 97 | + // } else { | |
| 98 | + // this.$message.error(result.msg || this.$t('upload.error')) | |
| 99 | + // } | |
| 100 | + // }, | |
| 101 | + // error: (err) => { | |
| 102 | + // this.$message.error(this.$t('upload.error')) | |
| 103 | + // console.error('Image upload error:', err) | |
| 104 | + // } | |
| 105 | + // } | |
| 106 | + | |
| 82 | 107 | // Create the editor |
| 83 | 108 | this.editor.create() |
| 84 | 109 | |
| ... | ... | @@ -112,7 +137,7 @@ export default { |
| 112 | 137 | } |
| 113 | 138 | } |
| 114 | 139 | </script> |
| 115 | - | |
| 140 | + | |
| 116 | 141 | <style lang="scss" scoped> |
| 117 | 142 | .rich-text-editor { |
| 118 | 143 | border: 1px solid #dcdfe6; | ... | ... |
src/components/oa/addActivitiesType.vue
| 1 | 1 | <template> |
| 2 | - <el-dialog :title="$t('activitiesTypeManage.add.title')" :visible.sync="visible" width="50%" @close="handleClose"> | |
| 2 | + <el-dialog :title="$t('activitiesTypeManage.add.title')" :visible.sync="visible" width="40%" @close="handleClose"> | |
| 3 | 3 | <el-form ref="form" :model="formData" :rules="rules" label-width="120px"> |
| 4 | 4 | <el-form-item :label="$t('activitiesTypeManage.add.typeName')" prop="typeName"> |
| 5 | 5 | <el-input v-model="formData.typeName" :placeholder="$t('activitiesTypeManage.add.typeNamePlaceholder')" /> | ... | ... |
src/components/oa/addExamineProject.vue
| 1 | 1 | <template> |
| 2 | - <el-dialog | |
| 3 | - :title="$t('examineProjectManage.add.title')" | |
| 4 | - :visible.sync="visible" | |
| 5 | - width="50%" | |
| 6 | - @close="handleClose" | |
| 7 | - > | |
| 8 | - <el-form | |
| 9 | - ref="form" | |
| 10 | - :model="formData" | |
| 11 | - :rules="rules" | |
| 12 | - label-width="120px" | |
| 13 | - label-position="right" | |
| 14 | - > | |
| 15 | - <el-form-item | |
| 16 | - :label="$t('examineProjectManage.form.name')" | |
| 17 | - prop="name" | |
| 18 | - > | |
| 19 | - <el-input | |
| 20 | - v-model="formData.name" | |
| 21 | - :placeholder="$t('examineProjectManage.form.namePlaceholder')" | |
| 22 | - /> | |
| 2 | + <el-dialog :title="$t('examineProjectManage.add.title')" :visible.sync="visible" width="40%" @close="handleClose"> | |
| 3 | + <el-form ref="form" :model="formData" :rules="rules" label-width="120px" label-position="right" class="text-left"> | |
| 4 | + <el-form-item :label="$t('examineProjectManage.form.name')" prop="name"> | |
| 5 | + <el-input v-model="formData.name" :placeholder="$t('examineProjectManage.form.namePlaceholder')" /> | |
| 23 | 6 | </el-form-item> |
| 24 | - <el-form-item | |
| 25 | - :label="$t('examineProjectManage.form.post')" | |
| 26 | - prop="postCd" | |
| 27 | - > | |
| 28 | - <el-select | |
| 29 | - v-model="formData.postCd" | |
| 30 | - :placeholder="$t('examineProjectManage.form.postPlaceholder')" | |
| 31 | - style="width:100%" | |
| 32 | - > | |
| 33 | - <el-option | |
| 34 | - :label="$t('examineProjectManage.form.commonPost')" | |
| 35 | - value="9999" | |
| 36 | - /> | |
| 7 | + <el-form-item :label="$t('examineProjectManage.form.post')" prop="postCd"> | |
| 8 | + <el-select v-model="formData.postCd" :placeholder="$t('examineProjectManage.form.postPlaceholder')" | |
| 9 | + style="width:100%"> | |
| 10 | + <el-option :label="$t('examineProjectManage.form.commonPost')" value="9999" /> | |
| 37 | 11 | </el-select> |
| 38 | 12 | </el-form-item> |
| 39 | - <el-form-item | |
| 40 | - :label="$t('examineProjectManage.form.weight')" | |
| 41 | - prop="weight" | |
| 42 | - > | |
| 43 | - <el-input | |
| 44 | - v-model="formData.weight" | |
| 45 | - :placeholder="$t('examineProjectManage.form.weightPlaceholder')" | |
| 46 | - style="width:80%" | |
| 47 | - > | |
| 13 | + <el-form-item :label="$t('examineProjectManage.form.weight')" prop="weight"> | |
| 14 | + <el-input v-model="formData.weight" :placeholder="$t('examineProjectManage.form.weightPlaceholder')" | |
| 15 | + style="width:80%"> | |
| 48 | 16 | <template slot="append">%</template> |
| 49 | 17 | </el-input> |
| 50 | 18 | </el-form-item> |
| 51 | - <el-form-item | |
| 52 | - :label="$t('examineProjectManage.form.state')" | |
| 53 | - prop="state" | |
| 54 | - > | |
| 55 | - <el-select | |
| 56 | - v-model="formData.state" | |
| 57 | - :placeholder="$t('examineProjectManage.form.statePlaceholder')" | |
| 58 | - style="width:100%" | |
| 59 | - > | |
| 60 | - <el-option | |
| 61 | - :label="$t('examineProjectManage.status.enable')" | |
| 62 | - value="Y" | |
| 63 | - /> | |
| 64 | - <el-option | |
| 65 | - :label="$t('examineProjectManage.status.disable')" | |
| 66 | - value="N" | |
| 67 | - /> | |
| 19 | + <el-form-item :label="$t('examineProjectManage.form.state')" prop="state"> | |
| 20 | + <el-select v-model="formData.state" :placeholder="$t('examineProjectManage.form.statePlaceholder')" | |
| 21 | + style="width:100%"> | |
| 22 | + <el-option :label="$t('examineProjectManage.status.enable')" value="Y" /> | |
| 23 | + <el-option :label="$t('examineProjectManage.status.disable')" value="N" /> | |
| 68 | 24 | </el-select> |
| 69 | 25 | </el-form-item> |
| 70 | 26 | </el-form> | ... | ... |
src/components/oa/addQuestionTitle.vue
| 1 | 1 | <template> |
| 2 | - <el-dialog :title="$t('questionTitle.add.title')" :visible.sync="visible" width="70%" @close="handleClose"> | |
| 2 | + <el-dialog :title="$t('questionTitle.add.title')" :visible.sync="visible" width="40%" @close="handleClose"> | |
| 3 | 3 | <el-form ref="form" :model="formData" label-width="120px"> |
| 4 | 4 | <el-form-item :label="$t('questionTitle.add.name')" prop="qaTitle" :rules="[ |
| 5 | 5 | { required: true, message: $t('questionTitle.add.nameRequired'), trigger: 'blur' }, | ... | ... |
src/components/oa/complaintDetail.vue
| 1 | 1 | <template> |
| 2 | - <el-dialog :title="`${form.typeCdName} ${$t('complaint.detail.title')}`" :visible.sync="visible" width="70%" top="5vh"> | |
| 2 | + <el-dialog :title="`${form.typeName} ${$t('complaint.detail.title')}`" :visible.sync="visible" width="70%" | |
| 3 | + top="5vh"> | |
| 3 | 4 | <el-form label-width="120px"> |
| 4 | 5 | <el-row :gutter="20"> |
| 5 | 6 | <el-col :span="12"> |
| ... | ... | @@ -17,7 +18,7 @@ |
| 17 | 18 | <el-row :gutter="20"> |
| 18 | 19 | <el-col :span="12"> |
| 19 | 20 | <el-form-item :label="$t('complaint.detail.type')"> |
| 20 | - <el-input v-model="form.typeCdName" readonly /> | |
| 21 | + <el-input v-model="form.typeName" readonly /> | |
| 21 | 22 | </el-form-item> |
| 22 | 23 | </el-col> |
| 23 | 24 | <el-col :span="12"> |
| ... | ... | @@ -58,7 +59,7 @@ |
| 58 | 59 | </el-form-item> |
| 59 | 60 | </template> |
| 60 | 61 | |
| 61 | - <el-form-item :label="`${form.typeCdName}${$t('complaint.detail.content')}`"> | |
| 62 | + <el-form-item :label="`${$t('complaint.detail.content')}`"> | |
| 62 | 63 | <el-input type="textarea" :rows="4" v-model="form.context" readonly /> |
| 63 | 64 | </el-form-item> |
| 64 | 65 | |
| ... | ... | @@ -100,7 +101,7 @@ export default { |
| 100 | 101 | complaintName: '', |
| 101 | 102 | tel: '', |
| 102 | 103 | context: '', |
| 103 | - typeCdName: '', | |
| 104 | + typeName: '', | |
| 104 | 105 | stateName: '', |
| 105 | 106 | roomName: '', |
| 106 | 107 | currentUserName: '', |
| ... | ... | @@ -116,6 +117,7 @@ export default { |
| 116 | 117 | methods: { |
| 117 | 118 | open(row) { |
| 118 | 119 | this.visible = true |
| 120 | + console.log(row) | |
| 119 | 121 | this.form = { |
| 120 | 122 | ...row, |
| 121 | 123 | photosShow: row.photos.map(photo => ({ | ... | ... |
src/components/oa/deleteQuestionAnswer.vue
src/components/oa/editExamineProject.vue
| 1 | 1 | <template> |
| 2 | - <el-dialog | |
| 3 | - :title="$t('examineProjectManage.edit.title')" | |
| 4 | - :visible.sync="visible" | |
| 5 | - width="50%" | |
| 6 | - @close="handleClose" | |
| 7 | - > | |
| 8 | - <el-form | |
| 9 | - ref="form" | |
| 10 | - :model="formData" | |
| 11 | - :rules="rules" | |
| 12 | - label-width="120px" | |
| 13 | - label-position="right" | |
| 14 | - > | |
| 15 | - <el-form-item | |
| 16 | - :label="$t('examineProjectManage.form.name')" | |
| 17 | - prop="name" | |
| 18 | - > | |
| 19 | - <el-input | |
| 20 | - v-model="formData.name" | |
| 21 | - :placeholder="$t('examineProjectManage.form.namePlaceholder')" | |
| 22 | - /> | |
| 2 | + <el-dialog :title="$t('examineProjectManage.edit.title')" :visible.sync="visible" width="40%" @close="handleClose"> | |
| 3 | + <el-form ref="form" :model="formData" :rules="rules" label-width="120px" label-position="right" class="text-left"> | |
| 4 | + <el-form-item :label="$t('examineProjectManage.form.name')" prop="name"> | |
| 5 | + <el-input v-model="formData.name" :placeholder="$t('examineProjectManage.form.namePlaceholder')" /> | |
| 23 | 6 | </el-form-item> |
| 24 | - <el-form-item | |
| 25 | - :label="$t('examineProjectManage.form.post')" | |
| 26 | - prop="postCd" | |
| 27 | - > | |
| 28 | - <el-select | |
| 29 | - v-model="formData.postCd" | |
| 30 | - :placeholder="$t('examineProjectManage.form.postPlaceholder')" | |
| 31 | - style="width:100%" | |
| 32 | - > | |
| 33 | - <el-option | |
| 34 | - :label="$t('examineProjectManage.form.commonPost')" | |
| 35 | - value="9999" | |
| 36 | - /> | |
| 7 | + <el-form-item :label="$t('examineProjectManage.form.post')" prop="postCd"> | |
| 8 | + <el-select v-model="formData.postCd" :placeholder="$t('examineProjectManage.form.postPlaceholder')" | |
| 9 | + style="width:100%"> | |
| 10 | + <el-option :label="$t('examineProjectManage.form.commonPost')" value="9999" /> | |
| 37 | 11 | </el-select> |
| 38 | 12 | </el-form-item> |
| 39 | - <el-form-item | |
| 40 | - :label="$t('examineProjectManage.form.weight')" | |
| 41 | - prop="weight" | |
| 42 | - > | |
| 43 | - <el-input | |
| 44 | - v-model="formData.weight" | |
| 45 | - :placeholder="$t('examineProjectManage.form.weightPlaceholder')" | |
| 46 | - style="width:80%" | |
| 47 | - > | |
| 13 | + <el-form-item :label="$t('examineProjectManage.form.weight')" prop="weight"> | |
| 14 | + <el-input v-model="formData.weight" :placeholder="$t('examineProjectManage.form.weightPlaceholder')" | |
| 15 | + style="width:80%"> | |
| 48 | 16 | <template slot="append">%</template> |
| 49 | 17 | </el-input> |
| 50 | 18 | </el-form-item> |
| 51 | - <el-form-item | |
| 52 | - :label="$t('examineProjectManage.form.state')" | |
| 53 | - prop="state" | |
| 54 | - > | |
| 55 | - <el-select | |
| 56 | - v-model="formData.state" | |
| 57 | - :placeholder="$t('examineProjectManage.form.statePlaceholder')" | |
| 58 | - style="width:100%" | |
| 59 | - > | |
| 60 | - <el-option | |
| 61 | - :label="$t('examineProjectManage.status.enable')" | |
| 62 | - value="Y" | |
| 63 | - /> | |
| 64 | - <el-option | |
| 65 | - :label="$t('examineProjectManage.status.disable')" | |
| 66 | - value="N" | |
| 67 | - /> | |
| 19 | + <el-form-item :label="$t('examineProjectManage.form.state')" prop="state"> | |
| 20 | + <el-select v-model="formData.state" :placeholder="$t('examineProjectManage.form.statePlaceholder')" | |
| 21 | + style="width:100%"> | |
| 22 | + <el-option :label="$t('examineProjectManage.status.enable')" value="Y" /> | |
| 23 | + <el-option :label="$t('examineProjectManage.status.disable')" value="N" /> | |
| 68 | 24 | </el-select> |
| 69 | 25 | </el-form-item> |
| 70 | 26 | </el-form> | ... | ... |
src/views/oa/addExamineStaffList.vue
| ... | ... | @@ -9,7 +9,7 @@ |
| 9 | 9 | </el-button> |
| 10 | 10 | </div> |
| 11 | 11 | </div> |
| 12 | - <el-form ref="form" :model="addExamineStaffInfo" label-width="120px"> | |
| 12 | + <el-form ref="form" :model="addExamineStaffInfo" label-width="120px" class="text-left"> | |
| 13 | 13 | <el-row> |
| 14 | 14 | <el-col :span="24"> |
| 15 | 15 | <el-form-item :label="$t('addExamineStaff.staffName')"> |
| ... | ... | @@ -38,8 +38,7 @@ |
| 38 | 38 | <el-row> |
| 39 | 39 | <el-col :span="24"> |
| 40 | 40 | <el-form-item :label="$t('addExamineStaff.staffAvatar')"> |
| 41 | - <upload-image-url ref="uploadImage" :call-back-listener="'addExamineStaff'" | |
| 42 | - :call-back-function="'notifyUploadImage'" :image-count="1"> | |
| 41 | + <upload-image-url ref="uploadImage" @notifyUploadCoverImage="notifyUploadImage" :image-count="1"> | |
| 43 | 42 | </upload-image-url> |
| 44 | 43 | </el-form-item> |
| 45 | 44 | </el-col> |
| ... | ... | @@ -114,13 +113,10 @@ export default { |
| 114 | 113 | this.addExamineStaffInfo.communityId = getCommunityId() |
| 115 | 114 | this._listExamineProjects() |
| 116 | 115 | }, |
| 117 | - mounted() { | |
| 118 | - this.$on('addExamineStaff', 'notifyUploadImage', this.notifyUploadImage) | |
| 119 | - }, | |
| 120 | 116 | methods: { |
| 121 | 117 | notifyUploadImage(_param) { |
| 122 | 118 | if (_param.length > 0) { |
| 123 | - this.addExamineStaffInfo.headerImg = _param[0].fileId | |
| 119 | + this.addExamineStaffInfo.headerImg = _param[0] | |
| 124 | 120 | } else { |
| 125 | 121 | this.addExamineStaffInfo.headerImg = '' |
| 126 | 122 | } | ... | ... |
src/views/oa/addQuestionAnswerLang.js
| ... | ... | @@ -25,17 +25,6 @@ export const messages = { |
| 25 | 25 | saveSuccess: 'Questionnaire saved successfully', |
| 26 | 26 | saveError: 'Failed to save questionnaire' |
| 27 | 27 | }, |
| 28 | - questionTitle: { | |
| 29 | - name: 'Name', | |
| 30 | - type: 'Type', | |
| 31 | - options: 'Options', | |
| 32 | - operation: 'Operation', | |
| 33 | - delete: 'Delete', | |
| 34 | - createTime: 'Create Time', | |
| 35 | - singleChoice: 'Single Choice', | |
| 36 | - multipleChoice: 'Multiple Choice', | |
| 37 | - shortAnswer: 'Short Answer' | |
| 38 | - }, | |
| 39 | 28 | selectRoom: { |
| 40 | 29 | buildingUnit: 'Building Unit', |
| 41 | 30 | roomInfo: 'Room Information', |
| ... | ... | @@ -78,17 +67,6 @@ export const messages = { |
| 78 | 67 | saveSuccess: '问卷保存成功', |
| 79 | 68 | saveError: '问卷保存失败' |
| 80 | 69 | }, |
| 81 | - questionTitle: { | |
| 82 | - name: '名称', | |
| 83 | - type: '类型', | |
| 84 | - options: '选项', | |
| 85 | - operation: '操作', | |
| 86 | - delete: '删除', | |
| 87 | - createTime: '创建时间', | |
| 88 | - singleChoice: '单选', | |
| 89 | - multipleChoice: '多选', | |
| 90 | - shortAnswer: '简答' | |
| 91 | - }, | |
| 92 | 70 | selectRoom: { |
| 93 | 71 | buildingUnit: '楼栋单元', |
| 94 | 72 | roomInfo: '房屋信息', | ... | ... |
src/views/oa/addQuestionAnswerList.vue
| ... | ... | @@ -52,23 +52,23 @@ |
| 52 | 52 | </el-button> |
| 53 | 53 | </div> |
| 54 | 54 | <el-table :data="addQuestionAnswerInfo.questionTitles" border style="width: 100%"> |
| 55 | - <el-table-column prop="qaTitle" :label="$t('questionTitle.name')" align="center" /> | |
| 56 | - <el-table-column prop="titleType" :label="$t('questionTitle.type')" align="center"> | |
| 55 | + <el-table-column prop="qaTitle" :label="$t('questionTitle.table.name')" align="center" /> | |
| 56 | + <el-table-column prop="titleType" :label="$t('questionTitle.table.type')" align="center"> | |
| 57 | 57 | <template slot-scope="scope"> |
| 58 | 58 | {{ getTitleTypeName(scope.row.titleType) }} |
| 59 | 59 | </template> |
| 60 | 60 | </el-table-column> |
| 61 | - <el-table-column :label="$t('questionTitle.options')" align="center"> | |
| 61 | + <el-table-column :label="$t('questionTitle.table.options')" align="center"> | |
| 62 | 62 | <template slot-scope="scope"> |
| 63 | 63 | <div v-for="(item, index) in scope.row.titleValues" :key="index"> |
| 64 | 64 | {{ item.seq }}、{{ item.qaValue }} |
| 65 | 65 | </div> |
| 66 | 66 | </template> |
| 67 | 67 | </el-table-column> |
| 68 | - <el-table-column :label="$t('questionTitle.operation')" align="center" width="150"> | |
| 68 | + <el-table-column :label="$t('common.operation')" align="center" width="150"> | |
| 69 | 69 | <template slot-scope="scope"> |
| 70 | 70 | <el-button type="danger" size="mini" @click="openDeleteQuestionTitle(scope.row)"> |
| 71 | - {{ $t('questionTitle.delete') }} | |
| 71 | + {{ $t('common.delete') }} | |
| 72 | 72 | </el-button> |
| 73 | 73 | </template> |
| 74 | 74 | </el-table-column> |
| ... | ... | @@ -134,11 +134,11 @@ export default { |
| 134 | 134 | methods: { |
| 135 | 135 | getTitleTypeName(titleType) { |
| 136 | 136 | if (titleType === '1001') { |
| 137 | - return this.$t('questionTitle.singleChoice') | |
| 137 | + return this.$t('questionTitle.types.singleChoice') | |
| 138 | 138 | } else if (titleType === '2002') { |
| 139 | - return this.$t('questionTitle.multipleChoice') | |
| 139 | + return this.$t('questionTitle.types.multipleChoice') | |
| 140 | 140 | } else { |
| 141 | - return this.$t('questionTitle.shortAnswer') | |
| 141 | + return this.$t('questionTitle.types.shortAnswer') | |
| 142 | 142 | } |
| 143 | 143 | }, |
| 144 | 144 | chooseTitle() { | ... | ... |
src/views/oa/complaintList.vue
| ... | ... | @@ -2,9 +2,9 @@ |
| 2 | 2 | <div class="complaint-container animated fadeInRight"> |
| 3 | 3 | <el-row :gutter="20"> |
| 4 | 4 | <el-col :span="4"> |
| 5 | - <el-card class="border-radius"> | |
| 6 | - <div class="treeview"> | |
| 7 | - <ul class="list-group text-center border-radius"> | |
| 5 | + <div class="list-group-border-radius"> | |
| 6 | + <div class=" treeview"> | |
| 7 | + <ul class="list-group text-center "> | |
| 8 | 8 | <li v-for="(item, index) in complaintInfo.states" :key="index" @click="swatchComplaintState(item)" |
| 9 | 9 | :class="{ 'vc-node-selected': complaintInfo.conditions.state == item.statusCd }" |
| 10 | 10 | class="list-group-item node-orgTree"> |
| ... | ... | @@ -12,7 +12,7 @@ |
| 12 | 12 | </li> |
| 13 | 13 | </ul> |
| 14 | 14 | </div> |
| 15 | - </el-card> | |
| 15 | + </div> | |
| 16 | 16 | </el-col> |
| 17 | 17 | <el-col :span="20"> |
| 18 | 18 | <el-card> |
| ... | ... | @@ -233,28 +233,6 @@ export default { |
| 233 | 233 | border-radius: 4px; |
| 234 | 234 | } |
| 235 | 235 | |
| 236 | - .treeview { | |
| 237 | - .list-group { | |
| 238 | - padding: 0; | |
| 239 | - margin: 0; | |
| 240 | - list-style: none; | |
| 241 | - | |
| 242 | - .list-group-item { | |
| 243 | - padding: 10px 15px; | |
| 244 | - margin-bottom: -1px; | |
| 245 | - border: 1px solid #ddd; | |
| 246 | - cursor: pointer; | |
| 247 | - | |
| 248 | - &:hover { | |
| 249 | - background-color: #f5f5f5; | |
| 250 | - } | |
| 251 | - | |
| 252 | - &.vc-node-selected { | |
| 253 | - background-color: #409EFF; | |
| 254 | - color: #fff; | |
| 255 | - } | |
| 256 | - } | |
| 257 | - } | |
| 258 | - } | |
| 236 | + | |
| 259 | 237 | } |
| 260 | 238 | </style> |
| 261 | 239 | \ No newline at end of file | ... | ... |
src/views/oa/editExamineStaffList.vue
| ... | ... | @@ -10,7 +10,7 @@ |
| 10 | 10 | </div> |
| 11 | 11 | </div> |
| 12 | 12 | |
| 13 | - <el-form ref="form" :model="editExamineStaffInfo" label-width="120px"> | |
| 13 | + <el-form ref="form" :model="editExamineStaffInfo" label-width="120px" class="text-left"> | |
| 14 | 14 | <el-row> |
| 15 | 15 | <el-col :span="24"> |
| 16 | 16 | <el-form-item :label="$t('editExamineStaff.staffName')"> |
| ... | ... | @@ -37,7 +37,7 @@ |
| 37 | 37 | <el-row> |
| 38 | 38 | <el-col :span="24"> |
| 39 | 39 | <el-form-item :label="$t('editExamineStaff.staffPhoto')"> |
| 40 | - <upload-image-url ref="uploadImage" :image-count="1" @notifyUploadImage="handleUploadImage"> | |
| 40 | + <upload-image-url ref="uploadImage" :image-count="1" @notifyUploadCoverImage="handleUploadImage"> | |
| 41 | 41 | </upload-image-url> |
| 42 | 42 | </el-form-item> |
| 43 | 43 | </el-col> |
| ... | ... | @@ -108,7 +108,7 @@ export default { |
| 108 | 108 | methods: { |
| 109 | 109 | handleUploadImage(images) { |
| 110 | 110 | if (images.length > 0) { |
| 111 | - this.editExamineStaffInfo.headerImg = images[0].fileId | |
| 111 | + this.editExamineStaffInfo.headerImg = images[0] | |
| 112 | 112 | } else { |
| 113 | 113 | this.editExamineStaffInfo.headerImg = '' |
| 114 | 114 | } | ... | ... |
src/views/oa/examineProjectManageList.vue
| ... | ... | @@ -5,7 +5,7 @@ |
| 5 | 5 | <div slot="header" class="flex justify-between"> |
| 6 | 6 | <span>{{ $t('examineProjectManage.search.title') }}</span> |
| 7 | 7 | </div> |
| 8 | - <el-row :gutter="20"> | |
| 8 | + <el-row :gutter="20" > | |
| 9 | 9 | <el-col :span="6"> |
| 10 | 10 | <el-input v-model="searchForm.name" :placeholder="$t('examineProjectManage.search.namePlaceholder')" |
| 11 | 11 | clearable /> | ... | ... |
src/views/oa/printOwnerVotingList.vue
src/views/oa/printQuestionAnswerList.vue
| 1 | 1 | <template> |
| 2 | 2 | <div class="print-question-answer-container"> |
| 3 | - <el-card> | |
| 3 | + | |
| 4 | 4 | <div class="text-center"> |
| 5 | 5 | <h1>{{ printQuestionAnswerInfo.qaName }}</h1> |
| 6 | 6 | </div> |
| ... | ... | @@ -59,7 +59,7 @@ |
| 59 | 59 | {{ $t('common.cancel') }} |
| 60 | 60 | </el-button> |
| 61 | 61 | </div> |
| 62 | - </el-card> | |
| 62 | + | |
| 63 | 63 | </div> |
| 64 | 64 | </template> |
| 65 | 65 | ... | ... |
src/views/oa/visitManageList.vue
| ... | ... | @@ -168,6 +168,7 @@ |
| 168 | 168 | import { listVisits, listVisitTypes } from '@/api/oa/visitManageApi' |
| 169 | 169 | import { getDict } from '@/api/community/communityApi' |
| 170 | 170 | import { getCommunityId } from '@/api/community/communityApi' |
| 171 | +import { jumpToIot } from '@/api/user/menuApi' | |
| 171 | 172 | |
| 172 | 173 | export default { |
| 173 | 174 | name: 'VisitManageList', |
| ... | ... | @@ -274,7 +275,8 @@ export default { |
| 274 | 275 | this._listVisits(1, this.page.size) |
| 275 | 276 | }, |
| 276 | 277 | _toIotVisit() { |
| 277 | - this.$router.push('/pages/accessControl/visitManage') | |
| 278 | + //this.$router.push('/pages/accessControl/visitManage') | |
| 279 | + jumpToIot('/#/pages/accessControl/visitManage') | |
| 278 | 280 | }, |
| 279 | 281 | _toVisitDetail(visit) { |
| 280 | 282 | this.$router.push(`/pages/accessControl/visitDetail?visitId=${visit.visitId}&phoneNumber=${visit.phoneNumber}`) | ... | ... |