weixinnuo-chenxian.txt 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  1. <div class="weixinnuo">
  2. <div class="reportTitle center"><strong>专利新思路委外检索报告</strong></div>
  3. <div class="content">
  4. <div>
  5. <div class="content_title">基本信息</div>
  6. <div>
  7. <table>
  8. <tr>
  9. <td class="width_150">思路名称</td>
  10. <td colspan="3" @click="edit('baseMessage','caseName')">
  11. <div v-if="isEdit('baseMessage','caseName')">
  12. <myRichText v-model="reportData.baseMessage.caseName" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  13. </div>
  14. <div v-else v-html="getColumnData('baseMessage','caseName',dataObj.baseMessage.caseName)"></div>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td>提案编号(维信诺)</td>
  19. <td class="width_300" @click="edit('baseMessage','customCaseNumber')">
  20. <div v-if="isEdit('baseMessage','customCaseNumber')">
  21. <myRichText v-model="reportData.baseMessage.customCaseNumber" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  22. </div>
  23. <div v-else v-html="getColumnData('baseMessage','customCaseNumber',dataObj.baseMessage.customCaseNumber)"></div>
  24. </td>
  25. <td class="width_98">检索日期</td>
  26. <td @click="edit('baseMessage','searchTime')">
  27. <div v-if="isEdit('baseMessage','searchTime')">
  28. <myRichText v-model="reportData.baseMessage.searchTime" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  29. </div>
  30. <div v-else v-html="getColumnData('baseMessage','searchTime',dataObj.baseMessage.searchTime || getSearchTime())"></div>
  31. </td>
  32. </tr>
  33. <tr>
  34. <td>发明人</td>
  35. <td @click="edit('baseMessage','inventor')">
  36. <div v-if="isEdit('baseMessage','inventor')">
  37. <myRichText v-model="reportData.baseMessage.inventor" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  38. </div>
  39. <div v-else v-html="getColumnData('baseMessage','inventor',dataObj.baseMessage.inventor)"></div>
  40. </td>
  41. <td>IPR</td>
  42. <td @click="edit('baseMessage','ipr')">
  43. <div v-if="isEdit('baseMessage','ipr')">
  44. <myRichText editModel="clean" v-model="reportData.baseMessage.ipr" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  45. </div>
  46. <div v-else v-html="getColumnData('baseMessage','ipr',dataObj.baseMessage.ipr)"></div>
  47. </td>
  48. </tr>
  49. <tr>
  50. <td>检索人</td>
  51. <td @click="edit('baseMessage','searchName')">
  52. <div v-if="isEdit('baseMessage','searchName')">
  53. <myRichText editModel="clean" v-model="reportData.baseMessage.searchName" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  54. </div>
  55. <div v-else v-html="getColumnData('baseMessage','searchName',dataObj.baseMessage.headName || dataObj.baseMessage.createName)"></div>
  56. </td>
  57. <td>代理机构</td>
  58. <td @click="edit('baseMessage','searchUnit')">
  59. <div v-if="isEdit('baseMessage','searchUnit')">
  60. <myRichText editModel="clean" v-model="reportData.baseMessage.searchUnit" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  61. </div>
  62. <div v-else v-html="getColumnData('baseMessage','searchUnit',dataObj.baseMessage.searchUnit || '广东君龙律师事务所')"></div>
  63. </td>
  64. </tr>
  65. <tr>
  66. <td>是否具备专利性</td>
  67. <td colspan="3">
  68. <el-radio-group :value="getColumnData('baseMessage','ifPatentability',dataObj.baseMessage.ifPatentability)" @input="(value)=>{this.$set(this.reportData.baseMessage,'ifPatentability',value)}">
  69. <el-radio label="是">是</el-radio>
  70. <el-radio label="否">否</el-radio>
  71. <el-radio label="公开不充分">公开不充分(与发明人沟通后仍无法达到公开充分标准而驳回)</el-radio>
  72. </el-radio-group>
  73. </td>
  74. </tr>
  75. <tr>
  76. <td>建议申请类型</td>
  77. <td colspan="3">
  78. <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)}">
  79. <el-radio label="建议申请发明专利">发明</el-radio>
  80. <el-radio label="建议申请实用新型专利">实用新型</el-radio>
  81. <el-radio label="建议申请外观设计专利">外观设计</el-radio>
  82. <el-radio label="建议结案处理,或者补充资料后再评估">其他:建议结案处理,或者补充资料后再评估</el-radio>
  83. </el-radio-group>
  84. </td>
  85. </tr>
  86. </table>
  87. </div>
  88. </div>
  89. <div>
  90. <div class="content_title">检索记录表</div>
  91. <div>
  92. <table>
  93. <tr>
  94. <td class="width_50">地区</td>
  95. <td class="width_98 center">
  96. <div>数据库</div>
  97. <div>(检索系统)</div>
  98. </td>
  99. <td class="center">关键词</td>
  100. <td class="center width_50">数量</td>
  101. </tr>
  102. <tr style="position: relative;" v-for="(item,index) in getColumnData('searchRecord',null,(dataObj.searchRecord && dataObj.searchRecord.length>0)?dataObj.searchRecord.map(item2=>{ return {conditions:item2.conditions,totalNum:item2.totalNum,area:this.dbTypes[item2.dbType]?this.dbTypes[item2.dbType]:'',dbType:this.dbTypes[item2.dbType]?'小世系统':item2.dbType}}): [{}])" :key="index">
  103. <td @click="edit('searchRecord','area',index)">
  104. <div v-if="isEdit('searchRecord','area',index)">
  105. <myRichText editModel="clean" v-model="item.area" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  106. </div>
  107. <div v-else v-html="item.area"></div>
  108. </td>
  109. <td @click="edit('searchRecord','dbType',index)">
  110. <div v-if="isEdit('searchRecord','dbType',index)">
  111. <myRichText editModel="clean" v-model="item.dbType" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  112. </div>
  113. <div v-else v-html="item.dbType"></div>
  114. </td>
  115. <td @click="edit('searchRecord','conditions',index)">
  116. <div v-if="isEdit('searchRecord','conditions',index)">
  117. <myRichText editModel="clean" v-model="item.conditions" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  118. </div>
  119. <div v-else v-html="item.conditions"></div>
  120. </td>
  121. <td style="border-right:0" @click="edit('searchRecord','totalNum',index)">
  122. <div v-if="isEdit('searchRecord','totalNum',index)">
  123. <myRichText editModel="clean" v-model="item.totalNum" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  124. </div>
  125. <div v-else v-html="item.totalNum"></div>
  126. </td>
  127. <td style="width:0;padding:0;vertical-align: initial;">
  128. <span class="funBtn">
  129. <el-button type="" size="mini" icon="el-icon-plus" circle @click="addCompareRecord(reportData.searchRecord,index)"></el-button>
  130. <el-button v-if="reportData.searchRecord.length>1" size="mini" type="danger" icon="el-icon-delete" circle @click="delCompareRecord(reportData.searchRecord,index)"></el-button>
  131. </span>
  132. </td>
  133. </tr>
  134. </table>
  135. </div>
  136. </div>
  137. <div>
  138. <div class="content_title">专利性分析</div>
  139. <div>
  140. <div class="patentContent">
  141. <p>【本思路图及要点】</p>
  142. <div>
  143. <p>1、本思路图:</p>
  144. <div class="content_input" style="display:flex;">
  145. <div style="width:150px;height:180px;margin-right:10px" v-for="(item,index) in getColumnData('technicalCase','picture',dataObj.technicalCase.systemFileList?dataObj.technicalCase.systemFileList.map(pic=>{return {url:pic.guid}}) : [])" :key="index">
  146. <div style="height:30px;line-height:30px;display:flex;justify-content:flex-end;">
  147. <el-button type="text" size="small" @click="delImage(reportData.technicalCase.picture,item,index)">删除</el-button>
  148. </div>
  149. <div style="width:150px;height:148px;border:1px dashed #c0ccda;border-radius: 6px;">
  150. <el-image style="width:100%;height:100%" :src="$commonJS.checkViewer(item.url)" :preview-src-list="reportData.technicalCase.picture.map(pic=>$commonJS.checkViewer(item.url))" fit="contain"></el-image>
  151. </div>
  152. </div>
  153. <el-upload style="margin-right:10px;margin-top: 30px;" ref="upload" action="#" :auto-upload="false" multiple :on-change="(file, fileList)=>handleChange(reportData.technicalCase.picture,file, fileList)" list-type="picture-card" :show-file-list="false">
  154. <span>
  155. <i class="el-icon-plus avatar-uploader-icon"></i>
  156. </span>
  157. </el-upload>
  158. </div>
  159. </div>
  160. <p>2、本思路要点:</p>
  161. <div class="text-indent" @click="edit('technicalCase','solvedProblem')">
  162. <p>问题:</p>
  163. <div class="content_input">
  164. <div v-if="isEdit('technicalCase','solvedProblem')">
  165. <myRichText editModel="clean" v-model="reportData.technicalCase.solvedProblem" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  166. </div>
  167. <div v-else v-html="getColumnData('technicalCase','solvedProblem',dataObj.technicalCase.solvedProblem)"></div>
  168. </div>
  169. </div>
  170. <div class="text-indent" @click="edit('technicalCase','inventionPoint')">
  171. <p>具体方案包括:</p>
  172. <div class="content_input">
  173. <div v-if="isEdit('technicalCase','inventionPoint')">
  174. <myRichText editModel="clean" v-model="reportData.technicalCase.inventionPoint" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  175. </div>
  176. <div v-else v-html="getColumnData('technicalCase','inventionPoint',dataObj.technicalCase.inventionPoint)"></div>
  177. </div>
  178. </div>
  179. </div>
  180. <div class="patentContent" style="position: relative;" v-for="(item,index) in getCompareRecordData([
  181. {
  182. field:'patentMessage.rightHolder',
  183. useFunction:(data)=>{
  184. if(data.patentMessage && data.patentMessage.rightHolder && data.patentMessage.rightHolder.length>0){
  185. return data.patentMessage.rightHolder.join('、')
  186. }
  187. return ''
  188. },
  189. type:'function',
  190. key:'rightHolder'
  191. },
  192. {
  193. field:'patentMessage.publicNo',
  194. useFunction:(data)=>{
  195. return data.patentMessage.grantNo || data.patentMessage.publicNo || ''
  196. },
  197. type:'function',
  198. key:'publicNo'
  199. },
  200. {
  201. field:'compareLiterature.technicalPoints',
  202. type:'function',
  203. useFunction:(data)=>{
  204. var str = ''
  205. var num = 1
  206. if(data.noveltyCompareRecordVOS){
  207. data.noveltyCompareRecordVOS.forEach((item,index) => {
  208. str = `${str}${num}、${item.markNoteText}<br>`
  209. num += 1
  210. });
  211. }
  212. if(data.data && data.data.length>0){
  213. data.data.forEach((item,index) => {
  214. str = `${str}${num}、${item.markSelectField}“${item.markSelectText}”`
  215. if(item.technicalFeature){
  216. str = `${str}揭示了“${item.technicalFeature}”`
  217. }
  218. str = `${str}${item.markNoteText}<br>`
  219. num += 1
  220. });
  221. }
  222. if(data.compareLiterature && data.compareLiterature.technicalPoints){
  223. str = `${str}<br>${data.compareLiterature.technicalPoints}`
  224. }
  225. return str
  226. },
  227. key:'technicalPoints'
  228. },
  229. {
  230. field:'compareLiterature.excuteCase',
  231. type:'string',
  232. key:'excuteCase'
  233. },
  234. {
  235. field:'compareLiterature.beneficialEffect',
  236. type:'string',
  237. key:'beneficialEffect'
  238. }
  239. ],['patentMessage'])" :key="index">
  240. <div class="funBtn">
  241. <el-button type="" icon="el-icon-plus" circle @click="addCompareRecord(reportData.compareRecord,index)"></el-button>
  242. <el-button v-if="reportData.compareRecord.length>1" type="danger" icon="el-icon-delete" circle @click="delCompareRecord(reportData.compareRecord,index)"></el-button>
  243. </div>
  244. <p><span class="italic-text">【现有技术】</span></p>
  245. <p class="center italic-text">现有技术{{index+1}}</p>
  246. <p class="center italic-text">(
  247. <span @click="edit('compareRecord','rightHolder',index)">
  248. <span v-if="isEdit('compareRecord','rightHolder',index)">
  249. <myRichText editModel="clean" style="display:inline" v-model="item.rightHolder" customStyle="border:none;padding:0;display:inline" :autoFocus="true" @blur="saveMessage"></myRichText>
  250. </span>
  251. <span v-else v-html="item.rightHolder||'*专利权人*'"></span>
  252. </span>
  253. <span @click="edit('compareRecord','publicNo',index)">
  254. <span v-if="isEdit('compareRecord','publicNo',index)">
  255. <myRichText editModel="clean" style="display:inline" v-model="item.publicNo" customStyle="border:none;padding:0;display:inline" :autoFocus="true" @blur="saveMessage"></myRichText>
  256. </span>
  257. <span v-else>{{item.publicNo||'*公开公告号*'}}</span>
  258. </span>
  259. )</p>
  260. <div @click="edit('compareRecord','technicalPoints',index)">
  261. <p><strong>代表图示或影响本思路的现有技术要点(<span class="red-text">对影响专利性的部分进行显著标注,并将PDF档一并发送我方</span>)</strong></p>
  262. <div class="content_input">
  263. <div v-if="isEdit('compareRecord','technicalPoints',index)">
  264. <myRichText editModel="clean" v-model="item.technicalPoints" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  265. </div>
  266. <span v-else v-html="item.publicNo||'*公开公告号*'"></span>
  267. </div>
  268. </div>
  269. <div @click="edit('compareRecord','excuteCase',index)">
  270. <p>实施方案包括:</p>
  271. <div class="content_input">
  272. <div v-if="isEdit('compareRecord','excuteCase',index)">
  273. <myRichText editModel="clean" v-model="item.excuteCase" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  274. </div>
  275. <div v-else v-html="item.excuteCase"></div>
  276. </div>
  277. </div>
  278. <div @click="edit('compareRecord','beneficialEffect',index)">
  279. <p>有益效果:</p>
  280. <div class="content_input">
  281. <div v-if="isEdit('compareRecord','beneficialEffect',index)">
  282. <myRichText editModel="clean" v-model="item.beneficialEffect" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  283. </div>
  284. <div v-else v-html="item.beneficialEffect"></div>
  285. </div>
  286. </div>
  287. </div>
  288. <div class="patentContent" @click="edit('baseMessage','analysisAndConclusion')">
  289. <p><span class="italic-text">【分析与结论】(<span class="red-text">结合三步法,对上述标注部分重点说明</span>):</span></p>
  290. <div class="content_input">
  291. <div v-if="isEdit('baseMessage','analysisAndConclusion')">
  292. <myRichText editModel="clean" v-model="reportData.baseMessage.analysisAndConclusion" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  293. </div>
  294. <div v-else v-html="getColumnData('baseMessage','analysisAndConclusion')"></div>
  295. </div>
  296. </div>
  297. <div>
  298. <table>
  299. <tr>
  300. <td class="center width_150">建议</td>
  301. <td>
  302. <div v-html="getColumnData('baseMessage','applicationAdvice')"></div>
  303. </td>
  304. </tr>
  305. <tr>
  306. <td>卡位方向(<span class="red-text">简单描述一下主权项</span>)</td>
  307. <td @click="edit('baseMessage','detentDirection')">
  308. <div v-if="isEdit('baseMessage','detentDirection')">
  309. <myRichText editModel="clean" v-model="reportData.baseMessage.detentDirection" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  310. </div>
  311. <div v-else v-html="getColumnData('baseMessage','detentDirection')"></div>
  312. </td>
  313. </tr>
  314. <tr>
  315. <td class="center">备注</td>
  316. <td @click="edit('baseMessage','remark')">
  317. 检索所基于数据库的网站:
  318. <div class="content_input">
  319. <div v-if="isEdit('baseMessage','remark')">
  320. <myRichText editModel="clean" v-model="reportData.baseMessage.remark" customStyle="border:none;padding:0" :autoFocus="true" @blur="saveMessage"></myRichText>
  321. </div>
  322. <div v-else v-html="getColumnData('baseMessage','remark')"></div>
  323. </div>
  324. </td>
  325. </tr>
  326. </table>
  327. </div>
  328. </div>
  329. </div>
  330. </div>
  331. </div>