|
@@ -22,7 +22,8 @@
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column v-for="item in tableField.filter(item => !item.hidden)" :key="item.key" :label="item.name" :prop="['court','argumentStr'].indexOf(item.key)!=-1?'id':item.key" align="center" type>
|
|
<el-table-column v-for="item in tableField.filter(item => !item.hidden)" :key="item.key" :label="item.name" :prop="['court','argumentStr'].indexOf(item.key)!=-1?'id':item.key" align="center" type>
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- <div v-if="item.key == 'proofStr'" class="div_MAX_Height">
|
|
|
|
|
|
+ <!-- 相关证据 -->
|
|
|
|
+ <div v-if="item.key == 'proofStr'" class="div_MAX_Height">
|
|
<!-- <span v-if="scope.row.proofGroups.length > 0">
|
|
<!-- <span v-if="scope.row.proofGroups.length > 0">
|
|
<p v-for="(i, index) in scope.row.proofGroups" :key="index">
|
|
<p v-for="(i, index) in scope.row.proofGroups" :key="index">
|
|
<span v-for="(y, index1) in i.proofs" :key="y.label">
|
|
<span v-for="(y, index1) in i.proofs" :key="y.label">
|
|
@@ -49,44 +50,122 @@
|
|
</el-popover>
|
|
</el-popover>
|
|
</p>
|
|
</p>
|
|
</span> -->
|
|
</span> -->
|
|
- <span v-if="scope.row.proofGroups.length > 0">
|
|
|
|
- <p v-for="(i, index) in scope.row.proofGroups" :key="index">
|
|
|
|
- <span v-for="(y, index1) in i.proofs" :key="y.label">
|
|
|
|
- <el-link @click="check(item, y)" v-if="y.id!=0">D{{ y.sort }}</el-link>
|
|
|
|
- <span v-else>{{y.fileName}}</span>
|
|
|
|
- <span v-if="index1 < i.proofs.length - 1"> + </span>
|
|
|
|
|
|
+ <div v-if="scope.row.proofGroups && scope.row.proofGroups.length>0" style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-if="scope.row.proofGroups.length > 0" style="flex:1">
|
|
|
|
+ <p v-for="(i, index) in scope.row.proofGroups" :key="index">
|
|
|
|
+ <span v-for="(y, index1) in i.proofs" :key="y.label">
|
|
|
|
+ <el-tooltip v-if="y.id!=0" class="item" effect="dark" :content="y.fileName" placement="top">
|
|
|
|
+ <el-link @click="check(item, y)" >D{{ y.sort }}</el-link>
|
|
|
|
+ </el-tooltip>
|
|
|
|
+ <span v-else>{{y.fileName}}</span>
|
|
|
|
+ <span v-if="index1 < i.proofs.length - 1"> + </span>
|
|
|
|
+ </span>
|
|
|
|
+ </p>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="scope.row.proofGroups.length > 0" style="width:16px">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="expands.indexOf(scope.row.pId)!=-1 && chooseField == item.key" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,item.key,scope.$index+'')"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,item.key,scope.$index+'')"></i>
|
|
</span>
|
|
</span>
|
|
- </p>
|
|
|
|
- </span>
|
|
|
|
- <span v-else>
|
|
|
|
- {{ scope.row[item.key] }}
|
|
|
|
- </span>
|
|
|
|
-
|
|
|
|
- <div style="position: relative;">
|
|
|
|
- <span style="margin-left:40px;position:absolute;right:10px;bottom: 15px;" v-if="![0,1].includes(scope.row.invalidName)">
|
|
|
|
- <i v-if="!scope.row.iconShow" class="iconfont icon-yanjing_yincang" @click="toogleExpand(scope.row,scope.$index)"></i>
|
|
|
|
- <i v-else class="iconfont icon-yanjing_xianshi" @click="toogleExpand(scope.row,scope.$index)"></i>
|
|
|
|
- </span>
|
|
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+ <div v-else class="langHtml" style="text-align:left" v-html="scope.row[item.key]" @click.prevent="showDetails($event,scope.row[item.key])"></div>
|
|
</div>
|
|
</div>
|
|
- <!-- <div v-else-if="item.key == 'court'" style="position:relative"><span >{{ getData(scope.row,item.key) }} </span>
|
|
|
|
- <span style="margin-left:20px;position:absolute;right:0" v-if="scope.row.invalidName == 3 || scope.row.invalidName == 2">
|
|
|
|
- <el-link type="primary" @click="toogleExpand(scope.row,scope.$index)">详情</el-link>
|
|
|
|
- </span>
|
|
|
|
- </div> -->
|
|
|
|
|
|
+ <!-- 证据组合陈述意见 -->
|
|
<div v-else-if="item.key=='argument_str'" class="div_MAX_Height">
|
|
<div v-else-if="item.key=='argument_str'" class="div_MAX_Height">
|
|
<span v-if="scope.row.proofGroups && scope.row.proofGroups.length!=0" v-html="scope.row.proofGroups[0].argument_str"></span>
|
|
<span v-if="scope.row.proofGroups && scope.row.proofGroups.length!=0" v-html="scope.row.proofGroups[0].argument_str"></span>
|
|
</div>
|
|
</div>
|
|
|
|
+ <!-- 陈述意见 -->
|
|
|
|
+ <div v-else-if="item.key=='argumentStr'" style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData(scope.row,item.key)[0]" class="langHtml div_MAX_Height" @click.stop="showDetails($event,scope.row[item.key])"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData(scope.row,item.key)[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.key" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,item.key)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,item.key)"></i>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <!-- 涉及内容 -->
|
|
<el-tooltip class="item" effect="dark" :content="scope.row.rightContent" placement="top" v-else-if="item.key == 'court' && (scope.row.content == 0 || scope.row.content)">
|
|
<el-tooltip class="item" effect="dark" :content="scope.row.rightContent" placement="top" v-else-if="item.key == 'court' && (scope.row.content == 0 || scope.row.content)">
|
|
<div v-html="getData(scope.row,item.key)"></div>
|
|
<div v-html="getData(scope.row,item.key)"></div>
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
-
|
|
|
|
<div v-else v-html="getData(scope.row,item.key)" class="div_MAX_Height"></div>
|
|
<div v-else v-html="getData(scope.row,item.key)" class="div_MAX_Height"></div>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column v-for="item in tableField2.filter(item => item.fieldState)" :key="item.fieldKey" :label="item.fieldName" prop="id" align="center" type>
|
|
<el-table-column v-for="item in tableField2.filter(item => item.fieldState)" :key="item.fieldKey" :label="item.fieldName" prop="id" align="center" type>
|
|
- <template slot="header">
|
|
|
|
|
|
+ <template v-if="item.fieldKey.indexOf('courtOptions')!=-1">
|
|
|
|
+ <div>
|
|
|
|
+ <el-table-column
|
|
|
|
+ label="法院意见"
|
|
|
|
+ align="center"
|
|
|
|
+ prop="id">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData1(scope.row,item.fieldKey,'court')[0]" class="langHtml div_MAX_Height" @click.prevent="showDetails($event,scope.row,item.fieldKey)"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData1(scope.row,item.fieldKey,'court')[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.fieldKey+'court'" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,'court',0,item.fieldKey)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,'court',0,item.fieldKey)"></i>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column
|
|
|
|
+ label="起诉人意见"
|
|
|
|
+ align="center"
|
|
|
|
+ prop="id">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData1(scope.row,item.fieldKey,'prosecutor')[0]" class="langHtml div_MAX_Height" @click.prevent="showDetails($event,scope.row,item.fieldKey)"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData1(scope.row,item.fieldKey,'prosecutor')[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.fieldKey+'prosecutor'" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,'prosecutor',0,item.fieldKey)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,'prosecutor',0,item.fieldKey)"></i>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column
|
|
|
|
+ label="被诉人意见"
|
|
|
|
+ align="center"
|
|
|
|
+ prop="id">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData1(scope.row,item.fieldKey,'respondent')[0]" class="langHtml div_MAX_Height" @click.prevent="showDetails($event,scope.row,item.fieldKey)"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData1(scope.row,item.fieldKey,'respondent')[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.fieldKey+'respondent'" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,'respondent',0,item.fieldKey)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,'respondent',0,item.fieldKey)"></i>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column
|
|
|
|
+ label="第三方机构意见"
|
|
|
|
+ align="center"
|
|
|
|
+ prop="id">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <div style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData1(scope.row,item.fieldKey,'institution')[0]" class="langHtml div_MAX_Height" @click.prevent="showDetails($event,scope.row,item.fieldKey)"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData1(scope.row,item.fieldKey,'institution')[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.fieldKey+'institution'" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,'institution',0,item.fieldKey)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,'institution',0,item.fieldKey)"></i>
|
|
|
|
+
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+
|
|
|
|
+ <!-- <template slot="header">
|
|
<div>
|
|
<div>
|
|
<span>{{ item.fieldName }}</span>
|
|
<span>{{ item.fieldName }}</span>
|
|
<span class="margin-left_10">
|
|
<span class="margin-left_10">
|
|
@@ -107,16 +186,22 @@
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
</el-link>
|
|
</el-link>
|
|
</span>
|
|
</span>
|
|
-
|
|
|
|
-
|
|
|
|
</span>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
- </template>
|
|
|
|
|
|
+ </template> -->
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
- <div v-if="item[('edit'+item.fieldKey)]">
|
|
|
|
|
|
+ <!-- <div v-if="item[('edit'+item.fieldKey)]">
|
|
<myRich-Text v-model="scope.row[item.fieldKey]" :placeholder="'请输入'+item.fieldName"></myRich-Text>
|
|
<myRich-Text v-model="scope.row[item.fieldKey]" :placeholder="'请输入'+item.fieldName"></myRich-Text>
|
|
|
|
+ </div> -->
|
|
|
|
+ <div style="display:flex;align-items:center;justify-content:space-between">
|
|
|
|
+ <div v-html="getData1(scope.row,item.fieldKey,0)[0]" class="langHtml div_MAX_Height" @click.prevent="showDetails($event,scope.row,item.fieldKey)"></div>
|
|
|
|
+ <div style="width:16px" v-if="getData1(scope.row,item.fieldKey,0)[1]">
|
|
|
|
+ <span>
|
|
|
|
+ <i v-if="scope.row.iconShow && chooseField == item.fieldKey" class="iconfont icon-yanjing_xianshi" @click="checkDetails(scope.row,item.fieldKey)"></i>
|
|
|
|
+ <i v-else class="iconfont icon-yanjing_yincang" @click="checkDetails(scope.row,item.fieldKey)"></i>
|
|
|
|
+ </span>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
- <div v-else v-html="getData1(scope.row,item.fieldKey)" class="div_MAX_Height"></div>
|
|
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
<el-table-column label="操作" align="center" width="180px" type prop="id" v-if=" $reportPermission(reportId,[0,1])">
|
|
<el-table-column label="操作" align="center" width="180px" type prop="id" v-if=" $reportPermission(reportId,[0,1])">
|
|
@@ -129,18 +214,48 @@
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
|
|
|
<el-table-column type="expand" width="1">
|
|
<el-table-column type="expand" width="1">
|
|
- <template slot-scope="scope">
|
|
|
|
- <InvalidDetails :invalidReasonId="scope.row.id" :proofGroupId="scope.row.proofGroups[0].id" :reportId="reportId" :patentNo="signPatentNo" :rightSort="scope.row.content" :right="rightList.find(item => item.sort == scope.row.content)"></InvalidDetails>
|
|
|
|
- </template>
|
|
|
|
- </el-table-column>
|
|
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <InvalidDetails v-if="chooseField == 'proofStr'" :invalidReasonId="scope.row.id" :proofGroupId="scope.row.proofGroups[0].id" :reportId="reportId" :patentNo="signPatentNo" :rightSort="scope.row.content" :right="rightList.find(item => item.sort == scope.row.content)"></InvalidDetails>
|
|
|
|
+ <div v-else style="width:100%;padding:10px">
|
|
|
|
+ <div style="display:flex;align-items:center;width:100%">
|
|
|
|
+ <div>{{chooseField=='court'?'法院意见':field.find(item=>{return chooseField.indexOf(item.label)!=-1}).value }}结论:</div>
|
|
|
|
+ <div style="flex:1">
|
|
|
|
+ <div v-if="editFieldIs.indexOf('conclusion')==-1" style="display:flex;align-items:center;width:100%">
|
|
|
|
+ <div v-html="fieldValue[0]" class="div_MAX_Height" style="border:1px solid #DCDFE6;min-height:30px;width:100%;line-height:30px"></div>
|
|
|
|
+ <span @click="editContents('conclusion')" v-if=" $reportPermission(reportId,[0,1])"><el-link type="primary"><i class="iconfont icon-bianji" style="font-size:28px"></i></el-link></span>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="editFieldIs.indexOf('conclusion')!=-1" style="display:flex;align-items:center;width:100%">
|
|
|
|
+ <myRich-Text v-model="fieldValue[0]" :placeholder="'请输入'+field.find(item=>{return chooseField.indexOf(item.label)!=-1}).value+'结论'" style="width:100%"></myRich-Text>
|
|
|
|
+ <el-button type="primary" class="margin-left_10" icon="el-icon-check" circle style="font-size:15px" @click="submitContents('conclusion')"></el-button>
|
|
|
|
+ <el-button type="primary" class="margin-left_10" icon="iconfont icon-fanhui" circle style="font-size:15px" @click="cancelContents('conclusion')"></el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <div style="display:flex;align-items:center;width:100%;margin-top:10px;">
|
|
|
|
+ <div>{{ chooseField=='court'?'法院意见':field.find(item=>{return chooseField.indexOf(item.label)!=-1}).value }}详情:</div>
|
|
|
|
+ <div style="flex:1">
|
|
|
|
+ <div v-if="editFieldIs.indexOf('details')==-1" style="display:flex;align-items:center;width:100%">
|
|
|
|
+ <div v-html="fieldValue[1]" class="div_MAX_Height" style="border:1px solid #DCDFE6;min-height:30px;width:100%;line-height:30px"></div>
|
|
|
|
+ <span @click="editContents('details')" v-if=" $reportPermission(reportId,[0,1])"><el-link type="primary"><i class="iconfont icon-bianji" style="font-size:28px"></i></el-link></span>
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="editFieldIs.indexOf('details')!=-1" style="width:100%;display:flex;align-items:center;width:100%">
|
|
|
|
+ <myRich-Text v-model="fieldValue[1]" :placeholder="'请输入'+field.find(item=>{return chooseField.indexOf(item.label)!=-1}).value+'详情'" style="width:100%"></myRich-Text>
|
|
|
|
+ <el-button type="primary" class="margin-left_10" icon="el-icon-check" circle style="font-size:15px" @click="submitContents('details')"></el-button>
|
|
|
|
+ <el-button type="primary" class="margin-left_10" icon="iconfont icon-fanhui" circle style="font-size:15px" @click="cancelContents('details')"></el-button>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
<Table-Field ref="tableField" :reportId="reportId" @update="getTableField"></Table-Field>
|
|
<Table-Field ref="tableField" :reportId="reportId" @update="getTableField"></Table-Field>
|
|
|
|
|
|
- <el-dialog :title="title" :visible.sync="visible" width="800px" :before-close="close" :append-to-body="true" :close-on-click-modal="false">
|
|
|
|
- <div>
|
|
|
|
- <el-form :model="form" ref="form" :rules='rules' label-width="100px" label-position="left">
|
|
|
|
|
|
+ <el-dialog :title="title" :visible.sync="visible" width="800px" custom-class="invalid" :before-close="close" :append-to-body="true" :close-on-click-modal="false">
|
|
|
|
+ <div v-if="visible" style="height: 100%;overflow-y:auto;padding:0 10px;">
|
|
|
|
+ <el-form :model="form" ref="form" :rules='rules' label-width="120px" label-position="left">
|
|
<el-form-item label="无效理由:" prop="invalidName">
|
|
<el-form-item label="无效理由:" prop="invalidName">
|
|
- <el-select v-model="form.invalidName" placeholder="请选择" style="width:100%">
|
|
|
|
|
|
+ <el-select v-model="form.invalidName" @change="changeInvalid" placeholder="请选择" style="width:100%">
|
|
<el-option v-for="item in invalidList" :key="item.value" :label="item.label" :value="item.value">
|
|
<el-option v-for="item in invalidList" :key="item.value" :label="item.label" :value="item.value">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
@@ -148,48 +263,23 @@
|
|
<el-form-item label="涉及内容:" prop="content">
|
|
<el-form-item label="涉及内容:" prop="content">
|
|
<!-- 说明书为0,权要为权要id,字段coutent -->
|
|
<!-- 说明书为0,权要为权要id,字段coutent -->
|
|
<span v-if="form.invalidName == 1">说明书</span>
|
|
<span v-if="form.invalidName == 1">说明书</span>
|
|
- <el-select v-else v-model="form.content" placeholder="请选择" style="width:100%" @change="contentChange">
|
|
|
|
|
|
+ <el-select v-else v-model="form.content" :multiple="isMore" placeholder="请选择" style="width:100%" @change="contentChange">
|
|
<el-option v-for="item in rightList" :key="item.sort" :label="item.rightName" :value="item.sort">
|
|
<el-option v-for="item in rightList" :key="item.sort" :label="item.rightName" :value="item.sort">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <template v-if="form.invalidName == 0 && (form.content == 0 || form.content) ">
|
|
|
|
|
|
+ <template v-if="invalidType == 1 && (form.content == 0 || form.content) ">
|
|
<!-- features -->
|
|
<!-- features -->
|
|
<el-form-item label="选择特征:">
|
|
<el-form-item label="选择特征:">
|
|
<rightContent :right="rightList.find(item => item.sort == this.form.content)" :reportId="reportId"></rightContent>
|
|
<rightContent :right="rightList.find(item => item.sort == this.form.content)" :reportId="reportId"></rightContent>
|
|
<!-- <span >{{ rightList.find(item => item.sort == this.form.content).content }}</span> -->
|
|
<!-- <span >{{ rightList.find(item => item.sort == this.form.content).content }}</span> -->
|
|
</el-form-item>
|
|
</el-form-item>
|
|
</template>
|
|
</template>
|
|
- <el-form-item label="相关证据:" v-if="form.content == 0 || form.content || form.invalidName == 1">
|
|
|
|
- <span v-if="form.invalidName == 0 || form.invalidName == 1">
|
|
|
|
- <el-input type="text" v-model="form.proofStr" placeholder="请输入相关证据" style="width:100%"></el-input>
|
|
|
|
|
|
+ <el-form-item label="相关证据:" v-if="form.content == 0 || form.content || invalidType == 3">
|
|
|
|
+ <span v-if="['1','3'].indexOf(invalidType) !=-1">
|
|
|
|
+ <myRich-Text v-model="form.proofStr" placeholder="请输入相关证据" style="width:100%"></myRich-Text>
|
|
</span>
|
|
</span>
|
|
<div v-else>
|
|
<div v-else>
|
|
- <!-- <span v-for="(item, index) in form.proofGroups" :key="index" style="margin-right:10px">
|
|
|
|
- <span v-for="(i, index1) in (item.proofs)" :key="i.label">
|
|
|
|
- <el-popover placement="top-start" width="800" trigger="hover" ref="popoverHover" >
|
|
|
|
- <div>
|
|
|
|
- <p><span>描述:</span><span>{{ i.description }}</span></p>
|
|
|
|
- <div>
|
|
|
|
- <Invalid-Evidence ref="invalid" :patentNo="signPatentNo" :evidence="showPopover(i,null,index)" :reportId="reportId" :sign="sign" @evidence="getEvidence"></Invalid-Evidence>
|
|
|
|
- </div>
|
|
|
|
- </div>
|
|
|
|
- <el-link v-if="i.sort" slot="reference">D{{ i.sort }}</el-link>
|
|
|
|
- <el-link v-else slot="reference">{{ i.sortStr }}</el-link>
|
|
|
|
- </el-popover>
|
|
|
|
- <span v-if="index1 < item.proofs.length - 1">+</span>
|
|
|
|
- </span>
|
|
|
|
- <el-popover placement="top-start" width="200" trigger="hover">
|
|
|
|
- <div>
|
|
|
|
- <p><span>描述:</span><span>{{ item.description }}</span></p>
|
|
|
|
- <p><span>陈述意见:</span><span>{{ item.argumentStr }}</span></p>
|
|
|
|
- </div>
|
|
|
|
- <span class="check" slot="reference">
|
|
|
|
- <i class="el-icon-view chakan"></i>
|
|
|
|
- <i class="el-icon-circle-close guanbi" @click="delCompose(form.proofGroups, index)"></i>
|
|
|
|
- </span>
|
|
|
|
- </el-popover>
|
|
|
|
- </span> -->
|
|
|
|
<span v-for="(item, index) in form.proofGroups" :key="index" style="margin-right:10px">
|
|
<span v-for="(item, index) in form.proofGroups" :key="index" style="margin-right:10px">
|
|
<span v-for="(i, index1) in (item.proofs)" :key="i.label">
|
|
<span v-for="(i, index1) in (item.proofs)" :key="i.label">
|
|
<el-link v-if="i.sort && i.id!=0">D{{ i.sort }}</el-link>
|
|
<el-link v-if="i.sort && i.id!=0">D{{ i.sort }}</el-link>
|
|
@@ -242,15 +332,15 @@
|
|
</el-table-column>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
<div style="display:flex;align-items:center">
|
|
<div style="display:flex;align-items:center">
|
|
- <p style="margin:0">描述:</p>
|
|
|
|
|
|
+ <p style="margin:0">无效理由总结:</p>
|
|
<div style="flex:1">
|
|
<div style="flex:1">
|
|
- <el-input type="textarea" :rows="1" v-model="description" placeholder="请输入描述"></el-input>
|
|
|
|
|
|
+ <el-input type="textarea" :rows="1" v-model="description" placeholder="请输入无效理由总结"></el-input>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div style="display:flex;align-items:center;margin-top:10px">
|
|
<div style="display:flex;align-items:center;margin-top:10px">
|
|
- <p style="margin:0">陈述意见:</p>
|
|
|
|
|
|
+ <p style="margin:0">无效理由详情:</p>
|
|
<div style="flex:1">
|
|
<div style="flex:1">
|
|
- <myRich-Text v-model="argumentStr" placeholder="请输入陈述意见"></myRich-Text>
|
|
|
|
|
|
+ <myRich-Text v-model="argumentStr" placeholder="请输入无效理由详情"></myRich-Text>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div style="display:flex;justify-content: flex-end;margin-top:10px">
|
|
<div style="display:flex;justify-content: flex-end;margin-top:10px">
|
|
@@ -261,18 +351,14 @@
|
|
</template>
|
|
</template>
|
|
</div>
|
|
</div>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="陈述意见:">
|
|
|
|
- <myRich-Text v-model="form.argumentStr" placeholder="请输入陈述意见"></myRich-Text>
|
|
|
|
|
|
+ <el-form-item label="权利人答辩意见:">
|
|
|
|
+ <!-- <myRich-Text v-model="form.argumentStr" placeholder="请输入陈述意见"></myRich-Text> -->
|
|
|
|
+ <editField type="2" v-model="form.argumentStr"></editField>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item v-for="item in tableField2" :key="item.fieldKey" :label="item.fieldName+':'">
|
|
<el-form-item v-for="item in tableField2" :key="item.fieldKey" :label="item.fieldName+':'">
|
|
- <myRich-Text v-model="form[item.fieldKey]" :placeholder="'请输入'+item.fieldName"></myRich-Text>
|
|
|
|
- </el-form-item>
|
|
|
|
- <!-- <el-form-item label="复审委意见:">
|
|
|
|
- <el-input type="textarea" :rows="1" v-model="form.comOptions"></el-input>
|
|
|
|
|
|
+ <!-- <myRich-Text v-model="form[item.fieldKey]" :placeholder="'请输入'+item.fieldName"></myRich-Text> -->
|
|
|
|
+ <editField :type="item.fieldKey.indexOf('courtOptions')!=-1?'1':'2'" v-model="form[item.fieldKey]"></editField>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="法院意见:">
|
|
|
|
- <el-input type="textarea" :rows="1" v-model="form.courtOptions"></el-input>
|
|
|
|
- </el-form-item> -->
|
|
|
|
</el-form>
|
|
</el-form>
|
|
</div>
|
|
</div>
|
|
<div slot="footer" class="dialog-footer">
|
|
<div slot="footer" class="dialog-footer">
|
|
@@ -299,15 +385,21 @@ import InvalidDetails from './InvalidDetails/InvalidDetails.vue'
|
|
import rightContent from './addFeatures/rightContent.vue'
|
|
import rightContent from './addFeatures/rightContent.vue'
|
|
import AddOrEditField from './addOrEditField.vue'
|
|
import AddOrEditField from './addOrEditField.vue'
|
|
import { downLoad2 } from "@/utils";
|
|
import { downLoad2 } from "@/utils";
|
|
|
|
+
|
|
|
|
+import editField from './editFields/index.vue'
|
|
|
|
+import {getInvalidType} from './mixins'
|
|
|
|
+
|
|
export default {
|
|
export default {
|
|
props: ['reportId','signPatentNo','reportType'],
|
|
props: ['reportId','signPatentNo','reportType'],
|
|
|
|
+ mixins:[getInvalidType],
|
|
components: {
|
|
components: {
|
|
TableField,
|
|
TableField,
|
|
InvalidEvidence,
|
|
InvalidEvidence,
|
|
InvalidFeatures,
|
|
InvalidFeatures,
|
|
InvalidDetails,
|
|
InvalidDetails,
|
|
rightContent,
|
|
rightContent,
|
|
- AddOrEditField
|
|
|
|
|
|
+ AddOrEditField,
|
|
|
|
+ editField
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
const contentRule = (rule, value, callback) => {
|
|
const contentRule = (rule, value, callback) => {
|
|
@@ -323,6 +415,37 @@ export default {
|
|
|
|
|
|
}
|
|
}
|
|
return {
|
|
return {
|
|
|
|
+ isMore:false,
|
|
|
|
+ windowHeight:window.screen.height - 400,
|
|
|
|
+ field:[
|
|
|
|
+ {
|
|
|
|
+ label:'prosecutor',
|
|
|
|
+ value:'起诉人意见'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'respondent',
|
|
|
|
+ value:'被诉人意见'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'institution',
|
|
|
|
+ value:'第三方机构意见'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'court',
|
|
|
|
+ value:'法院意见'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'comOptions',
|
|
|
|
+ value:'复审委意见'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label:'argumentStr',
|
|
|
|
+ value:'陈述意见'
|
|
|
|
+ }
|
|
|
|
+ ],
|
|
|
|
+ chooseField:'',
|
|
|
|
+ editFieldIs:[],
|
|
|
|
+ fieldValue:[],
|
|
btnLoading:false,
|
|
btnLoading:false,
|
|
tableLoading:false,
|
|
tableLoading:false,
|
|
expands:[],
|
|
expands:[],
|
|
@@ -362,7 +485,7 @@ export default {
|
|
// },
|
|
// },
|
|
{
|
|
{
|
|
key: 'argumentStr',
|
|
key: 'argumentStr',
|
|
- name: '陈述意见',
|
|
|
|
|
|
+ name: '权利人答辩意见',
|
|
hidden: false
|
|
hidden: false
|
|
},
|
|
},
|
|
// {
|
|
// {
|
|
@@ -377,33 +500,7 @@ export default {
|
|
// },
|
|
// },
|
|
],//显示栏位管理
|
|
],//显示栏位管理
|
|
tableField2:[],
|
|
tableField2:[],
|
|
- invalidList: [
|
|
|
|
- {
|
|
|
|
- id: 0,
|
|
|
|
- label: '权利要求不清楚',
|
|
|
|
- value: 0
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 1,
|
|
|
|
- label: '说明书公开不充分',
|
|
|
|
- value: 1
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 2,
|
|
|
|
- label: '不具备创造性',
|
|
|
|
- value: 2
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 3,
|
|
|
|
- label: '不具备新颖性',
|
|
|
|
- value: 3
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- id: 4,
|
|
|
|
- label: '重复授权',
|
|
|
|
- value: 4
|
|
|
|
- },
|
|
|
|
- ],//无效理由数组
|
|
|
|
|
|
+ invalidList: this.$constants.invalidList,//无效理由数组
|
|
rightList: [],//权要数组
|
|
rightList: [],//权要数组
|
|
proofGroups: [],//子组件新增的数据
|
|
proofGroups: [],//子组件新增的数据
|
|
EvidenceList: [],//新增证据数组
|
|
EvidenceList: [],//新增证据数组
|
|
@@ -419,6 +516,7 @@ export default {
|
|
// tabRowIndex:null,//行角标
|
|
// tabRowIndex:null,//行角标
|
|
// tabColumnIndex:null,//列角标
|
|
// tabColumnIndex:null,//列角标
|
|
rowData: '',
|
|
rowData: '',
|
|
|
|
+ scrollTop:0
|
|
}
|
|
}
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
@@ -533,6 +631,217 @@ export default {
|
|
getHeight() {
|
|
getHeight() {
|
|
this.tableHeight = document.getElementsByClassName('el-main')[0].clientHeight - 100
|
|
this.tableHeight = document.getElementsByClassName('el-main')[0].clientHeight - 100
|
|
},
|
|
},
|
|
|
|
+ //编辑单元格详情数据
|
|
|
|
+ editContents(field){
|
|
|
|
+ this.editFieldIs.push(field)
|
|
|
|
+ var fieldValue = JSON.parse(JSON.stringify(this.fieldValue))
|
|
|
|
+ if(field == 'conclusion'){
|
|
|
|
+ this.fieldValue[2] = fieldValue[0]
|
|
|
|
+ }else{
|
|
|
|
+ this.fieldValue[3] = fieldValue[1]
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ //提交单元格详情数据
|
|
|
|
+ submitContents(field){
|
|
|
|
+ var fieldValue = JSON.parse(JSON.stringify(this.fieldValue))
|
|
|
|
+ var value = []
|
|
|
|
+ if(this.editFieldIs.length>1){
|
|
|
|
+ if(field == 'conclusion'){
|
|
|
|
+ value = [fieldValue[0],fieldValue[3]]
|
|
|
|
+ }else{
|
|
|
|
+ value = [fieldValue[2],fieldValue[1]]
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ value = [fieldValue[0],fieldValue[1]]
|
|
|
|
+ }
|
|
|
|
+ if(this.chooseField == 'argumentStr'){
|
|
|
|
+ // var arr = this.getData(this.form,'argumentStr')
|
|
|
|
+ this.form[this.chooseField] = JSON.stringify(value)
|
|
|
|
+ }else if(this.chooseField == 'comOptions'){
|
|
|
|
+ // var arr = this.getFieldData(this.form,'comOptions')
|
|
|
|
+ this.form[this.chooseField] = JSON.stringify(value)
|
|
|
|
+ }else{
|
|
|
|
+ var key = this.field.find(item=>{return this.chooseField.indexOf(item.label)!=-1}).label
|
|
|
|
+ var a = this.chooseField.replace(key,'')
|
|
|
|
+ var arr = this.getFieldData(this.form,a,key)
|
|
|
|
+ arr[key] = value
|
|
|
|
+ this.form[a] = JSON.stringify(arr)
|
|
|
|
+ }
|
|
|
|
+ var form = JSON.parse(JSON.stringify(this.form))
|
|
|
|
+ if (form.invalidName == 1) {
|
|
|
|
+ form.content == -1
|
|
|
|
+ }
|
|
|
|
+ form.reportId = this.reportId
|
|
|
|
+ form.fields = []
|
|
|
|
+ for(let key in this.form){
|
|
|
|
+ var index = this.tableField2.findIndex(item=>{
|
|
|
|
+ return item.fieldKey == key
|
|
|
|
+ })
|
|
|
|
+ if(index!=-1){
|
|
|
|
+ form.fields.push(
|
|
|
|
+ {
|
|
|
|
+ "invalidReasonId":form.id|| 0,
|
|
|
|
+ "fieldId": this.tableField2[index].id,
|
|
|
|
+ "fieldValue": form[key]
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ this.$api.updateInvalidReason(form).then(async (res) => {
|
|
|
|
+ if (res.code == 200) {
|
|
|
|
+ this.$message.success('更新成功')
|
|
|
|
+ var index = this.editFieldIs.indexOf(field)
|
|
|
|
+ this.editFieldIs.splice(index,1)
|
|
|
|
+ await this.getInvalidReason()
|
|
|
|
+
|
|
|
|
+ var a = []
|
|
|
|
+ a[0] = this.tableData.slice(0,this.expands[0])
|
|
|
|
+ a[1]= this.tableData.slice(this.expands[0],this.tableData.length)
|
|
|
|
+ var arr = {
|
|
|
|
+ invalidName: [],
|
|
|
|
+ id:[]
|
|
|
|
+ }
|
|
|
|
+ a.forEach(item => {
|
|
|
|
+ var splitArr=this.getSpanArr(item)
|
|
|
|
+ arr.invalidName = arr.invalidName.concat(splitArr.invalidName)
|
|
|
|
+ arr.id = arr.id.concat(splitArr.id)
|
|
|
|
+ })
|
|
|
|
+ this.mergeObj=arr
|
|
|
|
+ var scrollTop = document.querySelector('.el-table__body-wrapper').scrollTop
|
|
|
|
+ this.refreshData = false
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ this.refreshData = true
|
|
|
|
+ this.expands = JSON.parse(JSON.stringify(this.expands))
|
|
|
|
+ this.getHeight()
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
+ document.getElementsByClassName('el-table__body-wrapper')[0].scrollTop = scrollTop
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getFieldData(row,key,type){
|
|
|
|
+ var index = row.fields.findIndex(item=>item.fieldKey == key)
|
|
|
|
+ if(index!=-1){
|
|
|
|
+ try {
|
|
|
|
+ var obj=JSON.parse(row.fields[index].fieldValue);
|
|
|
|
+ if(typeof obj == 'object' && obj ){
|
|
|
|
+ return obj;
|
|
|
|
+ }else{
|
|
|
|
+ if(key == 'comOptions'){
|
|
|
|
+ return []
|
|
|
|
+ }else{
|
|
|
|
+ return {}
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } catch(e) {
|
|
|
|
+ if(key == 'comOptions'){
|
|
|
|
+ return [row.fields[index].fieldValue]
|
|
|
|
+ }else{
|
|
|
|
+ return {
|
|
|
|
+ court:[row.fields[index].fieldValue]
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ if(key == 'comOptions'){
|
|
|
|
+ return []
|
|
|
|
+ }else{
|
|
|
|
+ return {}
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ //取消单元格详情数据
|
|
|
|
+ cancelContents(field){
|
|
|
|
+ var index = this.editFieldIs.indexOf(field)
|
|
|
|
+ this.editFieldIs.splice(index,1)
|
|
|
|
+ var fieldValue = JSON.parse(JSON.stringify(this.fieldValue))
|
|
|
|
+ if(field == 'conclusion'){
|
|
|
|
+ this.fieldValue[0] = fieldValue[2]
|
|
|
|
+ }else{
|
|
|
|
+ this.fieldValue[1] = fieldValue[3]
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ //查看单元格详情
|
|
|
|
+ checkDetails(row1,field, index,fieldKey){
|
|
|
|
+ var row = JSON.parse(JSON.stringify(row1))
|
|
|
|
+ var scrollTop = document.querySelector('.el-table__body-wrapper').scrollTop
|
|
|
|
+ this.editFieldIs=[]
|
|
|
|
+ this.fieldValue=[]
|
|
|
|
+ if(index){
|
|
|
|
+ var num = row.pId
|
|
|
|
+ }else{
|
|
|
|
+ var num = this.tableData.findLastIndex(item=>{
|
|
|
|
+ return item.id == row.id
|
|
|
|
+ })
|
|
|
|
+ row.pId = this.tableData[num].pId
|
|
|
|
+ num = row.pId
|
|
|
|
+ }
|
|
|
|
+ if(this.chooseField == (fieldKey?(fieldKey+field):field) && row.pId == this.expands[0]){
|
|
|
|
+ this.chooseField = ''
|
|
|
|
+ this.getSpanArr(this.tableData)
|
|
|
|
+ row1.iconShow = false
|
|
|
|
+ this.refreshData = false
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ this.refreshData = true
|
|
|
|
+ this.expands = []
|
|
|
|
+ this.getHeight()
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
+ document.getElementsByClassName('el-table__body-wrapper')[0].scrollTop = scrollTop
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ })
|
|
|
|
+ return false
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ row1.iconShow = true
|
|
|
|
+ this.getForm(row)
|
|
|
|
+ if(field != 'proofStr'){
|
|
|
|
+ if(field == 'argumentStr'){
|
|
|
|
+ this.fieldValue = this.getData(row,field)
|
|
|
|
+ }else if(field == 'comOptions'){
|
|
|
|
+ this.fieldValue = this.getData1(row,field,'0')
|
|
|
|
+ }else{
|
|
|
|
+ this.fieldValue = this.getData1(row,fieldKey,field)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ var index1 = this.expands.findIndex(item=>{
|
|
|
|
+ return item == row.pId
|
|
|
|
+ })
|
|
|
|
+ this.chooseField = fieldKey?(fieldKey+field):field
|
|
|
|
+ if(index1!=-1){
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ var a = []
|
|
|
|
+ a[0] = this.tableData.slice(0,num)
|
|
|
|
+ a[1]= this.tableData.slice(num,this.tableData.length)
|
|
|
|
+ var arr = {
|
|
|
|
+ invalidName: [],
|
|
|
|
+ id:[]
|
|
|
|
+ }
|
|
|
|
+ a.forEach(item => {
|
|
|
|
+ var splitArr=this.getSpanArr(item)
|
|
|
|
+ arr.invalidName = arr.invalidName.concat(splitArr.invalidName)
|
|
|
|
+ arr.id = arr.id.concat(splitArr.id)
|
|
|
|
+ })
|
|
|
|
+ this.mergeObj=arr
|
|
|
|
+ this.refreshData = false
|
|
|
|
+ this.$nextTick(()=>{
|
|
|
|
+ this.refreshData = true
|
|
|
|
+ this.expands = [row.pId]
|
|
|
|
+ this.getHeight()
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
+ document.getElementsByClassName('el-table__body-wrapper')[0].scrollTop = scrollTop
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ },
|
|
//展开行
|
|
//展开行
|
|
toogleExpand(row, index) {
|
|
toogleExpand(row, index) {
|
|
row.iconShow = !row.iconShow
|
|
row.iconShow = !row.iconShow
|
|
@@ -577,7 +886,7 @@ export default {
|
|
getData(row,key) {
|
|
getData(row,key) {
|
|
if (key == 'invalidName') {
|
|
if (key == 'invalidName') {
|
|
return this.invalidList.find(item => item.value ==row.invalidName).label
|
|
return this.invalidList.find(item => item.value ==row.invalidName).label
|
|
- }else if (key == 'court') {
|
|
|
|
|
|
+ }else if (key == 'court') {//设计内容
|
|
if (row.content == -1) {
|
|
if (row.content == -1) {
|
|
return '说明书'
|
|
return '说明书'
|
|
} else if (row.content != 0 && !row.content) {
|
|
} else if (row.content != 0 && !row.content) {
|
|
@@ -585,19 +894,89 @@ export default {
|
|
} else {
|
|
} else {
|
|
return '权要'+(row.content + 1)
|
|
return '权要'+(row.content + 1)
|
|
}
|
|
}
|
|
- } else {
|
|
|
|
|
|
+ }else if(key == 'argumentStr'){
|
|
|
|
+ if(row[key]){
|
|
|
|
+ // var a = row[key]
|
|
|
|
+ // console.log(a,1,row[key].replace('<p','<span').replace('</p>','</span>'))
|
|
|
|
+ // return row[key].replace(/<p/g,'<span').replace(/<\/p>/g,'</span>').replace(/<div/g,'<span').replace(/<\/div>/g,'</span>')
|
|
|
|
+ // return row[key]
|
|
|
|
+ try {
|
|
|
|
+ var obj=JSON.parse(row[key]);
|
|
|
|
+ if(typeof obj == 'object' && obj ){
|
|
|
|
+ return obj;
|
|
|
|
+ }else{
|
|
|
|
+ return [];
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ } catch(e) {
|
|
|
|
+ return [row[key]]
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ return ''
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
return row[key]
|
|
return row[key]
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- getData1(row,key){
|
|
|
|
|
|
+ getData1(row,key,type){
|
|
var index = row.fields.findIndex(item=>item.fieldKey == key)
|
|
var index = row.fields.findIndex(item=>item.fieldKey == key)
|
|
- if(index!=-1){
|
|
|
|
- return row.fields[index].fieldValue
|
|
|
|
- }else{
|
|
|
|
- return ''
|
|
|
|
- }
|
|
|
|
|
|
+ if(index!=-1){
|
|
|
|
+ try {
|
|
|
|
+ var obj=JSON.parse(row.fields[index].fieldValue);
|
|
|
|
+ if(typeof obj == 'object' && obj ){
|
|
|
|
+ if(type == 0){
|
|
|
|
+ return obj
|
|
|
|
+ }else{
|
|
|
|
+ if(obj[type]){
|
|
|
|
+ return obj[type];
|
|
|
|
+ }else{
|
|
|
|
+ return [];
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ return [];
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ } catch(e) {
|
|
|
|
+ if(type == 'court' || type == 0){
|
|
|
|
+ return [row.fields[index].fieldValue]
|
|
|
|
+ }else{
|
|
|
|
+ return []
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }else{
|
|
|
|
+ return []
|
|
|
|
+ }
|
|
|
|
|
|
},
|
|
},
|
|
|
|
+
|
|
|
|
+ //查看信息详情
|
|
|
|
+ showDetails(e,row,key){
|
|
|
|
+ return false
|
|
|
|
+ // console.log(e.currentTarget,e.currentTarget.clientWidth,e.currentTarget.scrollWidth)
|
|
|
|
+ if(e.currentTarget.clientWidth<e.currentTarget.scrollWidth){
|
|
|
|
+ if(key){
|
|
|
|
+ var text = this.getData1(row,key)
|
|
|
|
+ }else{
|
|
|
|
+ var text = row
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ this.$msgbox( {
|
|
|
|
+ dangerouslyUseHTMLString: true,
|
|
|
|
+ title:'详情',
|
|
|
|
+ message:text,
|
|
|
|
+ confirmButtonText: '关闭',
|
|
|
|
+ closeOnClickModal: true,
|
|
|
|
+ showCancelButton: false
|
|
|
|
+ } );
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ },
|
|
// 请求无效理由和证据
|
|
// 请求无效理由和证据
|
|
async getInvalidReason() {
|
|
async getInvalidReason() {
|
|
this.tableLoading = true
|
|
this.tableLoading = true
|
|
@@ -623,9 +1002,12 @@ export default {
|
|
}else{
|
|
}else{
|
|
this.tableData = []
|
|
this.tableData = []
|
|
}
|
|
}
|
|
- this.expands = []
|
|
|
|
|
|
+ // this.expands = []
|
|
this.tableLoading = false
|
|
this.tableLoading = false
|
|
this.getSpanArr(this.tableData)
|
|
this.getSpanArr(this.tableData)
|
|
|
|
+ this.$nextTick(() => {
|
|
|
|
+ document.getElementsByClassName('el-table__body-wrapper')[0].scrollTop = this.scrollTop
|
|
|
|
+ })
|
|
}
|
|
}
|
|
}).catch(error=>{
|
|
}).catch(error=>{
|
|
this.tableLoading = false
|
|
this.tableLoading = false
|
|
@@ -841,7 +1223,13 @@ export default {
|
|
this.refreshTable()
|
|
this.refreshTable()
|
|
},
|
|
},
|
|
//重置表格
|
|
//重置表格
|
|
- refreshTable() {
|
|
|
|
|
|
+ refreshTable(val) {
|
|
|
|
+ if(val){
|
|
|
|
+ this.scrollTop = document.querySelector('.el-table__body-wrapper').scrollTop
|
|
|
|
+ }else{
|
|
|
|
+ this.scrollTop = 0
|
|
|
|
+ }
|
|
|
|
+
|
|
this.refreshData = false
|
|
this.refreshData = false
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
this.refreshData = true
|
|
this.refreshData = true
|
|
@@ -849,7 +1237,10 @@ export default {
|
|
},
|
|
},
|
|
//打开添加无效理由和证据弹窗
|
|
//打开添加无效理由和证据弹窗
|
|
addInvalid() {
|
|
addInvalid() {
|
|
- this.title='添加无效理由和证据'
|
|
|
|
|
|
+ this.title='添加无效理由'
|
|
|
|
+ this.form = {
|
|
|
|
+ proofGroups: []
|
|
|
|
+ },
|
|
this.visible = true
|
|
this.visible = true
|
|
},
|
|
},
|
|
//关闭添加无效理由和证据弹窗
|
|
//关闭添加无效理由和证据弹窗
|
|
@@ -889,6 +1280,28 @@ export default {
|
|
this.$refs.form.validate((valid) => {
|
|
this.$refs.form.validate((valid) => {
|
|
if (valid) {
|
|
if (valid) {
|
|
if (!this.form.id) {
|
|
if (!this.form.id) {
|
|
|
|
+ // if(this.isMore){
|
|
|
|
+ // console.log(this.form)
|
|
|
|
+ // var a = JSON.parse(JSON.stringify(this.form))
|
|
|
|
+ // var that = this
|
|
|
|
+ // a.content.forEach( item=>{
|
|
|
|
+ // async function setMore(item){
|
|
|
|
+ // var form = JSON.parse(JSON.stringify(that.form))
|
|
|
|
+ // form.content = item
|
|
|
|
+ // console.log(form)
|
|
|
|
+ // await that.$api.addInvalidReason(form).then((res) => {
|
|
|
|
+ // if (res.code == 200) {
|
|
|
|
+
|
|
|
|
+ // }
|
|
|
|
+ // })
|
|
|
|
+ // }
|
|
|
|
+ // setMore(item)
|
|
|
|
+ // })
|
|
|
|
+ // this.getInvalidReason()
|
|
|
|
+ // this.refreshTable()
|
|
|
|
+ // this.close()
|
|
|
|
+ // return false
|
|
|
|
+ // }
|
|
this.$api.addInvalidReason(this.form).then((res) => {
|
|
this.$api.addInvalidReason(this.form).then((res) => {
|
|
if (res.code == 200) {
|
|
if (res.code == 200) {
|
|
this.getInvalidReason()
|
|
this.getInvalidReason()
|
|
@@ -911,11 +1324,12 @@ export default {
|
|
if (res.code == 200) {
|
|
if (res.code == 200) {
|
|
this.$message.success('更新成功')
|
|
this.$message.success('更新成功')
|
|
this.getInvalidReason()
|
|
this.getInvalidReason()
|
|
- this.refreshTable()
|
|
|
|
|
|
+ this.refreshTable(1)
|
|
this.close()
|
|
this.close()
|
|
}
|
|
}
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+
|
|
deleteRow(row) {
|
|
deleteRow(row) {
|
|
let id = [
|
|
let id = [
|
|
row.id,
|
|
row.id,
|
|
@@ -929,6 +1343,7 @@ export default {
|
|
if (res.code == 200) {
|
|
if (res.code == 200) {
|
|
this.$message.success('删除成功')
|
|
this.$message.success('删除成功')
|
|
this.getInvalidReason()
|
|
this.getInvalidReason()
|
|
|
|
+ this.refreshTable(1)
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}).catch(() => {
|
|
}).catch(() => {
|
|
@@ -941,6 +1356,11 @@ export default {
|
|
},
|
|
},
|
|
editRow(row) {
|
|
editRow(row) {
|
|
this.title = "编辑无效理由和证据"
|
|
this.title = "编辑无效理由和证据"
|
|
|
|
+ this.getForm(row)
|
|
|
|
+ this.changeInvalid(row.invalidName)
|
|
|
|
+ this.visible = true
|
|
|
|
+ },
|
|
|
|
+ getForm(row){
|
|
var a = this.tableData.filter(item => {
|
|
var a = this.tableData.filter(item => {
|
|
return item.id == row.id
|
|
return item.id == row.id
|
|
})
|
|
})
|
|
@@ -960,12 +1380,24 @@ export default {
|
|
this.form.fields.forEach(item=>{
|
|
this.form.fields.forEach(item=>{
|
|
this.form[item.fieldKey] = item.fieldValue
|
|
this.form[item.fieldKey] = item.fieldValue
|
|
})
|
|
})
|
|
- this.visible = true
|
|
|
|
- },
|
|
|
|
|
|
+ }
|
|
},
|
|
},
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|
|
<style lang="scss">
|
|
<style lang="scss">
|
|
|
|
+.invalid{
|
|
|
|
+ position: absolute;
|
|
|
|
+ right: 0;
|
|
|
|
+ top: 0;
|
|
|
|
+ left: 0;
|
|
|
|
+ bottom: 0;
|
|
|
|
+ height: calc(100% - 100px);
|
|
|
|
+ min-height: 750px;
|
|
|
|
+ margin: auto !important;
|
|
|
|
+ .el-dialog__body{
|
|
|
|
+ height: calc(100% - 180px);
|
|
|
|
+ }
|
|
|
|
+}
|
|
.addInvalid .el-dialog__body{
|
|
.addInvalid .el-dialog__body{
|
|
padding-top:5px
|
|
padding-top:5px
|
|
}
|
|
}
|
|
@@ -991,4 +1423,5 @@ export default {
|
|
display: none;
|
|
display: none;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
</style>
|
|
</style>
|