zhuliu há 11 meses atrás
pai
commit
a06038d8ff

+ 66 - 0
public/reportTemplate/aiqiji/aiqiji.css

@@ -0,0 +1,66 @@
+    .aiqiji{
+        width: 800px;
+        margin: 0px auto;
+        font-size: 15px black; 
+    }
+    .aiqiji .reportTitle{
+        font-size: 25px;
+        padding: 20px;
+    }
+    .aiqiji .center{
+        text-align: center !important;
+        justify-content:center;
+    }
+    .aiqiji table{
+        width: 100%;
+        border-collapse: collapse;
+        tr{
+            height: 50px;
+        }
+        tr>td{
+            padding: 10px;
+        }
+        tr>:first-child{
+            width: 75px;
+            border-left: 2px solid black;
+        }
+        tr>:last-child{
+            border-right: 2px solid black;
+        }
+        td{
+            border: 1px solid black;
+        }
+    }
+    .aiqiji table>:first-child{
+        border-top: 2px solid black;
+    }
+    .aiqiji table>:last-child{
+        border-bottom: 2px solid black;
+    }
+    .aiqiji .width_50{
+        width: 50px;
+    }
+    .aiqiji .width_70{
+        width: 70px;
+    }
+    .aiqiji .width_98{
+        width: 98px;
+    }
+    .aiqiji .width_150{
+        width: 150px;
+    }
+    .aiqiji .width_300{
+        width: 300px;
+    }
+    .aiqiji .height{
+        min-height: 100px;
+    }
+    .aiqiji .height_100{
+        height: 100px;
+    }
+    .aiqiji .height_350{
+        height: 350px;
+    }
+    .aiqiji .text-indent {
+        text-indent: 20px; /* 设置文字缩进为 20 像素 */
+    }

+ 22 - 0
public/reportTemplate/aiqiji/aiqiji.json

@@ -0,0 +1,22 @@
+{
+    "baseMessage":{
+        "applicants":"申请单位",
+        "searchUnit":"检索单位",
+        "searchTime":"检索日期",
+        "caseName":"专利名称",
+        "inventor":"发明人",
+        "compareRecord":"技术特征对比",
+        "preliminaryConclusions":"初步结论",
+        "applicationAdvice":"申请建议",
+        "compareFile":"引用文件"
+    },
+    "technicalCase":{
+        "inventionPoint":"发明点介绍"
+    },
+    "compareLiterature":[ 
+    ],
+    "compareRecord":[
+    ],
+    "searchRecord":[
+    ]
+}

+ 104 - 0
public/reportTemplate/aiqiji/aiqiji.txt

@@ -0,0 +1,104 @@
+<div class="aiqiji">
+        <div class="reportTitle center"><strong>专利申请前案检索表</strong></div>
+        <div>
+            <table>
+                <tr>
+                    <td>申请单位</td>
+                    <td @click="edit('baseMessage','applicants')">
+                        <div v-if="isEdit('baseMessage','applicants')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.applicants" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','applicants',dataObj.baseMessage.applicants)"></div>
+                    </td>
+                </tr>
+            
+                <tr>
+                    <td>检索单位</td>
+                    <td @click="edit('baseMessage','searchUnit')">
+                        <div v-if="isEdit('baseMessage','searchUnit')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.searchUnit" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','searchUnit',dataObj.baseMessage.searchUnit || userinfo.tenantName)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>检索日期</td>
+                    <td @click="edit('baseMessage','searchTime')">
+                        <div v-if="isEdit('baseMessage','searchTime')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.searchTime" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','searchTime',dataObj.baseMessage.searchTime || getSearchTime())"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>专利名称</td>
+                    <td @click="edit('baseMessage','caseName')">
+                        <div v-if="isEdit('baseMessage','caseName')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.caseName" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','caseName',dataObj.baseMessage.caseName)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>发明人</td>
+                    <td @click="edit('baseMessage','inventor')">
+                        <div v-if="isEdit('baseMessage','inventor')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.inventor" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','inventor',dataObj.baseMessage.inventor)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">发明点介绍</td>
+                    <td @click="edit('technicalCase','inventionPoint')">
+                        <div v-if="isEdit('technicalCase','inventionPoint')">
+                            <myRichText editModel="clean" v-model="reportData.technicalCase.inventionPoint" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('technicalCase','inventionPoint',dataObj.technicalCase.inventionPoint)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">技术特征对比</td>
+                    <td @click="edit('baseMessage','compareRecord')">
+                        <div class="height">
+                            <div v-if="isEdit('baseMessage','compareRecord')">
+                                <myRichText editModel="clean" v-model="reportData.baseMessage.compareRecord" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                            </div>
+                            <div v-else v-html="getColumnData('baseMessage','compareRecord',getCompareRecordData2('string','baseMessage','compareRecord'))"></div> 
+                        </div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">初步结论</td>
+                    <td>
+                        <el-radio-group :value="getColumnData('baseMessage','preliminaryConclusions')" @input="(value)=>{this.$set(this.reportData.baseMessage,'preliminaryConclusions',value)}">
+                            <el-radio label="未检索到影响其专利性的对比文件">未检索到影响其专利性的对比文件</el-radio>
+                            <el-radio label="检索到影响其创造性的对比文件">检索到影响其创造性的对比文件</el-radio>
+                            <el-radio label="检索到影响其新颖性的对比文件">检索到影响其新颖性的对比文件</el-radio>
+                        </el-radio-group>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">申请建议</td>
+                    <td>
+                        <el-radio-group :value="getColumnData('baseMessage','applicationAdvice',(this.dataObj.baseMessage.applicationAdvice == '建议补充资料,然后再进行评估' || this.dataObj.baseMessage.applicationAdvice == '建议结案处理')?'建议结案处理,或者补充资料后再评估':this.dataObj.baseMessage.applicationAdvice)" @input="(value)=>{this.$set(this.reportData.baseMessage,'applicationAdvice',value)}">
+                            <el-radio label="同时申请发明专利和实用新型">同时申请发明专利和实用新型</el-radio>
+                            <el-radio label="申请发明专利">申请发明专利</el-radio>
+                            <el-radio label="申请实用新型专利">申请实用新型专利</el-radio>
+                            <el-radio label="暂时不建议申请发明专利或实用新型专利,可以继续补充技术内容,然后再进行评估">暂时不建议申请发明专利或实用新型专利,可以继续补充技术内容,然后再进行评估</el-radio>
+                            <el-radio label="不建议申请发明专利或实用新型专利">不建议申请发明专利或实用新型专利</el-radio>
+                        </el-radio-group>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">引用文件</td>
+                    <td @click="edit('baseMessage','compareFile')">
+                        <div v-if="isEdit('baseMessage','compareFile')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.compareFile" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','compareFile',()=>{var str = '';this.dataObj.compareLiterature.forEach((item,index)=>str = `${str}对比文件${index+1}:${item.literatureNo}-${item.name}<br>`);return str})"></div>
+                    </td>
+                </tr>
+            </table>
+        </div>
+    </div>

+ 60 - 0
public/reportTemplate/shennandianlu/shennandianlu.css

@@ -0,0 +1,60 @@
+.shennan{
+        width: 800px;
+        margin: 0px auto;
+        font-family: "宋体", SimSun, STSong, "华文宋体", sans-serif;
+        font-size: 15px black; 
+    }
+.shennan .reportTitle{
+        font-size: 25px;
+        padding: 20px;
+    }
+.shennan .padding_20{
+        padding: 20px;
+    }
+.shennan .title{
+        font-family: "黑体", SimHei, STHeiti, "华文黑体", sans-serif;
+        font-size: 23px;
+        padding-bottom: 10px;
+    }
+.shennan .content1{
+        font-family: "黑体", SimHei, STHeiti, "华文黑体", sans-serif;
+        font-size: 24px;
+    }
+.shennan .center{
+        text-align: center !important;
+        justify-content:center;
+    }
+.shennan table{
+        width: 100%;
+        border-collapse: collapse;
+        border: 2px solid black;
+        tr{
+            height: 50px;
+        }
+        tr>td{
+            padding: 10px;
+            border-right: 1px solid black;
+            border-bottom: 1px solid black;
+        }
+    }
+.shennan .width_98{
+        width: 98px;
+    }
+.shennan .width_130{
+        width: 130px;
+    }
+.shennan .height_100{
+        height: 100px;
+    }
+.shennan .height_350{
+        height: 350px;
+    }
+.shennan .text-indent {
+        text-indent: 40px;
+    }
+.shennan .funBtn{
+        position:absolute;
+        width: 100px;
+        right: -110px;
+        display: flex;
+    }

+ 28 - 0
public/reportTemplate/shennandianlu/shennandianlu.json

@@ -0,0 +1,28 @@
+{
+    "baseMessage":{
+        "preliminaryConclusions":"专利性检索结论",
+        "applicants":"申请单位",
+        "searchUnit":"检索单位",
+        "searchTime":"检索日期",
+        "caseName":"专利名称",
+        "inventor":"发明人",
+        "compareRecord":"技术特征对比",
+        "conclusions":"结论",
+        "compareFile":"引用文件"
+    },
+    "technicalCase":{
+        "inventionPoint":"发明点"
+    },
+    "compareLiterature":[
+    ],
+    "compareRecord":[
+    ],
+    "searchRecord":[
+        {
+            "dbType":"数据库",
+            "searchCondition":"检索式",
+            "totalNum":"数量",
+            "retrieveTime":"检索日期"
+        }
+    ]
+}

+ 149 - 0
public/reportTemplate/shennandianlu/shennandianlu.txt

@@ -0,0 +1,149 @@
+<div class="shennan">
+        <div class="reportTitle center"><strong>专利申请前案检索表</strong></div>
+        <div class="padding_20">
+            <div class="title"><strong>一. 专利性检索结论:</strong></div>
+            <div>
+                <p class="text-indent content1">
+                    经初步检索,未发现明显影响本发明专利性的现有技术,建议申请发明。
+                </p>
+            </div>
+            
+        </div>
+        <div class="padding_20">
+            <div class="title"><strong>二. 专利申请信息</strong></div>
+            <table>
+                <tr>
+                    <td class="width_98">申请单位</td>
+                    <td @click="edit('baseMessage','applicants')">
+                        <div v-if="isEdit('baseMessage','applicants')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.applicants" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','applicants',dataObj.baseMessage.applicants)"></div>
+                    </td>
+                </tr>
+            
+                <tr>
+                    <td>检索单位</td>
+                    <td @click="edit('baseMessage','searchUnit')">
+                        <div v-if="isEdit('baseMessage','searchUnit')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.searchUnit" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','searchUnit',dataObj.baseMessage.searchUnit || userinfo.tenantName)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>检索日期</td>
+                    <td @click="edit('baseMessage','searchTime')">
+                        <div v-if="isEdit('baseMessage','searchTime')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.searchTime" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','searchTime',dataObj.baseMessage.searchTime || getSearchTime())"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>专利名称</td>
+                    <td @click="edit('baseMessage','caseName')">
+                        <div v-if="isEdit('baseMessage','caseName')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.caseName" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','caseName',dataObj.baseMessage.caseName)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td>发明人</td>
+                    <td @click="edit('baseMessage','inventor')">
+                        <div v-if="isEdit('baseMessage','inventor')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.inventor" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','inventor',dataObj.baseMessage.inventor)"></div>
+                    </td>
+                </tr>
+            </table>
+        </div>
+        <div class="padding_20">
+            <div class="title"><strong>三. 前案检索记录</strong></div>
+            <table class="center">
+                <tr>
+                    <td>检索条件</td>
+                    <td class="width_98">检索结果</td>
+                    <td class="width_98">网站</td>
+                    <td class="width_98">检索日期</td>
+                </tr>
+                <tr style="position: relative;" v-for="(item,index) in getColumnData('searchRecord',null,(dataObj.searchRecord && dataObj.searchRecord.length>0)?dataObj.searchRecord.map(item2=>{ let dB = {CN:'中国数据库','WD':'全球数据库'}; return {conditions:item2.conditions,totalNum:item2.totalNum,retrieveTime: item2.retrieveTime,dbType:dB[item2.dbType]?'小世系统':item2.dbType}}): [{}])" :key="index">
+                    <td @click="edit('searchRecord','searchCondition',index)">
+                        <div v-if="isEdit('searchRecord','searchCondition',index)">
+                            <myRichText editModel="clean" v-model="item.conditions" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="item.conditions"></div>
+                    </td>   
+                    <td @click="edit('searchRecord','totalNum',index)">
+                        <div v-if="isEdit('searchRecord','totalNum',index)">
+                            <myRichText editModel="clean" v-model="item.totalNum" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="item.totalNum"></div>
+                    </td>     
+                    <td @click="edit('searchRecord','dbType',index)">
+                        <div v-if="isEdit('searchRecord','dbType',index)">
+                            <myRichText editModel="clean" v-model="item.dbType" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="item.dbType"></div>
+                    </td>
+                    <td @click="edit('searchRecord','retrieveTime',index)">
+                        <div v-if="isEdit('searchRecord','retrieveTime',index)">
+                            <myRichText editModel="clean" v-model="item.retrieveTime" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="item.retrieveTime"></div>
+                    </td>  
+                    <td style="width:0;padding:0;vertical-align: initial;">
+                        <span class="funBtn">
+                            <el-button type="" size="mini" icon="el-icon-plus" circle @click="addCompareRecord(reportData.searchRecord,index)"></el-button>
+                            <el-button v-if="reportData.searchRecord.length>1" size="mini" type="danger" icon="el-icon-delete" circle @click="delCompareRecord(reportData.searchRecord,index)"></el-button>
+                        </span>
+                    </td>
+                </tr>
+            </table>
+        </div>
+        <div  class="padding_20">
+            <div class="title"><strong>四. 最相关对比文件及专利性评估</strong></div>
+            <table>
+                <tr>
+                    <td class="height_100 width_130">发明点介绍</td>
+                    <td @click="edit('technicalCase','inventionPoint')">
+                        <div v-if="isEdit('technicalCase','inventionPoint')">
+                            <myRichText editModel="clean" v-model="reportData.technicalCase.inventionPoint" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('technicalCase','inventionPoint',dataObj.technicalCase.inventionPoint)"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">技术特征对比</td>
+                    <td @click="edit('baseMessage','compareRecord')">
+                        <div class="height">
+                            <div v-if="isEdit('baseMessage','compareRecord')">
+                                <myRichText editModel="clean" v-model="reportData.baseMessage.compareRecord" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                            </div>
+                            <div v-else v-html="getColumnData('baseMessage','compareRecord',getCompareRecordData2('string','baseMessage','compareRecord'))"></div> 
+                        </div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">结论</td>
+                    <td @click="edit('baseMessage','conclusions')">
+                        <div v-if="isEdit('baseMessage','conclusions')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.conclusions" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','conclusions',setValue([{value:dataObj.baseMessage.preliminaryConclusions} ,{value:dataObj.baseMessage.applicationAdvice}]))"></div>
+                    </td>
+                </tr>
+                <tr>
+                    <td class="height_100">引用文件</td>
+                    <td @click="edit('baseMessage','compareFile')">
+                        <div v-if="isEdit('baseMessage','compareFile')">
+                            <myRichText editModel="clean" v-model="reportData.baseMessage.compareFile" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
+                        </div>
+                        <div v-else v-html="getColumnData('baseMessage','compareFile',()=>{var str = '';this.dataObj.compareLiterature.forEach((item,index)=>str = `${str}对比文件${index+1}:${item.literatureNo}-${item.name}<br>`);return str})"></div>
+                    </td>
+                </tr>
+            </table>
+        </div>
+    </div>