diff --git a/base-manager-ui/admin/src/pages/basicset/addmatter/Synopsis.vue b/base-manager-ui/admin/src/pages/basicset/addmatter/Synopsis.vue index c0fcaefa694f27e50247868558d7c0eb05d60cad..666170115cd5a6dbc1daaf34a52124ce8e21571f 100644 --- a/base-manager-ui/admin/src/pages/basicset/addmatter/Synopsis.vue +++ b/base-manager-ui/admin/src/pages/basicset/addmatter/Synopsis.vue @@ -32,10 +32,11 @@ export default { <style lang="less" scoped> .synopsis { - height: 100%; + height: auto; width: 100%; padding: 0px 10px; } + /deep/.ant-tabs-nav-container { border-bottom: 1px solid #f0f0f0 !important; } diff --git a/base-manager-ui/admin/src/pages/basicset/addmatter/components/AddSynopsis.vue b/base-manager-ui/admin/src/pages/basicset/addmatter/components/AddSynopsis.vue index c8d58ea553590879225aa7f003db33e1cdf9547a..5d0eb6d0f9a28fddedd8fc91c4541001852d0fce 100644 --- a/base-manager-ui/admin/src/pages/basicset/addmatter/components/AddSynopsis.vue +++ b/base-manager-ui/admin/src/pages/basicset/addmatter/components/AddSynopsis.vue @@ -64,15 +64,19 @@ <a-col :span="8"> <a-form-model-item label="鏄惁鏀惰垂" prop="isChargesShow"> <a-radio-group v-model="baseform.isChargesShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isChargesShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> <a-row> <a-col :span="8"> - <a-form-model-item label="娉曞畾鍔炵粨鏃堕檺锛�" props="isTimely"> + <a-form-model-item label="娉曞畾鍔炵粨鏃堕檺" props="legalTimeLimitShow"> <a-input-group compact> <a-select style="width: 30%" @@ -85,15 +89,15 @@ <a-input-number v-model="baseform.legalTimeLimitShow" :disabled="isTimely !== '2'" - placeholder="璇疯緭鍏ュ伐浣滄棩鏁伴噺" - :min="0" + placeholder="璇疯緭鍏ュ伐浣滄棩鏁�" + :min="1" style="width: 70%" /> </a-input-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鎵胯鍔炵粨鏃堕檺锛�" props="isPromise"> + <a-form-model-item label="鎵胯鍔炵粨鏃堕檺" props="promiseTimeLimitShow"> <a-input-group compact> <a-select style="width: 30%" @@ -106,8 +110,8 @@ <a-input-number v-model="baseform.promiseTimeLimitShow" :disabled="isPromise !== '2'" - placeholder="璇疯緭鍏ュ伐浣滄棩鏁伴噺" - :min="0" + placeholder="璇疯緭鍏ュ伐浣滄棩鏁�" + :min="1" style="width: 70%" /> </a-input-group> @@ -115,16 +119,19 @@ </a-col> <a-col :span="8"> <a-form-model-item - label="璁よ瘉绛夌骇闇€姹傦細" + label="璁よ瘉绛夌骇闇€姹�" prop="certificationLevelsShow" > <a-select v-model="baseform.certificationLevelsShow" placeholder="璇烽€夋嫨璁よ瘉绛夌骇闇€姹�" > - <a-select-option v-for="v in certification" :key="v" :value="v">{{ - v - }}</a-select-option> + <a-select-option + v-for="(v, key) in matterDict.certificationLevelsShow" + :key="v" + :value="key" + >{{ v }}</a-select-option + > </a-select> </a-form-model-item> </a-col> @@ -159,9 +166,9 @@ placeholder="璇烽€夋嫨缃戝姙绫诲瀷" > <a-select-option - v-for="v in onlineTypeItem" + v-for="(v, key) in matterDict.onlineType" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -189,16 +196,16 @@ placeholder="璇烽€夋嫨浜嬮」绫诲瀷" > <a-select-option - v-for="v in matterDict.eventTypeShow" + v-for="(v, key) in matterDict.eventTypeShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鑱斿姙鏈烘瀯" props="isLinked"> + <a-form-model-item label="鑱斿姙鏈烘瀯" props="jointInfoShow"> <a-input-group compact> <a-select style="width: 30%" @@ -215,9 +222,9 @@ style="width: 70%" > <a-select-option - v-for="v in jointInfoShowItem" + v-for="{ v, key } in matterDict.jointInfoShowItem" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -233,9 +240,9 @@ placeholder="璇烽€夋嫨琛屼娇灞傜骇" > <a-select-option - v-for="v in matterDict.performHierarchyShow" + v-for="(v, key) in matterDict.performHierarchyShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -245,9 +252,9 @@ <a-form-model-item label="涓婚绫诲瀷" prop="type"> <a-select v-model="baseform.type" placeholder="璇烽€夋嫨涓婚绫诲瀷"> <a-select-option - v-for="v in matterDict.type" + v-for="(v, key) in matterDict.type" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -305,7 +312,11 @@ import { mapGetters } from "vuex"; import local from "@/utils/local"; import { getDeptList } from "@/services/dept"; -import { saveAddMatter, addMatterToSite } from "@/services/matter"; +import { + saveAddMatter, + addMatterToSite, + getMatterInfo, +} from "@/services/matter"; export default { data() { return { @@ -362,7 +373,28 @@ export default { computed: { ...mapGetters("site", ["matterDict"]), }, + watch: { + isTimely(newVal) { + if (newVal === "1" || newVal === undefined) { + this.baseform.legalTimeLimitShow = ""; + } + }, + isPromise(newVal) { + if (newVal === "1" || newVal === undefined) { + this.baseform.promiseTimeLimitShow = ""; + } + }, + isLinked(newVal) { + if (newVal === "1" || newVal === undefined) { + this.baseform.jointInfoShow = undefined; + } + }, + }, created() { + if (this.$route.query.edit == 1) { + let matterId = this.$route.query.matterId; + this.getMatterInfo(matterId); + } console.log(this.matterDict); this.getDeptListData(); }, @@ -375,6 +407,14 @@ export default { this.deptData = data.data; } }, + // 缂栬緫鏃惰幏鍙栦俊鎭� + async getMatterInfo(id) { + let res = await getMatterInfo({ id }); + if (res.data.code === 1) { + this.baseform = res.data.data; + } + }, + // 淇濆瓨 handleOk() { this.$refs.form.validate(async (valid) => { if (valid) { @@ -391,13 +431,35 @@ export default { siteId: this.siteId, matterIds: data.entity.id + "", }); - this.handleReset(); + this.baseform = data.entity; } + } else { + this.$message.warning("璇峰畬鍠勮〃鍗�"); } }); }, + // 閲嶇疆 handleReset() { - this.$refs.form.resetFields(); + let _this = this; + this.$confirm({ + title: "绯荤粺鎻愮ず", + content: "璇ユ搷浣滀細閲嶇疆鏁翠釜椤甸潰淇℃伅锛岀‘瀹氳閲嶇疆鍚楋紵", + okText: "纭畾", + okType: "danger", + cancelText: "鍙栨秷", + centered: true, + icon: "exclamation-circle", + maskClosable: true, + onOk() { + _this.isTimely = undefined; // 鏄惁鍙婃椂鍔炵悊 + _this.isPromise = undefined; // 鎵胯鏄惁鍙婃椂鍔炵悊 + _this.isLinked = undefined; // 鏄惁鏈夎仈鍔炴満鏋� + _this.$refs.form.resetFields(); + }, + onCancel() { + console.log("Cancel"); + }, + }); }, // 瀹屽杽鏇村 checkMore() { @@ -413,6 +475,11 @@ export default { </script> <style lang="less" scoped> +.addsynopsis { + width: 100%; + height: 100%; +} + .more { cursor: pointer; } diff --git a/base-manager-ui/admin/src/pages/basicset/addmatter/components/baseMessage.vue b/base-manager-ui/admin/src/pages/basicset/addmatter/components/baseMessage.vue index 82ab96391a664d0aa3ae17b124f8310e0f35d7ae..7ce775a85a455237011c22e0758f0d07f9a5581e 100644 --- a/base-manager-ui/admin/src/pages/basicset/addmatter/components/baseMessage.vue +++ b/base-manager-ui/admin/src/pages/basicset/addmatter/components/baseMessage.vue @@ -11,9 +11,9 @@ :label-col="{ span: 6 }" :wrapper-col="{ span: 18 }" > - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="浜嬮」鍚嶇О锛�" prop="matterName"> + <a-form-model-item label="浜嬮」鍚嶇О" prop="matterName"> <a-input v-model="baseform.matterName" placeholder="璇疯緭鍏ヤ簨椤瑰悕绉�" @@ -21,7 +21,7 @@ </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鑻辨枃鍚嶏細" prop="englishName"> + <a-form-model-item label="鑻辨枃鍚�" prop="englishName"> <a-input v-model="baseform.englishName" placeholder="璇疯緭鍏ヤ簨椤硅嫳鏂囧悕绉�" @@ -29,7 +29,7 @@ </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="浜嬮」缂栧彿锛�" prop="matterNo"> + <a-form-model-item label="浜嬮」缂栧彿" prop="matterNo"> <a-input v-model="baseform.matterNo" placeholder="璇疯緭鍏ヤ簨椤圭紪鍙�" @@ -38,20 +38,26 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鎺掑簭锛�" prop="sort"> + <a-form-model-item label="鎺掑簭" prop="sort"> <a-input v-model="baseform.sort" placeholder="璇疯緭鍏ュ簭鍙�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鎵€灞為儴闂細" prop="belongDept"> - <a-select v-model="baseform.belongDept" placeholder="璇烽€夋嫨閮ㄩ棬"> + <a-form-model-item label="鎵€灞為儴闂�" prop="deptCode"> + <a-select + showSearch + v-model="baseform.deptCode" + optionFilterProp="label" + placeholder="璇烽€夋嫨閮ㄩ棬" + > <a-select-option v-for="v in deptData" :key="v.id" - :value="v.name" + :value="v.deptNumber" + :label="v.name" > {{ v.name }}</a-select-option > @@ -60,12 +66,16 @@ </a-col> <a-col :span="8"> - <a-form-model-item label="鏈嶅姟瀵硅薄锛�" prop="appoveObjectShow"> + <a-form-model-item label="鏈嶅姟瀵硅薄" prop="appoveObjectShow"> <a-select v-model="baseform.appoveObjectShow" placeholder="璇烽€夋嫨鏈嶅姟瀵硅薄" > - <a-select-option v-for="v in appove" :key="v" :value="v"> + <a-select-option + v-for="(v, key) in matterDict.appoveObjectShow" + :key="v" + :value="key" + > {{ v }} </a-select-option> </a-select> @@ -73,38 +83,50 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="閫氬姙鑼冨洿锛�" prop="operatScopeShow"> + <a-form-model-item label="閫氬姙鑼冨洿" prop="operatScopeShow"> <a-select v-model="baseform.operatScopeShow" placeholder="璇烽€夋嫨閫氬姙鑼冨洿" > - <a-select-option v-for="v in operat" :key="v" :value="v"> + <a-select-option + v-for="(v, key) in matterDict.operatScopeShow" + :key="v" + :value="key" + > {{ v }} </a-select-option> </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鍔炰欢绫诲瀷锛�" prop="appoveTimeLimitShow"> + <a-form-model-item label="鍔炰欢绫诲瀷" prop="appoveTimeLimitShow"> <a-select v-model="baseform.appoveTimeLimitShow" placeholder="璇烽€夋嫨鍔炰欢绫诲瀷" > - <a-select-option v-for="v in appoveTime" :key="v" :value="v"> + <a-select-option + v-for="(v, key) in matterDict.appoveTimeLimitShow" + :key="v" + :value="key" + > {{ v }} </a-select-option> </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鍔炵悊褰㈠紡锛�" prop="handleType"> + <a-form-model-item label="鍔炵悊褰㈠紡" prop="handleType"> <a-select v-model="baseform.handleType" placeholder="璇烽€夋嫨鍔炵悊褰㈠紡" > - <a-select-option v-for="v in handleType" :key="v" :value="v"> + <a-select-option + v-for="(v, key) in matterDict.handleType" + :key="v" + :value="key" + > {{ v }} </a-select-option> </a-select> @@ -112,60 +134,70 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="娉曞畾鍔炵粨鏃堕檺锛�" props="isTimely"> - <a-select - v-model="isTimely" - placeholder="璇烽€夋嫨" - style="width: 200px" - @change="handleChangeLegal" - > - <a-select-option value="1">鍗冲姙</a-select-option> - <a-select-option value="2">宸ヤ綔鏃� </a-select-option> - </a-select> - <a-input-number - v-model="baseform.legalTimeLimitShow" - :disabled="isTimely !== '2'" - placeholder="璇疯緭鍏ュ伐浣滄棩鏁伴噺" - :min="0" - style="width: 350px" - /> + <a-form-model-item label="娉曞畾鍔炵粨鏃堕檺" props="legalTimeLimitShow"> + <a-input-group compact> + <a-select + style="width: 30%" + v-model="isTimely" + placeholder="璇烽€夋嫨" + > + <a-select-option value="1">鍗冲姙</a-select-option> + <a-select-option value="2">宸ヤ綔鏃� </a-select-option> + </a-select> + <a-input-number + v-model="baseform.legalTimeLimitShow" + :disabled="isTimely !== '2'" + placeholder="璇疯緭鍏ュ伐浣滄棩鏁�" + :min="1" + style="width: 70%" + /> + </a-input-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鎵胯鍔炵粨鏃堕檺锛�" props="isPromise"> - <a-select - v-model="isPromise" - placeholder="璇烽€夋嫨" - style="width: 200px" - @change="handleChangePromise" - > - <a-select-option value="1">鍗冲姙</a-select-option> - <a-select-option value="2">宸ヤ綔鏃� </a-select-option> - </a-select> - <a-input-number - v-model="baseform.promiseTimeLimitShow" - :disabled="isPromise !== '2'" - placeholder="璇疯緭鍏ュ伐浣滄棩鏁伴噺" - style="width: 350px" - /> + <a-form-model-item + label="鎵胯鍔炵粨鏃堕檺" + props="promiseTimeLimitShow" + > + <a-input-group compact> + <a-select + style="width: 30%" + v-model="isPromise" + placeholder="璇烽€夋嫨" + > + <a-select-option value="1">鍗冲姙</a-select-option> + <a-select-option value="2">宸ヤ綔鏃� </a-select-option> + </a-select> + <a-input-number + v-model="baseform.promiseTimeLimitShow" + :disabled="isPromise !== '2'" + placeholder="璇疯緭鍏ュ伐浣滄棩鏁�" + :min="1" + style="width: 70%" + /> + </a-input-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鏄惁鏀惰垂锛�" prop="isChargesShow"> + <a-form-model-item label="鏄惁鏀惰垂" prop="isChargesShow"> <a-radio-group v-model="baseform.isChargesShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isChargesShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> <a-form-model-item - label="璁よ瘉绛夌骇闇€姹傦細" + label="璁よ瘉绛夌骇闇€姹�" prop="certificationLevelsShow" > <a-select @@ -173,16 +205,16 @@ placeholder="璇烽€夋嫨璁よ瘉绛夌骇闇€姹�" > <a-select-option - v-for="v in certification" + v-for="(v, key) in matterDict.certificationLevelsShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="璁″垝鐢熸晥鏃ユ湡锛�" prop="planTakeTime"> + <a-form-model-item label="璁″垝鐢熸晥鏃ユ湡" prop="planTakeTime"> <a-date-picker v-model="baseform.planTakeTime" type="date" @@ -193,7 +225,7 @@ </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鎵胯鐢熸晥鏃ユ湡锛�" prop="promiseTakeTime"> + <a-form-model-item label="鎵胯鐢熸晥鏃ユ湡" prop="promiseTakeTime"> <a-date-picker v-model="baseform.promiseTakeTime" type="date" @@ -205,90 +237,87 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item - label="娉曞畾鏃堕檺鍔炵粨璇存槑锛�" - prop="legalEndExplain" - > + <a-form-model-item label="娉曞畾鏃堕檺鍔炵粨璇存槑" prop="legalEndExplain"> <a-textarea v-model="baseform.legalEndExplain" - :auto-size="{ minRows: 3, maxRows: 5 }" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> <a-col :span="8"> <a-form-model-item - label="鎵胯鏃堕檺鍔炵粨璇存槑锛�" + label="鎵胯鏃堕檺鍔炵粨璇存槑" prop="promiseEndExplain" > <a-textarea v-model="baseform.promiseEndExplain" - :auto-size="{ minRows: 3, maxRows: 5 }" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鐗瑰埆绋嬪簭锛�" prop="specialProcedure"> + <a-form-model-item label="鐗瑰埆绋嬪簭" prop="specialProcedure"> <a-textarea v-model="baseform.specialProcedure" - :auto-size="{ minRows: 3, maxRows: 5 }" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> </a-row> - </a-form-model> - </div> - - <!-- 绐楀彛鍔炵悊 --> - <div> - <div class="color_title mt">绐楀彛鍔炵悊</div> - <a-form-model - :model="windowform" - ref="windowform" - :label-col="{ span: 6 }" - :wrapper-col="{ span: 18 }" - > - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <!-- 绐楀彛鍔炵悊 --> + <div class="color_title mt">绐楀彛鍔炵悊</div> + <a-row> <a-col :span="8"> <a-form-model-item label="鍒扮幇鍦烘鏁帮細" prop="windowToTheSceneNum"> <a-input - v-model.number="windowform.windowToTheSceneNum" + v-model.number="baseform.windowToTheSceneNum" suffix="娆�" /> </a-form-model-item> </a-col> - <a-col :span="8"> - <a-form-model-item label="棰勭害鍔炵悊锛�" prop="isOnlineSubscribeShow"> - <a-radio-group v-model="windowform.isOnlineSubscribeShow"> - <a-radio value="1">鏄�</a-radio> - <a-radio value="2">鍚�</a-radio> + <a-form-model-item label="棰勭害鍔炵悊" prop="isOnlineSubscribeShow"> + <a-radio-group v-model="baseform.isOnlineSubscribeShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isOnlineSubscribeShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> - <a-col :span="8"> - <a-form-model-item label="鐗╂祦蹇€掞細" prop="isExpressTakeShow"> - <a-radio-group v-model="windowform.isExpressTakeShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="鐗╂祦蹇€�" prop="isExpressTakeShow"> + <a-radio-group v-model="baseform.isExpressTakeShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isExpressTakeShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> - - <a-row - :gutter="[8, 20]" - type="flex" - justify="start" - prop="isProvinceAcquisitionShow" - > - <a-col :span="8"> - <a-form-model-item label="鍏ㄧ渷灏辫繎鍙栦欢锛�"> - <a-radio-group v-model="windowform.isProvinceAcquisitionShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-row> + <a-col :span="8"> + <a-form-model-item + label="鍏ㄧ渷灏辫繎鍙栦欢" + prop="isProvinceAcquisitionShow" + > + <a-radio-group v-model="baseform.isProvinceAcquisitionShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isProvinceAcquisitionShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> @@ -297,15 +326,18 @@ label="鍏ㄧ渷灏辫繎鍔炵悊锛�" prop="isApplyProvinceShow" > - <a-radio-group v-model="windowform.isApplyProvinceShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-radio-group v-model="baseform.isApplyProvinceShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isApplyProvinceShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> - - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="16"> <a-form-model-item label="蹇呴』鍒扮幇鍦哄師鍥狅細" @@ -314,58 +346,49 @@ prop="mustSceneExplain" > <a-textarea - v-model="windowform.mustSceneExplain" - :auto-size="{ minRows: 3, maxRows: 5 }" + v-model="baseform.mustSceneExplain" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> </a-row> - </a-form-model> - </div> - - <!-- 缃戜笂鍔炵悊 --> - <div> - <div class="color_title mt">缃戜笂鍔炵悊</div> - <a-form-model - :model="onlineform" - ref="onlineform" - :label-col="{ span: 6 }" - :wrapper-col="{ span: 18 }" - > - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <!-- 缃戜笂鍔炵悊 --> + <div class="color_title mt">缃戜笂鍔炵悊</div> + <a-row> <a-col :span="8"> - <a-form-model-item label="缃戝姙绫诲瀷锛�" prop="onlineType"> + <a-form-model-item label="缃戝姙绫诲瀷" prop="onlineType"> <a-select - v-model="onlineform.onlineType" + v-model="baseform.onlineType" placeholder="璇烽€夋嫨缃戝姙绫诲瀷" > <a-select-option - v-for="v in onlineTypeItem" + v-for="(v, key) in matterDict.onlineType" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鍒扮幇鍦烘鏁帮細" prop="onlineToTheSceneNum"> + <a-form-model-item label="鍒扮幇鍦烘鏁�" prop="onlineToTheSceneNum"> <a-input - v-model.number="onlineform.onlineToTheSceneNum" + v-model.number="baseform.onlineToTheSceneNum" suffix="娆�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="缃戜笂鍔炵悊娣卞害锛�" prop="onlineOperatDeep"> + <a-form-model-item label="缃戜笂鍔炵悊娣卞害" prop="onlineOperatDeep"> <a-select - v-model="onlineform.onlineOperatDeep" + v-model="baseform.onlineOperatDeep" placeholder="璇烽€夋嫨缃戜笂鍔炵悊娣卞害" > <a-select-option - v-for="v in onlineOperatDeepItem" + v-for="(v, key) in matterDict.onlineOperatDeep" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -373,82 +396,81 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> <a-form-model-item - label="鏀寔鐗╂祦蹇€掞細" + label="鏀寔鐗╂祦蹇€�" prop="isExpressTakeOnlineShow" > - <a-radio-group v-model="onlineform.isExpressTakeOnlineShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-radio-group v-model="baseform.isExpressTakeOnlineShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isExpressTakeOnlineShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="涓婇棬鏀跺彇鏉愭枡锛�" prop="isDoorTakeShow"> - <a-radio-group v-model="onlineform.isDoorTakeShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="涓婇棬鏀跺彇鏉愭枡" prop="isDoorTakeShow"> + <a-radio-group v-model="baseform.isDoorTakeShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isDoorTakeShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="16"> <a-form-model-item - label="蹇呴』鍒扮幇鍦哄師鍥狅細" + label="蹇呴』鍒扮幇鍦哄師鍥�" :label-col="{ span: 3 }" :wrapper-col="{ span: 21 }" prop="reaonlineMustSceneExplainson" > <a-textarea - v-model="onlineform.reaonlineMustSceneExplainson" - :auto-size="{ minRows: 3, maxRows: 5 }" + v-model="baseform.reaonlineMustSceneExplainson" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> </a-row> - </a-form-model> - </div> - - <!-- 甯歌淇℃伅 --> - <div> - <div class="color_title mt">甯歌淇℃伅</div> - <a-form-model - :model="routineform" - ref="routineform" - :label-col="{ span: 6 }" - :wrapper-col="{ span: 18 }" - > - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <!-- 甯歌淇℃伅 --> + <div class="color_title mt">甯歌淇℃伅</div> + <a-row> <a-col :span="8"> - <a-form-model-item label="瀹炴柦涓讳綋锛�" prop="performDeptType"> + <a-form-model-item label="瀹炴柦涓讳綋" prop="performDeptType"> <a-input - v-model="routineform.performDeptType" + v-model="baseform.performDeptType" placeholder="璇疯緭鍏ュ疄鏂戒富浣�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="浜嬮」鐗堟湰锛�" prop="matterEdition"> + <a-form-model-item label="浜嬮」鐗堟湰" prop="matterEdition"> <a-input - v-model="routineform.matterEdition" + v-model="baseform.matterEdition" placeholder="璇疯緭鍏ヤ簨椤圭増鏈�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="浜嬮」绫诲瀷锛�" prop="eventTypeShow"> + <a-form-model-item label="浜嬮」绫诲瀷" prop="eventTypeShow"> <a-select - v-model="routineform.eventTypeShow" + v-model="baseform.eventTypeShow" placeholder="璇烽€夋嫨浜嬮」绫诲瀷" > <a-select-option - v-for="v in eventTypeShowItem" + v-for="(v, key) in matterDict.eventTypeShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -456,50 +478,47 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="琛屼娇灞傜骇锛�" prop="performHierarchyShow"> + <a-form-model-item label="琛屼娇灞傜骇" prop="performHierarchyShow"> <a-select - v-model="routineform.performHierarchyShow" + v-model="baseform.performHierarchyShow" placeholder="璇烽€夋嫨琛屼娇灞傜骇" > <a-select-option - v-for="v in performHierarchyShowItem" + v-for="(v, key) in matterDict.performHierarchyShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鏉冨姏鏉ユ簮锛�" prop="powerSourceShow"> + <a-form-model-item label="鏉冨姏鏉ユ簮" prop="powerSourceShow"> <a-select - v-model="routineform.powerSourceShow" + v-model="baseform.powerSourceShow" placeholder="璇烽€夋嫨鏉冨姏鏉ユ簮" > <a-select-option - v-for="v in powerSourceShowItem" + v-for="(v, key) in matterDict.powerSourceShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item - label="瀹炴柦涓讳綋鎬ц川锛�" - prop="performDeptTypeShow" - > + <a-form-model-item label="瀹炴柦涓讳綋鎬ц川" prop="performDeptTypeShow"> <a-select - v-model="routineform.performDeptTypeShow" + v-model="baseform.performDeptTypeShow" placeholder="璇烽€夋嫨瀹炴柦涓婚鎬ц川" > <a-select-option - v-for="v in performDeptTypeShowItem" + v-for="(v, key) in matterDict.performDeptTypeShow" :key="v" - :value="v" + :value="key" >{{ v }}</a-select-option > </a-select> @@ -507,226 +526,258 @@ </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> <a-form-model-item - label="杩涢┗鏀垮姟澶у巺锛�" + label="杩涢┗鏀垮姟澶у巺" prop="goveServiceCenterShow" > - <a-radio-group v-model="routineform.goveServiceCenterShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-radio-group v-model="baseform.goveServiceCenterShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.goveServiceCenterShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鑷姪缁堢鍔炵悊锛�" prop="terminalHandle"> - <a-radio-group v-model="routineform.terminalHandle"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="鑷姪缁堢鍔炵悊" prop="terminalHandle"> + <a-radio-group v-model="baseform.terminalHandle"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.terminalHandle" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鏄惁缃戝姙锛�" prop="isOnline"> - <a-radio-group v-model="routineform.isOnline"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="鏄惁缃戝姙" prop="isOnline"> + <a-radio-group v-model="baseform.isOnline"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isOnline" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鏀寔缃戜笂鏀粯锛�" prop="isOnlinePayShow"> - <a-radio-group v-model="routineform.isOnlinePayShow"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="鏀寔缃戜笂鏀粯" prop="isOnlinePayShow"> + <a-radio-group v-model="baseform.isOnlinePayShow"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.isOnlinePayShow" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="濮旀墭閮ㄩ棬锛�" prop="entrustmentDepartmen"> - <a-radio-group v-model="routineform.entrustmentDepartmen"> - <a-radio value="鏄�">鏄�</a-radio> - <a-radio value="鍚�">鍚�</a-radio> + <a-form-model-item label="濮旀墭閮ㄩ棬" prop="entrustmentDepartmen"> + <a-radio-group v-model="baseform.entrustmentDepartmen"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.entrustmentDepartmen" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鑱斿姙鏈烘瀯锛�"> - <a-select - v-model="isLinked" - placeholder="璇烽€夋嫨" - style="width: 200px" - @change="handleChangeLinked" - > - <a-select-option value="1">鏃�</a-select-option> - <a-select-option value="2">鏈� </a-select-option> - </a-select> - - <a-select - v-model="routineform.jointInfoShow" - :disabled="isLinked !== '2'" - placeholder="璇烽€夋嫨鑱斿姙鏈烘瀯" - > - <a-select-option - v-for="v in jointInfoShowItem" - :key="v" - :value="v" - >{{ v }}</a-select-option + <a-form-model-item label="鑱斿姙鏈烘瀯" prop="jointInfoShow"> + <a-input-group compact> + <a-select + style="width: 30%" + v-model="isLinked" + placeholder="璇烽€夋嫨" > - </a-select> + <a-select-option value="1">鏃�</a-select-option> + <a-select-option value="2">鏈� </a-select-option> + </a-select> + <a-select + v-model="baseform.jointInfoShow" + :disabled="isLinked !== '2'" + placeholder="璇烽€夋嫨鑱斿姙鏈烘瀯" + style="width: 70%" + > + <a-select-option + v-for="{ v, key } in matterDict.jointInfoShowItem" + :key="v" + :value="key" + >{{ v }}</a-select-option + > + </a-select> + </a-input-group> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="浜嬮」鐘舵€侊細" prop="matterStatus"> - <a-radio-group v-model="routineform.matterStatus"> - <a-radio value="鍦ㄧ敤">鍦ㄧ敤</a-radio> - <a-radio value="鍋滅敤">鍋滅敤</a-radio> + <a-form-model-item label="浜嬮」鐘舵€�" prop="matterStatus"> + <a-radio-group v-model="baseform.matterStatus"> + <a-radio + :value="key" + v-for="(v, key) in matterDict.matterStatus" + :key="v" + >{{ v }}</a-radio + > </a-radio-group> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鏁伴噺闄愬埗锛�"> - <a-select - v-model="isCount" - placeholder="璇烽€夋嫨" - style="width: 200px" - @change="handleChangeLimit" - > - <a-select-option value="1">鏃�</a-select-option> - <a-select-option value="2">鏈� </a-select-option> - </a-select> - <a-input-number - v-model="routineform.numberLimit" - placeholder="璇疯緭鍏ユ暟瀛�" - style="width: 350px" - :min="0" - :disabled="isCount !== '2'" - ></a-input-number> - </a-form-model-item> - </a-col> - <a-col :span="8"> - <a-form-model-item label="涓婚绫诲瀷锛�" prop="type"> - <a-select v-model="routineform.type" placeholder="璇烽€夋嫨涓婚绫诲瀷"> - <a-select-option v-for="v in typeItem" :key="v" :value="v">{{ - v - }}</a-select-option> + <a-form-model-item label="鏁伴噺闄愬埗" prop="numberLimit"> + <a-input-group compact> + <a-select + style="width: 30%" + v-model="isCount" + placeholder="璇烽€夋嫨" + > + <a-select-option value="1">鏃�</a-select-option> + <a-select-option value="2">鏈� </a-select-option> + </a-select> + <a-input-number + v-model="baseform.numberLimit" + placeholder="璇疯緭鍏ユ暟瀛�" + style="width: 70%" + :min="1" + :disabled="isCount !== '2'" + ></a-input-number> + </a-input-group> + </a-form-model-item> + </a-col> + <a-col :span="8"> + <a-form-model-item label="涓婚绫诲瀷" prop="type"> + <a-select v-model="baseform.type" placeholder="璇烽€夋嫨涓婚绫诲瀷"> + <a-select-option + v-for="(v, key) in matterDict.type" + :key="v" + :value="key" + >{{ v }}</a-select-option + > </a-select> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鍩烘湰缂栫爜锛�" prop="baseCode"> + <a-form-model-item label="鍩烘湰缂栫爜" prop="baseCode"> <a-input - v-model="routineform.baseCode" + v-model="baseform.baseCode" placeholder="璇疯緭鍏ュ熀鏈紪鐮�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="瀹炴柦缂栫爜锛�" prop="implementCode"> + <a-form-model-item label="瀹炴柦缂栫爜" prop="implementCode"> <a-input - v-model="routineform.implementCode" + v-model="baseform.implementCode" placeholder="璇疯緭鍏ュ疄鏂界紪鐮�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="瀹炴柦涓讳綋缂栫爜锛�" prop="implementBodyCode"> + <a-form-model-item label="瀹炴柦涓讳綋缂栫爜" prop="implementBodyCode"> <a-input - v-model="routineform.implementBodyCode" + v-model="baseform.implementBodyCode" placeholder="璇疯緭鍏ュ疄鏂戒富浣撶紪鐮�" /> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鍔炵悊椤圭紪鐮侊細" prop="operateItemCode"> + <a-form-model-item label="鍔炵悊椤圭紪鐮�" prop="operateItemCode"> <a-input - v-model="routineform.operateItemCode" + v-model="baseform.operateItemCode" placeholder="璇疯緭鍏ュ姙鐞嗛」缂栫爜" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="涔¢晣琛楅亾鍚嶇О锛�" prop="townshipName"> + <a-form-model-item label="涔¢晣琛楅亾鍚嶇О" prop="townshipName"> <a-input - v-model="routineform.townshipName" + v-model="baseform.townshipName" placeholder="璇疯緭鍏ヤ埂闀囪閬撳悕绉�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="涔¢晣琛楅亾浠g爜锛�" prop="townshipCode"> + <a-form-model-item label="涔¢晣琛楅亾浠g爜" prop="townshipCode"> <a-input - v-model="routineform.townshipCode" + v-model="baseform.townshipCode" placeholder="璇疯緭鍏ヤ埂闀囪閬撲唬鐮�" /> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鏉戝眳绀惧尯鍚嶇О锛�" prop="villageName"> + <a-form-model-item label="鏉戝眳绀惧尯鍚嶇О" prop="villageName"> <a-input - v-model="routineform.villageName" + v-model="baseform.villageName" placeholder="璇疯緭鍏ユ潙灞呯ぞ鍖哄悕绉�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鏉戝眳绀惧尯浠g爜锛�" prop="villageCode"> + <a-form-model-item label="鏉戝眳绀惧尯浠g爜" prop="villageCode"> <a-input - v-model="routineform.villageCode" + v-model="baseform.villageCode" placeholder="璇疯緭鍏ユ潙灞呯ぞ鍖轰唬鐮�" /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鍔炵悊鏃堕棿锛�" prop="operateTime"> + <a-form-model-item label="鍔炵悊鏃堕棿" prop="operateTime"> <a-input - v-model="routineform.operateTime" + v-model="baseform.operateTime" placeholder="璇疯緭鍏ュ姙鐞嗘椂闂�" /> </a-form-model-item> </a-col> </a-row> - <a-row :gutter="[8, 20]" type="flex" justify="start"> + <a-row> <a-col :span="8"> - <a-form-model-item label="鍔炵悊鍦扮偣锛�" prop="operateSite"> + <a-form-model-item label="鍔炵悊鍦扮偣" prop="operateSite"> <a-textarea - v-model="routineform.operateSite" - :auto-size="{ minRows: 3, maxRows: 5 }" + v-model="baseform.operateSite" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鍜ㄨ鏂瑰紡锛�" prop="cousultingShow"> + <a-form-model-item label="鍜ㄨ鏂瑰紡" prop="cousultingShow"> <a-textarea - v-model="routineform.cousultingShow" - :auto-size="{ minRows: 3, maxRows: 5 }" + v-model="baseform.cousultingShow" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> <a-col :span="8"> - <a-form-model-item label="鐩戠潱鎶曡瘔鏂瑰紡锛�" prop="superviseShow"> + <a-form-model-item label="鐩戠潱鎶曡瘔鏂瑰紡" prop="superviseShow"> <a-textarea - v-model="routineform.superviseShow" - :auto-size="{ minRows: 3, maxRows: 5 }" + v-model="baseform.superviseShow" + :auto-size="{ minRows: 5, maxRows: 5 }" + allow-clear /> </a-form-model-item> </a-col> @@ -734,103 +785,37 @@ </a-form-model> </div> - <div class="btn_box"> - <a-button type="primary" class="mr" @click="handleOk"> 纭畾 </a-button> + <div class="btn_box mb20"> + <a-button type="primary" class="mr" @click="handleOk" :loading="loading"> + 纭畾 + </a-button> <a-button @click="handleReset"> 閲嶇疆 </a-button> </div> </div> </template> <script> -const appove = [ - "浜嬩笟娉曚汉", - "绀句細缁勭粐娉曚汉", - "闈炴硶浜轰紒涓�", - "浼佷笟娉曚汉", - "鑷劧浜�", - "鍏朵粬缁勭粐", -]; -const operat = ["鏃�", "鍏ㄥ浗", "鍏ㄥ競", "鍏ㄥ幙", "鍏ㄩ晣[涔� 琛楅亾]", "璺ㄦ潙[绀惧尯]"]; -const appoveTime = ["缃戠粶鍔炰欢", "琛屾斂瀹℃壒涓€鑸欢", "缁煎悎绐楀彛浠�"]; -const handleType = ["绐楀彛鍔炵悊", "缃戜笂鍔炵悊"]; -const certification = ["瀹炲悕璁よ瘉", "鍗曟闈㈢", "姣忔闈㈢"]; -const onlineTypeItem = ["鍘熶欢棰勫", "鍘熶欢鏍搁獙", "鍏ㄧ▼缃戝姙"]; -const onlineOperatDeepItem = [ - "浜掕仈缃戝挩璇�", - "浜掕仈缃戞敹浠�", - "浜掕仈缃戦瀹�", - "浜掕仈缃戝彈鐞�", - "浜掕仈缃戝姙鐞�", - "浜掕仈缃戝姙鐞嗙粨鏋滀俊鎭弽棣�", - "鍏朵粬", -]; -const eventTypeShowItem = [ - "琛屾斂璁稿彲", - "琛屾斂澶勭綒", - "琛屾斂寮哄埗", - "琛屾斂寰佹敹", - "琛屾斂缁欎粯", - "琛屾斂妫€鏌�", - "琛屾斂纭", - "琛屾斂濂栧姳", - "琛屾斂瑁佸喅", - "鍏朵粬琛屾斂鏉冨姏", - "涓诲姩鏈嶅姟", - "渚濈敵璇锋湇鍔�", - "鍜ㄨ鏌ヨ", - "鏈綊绫讳簨椤�", -]; -const performHierarchyShowItem = [ - "鐪佺骇", - "甯傜骇", - "鍘跨骇", - "闀嘯涔� 琛楅亾]", - "鏉慬绀惧尯]绾�", -]; -const powerSourceShowItem = [ - "娉曞畾鏈骇琛屼娇", - "涓婄骇涓嬫斁", - "涓婄骇鎺堟潈", - "鍚岀骇鎺堟潈", - "涓婄骇濮旀墭", - "鍚岀骇濮旀墭", -]; -const performDeptTypeShowItem = ["娉曞畾鏈哄叧", "鎺堟潈缁勭粐", "鍙楀鎵樼粍缁�"]; -const jointInfoShowItem = ["缃戠粶鐞嗘斂閮�", "鍏叡鏈嶅姟閮�", "鍏氭斂寤鸿閮�"]; -const typeItem = ["娉曞畾鏈哄叧", "鎺堟潈缁勭粐", "鍙楀鎵樼粍缁�"]; - -import { saveAddMatter } from "@/services/matter"; +import { saveAddMatter, addMatterToSite } from "@/services/matter"; import { getDeptList } from "@/services/dept"; import local from "@/utils/local"; - +import { mapGetters } from "vuex"; export default { data() { return { - appove, // 鏈嶅姟瀵硅薄 - operat, // 閫氬姙鑼冨洿閫夐」 - appoveTime, // 鍔炰欢绫诲瀷閫夐」 - handleType, // 鍔炵悊褰㈠紡閫夐」 - certification, // 璁よ瘉绛夌骇閫夐」 - onlineTypeItem, // 缃戜笂鍔炰欢绫诲瀷閫夐」 - onlineOperatDeepItem, // 缃戜笂鍔炵悊娣卞害閫夐」 - eventTypeShowItem, // 浜嬮」绫诲瀷閫夐」 - performHierarchyShowItem, // 琛屼娇灞傜骇閫夐」 - powerSourceShowItem, // 鏉冨姏鏉ユ簮閫夐」 - performDeptTypeShowItem, // 瀹炴柦涓讳綋鎬ц川閫夐」 - jointInfoShowItem, // 鑱斿姙鏈烘瀯閫夐」 - typeItem, // 涓婚绫诲瀷閫夐」 + loading: false, isTimely: undefined, // 鏄惁鍙婃椂鍔炵悊 isPromise: undefined, // 鎵胯鏄惁鍙婃椂鍔炵悊 isLinked: undefined, // 鏄惁鏈夎仈鍔炴満鏋� isCount: undefined, // 鏄惁鏈夋暟閲忛檺鍒� deptData: [], // 閮ㄩ棬閫夐」鏁版嵁 - siteId: "", // 绔欑偣id + siteId: local.getLocal("siteId"), // 绔欑偣id baseform: { matterName: "", // 浜嬮」 鍚嶇О englishName: "", // 浜嬮」鑻辨枃鍚嶇О matterNo: "", //浜嬮」缂栧彿 sort: "", // 鎺掑簭 belongDept: undefined, //鎵€灞為儴闂� + deptCode: undefined, //鎵€灞為儴闂ㄧ紪鍙� appoveObjectShow: undefined, // 鏈嶅姟瀵硅薄 operatScopeShow: undefined, // 鎵垮姙鑼冨洿 appoveTimeLimitShow: undefined, // 鍔炰欢绫诲瀷 @@ -845,24 +830,18 @@ export default { promiseTakeTime: "", // 鎵胯鐢熸晥鏃ユ湡 specialProcedure: "", // 鐗瑰埆绋嬪簭 source: 1, // 鑷畾涔変簨椤� - }, - windowform: { windowToTheSceneNum: "", // 鍒扮幇鍦烘鏁� isOnlineSubscribeShow: "", // 棰勭害鍔炵悊 isExpressTakeShow: "", // 蹇€� isProvinceAcquisitionShow: "", // 鍏ㄧ渷灏辫繎鍙栦欢 isApplyProvinceShow: "", // 鍏ㄧ渷灏辫繎鍔炵悊 mustSceneExplain: "", // 蹇呴』鍒扮幇鍦哄師鍥� - }, - onlineform: { onlineType: undefined, // 缃戝姙绫诲瀷 onlineToTheSceneNum: "", // 缃戝姙鍒扮幇鍦烘鏁� onlineOperatDeep: undefined, // 缃戜笂鍔炵悊娣卞害 isExpressTakeOnlineShow: "", // 缃戝姙鐗╂祦蹇€� isDoorTakeShow: "", // 涓婇棬鏀跺彇鏉愭枡 reaonlineMustSceneExplainson: "", // 缃戝姙鍒扮幇鍦哄師鍥� - }, - routineform: { performDeptType: "", // 瀹炴柦涓讳綋 matterEdition: "", // 浜嬮」鐗堟湰 eventTypeShow: undefined, // 浜嬮」绫诲瀷鍚嶇О @@ -899,7 +878,7 @@ export default { matterNo: [ { required: true, message: "浜嬮」缂栧彿涓嶈兘涓虹┖", trigger: "blur" }, ], - belongDept: [ + deptCode: [ { required: true, message: "鎵€灞為儴闂ㄤ笉鑳戒负绌�", trigger: "change" }, ], handleType: [ @@ -909,76 +888,113 @@ export default { }; }, created() { + this.mergeForm(); this.getDeptListData(); }, - computed: {}, - methods: { - // 鑾峰彇閮ㄩ棬鍒楄〃 - async getDeptListData() { - let res = await getDeptList({ siteId: this.siteId }); - let { code, data } = res.data; - if (code === 1) { - this.deptData = data.data; - } - }, - // 娉曞畾鏃堕檺閫夋嫨 - handleChangeLegal(val) { - if (val === "1" || val === undefined) { + computed: { + ...mapGetters("site", ["matterDict"]), + }, + watch: { + isTimely(newVal) { + if (newVal === "1" || newVal === undefined) { this.baseform.legalTimeLimitShow = ""; } }, - // 鎵胯鏃堕檺閫夋嫨 - handleChangePromise(val) { - if (val === "1" || val === undefined) { + isPromise(newVal) { + if (newVal === "1" || newVal === undefined) { this.baseform.promiseTimeLimitShow = ""; } }, - // 鑱斿姙鏈烘瀯閫夋嫨 - handleChangeLinked(val) { - if (val === "1" || val === undefined) { - this.routineform.jointInfoShow = undefined; + isLinked(newVal) { + if (newVal === "1" || newVal === undefined) { + this.baseform.jointInfoShow = undefined; + } + }, + isCount(newVal) { + if (newVal === "1" || newVal === undefined) { + this.baseform.numberLimit = ""; } }, - // 鏁伴噺闄愬埗閫夋嫨 - handleChangeLimit(val) { - if (val === "1" || val === undefined) { - this.routineform.numberLimit = ""; + }, + methods: { + // 鍚堝苟姒傝 + mergeForm() { + let formData = this.$route.query.formData; + if (formData) { + formData = JSON.parse(formData); + this.baseform = { ...this.baseform, ...formData }; + if (this.baseform.id) { + const obj = { + id: this.baseform.id, + matterName: this.baseform.matterName, + }; + local.setLocal("matter", obj); + } + } + }, + // 鑾峰彇閮ㄩ棬鍒楄〃 + async getDeptListData() { + let res = await getDeptList({ siteId: this.siteId, page: 1, size: -1 }); + let { code, data } = res.data; + if (code === 1) { + this.deptData = data.data; } }, // 淇濆瓨 - async handleOk() { - let res = await saveAddMatter({ - siteId: this.$route.query.siteId, - ...this.baseform, - ...this.windowform, - ...this.onlineform, - ...this.routineform, - planTakeTime: Number(this.baseform.planTakeTime), - promiseTakeTime: Number(this.baseform.promiseTakeTime), + handleOk() { + this.$refs.baseform.validate(async (valid) => { + if (valid) { + this.loading = true; + let res = await saveAddMatter({ + siteId: this.siteId, + ...this.baseform, + planTakeTime: Number(this.baseform.planTakeTime), + promiseTakeTime: Number(this.baseform.promiseTakeTime), + }); + let { code, msg, data } = res.data; + this.loading = false; + if (code === 1) { + await addMatterToSite({ + siteId: this.siteId, + matterIds: data.entity.id + "", + }); + const obj = { + id: data.entity.id, + matterName: data.entity.matterName, + }; + local.setLocal("matter", obj); + this.$message.success(msg); + this.baseform = data.entity; + } + } else { + this.$message.warning("璇峰畬鍠勮〃鍗�"); + } }); - let { code, msg, data } = res.data; - if (code === 1) { - this.$message.success(msg); - const obj = { - id: data.entity.id, - matterName: data.entity.matterName, - }; - local.setLocal("matter", obj); - // Object.assign(this.baseform, this.$options.data().baseform); - // Object.assign(this.windowform, this.$options.data().windowform); - // Object.assign(this.onlineform, this.$options.data().onlineform); - // Object.assign(this.routineform, this.$options.data().routineform); - } else { - this.$message.error(msg); - } }, // 閲嶇疆 handleReset() { - Object.assign(this.baseform, this.$options.data().baseform); - Object.assign(this.windowform, this.$options.data().windowform); - Object.assign(this.onlineform, this.$options.data().onlineform); - Object.assign(this.routineform, this.$options.data().routineform); + let _this = this; + this.$confirm({ + title: "绯荤粺鎻愮ず", + content: "璇ユ搷浣滀細閲嶇疆鏁翠釜椤甸潰淇℃伅锛岀‘瀹氳閲嶇疆鍚楋紵", + okText: "纭畾", + okType: "danger", + cancelText: "鍙栨秷", + centered: true, + icon: "exclamation-circle", + maskClosable: true, + onOk() { + _this.isTimely = undefined; // 鏄惁鍙婃椂鍔炵悊 + _this.isPromise = undefined; // 鎵胯鏄惁鍙婃椂鍔炵悊 + _this.isLinked = undefined; // 鏄惁鏈夎仈鍔炴満鏋� + _this.isCount = undefined; // 鏄惁鏈夋暟閲忛檺鍒� + _this.$refs.baseform.resetFields(); + }, + onCancel() { + console.log("Cancel"); + }, + }); }, }, }; @@ -986,15 +1002,6 @@ export default { <style lang="less" scoped> .basemessage { width: 100%; - - .btn_box { - padding: 25px 126px 20px; - justify-content: flex-start; - .btn { - padding: 8px 24px; - border-radius: 4px; - } - } } .ant-form-item { display: flex; @@ -1004,7 +1011,4 @@ export default { /deep/ .ant-form-explain { position: absolute; } -/deep/.ant-input { - width: 100% !important; -} </style> diff --git a/base-manager-ui/admin/src/pages/basicset/business/Index.vue b/base-manager-ui/admin/src/pages/basicset/business/Index.vue index 13512e83bbab0d3bc812dc9e907ffa9c7b0f36a0..dd1e85c15864ce2f9ce14a5fbda72667a7db4587 100644 --- a/base-manager-ui/admin/src/pages/basicset/business/Index.vue +++ b/base-manager-ui/admin/src/pages/basicset/business/Index.vue @@ -11,6 +11,8 @@ export default {}; <style lang="less" scoped> .business-matter { width: 100%; - height: 100%; + min-height: 100%; + background-color: #fff; + display: flex; } </style> \ No newline at end of file diff --git a/base-manager-ui/admin/src/pages/basicset/business/components/businessTabs2.vue b/base-manager-ui/admin/src/pages/basicset/business/components/businessTabs2.vue index fe093a12924c363d0f009244f1520da6e017ad91..b8fda41545737ca8fa4a87ee2b0d33bf77b38bfa 100644 --- a/base-manager-ui/admin/src/pages/basicset/business/components/businessTabs2.vue +++ b/base-manager-ui/admin/src/pages/basicset/business/components/businessTabs2.vue @@ -90,12 +90,21 @@ </template> <!-- 鎿嶄綔 --> <template slot="action" slot-scope="text"> - <a - href="javascript:;" - class="delete" - @click="handleDel(text.id, text)" - >绉婚櫎</a - > + <a-space> + <a + href="javascript:;" + v-if="text.source == 1" + class="edit" + @click="handleEdit(text.matterId)" + >缂栬緫</a + > + <a + href="javascript:;" + class="delete" + @click="handleDel(text.id, text)" + >绉婚櫎</a + > + </a-space> </template> </a-table> </div> @@ -103,7 +112,7 @@ <!-- 鍙� --> <div class="right"> <div class="header"> - <h3 class="titel">涓€浣撳寲浜嬮」鍒楄〃</h3> + <h3 class="titel">鍩虹浜嬮」鍒楄〃</h3> <div class="control"> <div> <a-button type="primary" @click="handleAddAll"> 鎵归噺鍔犲叆 </a-button> @@ -170,6 +179,13 @@ <a href="javascript:;" class="jion" @click="handleIn(text.id)" >鍔犲叆</a > + <a + href="javascript:;" + v-if="text.source == 1" + class="edit" + @click="handleEdit(text.id)" + >缂栬緫</a + > <a href="javascript:;" class="delete" @@ -254,7 +270,7 @@ const rightColumns = [ }, { title: "鎿嶄綔", - width: "110px", + width: "130px", scopedSlots: { customRender: "action", }, @@ -326,15 +342,17 @@ export default { matterName: this.searchRightVal, ...search, }); - let { pageInfo, data, dict } = res.data.data; - if (!data.length && this.rightCurrent > 1) { - this.rightCurrent -= 1; - this.getMatterListData(); + if (res.data.code === 1) { + let { pageInfo, data, dict } = res.data.data; + if (!data.length && this.rightCurrent > 1) { + this.rightCurrent -= 1; + this.getMatterListData(); + } + this.matterDataList = data; + this.rightTotal = pageInfo.totalResult; + this.SET_matterDict(dict); + this.rightLoading = false; } - this.matterDataList = data; - this.rightTotal = pageInfo.totalResult; - this.SET_matterDict(dict); - this.rightLoading = false; }, // 宸﹁竟鎼滅储 onSearchLeft() { @@ -371,7 +389,12 @@ export default { }, //鏂板浜嬮」 addMatter() { - this.$router.push("/business/synopsis"); + this.$router.push({ + path: "/business/synopsis", + query: { + edit: 0, + }, + }); }, onSelectChange(key, data) { this.deleteData = data; @@ -515,6 +538,16 @@ export default { } } }, + // 缂栬緫 + handleEdit(matterId) { + this.$router.push({ + path: "/business/synopsis", + query: { + edit: 1, + matterId, + }, + }); + }, }, }; </script> diff --git a/base-manager-ui/admin/src/pages/basicset/site/components/addsite.vue b/base-manager-ui/admin/src/pages/basicset/site/components/addsite.vue index 1aeb766500159026b41e39bbc9b7bb5f8f650d5c..2f55596c925dbfac2c57db4422096fa73ca967b7 100644 --- a/base-manager-ui/admin/src/pages/basicset/site/components/addsite.vue +++ b/base-manager-ui/admin/src/pages/basicset/site/components/addsite.vue @@ -578,6 +578,7 @@ export default { }, //閲嶇疆 resetForm() { + this.fileList = []; this.$refs.ruleForm.resetFields(); }, // 鍏抽棴瀵硅瘽妗� diff --git a/base-manager-ui/admin/src/services/matter.js b/base-manager-ui/admin/src/services/matter.js index 3c4825411fb6cdca44a08412854ec25c8b654ade..94c6cfb806eca9d6571257b46cb75d5c2d04d4c9 100644 --- a/base-manager-ui/admin/src/services/matter.js +++ b/base-manager-ui/admin/src/services/matter.js @@ -52,6 +52,11 @@ export async function delMatter(data) { export async function getMatterListSubList(data) { return request(matter.matterList, METHOD.POST, data); } +// 鏌ョ湅鍩虹浜嬮」 +export async function getMatterInfo(data) { + return request(matter.info, METHOD.GET, data); +} + /** * 浜嬮」鐢宠鏉愭枡 */