From d2a850a836524f7d400b92f41bbbb91f4832b4b5 Mon Sep 17 00:00:00 2001 From: xiaomiao <1158771342@qq.com> Date: Wed, 7 Jun 2023 10:43:06 +0800 Subject: [PATCH] 登记簿补录功能开发 --- src/views/djbBook/components/clxxDetailDialog.vue | 278 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/djbBook/components/djbdyeditDialog.vue | 269 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- src/views/djbBook/components/djbeditDialog.vue | 801 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------- src/views/djbBook/components/tabsconcent/clxxAddDialog.vue | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/djbBook/components/tabsconcent/clxxUnify.vue | 334 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/djbBook/components/tabsconcent/spyj.vue | 231 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/views/djbBook/jsydsyq.vue | 3 ++- src/views/djbworkflow/components/clxxUnify.vue | 4 ++-- src/views/djbworkflow/components/leftmenu/ordinaryMenu.vue | 5 ++++- 9 files changed, 1659 insertions(+), 346 deletions(-) create mode 100644 src/views/djbBook/components/clxxDetailDialog.vue delete mode 100644 src/views/djbBook/components/djbdyeditDialog.vue create mode 100644 src/views/djbBook/components/tabsconcent/clxxAddDialog.vue create mode 100644 src/views/djbBook/components/tabsconcent/clxxUnify.vue create mode 100644 src/views/djbBook/components/tabsconcent/spyj.vue diff --git a/src/views/djbBook/components/clxxDetailDialog.vue b/src/views/djbBook/components/clxxDetailDialog.vue new file mode 100644 index 0000000..b74c963 --- /dev/null +++ b/src/views/djbBook/components/clxxDetailDialog.vue @@ -0,0 +1,278 @@ +<!-- + * @Description: + * @Autor: renchao + * @LastEditTime: 2023-05-17 10:39:57 +--> +<template> + <div class="clmlmx-box"> + <div class="title">申请材料目录</div> + <lb-table :column="column" :key="key" :heightNumSetting="true" :pagination="false" :data="formData.data"> + </lb-table> + <div class="text-center"> + <el-button @click="$popupCacel">取消</el-button> + </div> + </div> +</template> +<script> + import store from '@/store/index.js' + import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js"; + export default { + props: { + formData: { + type: Object, + default: () => { + return {} + } + } + }, + data () { + return { + column: [ + { + width: "50", + label: '序号', + type: 'index' + }, + { + prop: "isrequired", + label: "是否必选", + width: "80", + render: (h, scope) => { + if (scope.row.sfxjcl === "1") { + return ( + <div> + <span>可选</span> + </div> + ); + } + else { + return ( + <div> + <span>必选</span> + </div> + ); + } + }, + }, + { + prop: "sjmc", + label: "材料名称", + }, + { + prop: "sjlx", + label: "材料类型", + width: "80", + render: (h, scope) => { + return ( + <div> + <span>{this.dicStatus(scope.row.sjlx, "A40")}</span> + </div> + ); + }, + }, + { + prop: "sjsl", + label: "份数", + width: "50" + }, + { + prop: "smzt", + label: "扫描状态", + width: "80", + render: (h, scope) => { + if (scope.row.children && scope.row.children.length > 0) { + return ( + <div> + <span>已扫描</span> + </div> + ); + } else { + return ( + <div> + <span>未扫描</span> + </div> + ); + } + }, + }, + { + label: "扫描页数", + width: "80", + render: (h, scope) => { + if (scope.row.children && scope.row.children.length > 0) { + return ( + <div> + <span>{scope.row.children.length}</span> + </div> + ); + } else { + return ( + <div> + <span>0</span> + </div> + ); + } + }, + }, + { + label: "操作", + width: "80", + render: (h, scope) => { + return ( + <div> + <el-button + type="text" + disabled={scope.$index == 0} + onClick={() => { + this.moveUpward(scope.$index, scope.row); + }} + > + 上移 + </el-button> + <el-button + type="text" + disabled={scope.$index + 1 == this.tableData.length} + onClick={() => { + this.moveDown(scope.$index, scope.row); + }} + > + 下移 + </el-button> + </div> + ); + }, + }, + ], + key: 0, + tableData: [] + } + }, + created () { + console.log(this.formData.data, 'formData'); + }, + methods: { + // 材料目录明细初始化 + clmlInitList () { + return new Promise(resolve => { + this.unitData = this.$parent.unitData; + var formdata = new FormData(); + formdata.append("bsmSldy", this.unitData[0]?.bsmSldy); + formdata.append("bsmSlsq", this.$route.query.bsmSlsq); + InitClml(formdata).then((res) => { + if (res.code == 200) { + resolve(res.code) + if (res.result && res.result.length > 0) { + this.data = res.result; + } else { + this.data = [] + } + } else { + this.$message.error(res.message) + } + }) + }) + }, + // 上移 + moveUpward (index, row) { + let obj = { + xh: row.xh, + bsmSlsq: row.bsmSlsq, + moveDirection: "UP", + }; + // 接口待调 + moveClml(obj).then(async (res) => { + if (res.code == 200) { + let res = await this.clmlInitList() + if (res == 200) { + this.$message({ + message: '上移成功', + type: 'success' + }) + this.$parent.setTableData(this.data) + } + } else { + this.$message.error(res.message); + } + }) + }, + // 下移 + moveDown (index, row) { + let obj = { + xh: row.xh, + bsmSlsq: row.bsmSlsq, + moveDirection: "DOWN", + } + // 接口待调 + moveClml(obj).then(async (res) => { + if (res.code == 200) { + let res = await this.clmlInitList() + if (res == 200) { + this.$message({ + message: '下移成功', + type: 'success' + }) + } + } else { + this.$message.error(res.message); + } + }) + }, + // 材料目录删除 + handleDelete (index, row) { + let that = this + this.$confirm('此操作将永久删除该 是否继续?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => { + if (res.code == 200) { + let res = await that.clmlInitList() + if (res == 200) { + that.$message({ + message: "删除成功", + type: "success", + }) + // this.$parent.setTableData(this.data) + } + } + }) + }).catch(() => { + this.$message({ + type: 'info', + message: '已取消删除' + }) + }) + }, + // 字典 + dicStatus (val, code) { + let data = store.getters.dictData[code], + name = "暂无"; + if (data) { + data.map((item) => { + if (item.dcode == val) { + name = item.dname; + } + }); + return name; + } + } + } + } +</script> +<style scoped lang='scss'> + @import "~@/styles/mixin.scss"; + .clmlmx-box { + margin: 0 auto; + + .title { + text-align: center; + height: 60px; + line-height: 60px; + border: 1px solid #dfe6ec; + font-size: 20px; + background: #81d3f81a; + margin-bottom: -1px; + } + } +</style> diff --git a/src/views/djbBook/components/djbdyeditDialog.vue b/src/views/djbBook/components/djbdyeditDialog.vue deleted file mode 100644 index 47fa43c..0000000 --- a/src/views/djbBook/components/djbdyeditDialog.vue +++ /dev/null @@ -1,269 +0,0 @@ -<template> - <div class="jtfccx-edit"> - <div class="jtfccx-edit-con"> - <el-form ref="form" :model="form" label-width="160px"> - <el-row> - <el-col :span="8"> - <el-form-item label="权属状态" label-width="140px"> - <el-select v-model="form.qszt"> - <el-option v-for="item in qsztList" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="权利类型" label-width="140px"> - <el-input v-model="form.qllxmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="登记类型" label-width="140px"> - <el-input v-model="form.djlxmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="上手业务号" label-width="140px"> - <el-input v-model="form.ssywh" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="档案号" label-width="140px"> - <el-input v-model="form.dah" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="业务号" label-width="140px"> - <el-input v-model="form.ywh" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="不动产单元号" label-width="140px"> - <el-input v-model="form.bdcdyh" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="坐落" label-width="140px"> - <el-input v-model="form.zl" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="共有情况" label-width="140px"> - <el-input v-model="form.gyqk" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="权利人类型" label-width="140px"> - <el-input v-model="form.qlrlx" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="权利人" label-width="140px"> - <el-input v-model="form.qlrmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="证件种类" label-width="140px"> - <el-input v-model="form.qlrzjzl" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="证件号" label-width="140px"> - <el-input v-model="form.qlrzjhm" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="土地使用权人" label-width="140px"> - <el-input v-model="form.tdsyqr" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="独用土地面积(m²)" label-width="140px"> - <el-input v-model="form.dytdmj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="分摊土地面积(m²)" label-width="140px"> - <el-input v-model="form.fttdmj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="使用权起止时间" label-width="140px"> - <el-input v-model="form.syqqzsj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="土地使用期限" label-width="140px"> - <el-input v-model="form.tdsyqx" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="房地产交易价格(万元)" label-width="140px"> - <el-input v-model="form.fdcjyjg" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="规划用途" label-width="140px"> - <el-input v-model="form.ytmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="房屋性质" label-width="140px"> - <el-input v-model="form.fwxzmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="房屋结构" label-width="140px"> - <el-input v-model="form.fwjgmc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="所在层" label-width="140px"> - <el-input v-model="form.szc" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="总层数" label-width="140px"> - <el-input v-model="form.fj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="建筑面积(m2)" label-width="140px"> - <el-input v-model="form.mj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="专有建筑面积(m2)" label-width="140px"> - <el-input v-model="form.zyjzmj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="分摊建筑面积(m2)" label-width="140px"> - <el-input v-model="form.jgsj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="登记原因" label-width="140px"> - <el-input v-model="form.djyy" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="不动产权证号" label-width="140px"> - <el-input v-model="form.bdcqzh" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="登记时间" label-width="140px"> - <el-input v-model="form.djsj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="登簿人" label-width="140px"> - <el-input v-model="form.dbr" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="附记" label-width="140px"> - <el-input v-model="form.fj" ></el-input> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="总层数" label-width="140px"> - <el-input v-model="form.fj" ></el-input> - </el-form-item> - </el-col> - </el-row> - <el-form-item class="btn"> - <el-button type="primary" @click="submitForm">保存</el-button> - <el-button @click="closeDialog">取消</el-button> - </el-form-item> - </el-form> - - </div> - - </div> -</template> -<script> -export default { - props: { - formData: { - type: Object, - default: () => { }, - }, - }, - data () { - return { - form:{}, - qsztList: [ - { - value: "0", - label: "临时", - }, - { - value: "1", - label: "现势", - }, - { - value: "2", - label: "历史", - }, - - ], - label:"", - }; - }, - mounted () { - if (this.formData.data) { - this.$nextTick(() => { - this.form = Object.assign({}, this.formData.data) - this.form.qszt=this.form.qszt=='0'?"临时":this.form.qszt=='1'?"现势":"历史" - }) - } - }, - - methods: { - //新增常用意见 - submitForm () { - - this.$refs.form.validate(valid => { - if (valid) { - // addUserCommonOpinion({ commonOpinion: this.form.commonOpinion }).then(res => { - // if (res.code == 200) { - // this.$message.success("新增成功") - // this.closeaddDiglog(); - // this.getList() - // } else { - // this.$message.error(res.message) - // } - // }) - } else { - return false; - } - }); - }, - closeDialog () { - this.$popupCacel() - this.$refs['form'].resetFields(); - // this.resetTableFields(); - } - }, -}; -</script> -<style scoped lang="scss"> -@import "~@/styles/mixin.scss"; -@import "~@/styles/public.scss"; - - -.jtfccx-edit { - @include flex; - flex-direction: column; - overflow-y: hidden; - max-height: 85vh; - padding: 0 2px; - - - .btn{ - text-align: center; - - } -} -</style> diff --git a/src/views/djbBook/components/djbeditDialog.vue b/src/views/djbBook/components/djbeditDialog.vue index 4c673ca..7ae9c2a 100644 --- a/src/views/djbBook/components/djbeditDialog.vue +++ b/src/views/djbBook/components/djbeditDialog.vue @@ -1,49 +1,267 @@ <template> - <div class="jtfccx-edit"> - <div class="jtfccx-edit-con"> - <el-form ref="form" :model="form" label-width="160px"> - <el-row> - <el-col :span="8"> - <el-form-item label="权属状态" label-width="140px"> - <el-select v-model="form.qszt"> - <el-option v-for="item in qsztList" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8" v-for="item in datalist" :key="item.bdcdyh"> - <el-form-item :prop="item.prop" :label="item.label" label-width="140px"> - <el-input v-model="form[item.prop]" ></el-input> - </el-form-item> - </el-col> - </el-row> - <el-form-item class="btn"> - <el-button type="primary" @click="submitForm">保存</el-button> - <el-button @click="closeDialog">取消</el-button> - </el-form-item> - </el-form> + <div class="from-clues"> + <el-tabs type="card" v-model="activeName" @tab-click="handleTabClick"> + <el-tab-pane label="受理信息" name="slxx"></el-tab-pane> + <el-tab-pane + :disabled="isshow" + label="审批意见" + name="spyj" + ></el-tab-pane> + <el-tab-pane + :disabled="isshow" + label="材料信息" + name="clxx" + ></el-tab-pane> + </el-tabs> + <div v-if="activeName == 'slxx'"> + <div class="from-clues-header"> + <el-form ref="form" :model="form" label-width="160px"> + <el-row> + <el-col :span="12"> + <el-form-item label="权属状态" label-width="140px"> + <el-select v-model="form.qszt"> + <el-option + v-for="item in qsztList" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12" v-for="item in datalist" :key="item.bdcdyh"> + <el-form-item + :prop="item.prop" + :label="item.label" + label-width="140px" + > + <el-input v-model="form[item.prop]"></el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + <div class="btn"> + <el-button type="primary" @click="slxxsubmitForm">保存</el-button> + <el-button @click="closeDialog">取消</el-button> + </div> + </div> + </div> + <div v-if="activeName == 'spyj'"> + <div class="from-clues-header spyj"> + <div class="box"> + <b class="spyj_title">审批表</b> + <el-form + :model="ruleForm" + :rules="rules" + ref="ruleForm" + label-width="120px" + > + <div class="spyj_form"> + <div class="item_left">初审意见</div> + <div class="item_right"> + <el-row> + <el-col :span="24"> + <el-form-item + label-width="0" + class="opinion_item" + prop="shyj" + > + <el-input + type="textarea" + :rows="4" + class="opinion" + placeholder="请输入审批意见" + v-model="ruleForm.shyj" + ></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="16"> + <el-form-item + prop="shryxm" + label="审查人" + label-width="90px" + > + <el-input v-model="ruleForm.shr"></el-input> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item + label="审核时间" + prop="shjssj" + label-width="90px" + > + <el-input v-model="ruleForm.shsj"></el-input> + </el-form-item> + </el-col> + </el-row> + </div> + </div> + </el-form> + <el-form + :model="ruleForm" + :rules="rules" + ref="ruleForm" + label-width="120px" + > + <div class="spyj_form"> + <div class="item_left">复审意见</div> + <div class="item_right"> + <el-row> + <el-col :span="24"> + <el-form-item + label-width="0" + class="opinion_item" + prop="shyj" + > + <el-input + type="textarea" + :rows="4" + class="opinion" + placeholder="请输入审批意见" + v-model="ruleForm.shyj" + ></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="16"> + <el-form-item + prop="shryxm" + label="审查人" + label-width="90px" + > + <el-input v-model="ruleForm.shr"></el-input> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item + label="审核时间" + prop="shjssj" + label-width="90px" + > + <el-input v-model="ruleForm.shsj"></el-input> + </el-form-item> + </el-col> + </el-row> + </div> + </div> + </el-form> + <el-form + :model="ruleForm" + :rules="rules" + ref="ruleForm" + label-width="120px" + > + <div class="spyj_form"> + <div class="item_left">核定意见</div> + <div class="item_right"> + <el-row> + <el-col :span="24"> + <el-form-item + label-width="0" + class="opinion_item" + prop="shyj" + > + <el-input + type="textarea" + :rows="4" + class="opinion" + placeholder="请输入审批意见" + v-model="ruleForm.shyj" + ></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="16"> + <el-form-item + prop="shryxm" + label="审查人" + label-width="90px" + > + <el-input v-model="ruleForm.shr"></el-input> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item + label="审核时间" + prop="shjssj" + label-width="90px" + > + <el-input v-model="ruleForm.shsj"></el-input> + </el-form-item> + </el-col> + </el-row> + </div> + </div> + </el-form> + </div> + <div class="btn"> + <el-button type="primary" @click="spyjsubmitForm">保存</el-button> + <el-button @click="closeDialog">取消</el-button> + </div> + </div> </div> + <div v-if="activeName == 'clxx'"> + <div class="from-clues-header"> + <div class="clxx"> + <div class="right"> + <!-- 材料预览 --> + <div class="clyl-box"> + <div class="menu-tree"> + <el-button type="primary" native-type="submit" @click="viewDetail" style="width:100%;margin-top:10px;">查看明细</el-button> + <div class="item"> + 材料目录({{tableData.length}}) + <div style="margin-top:10px"> + <div style="text-align: center;line-height:20px;color:black;font-size:14px" v-if="tableData.length == 0">暂无数据</div> + <div v-for="(item,index) in tableData" :key="item.bsmSj" + :class="['child', treeCheckId == item.bsmSj ? 'checked' : '']" @click="treeClick(item,index)"> + <span v-if="item.isrequired==1" class="required">必选</span> + {{ item.sjmc }} + <span class="cl_number">({{item.children ? item.children.length : 0}})</span> + </div> + </div> + </div> + <el-button type="primary" native-type="submit" style="width:100%" @click="handleAdd()">新增</el-button> + </div> + <image-preview ref='imageRef' :previewImg="previewImg" @updateList="updateList" @nextPriview="nextPriview" + @prevPriview="prevPriview" /> + </div> + </div> + <clxxAddDialog v-model="isDialog" /> + </div> + <div class="btn"> + <el-button type="primary" @click="clxxsubmitForm">保存</el-button> + <el-button @click="closeDialog">取消</el-button> + </div> + </div> + </div> </div> </template> <script> + import { mapGetters } from "vuex"; + import clxxAddDialog from "./tabsconcent/clxxAddDialog.vue"; + import imagePreview from '@/views/components/imagePreview.vue' + import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js"; export default { + components: { clxxAddDialog}, props: { formData: { type: Object, - default: () => { }, + default: () => {}, }, }, - data () { + data() { return { - form:{}, - datalist:[], - qsztList: [ - { - value: "0", - label: "临时", - }, + activeName: "slxx", + form: {}, + datalist: [], + qsztList: [ { value: "1", label: "现势", @@ -52,51 +270,269 @@ export default { value: "2", label: "历史", }, + ], + label: "", + isshow: true, + + // 审批 + bsmSlsq: "", + //刷新值 + bestepid: "", + ruleForm: {}, + rules: { + shyj: [{ required: true, message: "请输入审批意见", trigger: "blur" }], + }, - ], - label:"", + // 材料 + isDialog: false, + iclass: "", + tableData: [], + // 材料目录选中 + treeCheckIndex: 0, + treeCheckId: "", + key: 0, + tableDatas: [], + previewImg: { + // 收件标识码 + bsmSj: "", + bsmSlsq: this.$parent.bsmSlsq, + index: 0, + selectedIndex: 0, + imgList: [], + }, }; }, - mounted () { - if (this.formData.data) { - this.$nextTick(() => { - this.form = Object.assign({}, this.formData.data) - // this.datalist = Object.assign([], this.formData.datalist) - this.form.qszt=this.form.qszt=='0'?"临时":this.form.qszt=='1'?"现势":"历史" - }) - } - // this.datalist = this.formData.datalist - this.datalist = JSON.parse(JSON.stringify(this.formData.datalist)); - this.datalist.shift() - this.datalist.shift() + computed: { + ...mapGetters(["dictData"]) + }, + created () { + this.clmlInitList(1) + }, + mounted() { + if (this.formData.data) { + this.$nextTick(() => { + this.form = Object.assign({}, this.formData.data); + // this.datalist = Object.assign([], this.formData.datalist) + this.form.qszt = + this.form.qszt == "0" + ? "临时" + : this.form.qszt == "1" + ? "现势" + : "历史"; + }); + } + // this.datalist = this.formData.datalist + this.datalist = JSON.parse(JSON.stringify(this.formData.datalist)); + this.datalist.shift(); + this.datalist.shift(); + console.log("this.datalist", this.datalist); }, methods: { - //新增常用意见 - submitForm () { - this.$refs.form.validate(valid => { - if (valid) { - // addUserCommonOpinion({ commonOpinion: this.form.commonOpinion }).then(res => { - // if (res.code == 200) { - // this.$message.success("新增成功") - // this.closeaddDiglog(); - // this.getList() - // } else { - // this.$message.error(res.message) - // } - // }) - this.$popupCacel() - } else { - return false; + // 受理信息保存 + slxxsubmitForm() { + this.$refs.form.validate((valid) => { + if (valid) { + // addUserCommonOpinion({ commonOpinion: this.form.commonOpinion }).then(res => { + // if (res.code == 200) { + // this.$message.success("新增成功") + // this.closeaddDiglog(); + // this.getList() + // } else { + // this.$message.error(res.message) + // } + // }) + } else { + return false; + } + }); + this.isshow = false; + }, + // 审批意见保存 + spyjsubmitForm() { + console.log("this.ruleForm",this.ruleForm); + // this.ruleForm.bsmSlsq = this.bsmSlsq + // this.ruleForm.bestepid = this.bestepid + // saveSpyjBySlsq(this.ruleForm).then(res => { + // if (res.code === 200) { + // this.$message.success("保存成功") + // this.refresh += 1 + // } else { + // this.$message.error(res.message) + // } + // }) + }, + + // 材料信息保存 + clxxsubmitForm() {}, + closeDialog() { + this.$alert("取消后填写内容将被清空", "提示", { + confirmButtonText: "确定", + callback: (action) => { + this.$message({ + type: "info", + message: "已取消", + }); + this.$popupCacel(); + this.$refs["form"].resetFields(); + }, + }); + + // this.resetTableFields(); + }, + handleTabClick() {}, + + //使用常用意见 + useOpinion(opinion) { + this.ruleForm.shyj = opinion; + }, + + + // 材料上传 + // 自动预览 + nextPriview () { + if (this.treeCheckIndex < this.tableData.length) { + this.treeCheckIndex++ + this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj + this.previewImg.index = 0 + this.previewImg.imgList = this.tableData[this.treeCheckIndex].children + this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj + } + }, + prevPriview () { + if (this.treeCheckIndex >= 1) { + this.treeCheckIndex-- + this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj + this.previewImg.index = this.previewImg.imgList.length + this.previewImg.imgList = this.tableData[this.treeCheckIndex].children + this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj + } + }, + // 材料目录明细初始化 + clmlInitList (type) { + this.tableData = [] + //type 1:列表初始化 2:新增材料 + // return new Promise(resolve => { + // this.unitData = this.$parent.unitData; + // var formdata = new FormData(); + // formdata.append("bsmSldy", this.unitData[0]?.bsmSldy); + // formdata.append("bsmSlsq", this.$parent.bsmSlsq); + // InitClml(formdata).then((res) => { + // if (res.code == 200) { + // resolve(res.code) + // if (res.result && res.result.length > 0) { + + // if (type == 1) { + // this.treeClick(this.tableData[0], 0); + // } else { + // //新增材料后刷新列表焦点置于新增的对象上 + // this.treeClick(this.tableData[this.tableData.length - 1], this.tableData.length - 1); + // } + // } + // } else { + // this.$message.error(res.message) + // } + // }) + // }) + }, + setChecked (item) { + this.treeCheckId = item.bsmSj; + this.title = item.sjmc; + this.titleYs = 1; + this.titleNum = item.children.length; + this.previewImg.imgList = item.children; + this.previewImg.bsmSj = item.bsmSj; + }, + updateList (val) { + let that = this + if (val != null) { //删除最后一张图片时 val=null + this.tableData.forEach(item => { + if (item.bsmSj === val.bsmSj) { + item.children = val.children + } + }) + this.previewImg.imgList = _.cloneDeep(val.children) + if (this.previewImg.index == this.previewImg.imgList.length) { + this.previewImg.index = this.previewImg.index - 1 + } + } else { + this.previewImg.imgList = [] + this.tableData.forEach((item, index) => { + if (this.treeCheckId == item.bsmSj) { + item.children = [] + that.treeCheckIndex = index + } + }) + } + + }, + // 添加材料目录 + handleAdd () { + console.log("新增"); + this.isDialog = true; + }, + // 新增弹窗保存 + addSave (data) { + let obj = { + bsmSlsq: this.$parent.bsmSlsq, + isrequired: "1", + sjmc: data.clmc, + sjsl: 0, + smzt: '', + ys: 0, + sjlx: data.cllx, + sfxjcl: "1", // 是否必选 + }; + saveClml(obj).then(async (res) => { + if (res.code == 200) { + let res = await this.clmlInitList(2) + if (res == 200) this.$message({ + message: "新增成功", + type: "success", + }) } }); }, - closeDialog () { - this.$popupCacel() - this.$refs['form'].resetFields(); - // this.resetTableFields(); - } + // 材料目录点击选中 + treeClick (item, index) { + this.previewImg.index = 0 + this.treeCheckId = item?.bsmSj + this.treeCheckIndex = index + this.previewImg.imgList = item?.children + this.previewImg.bsmSj = item?.bsmSj + }, + // 小图片点击 + imgClick (item, index) { + this.showImg = item; + this.titleYs = index + 1; + }, + // 字典 + dicStatus (val, code) { + let data = this.$store.getters.dictData[code], + name = "暂无"; + if (data) { + data.map((item) => { + if (item.dcode == val) { + name = item.dname + } + }); + return name + } + }, + //查看明细 + viewDetail () { + console.log("查看明细"); + this.$popupDialog("查看明细", "djbBook/components/clxxDetailDialog", { + data: this.tableData + }, "60%") + }, + //设置tableData + setTableData (tableData) { + this.$nextTick(res => { + this.tableData = tableData; + }) + }, }, }; </script> @@ -104,18 +540,237 @@ export default { @import "~@/styles/mixin.scss"; @import "~@/styles/public.scss"; - -.jtfccx-edit { +.from-clues-header { @include flex; flex-direction: column; overflow-y: hidden; - max-height: 85vh; + height: 620px; padding: 0 2px; + .btn { + margin-top: 40px; + margin-bottom: 20px; + text-align: center; + } +} + +// 审批意见样式 + +.spyj { + .box { + overflow-x: auto; + width: 100%; + height: 95%; + background: #fff; + text-align: center; + padding: 4px; + overflow-y: scroll; + padding-top: 20px; + padding: 20px 40px; + /deep/.el-input__inner { + width: 200px; + border:none; + } + } + .spyj_title { + line-height: 68px; + border: 1px solid $borderColor; + text-align: center; + font-size: 22px; + font-weight: 400; + background-color: #eceef2; + display: block; + border-bottom: none; + } + + /deep/.el-form-item { + margin-bottom: 0; + } + + .bottom10 { + margin-bottom: 15px; + } + + .spyj_form { + display: flex; + border: 1px solid $borderColor; + + .item_left { + width: 150px; + background-color: #f8f8fa; + color: #606266; + display: flex; + font-size: 14px; + text-indent: 80px; + align-items: center; + border-right: 1px solid $borderColor; + } + + .item_right { + flex: 1; + width: 100%; + + /deep/.el-form-item__label { + background-color: #f8f8fa; + } + /deep/.el-form-item__content { + display: block; + text-align: left; + text-indent: 10px; + } + .opinion_item { + /deep/.el-form-item__error { + margin-top: -16px !important; + left: 3px; + } + + border-bottom: 1px solid $borderColor; + } + + .opinion { + position: relative; + font-size: 14px; - .btn{ - text-align: center; + /deep/.el-textarea__inner { + border: none; + } + } - } + .opinion_btn { + position: absolute; + right: 15px; + bottom: 10px; + } + } + } + + .submit_button { + text-align: center; + margin: 15px 0; + } } + +// 材料信息样式 + .active { + background: $light-blue !important; + color: #fff; + } + + .required { + font-size: 12px; + color: $pink; + float: left; + } + + .cl_number { + float: right; + } + + .clxx { + width: 100%; + display: flex; + padding-left: 5px; + height: calc(100vh - 125px); + + .left { + display: flex; + flex-direction: column; + justify-content: space-between; + + .item { + width: 28px; + height: 49%; + @include flex-center; + background-color: #e4e7ed; + border-bottom-right-radius: 10px; + padding: 5px; + cursor: pointer; + transition: all 0.3s; + + &:hover { + @extend .active; + } + } + } + + .right { + width: 100%; + height: 100%; + + .clmlmx-box { + margin: 0 auto; + + .title { + text-align: center; + height: 60px; + line-height: 60px; + border: 1px solid #dfe6ec; + font-size: 20px; + background: #81d3f81a; + margin-bottom: -1px; + } + } + + .clyl-box { + width: 100%; + height: 100%; + display: flex; + + .menu-tree { + width: 20%; + min-width: 160px; + height: 100%; + margin-right: 10px; + border-right: 1px dotted #d9d9d9; + padding: 0 15px; + + .item { + line-height: 30px; + padding-top: 5px; + border-bottom: 1px solid #e8e8e8; + font-size: 16px; + text-align: center; + color: $light-blue; + + .itemIcon { + float: right; + line-height: 60px; + cursor: pointer; + } + + .child { + line-height: 32px; + border-bottom: 1px solid #e8e8e8; + padding-left: 10px; + color: #6b6b6b; + cursor: pointer; + box-sizing: border-box; + border-radius: 6px; + line-height: 20px; + transition: all 0.3s; + padding: 8px 0; + } + + .child:hover { + color: $light-blue; + transform: scale(1.1); + } + + .checked { + border: 1px solid $light-blue; + color: $light-blue; + } + } + } + + .clyl-img { + width: 75%; + height: 100%; + background: #f3f4f7; + margin: 0 auto; + position: relative; + } + } + } + } </style> diff --git a/src/views/djbBook/components/tabsconcent/clxxAddDialog.vue b/src/views/djbBook/components/tabsconcent/clxxAddDialog.vue new file mode 100644 index 0000000..c66a854 --- /dev/null +++ b/src/views/djbBook/components/tabsconcent/clxxAddDialog.vue @@ -0,0 +1,80 @@ +<!-- + * @Description: + * @Autor: renchao + * @LastEditTime: 2023-05-09 09:20:10 +--> +<template> + <dialogBox title="新建材料信息" width="20%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit" + :isFullscreen="false"> + <el-form :model="ruleForm" ref="ruleForm" label-width="70px"> + <el-row> + <el-col :span="24"> + <el-form-item label="材料类型"> + <el-select v-model="ruleForm.cllx" class="width100" placeholder="请选择"> + <el-option v-for="item in dictData['A40']" :key="item.dcode" :label="item.dname" :value="item.dcode"> + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="24"> + <el-form-item label="材料名称"> + <el-input v-model="ruleForm.clmc"></el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + </dialogBox> +</template> + +<script> + import { mapGetters } from "vuex"; + export default { + props: { + value: { type: Boolean, default: false }, + }, + data () { + return { + myValue: this.value, + ruleForm: { + cllx: "", + clmc: "", + }, + }; + }, + computed: { + ...mapGetters(["dictData"]), + }, + watch: { + value (val) { + this.myValue = val; + }, + }, + methods: { + closeDialog () { + this.$emit("input", false); + this.ruleForm = { + cllx: "", + clmc: "", + } + }, + handleSubmit () { + this.$parent.addSave(this.ruleForm); + this.ruleForm = { + cllx: "", + clmc: "", + } + this.$emit("input", false); + }, + }, + }; +</script> +<style scoped lang="scss"> + .submit-button { + text-align: center; + height: 52px; + padding-top: 10px; + background-color: #fff; + } +</style> diff --git a/src/views/djbBook/components/tabsconcent/clxxUnify.vue b/src/views/djbBook/components/tabsconcent/clxxUnify.vue new file mode 100644 index 0000000..bf96d96 --- /dev/null +++ b/src/views/djbBook/components/tabsconcent/clxxUnify.vue @@ -0,0 +1,334 @@ +<!-- + * @Description: + * @Autor: renchao + * @LastEditTime: 2023-05-17 10:40:38 +--> +<template> + <div class="clxx"> + <div class="right"> + <!-- 材料预览 --> + <div class="clyl-box"> + <div class="menu-tree"> + <el-button type="primary" native-type="submit" @click="viewDetail" style="width:100%;margin-top:10px;">查看明细</el-button> + <div class="item"> + 材料目录({{tableData.length}}) + <div style="margin-top:10px"> + <div style="text-align: center;line-height:20px;color:black;font-size:14px" v-if="tableData.length == 0">暂无数据</div> + <div v-for="(item,index) in tableData" :key="item.bsmSj" + :class="['child', treeCheckId == item.bsmSj ? 'checked' : '']" @click="treeClick(item,index)"> + <span v-if="item.isrequired==1" class="required">必选</span> + {{ item.sjmc }} + <span class="cl_number">({{item.children ? item.children.length : 0}})</span> + </div> + </div> + </div> + <el-button type="primary" native-type="submit" style="width:100%" @click="handleAdd()" v-if="!this.$route.query.viewtype">新增</el-button> + </div> + <image-preview ref='imageRef' :previewImg="previewImg" @updateList="updateList" @nextPriview="nextPriview" + @prevPriview="prevPriview" /> + </div> + </div> + <clxxAddDialog v-model="isDialog" /> + </div> +</template> +<script> + import { mapGetters } from "vuex"; + import clxxAddDialog from "./clxxAddDialog.vue"; + import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js"; + export default { + components: { clxxAddDialog}, + data () { + return { + isDialog: false, + iclass: "", + // 材料目录选中 + treeCheckIndex: 0, + treeCheckId: "", + key: 0, + tableData: [], + previewImg: { + // 收件标识码 + bsmSj: '', + bsmSlsq: this.$parent.bsmSlsq, + index: 0, + selectedIndex: 0, + imgList: [] + } + } + }, + computed: { + ...mapGetters(["dictData"]) + }, + created () { + this.clmlInitList(1) + }, + methods: { + // 自动预览 + nextPriview () { + if (this.treeCheckIndex < this.tableData.length) { + this.treeCheckIndex++ + this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj + this.previewImg.index = 0 + this.previewImg.imgList = this.tableData[this.treeCheckIndex].children + this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj + } + }, + prevPriview () { + if (this.treeCheckIndex >= 1) { + this.treeCheckIndex-- + this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj + this.previewImg.index = this.previewImg.imgList.length + this.previewImg.imgList = this.tableData[this.treeCheckIndex].children + this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj + } + }, + // 材料目录明细初始化 + clmlInitList (type) { + //type 1:列表初始化 2:新增材料 + return new Promise(resolve => { + this.unitData = this.$parent.unitData; + var formdata = new FormData(); + formdata.append("bsmSldy", this.unitData[0]?.bsmSldy); + formdata.append("bsmSlsq", this.$parent.bsmSlsq); + InitClml(formdata).then((res) => { + if (res.code == 200) { + resolve(res.code) + if (res.result && res.result.length > 0) { + this.tableData = res.result; + if (type == 1) { + this.treeClick(this.tableData[0], 0); + } else { + //新增材料后刷新列表焦点置于新增的对象上 + this.treeClick(this.tableData[this.tableData.length - 1], this.tableData.length - 1); + } + } + } else { + this.$message.error(res.message) + } + }) + }) + }, + setChecked (item) { + this.treeCheckId = item.bsmSj; + this.title = item.sjmc; + this.titleYs = 1; + this.titleNum = item.children.length; + this.previewImg.imgList = item.children; + this.previewImg.bsmSj = item.bsmSj; + }, + updateList (val) { + let that = this + if (val != null) { //删除最后一张图片时 val=null + this.tableData.forEach(item => { + if (item.bsmSj === val.bsmSj) { + item.children = val.children + } + }) + this.previewImg.imgList = _.cloneDeep(val.children) + if (this.previewImg.index == this.previewImg.imgList.length) { + this.previewImg.index = this.previewImg.index - 1 + } + } else { + this.previewImg.imgList = [] + this.tableData.forEach((item, index) => { + if (this.treeCheckId == item.bsmSj) { + item.children = [] + that.treeCheckIndex = index + } + }) + } + + }, + // 添加材料目录 + handleAdd () { + this.isDialog = true; + }, + // 新增弹窗保存 + addSave (data) { + let obj = { + bsmSlsq: this.$parent.bsmSlsq, + isrequired: "1", + sjmc: data.clmc, + sjsl: 0, + smzt: '', + ys: 0, + sjlx: data.cllx, + sfxjcl: "1", // 是否必选 + }; + saveClml(obj).then(async (res) => { + if (res.code == 200) { + let res = await this.clmlInitList(2) + if (res == 200) this.$message({ + message: "新增成功", + type: "success", + }) + } + }); + }, + // 材料目录点击选中 + treeClick (item, index) { + this.previewImg.index = 0 + this.treeCheckId = item?.bsmSj + this.treeCheckIndex = index + this.previewImg.imgList = item?.children + this.previewImg.bsmSj = item?.bsmSj + }, + // 小图片点击 + imgClick (item, index) { + this.showImg = item; + this.titleYs = index + 1; + }, + // 字典 + dicStatus (val, code) { + let data = this.$store.getters.dictData[code], + name = "暂无"; + if (data) { + data.map((item) => { + if (item.dcode == val) { + name = item.dname + } + }); + return name + } + }, + //查看明细 + viewDetail () { + this.$popupDialog("查看明细", "workflow/components/dialog/clxxDetailDialog", { + data: this.tableData + }, "60%") + }, + //设置tableData + setTableData (tableData) { + this.$nextTick(res => { + this.tableData = tableData; + }) + }, + }, + }; +</script> +<style scoped lang='scss'> + @import "~@/styles/mixin.scss"; + + .active { + background: $light-blue !important; + color: #fff; + } + + .required { + font-size: 12px; + color: $pink; + float: left; + } + + .cl_number { + float: right; + } + + .clxx { + width: 100%; + display: flex; + padding-left: 5px; + height: calc(100vh - 125px); + + .left { + display: flex; + flex-direction: column; + justify-content: space-between; + + .item { + width: 28px; + height: 49%; + @include flex-center; + background-color: #e4e7ed; + border-bottom-right-radius: 10px; + padding: 5px; + cursor: pointer; + transition: all 0.3s; + + &:hover { + @extend .active; + } + } + } + + .right { + width: 100%; + height: 100%; + + .clmlmx-box { + margin: 0 auto; + + .title { + text-align: center; + height: 60px; + line-height: 60px; + border: 1px solid #dfe6ec; + font-size: 20px; + background: #81d3f81a; + margin-bottom: -1px; + } + } + + .clyl-box { + width: 100%; + height: 100%; + display: flex; + + .menu-tree { + width: 20%; + min-width: 160px; + height: 100%; + margin-right: 10px; + border-right: 1px dotted #d9d9d9; + padding: 0 15px; + + .item { + line-height: 30px; + padding-top: 5px; + border-bottom: 1px solid #e8e8e8; + font-size: 16px; + text-align: center; + color: $light-blue; + + .itemIcon { + float: right; + line-height: 60px; + cursor: pointer; + } + + .child { + line-height: 32px; + border-bottom: 1px solid #e8e8e8; + padding-left: 10px; + color: #6b6b6b; + cursor: pointer; + box-sizing: border-box; + border-radius: 6px; + line-height: 20px; + transition: all 0.3s; + padding: 8px 0; + } + + .child:hover { + color: $light-blue; + transform: scale(1.1); + } + + .checked { + border: 1px solid $light-blue; + color: $light-blue; + } + } + } + + .clyl-img { + width: 75%; + height: 100%; + background: #f3f4f7; + margin: 0 auto; + position: relative; + } + } + } + } +</style> diff --git a/src/views/djbBook/components/tabsconcent/spyj.vue b/src/views/djbBook/components/tabsconcent/spyj.vue new file mode 100644 index 0000000..65f50a0 --- /dev/null +++ b/src/views/djbBook/components/tabsconcent/spyj.vue @@ -0,0 +1,231 @@ +<!-- + * @Description: 功能:审批意见 + * @Autor: renchao + * @LastEditTime: 2023-05-17 10:41:24 +--> +<template> + <div class='spyj loadingtext'> + <div class="box"> + <b class="spyj_title">审批表</b> + <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px"> + <div class="spyj_form" v-for="(item, index) in tableData" :key="index"> + <div class="item_left"> + {{ item.jdmc }}意见 + </div> + <div class="item_right"> + <el-row> + <el-col :span="24"> + <el-form-item label-width="0" class="opinion_item" prop="shyj"> + <el-input type="textarea" :rows="4" class="opinion" placeholder="请输入审批意见" + v-if="item.stepShjy == '1' && ableOperation" v-model="ruleForm.shyj"></el-input> + <el-input type="textarea" :rows="4" class="opinion" v-model="item.shyj" v-else :disabled="true"> + </el-input> + <el-button class="opinion_btn" @click="commonOpinion" + v-if="item.stepShjy == '1' && ableOperation">常用意见</el-button> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="16"> + <el-form-item label="审查人" prop="shryxm"> + {{ item.shryxm }} + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="审核时间" prop="shjssj" :key="refresh"> + {{ item.shjssj }} + </el-form-item> + </el-col> + </el-row> + </div> + </div> + <div class="submit_button" v-if="ableOperation"> + <el-button type="primary" @click="onSubmit">保存</el-button> + </div> + </el-form> + </div> + <el-empty v-if="isNoData" description="暂无数据"></el-empty> + </div> +</template> +<script> + import { getSpyjList, saveSpyj, saveSpyjBySlsq } from "@/api/fqsq.js"; + import { mapGetters } from 'vuex' + export default { + computed: { + ...mapGetters(['userData', 'yjsqOptions']) + }, + data () { + return { + isNoData: false, + bsmSlsq: '', + //刷新值 + refresh: 10, + ableOperation: true, + bsmSlsq: this.$route.query.bsmSlsq, + bestepid: this.$route.query.bestepid, + ruleForm: {}, + rules: { + shyj: [ + { required: true, message: '请输入审批意见', trigger: 'blur' } + ], + }, + tableData: [], + propsParam: {} + } + }, + watch: { + yjsqOptions: { + handler (val) { + this.ruleForm.shyj = val + }, + deep: true, + immediate: true + }, + }, + mounted () { + this.propsParam = this.$attrs; + if (this.$route.query.viewtype) { + this.ableOperation = false + } + this.list(); + }, + methods: { + //审批意见数据初始化 + list () { + let that = this + this.$startLoading() + var formdata = new FormData(); + formdata.append("bsmBusiness", this.propsParam.bsmBusiness); + formdata.append("bestepid", this.$route.query.bestepid); + formdata.append("ableOperation", this.ableOperation) + getSpyjList(formdata).then((res) => { + this.$endLoading() + if (res.code === 200 && res.result) { + this.tableData = res.result ? res.result : [] + if (res.result.length == 0) { + that.isNoData = true + } + this.ruleForm = res.result[res.result.length - 1] + } + }) + }, + onSubmit () { + this.ruleForm.bsmSlsq = this.bsmSlsq + this.ruleForm.bestepid = this.bestepid + saveSpyjBySlsq(this.ruleForm).then(res => { + if (res.code === 200) { + this.$message.success("保存成功") + this.refresh += 1 + } else { + this.$message.error(res.message) + } + }) + }, + //打开常用意见列表弹窗 + commonOpinion () { + this.$popupDialog("常用意见", "workflow/components/dialog/commonOpinion", {}, "70%", true) + }, + //使用常用意见 + useOpinion (opinion) { + this.ruleForm.shyj = opinion + } + } + } +</script> +<style scoped lang='scss'> + @import "~@/styles/mixin.scss"; + + .spyj { + width: 100%; + height: 100%; + background-color: #f5f5f5; + padding: 5px; + .box { + overflow-x: auto; + width: 100%; + height: 95%; + background: #fff; + text-align: center; + padding: 4px; + overflow-y: scroll; + padding-top: 20px; + padding: 20px 40px; + } + .spyj_title { + line-height: 68px; + border: 1px solid $borderColor; + text-align: center; + font-size: 22px; + font-weight: 400; + background-color: #eceef2; + display: block; + border-bottom: none; + } + + /deep/.el-form-item { + margin-bottom: 0; + } + + .bottom10 { + margin-bottom: 15px; + } + + .spyj_form { + display: flex; + border: 1px solid $borderColor; + + .item_left { + width: 150px; + background-color: #f8f8fa; + color: #606266; + display: flex; + font-size: 14px; + text-indent: 80px; + align-items: center; + border-right: 1px solid $borderColor; + } + + .item_right { + flex: 1; + width: 100%; + + /deep/.el-form-item__label { + background-color: #f8f8fa; + } + /deep/.el-form-item__content { + display: block; + text-align: left; + text-indent: 10px; + } + .opinion_item { + /deep/.el-form-item__error { + margin-top: -16px !important; + left: 3px; + } + + border-bottom: 1px solid $borderColor; + } + + .opinion { + position: relative; + font-size: 14px; + + /deep/.el-textarea__inner { + border: none; + } + } + + .opinion_btn { + position: absolute; + right: 15px; + bottom: 10px; + } + } + } + + .submit_button { + text-align: center; + margin: 15px 0; + } + } +</style> diff --git a/src/views/djbBook/jsydsyq.vue b/src/views/djbBook/jsydsyq.vue index 7ee7fac..8ea8f1c 100644 --- a/src/views/djbBook/jsydsyq.vue +++ b/src/views/djbBook/jsydsyq.vue @@ -1,7 +1,7 @@ <!-- * @Description :国有建设用地使用权 * @Autor : miaofang - * @LastEditTime : 2023-06-02 17:11:35 + * @LastEditTime : 2023-06-05 15:40:51 --> <template> <div class="djxxTable"> @@ -78,6 +78,7 @@ }, methods: { loadData () { + console.log(" this.propsParam", this.propsParam); getJsydsyqList({ bdcdyid: this.propsParam.bdcdyid, qllx: this.propsParam.qllx, diff --git a/src/views/djbworkflow/components/clxxUnify.vue b/src/views/djbworkflow/components/clxxUnify.vue index e3fdbae..dbe09e9 100644 --- a/src/views/djbworkflow/components/clxxUnify.vue +++ b/src/views/djbworkflow/components/clxxUnify.vue @@ -1,5 +1,5 @@ <!-- - * @Description: + * @Description: * @Autor: renchao * @LastEditTime: 2023-05-17 10:40:38 --> @@ -335,4 +335,4 @@ } } } -</style> \ No newline at end of file +</style> diff --git a/src/views/djbworkflow/components/leftmenu/ordinaryMenu.vue b/src/views/djbworkflow/components/leftmenu/ordinaryMenu.vue index 83146e2..b38f129 100644 --- a/src/views/djbworkflow/components/leftmenu/ordinaryMenu.vue +++ b/src/views/djbworkflow/components/leftmenu/ordinaryMenu.vue @@ -7,7 +7,7 @@ <div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }"> <div v-if="this.isShowdrawer"> <div class="title"> - 登记簿列表 + 登记簿补录业务列表 </div> <el-tree ref="tree" :data="treedata" :props="defaultProps" @node-click="handleNodeClick" :default-expand-all="true" :expand-on-click-node="false" node-key="id" :default-checked-keys="[showTab]"> @@ -105,10 +105,13 @@ import { loadTreeData, getNode } from "./djbFrameData.js"; bdcdyh: this.bdcdyh, qllx: this.qllx, bsmQlxx: this.bsmQlxx, + bestepid:this.bestepid }; // this.$parent.stepForm(); }, handleNodeClick (data, node, elem) { + console.log("this.currentSelectProps",this.currentSelectProps); + console.log("data",data); this.$parent.loadComponent(this.currentSelectProps,data); this.$parent.tabset(); }, -- libgit2 0.24.0