123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230 |
- <template>
- <!-- 合并发明人,合并权利人/申请人 -->
- <div class="">
- <el-drawer class="custom-drawer-form" title="合并发明人" size="1000px" :visible.sync="drawer" direction="rtl"
- :before-close="close" destroy-on-close>
- <el-container class="patent-inventor-merge">
- <el-header style="display:flex;align-items:center;justify-content: space-between;">
- <div>
- <mySearch style="width: 500px" :SearchFields="searchFiled" @search="search" :searchValue="searchOption">
- </mySearch>
- </div>
- <div>
- <el-button type="primary" size="small" @click="handleAdd()">新增</el-button>
- </div>
- </el-header>
- <el-main class="container-common-main">
- <el-table v-loading="loading" :data="tableData" border header-row-class-name="custom-table-header">
- <el-table-column type="index" label="#" width="55" align="center"></el-table-column>
- <el-table-column prop="name" label="名称" align="center" show-overflow-tooltip></el-table-column>
- <template v-if="mergeType == 0">
- <el-table-column prop="country" label="国家" align="center" show-overflow-tooltip></el-table-column>
- <el-table-column prop="address" label="地址" align="center" show-overflow-tooltip></el-table-column>
- </template>
- <el-table-column prop="createTime" label="更新时间" align="center" show-overflow-tooltip> </el-table-column>
- <el-table-column prop="remark" label="备注" align="center" show-overflow-tooltip></el-table-column>
- <el-table-column label="操作" align="center" width="150">
- <template slot-scope="scope">
- <el-dropdown split-button type="primary" size="small">
- <span @click="handleEdit(scope.row)"
- v-if="$permission('/workspace/folder/merge/inventorMerge/modify')">编辑</span>
- <span v-else :disabled="true">编辑</span>
- <el-dropdown-menu slot="dropdown" class="text-align_center">
- <el-dropdown-item class="color-red" @click.native="handleDelete(scope.row)"
- :disabled="!$permission('/workspace/folder/merge/inventorMerge/delete')">删除</el-dropdown-item>
- </el-dropdown-menu>
- </el-dropdown>
- </template>
- </el-table-column>
- </el-table>
- <div class="pagination">
- <el-pagination :current-page.sync="queryParams.pageNum" :page-size="queryParams.pageSize" :total="total"
- @current-change="handleCurrentChange" layout="total, prev, pager, next, jumper" background></el-pagination>
- </div>
- </el-main>
- <el-footer class="footer-common">
- <el-button @click="close">关 闭</el-button>
- </el-footer>
- </el-container>
- </el-drawer>
- <mergeDialog ref="mergeDialog" :projectId="projectId" @close="close2"></mergeDialog>
- </div>
- </template>
- <script>
- import mergeDialog from './merge.vue'
- export default {
- components: {
- mergeDialog,
- },
- data() {
- return {
- drawer: false,
- loading: false,
- total: 0,
- tableData: [],
- projectId: 0,
- queryParams: {
- pageSize: 10,
- pageNum: 1,
- },
- //检索字段
- searchFiled: [
- {
- label: '名称',
- value: 'name',
- type: 'String',
- }
- ],
- //检索条件
- searchOption: {},
- // 判断是2发明人还是0权利人/申请人
- mergeType:'',
- }
- },
- mounted() {
- },
- methods: {
- // 子组件传来的消息
- close2() {
- this.getList()
- },
- // 编辑合并弹窗
- handleEdit(row) {
- row.mergeType = this.mergeType
- this.$refs.mergeDialog.open(row, '编辑合并')
- },
- // 打开新增弹窗
- handleAdd() {
- this.$refs.mergeDialog.open({
- mergeType: this.mergeType,
- }, '新增合并')
- },
- // 打开合并发明人抽屉弹窗
- open(obj) {
- this.projectId = obj.projectId
- this.mergeType = obj.type
- this.drawer = true
- this.getList()
- },
- //获取检索条件检索
- search(val) {
- let params = {}
- val.forEach(item => {
- if (item.type == 3) {
- params[item.value] = item.searchValue.map(itemValue => {
- return itemValue.value
- })
- } else {
- params[item.value] = item.searchValue.label
- }
- })
- // 返回条件对象
- this.searchOption = this.$commonJS.ArrayToArray(val)
- // 调用查询接口
- this.queryParams.current = 1
- this.getList()
- },
- // 获取表格数据
- getList() {
- this.loading = true
- let params = {
- projectId: this.projectId,
- ...this.queryParams,
- searchQuery: this.$commonJS.objectToString(this.searchOption || {}),//检索条件
- type: this.mergeType,//2是发明人0是申请人/权利人
- }
- this.$api.selectMergePerson(params).then(response => {
- if (response.code == 200) {
- this.tableData = response.data.data
- this.total = response.data.total
- this.loading = false
- }
- }).catch(error => {
- this.loading = false
- })
- },
- // 分页信息
- handleCurrentChange(val) {
- this.queryParams.pageNum = val;
- this.getList();
- },
- // 关闭抽屉弹窗
- close() {
- this.drawer = false
- this.$emit('mergeClose')
- },
- // 删除表格数据
- handleDelete(row) {
- this.$confirm('确认删除本条数据吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.loading = true
- let params = {
- id: row.id,
- type: 2,
- }
- this.$api.delMergePerson(params).then(response => {
- if (response.code == 200) {
- this.$message.success('删除成功')
- this.loading = false
- this.getList()
- }
- }).catch(error => {
- this.loading = false
- })
- })
- },
- // 打开新增弹窗
- // handleAdd() {
- // this.$refs.mergeDialog.open({
- // // mergedName: [],
- // mergeType: 1,
- // }, '新增合并')
- // // this.$refs.patentInventorMergeManageDrawer.open({
- // // projectId: this.queryParams.projectId,
- // // // mergedName: [],
- // // name: '',
- // // remark: '',
- // // }, '新增合并')
- // },
- // // 编辑合并弹窗
- // handleEdit(row) {
- // row.mergeType = 1
- // this.$refs.mergeDialog.open(row, '编辑合并')
- // // row.projectId = this.projectId
- // // this.$refs.patentInventorMergeManageDrawer.open(row, '编辑合并')
- // },
- }
- }
- </script>
- <style lang="scss">
- .patent-inventor-merge {
- .pagination {
- text-align: center;
- margin: 20px 0;
- }
- }
- </style>
|