(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-6da2ac3a"],{"33d2":function(e,t,a){},3739:function(e,t,a){"use strict";var i=a("04c2"),r=a("ac1e"),s=a("203c"),n=a("db2f"),l=a("62f1"),o=a("ed14"),d=a("d5f7"),c=a("8dda"),u=c("find",TypeError);i({target:"Iterator",proto:!0,real:!0,forced:u},{find:function(e){l(this);try{n(e)}catch(i){d(this,"throw",i)}if(u)return r(u,this,e);var t=o(this),a=0;return s(t,(function(t,i){if(e(t,a++))return i(t)}),{IS_RECORD:!0,INTERRUPTED:!0}).result}})},4138:function(e,t,a){"use strict";a("33d2")},6008:function(e,t,a){},"61a9":function(e,t,a){"use strict";a.d(t,"f",(function(){return i})),a.d(t,"b",(function(){return r})),a.d(t,"g",(function(){return s})),a.d(t,"a",(function(){return n})),a.d(t,"e",(function(){return l})),a.d(t,"c",(function(){return o})),a.d(t,"d",(function(){return d}));a("8f26"),a("d9d9"),a("3739"),a("963e"),a("5545"),a("ff4d"),a("50b7");function i(e){const t=Array.isArray(e)?e:[];return t.map((e,t)=>{var a,i,r;const s=String((null===e||void 0===e?void 0:e.targetCaseNo)||(null===e||void 0===e?void 0:e.target_case_no)||"").trim();if(!s)return null;const n=null!==(a=null!==(i=null===e||void 0===e?void 0:e.targetMaterialId)&&void 0!==i?i:null===e||void 0===e?void 0:e.target_material_id)&&void 0!==a?a:null,l=String((null===e||void 0===e?void 0:e.targetFileHash)||(null===e||void 0===e?void 0:e.target_file_hash)||"").trim(),o=Boolean(null===e||void 0===e?void 0:e.openable)&&Boolean(s);return{key:`${s}-${null!==(r=null!==n&&void 0!==n?n:l)&&void 0!==r?r:t}`,targetCaseNo:s,targetPolicyNo:String((null===e||void 0===e?void 0:e.targetPolicyNo)||(null===e||void 0===e?void 0:e.target_policy_no)||"").trim(),targetMaterialId:n,targetMaterialType:String((null===e||void 0===e?void 0:e.targetMaterialType)||(null===e||void 0===e?void 0:e.target_material_type)||"").trim(),targetFileHash:l,openable:o,disabledReason:String((null===e||void 0===e?void 0:e.disabledReason)||(null===e||void 0===e?void 0:e.disabled_reason)||"").trim(),matchCountInCase:Number((null===e||void 0===e?void 0:e.matchCountInCase)||(null===e||void 0===e?void 0:e.match_count_in_case)||0)||0}}).filter(Boolean)}function r(e={}){return n("/calculatorTool/medicalThreeColumn",e)}function s(e,t,a){const i=Array.isArray(e)?e:[],r=void 0===t||null===t?"":String(t),s=r?i.find(e=>String((null===e||void 0===e?void 0:e.material_id)||(null===e||void 0===e?void 0:e.id)||"")===r):null;return s&&null!==a&&void 0!==a&&a[r]?s:i.find(e=>{const t=(null===e||void 0===e?void 0:e.material_id)||(null===e||void 0===e?void 0:e.id);return void 0!==t&&null!==t&&Boolean(null===a||void 0===a?void 0:a[String(t)])})||null}function n(e,t={}){const a=new URLSearchParams,i=(e,t)=>{void 0!==t&&null!==t&&""!==t&&a.set(e,String(t))};i("caseNo",t.caseNo),i("focusMaterialId",t.focusMaterialId),i("focusFileHash",t.focusFileHash),i("focusMaterialType",t.focusMaterialType),i("sourceCaseNo",t.sourceCaseNo),i("sourceMaterialId",t.sourceMaterialId);const r=a.toString();return r?`${e}?${r}`:e}function l(e){if(void 0===e||null===e||""===e)return!1;const t=String(e).trim();if(!t)return!1;const a=Number(t);return Number.isFinite(a)&&a<0}function o(e,t,a){const i=Array.isArray(e)?e:[],r=void 0===t||null===t?"":String(t);if(r){const e=i.find(e=>String((null===e||void 0===e?void 0:e.material_id)||(null===e||void 0===e?void 0:e.id)||"")===r);if(e)return e}const s=String(a||"").trim();return s&&i.find(e=>{const t=String((null===e||void 0===e?void 0:e.file_hash)||(null===e||void 0===e?void 0:e.fileHash)||(null===e||void 0===e?void 0:e.imgMark)||"").trim();return t&&t===s})||null}function d(e,t){const a=Array.isArray(e)?e:[],i=String(t||"").trim();return i&&a.find(e=>{const t=String((null===e||void 0===e?void 0:e.materials_type)||(null===e||void 0===e?void 0:e.pipeline_materials_type)||(null===e||void 0===e?void 0:e.category)||"").trim();return t&&t===i})||null}},6694:function(e,t,a){"use strict";a("f75d")},7786:function(e,t,a){"use strict";a("6008")},"86dc":function(e,t,a){"use strict";a("d0a5")},aaf6:function(e,t,a){"use strict";a.r(t);var i=function(){var e=this,t=e._self._c;return t("div",{staticClass:"duplicate-review-page public_box"},[t("div",{staticClass:"duplicate-review-page__header"},[e._m(0),t("duplicate-review-filter-bar",{attrs:{"only-pending":e.filters.onlyPending,"llm-category-level1":e.filters.llmCategoryLevel1},on:{input:e.handleReviewStatusChange,"toggle-only-pending":e.handleOnlyPendingToggle,"category-change":e.handleCategoryChange},model:{value:e.filters.reviewStatus,callback:function(t){e.$set(e.filters,"reviewStatus",t)},expression:"filters.reviewStatus"}})],1),e.errorMessage?t("el-alert",{staticClass:"duplicate-review-page__alert",attrs:{type:"error",closable:!1,title:e.errorMessage}}):e._e(),e.loading||e.records.length?e._e():t("el-empty",{attrs:{description:"当前无可复核记录"}}),e.records.length?t("div",{staticClass:"duplicate-review-page__batch-bar"},[t("div",{staticClass:"duplicate-review-page__batch-summary"},[e._v(" 当前页共 "+e._s(e.records.length)+" 条,可一键批量判断 ")]),t("div",{staticClass:"duplicate-review-page__batch-actions"},[t("el-radio-group",{staticClass:"duplicate-review-page__batch-group",attrs:{size:"mini"},model:{value:e.batchDecision,callback:function(t){e.batchDecision=t},expression:"batchDecision"}},[t("el-radio-button",{attrs:{label:"pending"}},[e._v("待定")]),t("el-radio-button",{attrs:{label:"useful"}},[e._v("有用")]),t("el-radio-button",{attrs:{label:"not-useful"}},[e._v("无用")])],1),t("el-button",{attrs:{size:"mini",type:"primary",loading:e.batchSaving},on:{click:e.handleBatchSaveConfirm}},[e._v(" 当前页批量保存 ")])],1)]):e._e(),t("div",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],staticClass:"duplicate-review-page__list"},e._l(e.records,(function(a){return t("duplicate-review-card",{key:a.reviewRecordId,attrs:{record:a,"duplicate-cases":e.resolveRecordDuplicateCases(a),"case-state":e.ensureCaseState(a)},on:{"open-duplicate-case":function(t){return e.handleOpenDuplicateCase(a,t)},"toggle-case-list":function(t){return e.handleToggleCaseList(a)},"change-case-page":function(t){return e.handleCasePageChange(a,t)}},scopedSlots:e._u([{key:"actions",fn:function(){return[t("duplicate-review-decision-panel",{attrs:{saving:e.savingRecordId===a.reviewRecordId},on:{save:function(t){return e.handleSave(a)}},model:{value:e.draftStatusMap[a.reviewRecordId],callback:function(t){e.$set(e.draftStatusMap,a.reviewRecordId,t)},expression:"draftStatusMap[record.reviewRecordId]"}})]},proxy:!0}],null,!0)})})),1),t("div",{staticClass:"duplicate-review-page__pagination"},[t("el-pagination",{attrs:{background:"",layout:"prev, pager, next","current-page":e.filters.pageNo,"page-size":e.filters.pageSize,total:e.total},on:{"current-change":e.handlePageChange}})],1)],1)},r=[function(){var e=this,t=e._self._c;return t("div",[t("h2",[e._v("重复图片复核页面")]),t("p",[e._v("集中判断 confirmed_duplicate_hash_record 里的候选图片,是否值得进入深挖风险页面继续使用")])])}],s=(a("0f5d"),a("865d"),a("8f26"),a("d9d9"),a("963e"),a("1447"),function(){var e=this,t=e._self._c;return t("el-card",{staticClass:"duplicate-review-card",attrs:{shadow:"hover"}},[t("div",{staticClass:"duplicate-review-card__header"},[t("div",[t("div",{staticClass:"duplicate-review-card__title"},[e._v("复核记录 #"+e._s(e.record.reviewRecordId||"-"))]),t("div",{staticClass:"duplicate-review-card__meta"},[t("span",[e._v("64位 hash:"+e._s(e.sourceHashText))]),t("span",[e._v("32位 md5:"+e._s(e.md5HashText))]),e.record.llmCategoryLevel1?t("span",[e._v("一级分类:"+e._s(e.record.llmCategoryLevel1))]):e._e(),t("el-tag",{attrs:{size:"mini",type:e.recordStatusType}},[e._v(e._s(e.record.recordStatus||"unknown"))])],1)]),t("el-tag",{attrs:{size:"mini",type:e.reviewStatusType}},[e._v(e._s(e.statusLabel))])],1),t("div",{staticClass:"duplicate-review-card__body"},[t("div",{staticClass:"duplicate-review-card__preview"},[t("div",{staticClass:"duplicate-review-card__image-title"},[e._v(" "+e._s(e.record.leftMaterialLabel||"候选图片")+" ")]),e.showLeftLoading?t("div",{staticClass:"duplicate-review-card__loading"},[t("i",{staticClass:"el-icon-loading duplicate-review-card__loading-icon"}),t("span",[e._v("图片加载中")])]):e.showLeftImage?t("img",{ref:"leftImage",staticClass:"duplicate-review-card__image",attrs:{src:e.leftDisplayUrl,loading:"lazy",decoding:"async",fetchpriority:"low"},on:{load:e.handleLeftImageLoad,error:e.handleLeftImageError}}):t("div",{staticClass:"duplicate-review-card__placeholder"},[e._v("候选图片不可用")])]),t("div",{staticClass:"duplicate-review-card__cases"},[t("div",{staticClass:"duplicate-review-card__cases-header"},[t("div",{staticClass:"duplicate-review-card__cases-title"},[t("span",[e._v("包含该图片的案件")]),t("el-tag",{attrs:{size:"mini",type:"info"}},[e._v(e._s(e.record.duplicateCaseCount||0))])],1),e.showCaseToggle?t("button",{staticClass:"duplicate-review-card__toggle",attrs:{type:"button"},on:{click:function(t){return e.$emit("toggle-case-list")}}},[e._v(" "+e._s(e.caseToggleLabel)+" ")]):e._e()]),e.showCaseSummary?t("div",{staticClass:"duplicate-review-card__case-summary"},[e._v(" 默认展示前 "+e._s(e.previewCaseCount)+" 个案件,点击后按页加载更多 ")]):e._e(),e.caseState.loading?t("div",{staticClass:"duplicate-review-card__case-loading"},[t("i",{staticClass:"el-icon-loading duplicate-review-card__loading-icon"}),t("span",[e._v("关联案件加载中")])]):e._e(),e.caseState.error?t("div",{staticClass:"duplicate-review-card__warning"},[e._v(e._s(e.caseState.error))]):e._e(),e.duplicateCases.length?t("div",{staticClass:"duplicate-review-card__case-list",class:{"duplicate-review-card__case-list--collapsed":!e.caseState.expanded}},e._l(e.duplicateCases,(function(a){return t("button",{key:a.key||`${a.targetCaseNo}-${a.targetMaterialId||a.targetFileHash}`,staticClass:"duplicate-review-card__case-item",attrs:{type:"button"},on:{click:function(t){return e.$emit("open-duplicate-case",a)}}},[t("span",{staticClass:"duplicate-review-card__case-no"},[e._v(e._s(a.targetCaseNo))]),a.targetMaterialType?t("span",{staticClass:"duplicate-review-card__case-type"},[e._v(e._s(a.targetMaterialType))]):e._e(),a.matchCountInCase?t("span",{staticClass:"duplicate-review-card__case-count"},[e._v("命中 "+e._s(a.matchCountInCase)+" 张")]):e._e()])})),0):t("div",{staticClass:"duplicate-review-card__case-empty"},[e._v("暂无关联案件")]),e.showCasePagination?t("div",{staticClass:"duplicate-review-card__case-pagination"},[t("el-pagination",{attrs:{small:"",background:"",layout:"prev, pager, next","current-page":e.caseState.pageNo||1,"page-size":e.caseState.pageSize||e.defaultCasePageSize,total:e.caseState.total||0},on:{"current-change":function(t){return e.$emit("change-case-page",t)}}})],1):e._e()]),t("div",{staticClass:"duplicate-review-card__side"},[t("div",{staticClass:"duplicate-review-card__context"},[e._v(e._s(e.record.contextSummary||"暂无上下文摘要"))]),e._t("actions")],2)])])}),n=[],l={name:"DuplicateReviewCard",props:{record:{type:Object,default(){return{}}},duplicateCases:{type:Array,default(){return[]}},caseState:{type:Object,default(){return{}}}},data(){return{leftImageFailed:!1,leftImageLoaded:!1,leftDisplayUrl:""}},created(){this.refreshImageUrls()},mounted(){this.syncLeftImageLoadedState()},computed:{previewCaseCount(){return 12},defaultCasePageSize(){return 20},reviewStatusType(){switch(this.record.reviewStatus){case"useful":return"success";case"not-useful":return"info";default:return"warning"}},recordStatusType(){switch(this.record.recordStatus){case"ready":return"success";case"partial":return"warning";default:return"danger"}},statusLabel(){switch(this.record.reviewStatus){case"useful":return"有用";case"not-useful":return"无用";default:return"待定"}},sourceHashText(){const e=[this.record.sourceHash,this.record.sourceCaseNo],t=e.find(e=>/^[a-fA-F0-9]{64}$/.test(String(e||"").trim()));return t||"-"},md5HashText(){const e=[this.record.md5Hash,this.record.targetFileHash,this.record.targetCaseNo],t=e.find(e=>/^[a-fA-F0-9]{32}$/.test(String(e||"").trim()));return t||"-"},hasLeftImage(){return Boolean(this.record.leftImageUrl)},showLeftLoading(){return this.hasLeftImage&&!this.leftDisplayUrl&&!this.leftImageFailed},showLeftImage(){return Boolean(this.leftDisplayUrl)&&!this.leftImageFailed},hiddenCaseCount(){const e=Number(this.caseState.total||this.record.duplicateCaseCount||0)||0;return Math.max(e-this.previewCaseCount,0)},showCaseToggle(){const e=Number(this.caseState.total||this.record.duplicateCaseCount||0)||0;return e>this.previewCaseCount||this.caseState.expanded},showCaseSummary(){return this.showCaseToggle&&!this.caseState.expanded},caseToggleLabel(){if(this.caseState.expanded)return"收起";const e=Number(this.caseState.total||this.record.duplicateCaseCount||0)||0;return e>this.previewCaseCount?`查看更多案件(共 ${e} 个)`:"查看案件"},showCasePagination(){if(!this.caseState.expanded)return!1;const e=Number(this.caseState.total||0)||0,t=Number(this.caseState.pageSize||this.defaultCasePageSize)||this.defaultCasePageSize;return e>t}},watch:{"record.leftImageUrl"(){this.leftImageFailed=!1,this.leftImageLoaded=!1,this.refreshImageUrls()},"record.reviewRecordId"(){this.leftImageFailed=!1,this.leftImageLoaded=!1,this.refreshImageUrls()},leftDisplayUrl(){this.$nextTick(()=>{this.syncLeftImageLoadedState()})}},methods:{refreshImageUrls(){var e;this.leftDisplayUrl=String((null===(e=this.record)||void 0===e?void 0:e.leftImageUrl)||"").trim()},syncLeftImageLoadedState(){const e=this.$refs.leftImage;e&&this.leftDisplayUrl&&e.complete&&e.naturalWidth>0&&(this.leftImageLoaded=!0)},handleLeftImageLoad(){this.leftImageLoaded=!0},handleLeftImageError(){this.leftImageFailed=!0}}},o=l,d=(a("4138"),a("1805")),c=Object(d["a"])(o,s,n,!1,null,"9f23480e",null),u=c.exports,v=function(){var e=this,t=e._self._c;return t("div",{staticClass:"duplicate-review-decision-panel"},[t("el-radio-group",{staticClass:"duplicate-review-decision-panel__group",attrs:{value:e.value,size:"mini"},on:{input:function(t){return e.$emit("input",t)}}},[t("el-radio-button",{attrs:{label:"pending"}},[e._v("待定")]),t("el-radio-button",{attrs:{label:"useful"}},[e._v("有用")]),t("el-radio-button",{attrs:{label:"not-useful"}},[e._v("无用")])],1),t("el-button",{staticClass:"duplicate-review-decision-panel__save",attrs:{size:"mini",type:"primary",loading:e.saving},on:{click:function(t){return e.$emit("save")}}},[e._v(" 保存判断 ")])],1)},h=[],g={name:"DuplicateReviewDecisionPanel",props:{value:{type:String,default:"pending"},saving:{type:Boolean,default:!1}}},p=g,f=(a("7786"),Object(d["a"])(p,v,h,!1,null,"55e8d6ce",null)),m=f.exports,_=function(){var e=this,t=e._self._c;return t("div",{staticClass:"duplicate-review-filter-bar"},[t("el-switch",{attrs:{value:e.onlyPending,"active-text":"只看待复核"},on:{input:function(t){return e.$emit("toggle-only-pending",t)}}}),t("el-radio-group",{attrs:{value:e.value,size:"mini",disabled:e.onlyPending},on:{input:function(t){return e.$emit("input",t)}}},[t("el-radio-button",{attrs:{label:"pending"}},[e._v("待定")]),t("el-radio-button",{attrs:{label:"useful"}},[e._v("有用")]),t("el-radio-button",{attrs:{label:"not-useful"}},[e._v("无用")]),t("el-radio-button",{attrs:{label:"all"}},[e._v("全部")])],1),t("span",{staticClass:"duplicate-review-filter-bar__label"},[e._v("一级分类")]),t("el-select",{staticClass:"duplicate-review-filter-bar__input",attrs:{value:e.llmCategoryLevel1,size:"mini",clearable:"",filterable:"",placeholder:"选择一级分类"},on:{input:function(t){return e.$emit("category-change",t)}}},e._l(e.level1Options,(function(e){return t("el-option",{key:e,attrs:{label:e,value:e}})})),1)],1)},w=[],C={name:"DuplicateReviewFilterBar",data(){return{level1Options:["医疗类","物损类","单据类","现场类","证件类","其他"]}},props:{value:{type:String,default:"pending"},onlyPending:{type:Boolean,default:!0},llmCategoryLevel1:{type:String,default:""}}},y=C,S=(a("86dc"),Object(d["a"])(y,_,w,!1,null,"799a4500",null)),b=S.exports,I=a("61a9"),R=a("5923"),N=a("eb06"),L=a.n(N);function $(e){var t;const a=e||(null===(t=R["default"].prototype)||void 0===t?void 0:t.instance)||L.a.create();return a&&"function"===typeof a.get?a:L.a.create()}function M(e,t){var a;const i=String(e||"").trim();if(i)return i.replace(/\/$/,"");const r=String((null===t||void 0===t||null===(a=t.defaults)||void 0===a?void 0:a.baseURL)||"").trim();return r.replace(/\/$/,"")}function x(e,t){const a=t.startsWith("/")?t:"/"+t,i=String(e||"").trim().replace(/\/$/,"");return i?/(^|\/)manager$/.test(i)?`${i}${a}`:`${i}/manager${a}`:a}function T(e="",t={},a){const i=$(a),r=M(e,i);return i.get(x(r,"/duplicate-review-records"),{params:{reviewStatus:t.reviewStatus||"pending",llmCategoryLevel1:t.llmCategoryLevel1||void 0,pageNo:t.pageNo||1,pageSize:t.pageSize||20}})}function D(e="",t,a={},i){if(!t)throw new Error("reviewRecordId 不能为空");const r=$(i),s=M(e,r);return r.get(x(s,`/duplicate-review-records/${t}/duplicate-cases`),{params:{pageNo:a.pageNo||1,pageSize:a.pageSize||20}})}function z(e="",t,a={},i){if(!t)throw new Error("reviewRecordId 不能为空");if(!a.decision)throw new Error("payload.decision 必须提供");const r=$(i),s=M(e,r);return r.post(x(s,`/duplicate-review-records/${t}/decision`),a)}function P(e="",t={},a){if(!Array.isArray(t.reviewRecordIds)||!t.reviewRecordIds.length)throw new Error("payload.reviewRecordIds 必须提供");if(!t.decision)throw new Error("payload.decision 必须提供");const i=$(a),r=M(e,i);return i.post(x(r,"/duplicate-review-records/batch-decision"),t)}var U={name:"DuplicateReviewPage",inject:{injectedInterfaceUrl:{from:"interfaceUrl",default:""}},components:{DuplicateReviewCard:u,DuplicateReviewDecisionPanel:m,DuplicateReviewFilterBar:b},data(){return{loading:!1,savingRecordId:null,records:[],total:0,errorMessage:"",filters:{reviewStatus:"pending",onlyPending:!0,llmCategoryLevel1:"",pageNo:1,pageSize:20},draftStatusMap:{},caseStateMap:{},batchDecision:"useful",batchSaving:!1,internalInterfaceUrl:""}},created(){this.hydrateFiltersFromRoute(),this.internalInterfaceUrl=this.getResolvedInterfaceUrl(),this.fetchRecords()},methods:{getDefaultInterfaceUrl(){return"https://jiaanan.platform.sigreal.cn"},getResolvedInterfaceUrl(){return this.internalInterfaceUrl||this.injectedInterfaceUrl||this.getDefaultInterfaceUrl()},hydrateFiltersFromRoute(){const e=this.$route&&this.$route.query||{},t="false"!==e.onlyPending;this.filters.onlyPending=t,this.filters.reviewStatus=t?"pending":e.reviewStatus||"all",this.filters.llmCategoryLevel1=e.llmCategoryLevel1||"",this.filters.pageNo=Number(e.pageNo)>0?Number(e.pageNo):1},syncRouteQuery(){this.$router&&this.$route&&this.$router.replace({query:{onlyPending:this.filters.onlyPending?"true":"false",reviewStatus:this.filters.reviewStatus,llmCategoryLevel1:this.filters.llmCategoryLevel1||void 0,pageNo:this.filters.pageNo>1?String(this.filters.pageNo):void 0}}).catch(()=>{})},async fetchRecords(){this.loading=!0,this.errorMessage="";try{const e=await T(this.getResolvedInterfaceUrl(),this.filters,this.instance),t=e&&e.data||{};if(1!==t.code&&void 0!==t.code)throw new Error(t.message||"复核记录加载失败");const a=t.data||{};this.records=(Array.isArray(a.items)?a.items:[]).map(e=>({...e,sourceHash:(null===e||void 0===e?void 0:e.sourceHash)||(null===e||void 0===e?void 0:e.source_hash)||(null===e||void 0===e?void 0:e.sourceCaseNo)||"",md5Hash:(null===e||void 0===e?void 0:e.md5Hash)||(null===e||void 0===e?void 0:e.md5_hash)||(null===e||void 0===e?void 0:e.targetCaseNo)||"",duplicateCases:Object(I["f"])((null===e||void 0===e?void 0:e.duplicateCases)||(null===e||void 0===e?void 0:e.duplicate_cases)||[])})),this.total=a.total||0,this.draftStatusMap=this.records.reduce((e,t)=>(e[t.reviewRecordId]=t.reviewStatus||"pending",e),{}),this.caseStateMap=this.records.reduce((e,t)=>{const a=Object(I["f"])((null===t||void 0===t?void 0:t.duplicateCases)||[]),i=Number((null===t||void 0===t?void 0:t.duplicateCaseCount)||a.length||0)||0;return e[t.reviewRecordId]={expanded:!1,loading:!1,error:null!==t&&void 0!==t&&t.duplicateCaseLoadFailed?(null===t||void 0===t?void 0:t.duplicateCaseLoadMessage)||"关联案件加载失败":"",items:a,pageNo:1,pageSize:20,total:i},e},{})}catch(e){this.records=[],this.total=0,this.caseStateMap={},this.errorMessage=e&&e.message?e.message:"复核记录加载失败"}finally{this.loading=!1}},ensureCaseState(e){if(null===e||void 0===e||!e.reviewRecordId)return{expanded:!1,loading:!1,error:"",items:[],pageNo:1,pageSize:20,total:0};if(!this.caseStateMap[e.reviewRecordId]){const t=Object(I["f"])((null===e||void 0===e?void 0:e.duplicateCases)||[]);this.$set(this.caseStateMap,e.reviewRecordId,{expanded:!1,loading:!1,error:null!==e&&void 0!==e&&e.duplicateCaseLoadFailed?(null===e||void 0===e?void 0:e.duplicateCaseLoadMessage)||"关联案件加载失败":"",items:t,pageNo:1,pageSize:20,total:Number((null===e||void 0===e?void 0:e.duplicateCaseCount)||t.length||0)||0})}return this.caseStateMap[e.reviewRecordId]},resolveRecordDuplicateCases(e){const t=this.ensureCaseState(e);return Array.isArray(t.items)?t.items:[]},async fetchDuplicateCases(e,t=1){const a=this.ensureCaseState(e);a.loading=!0,a.error="";try{const i=await D(this.getResolvedInterfaceUrl(),e.reviewRecordId,{pageNo:t,pageSize:a.pageSize||20},this.instance),r=i&&i.data||{};if(1!==r.code&&void 0!==r.code)throw new Error(r.message||"关联案件加载失败");const s=r.data||{};a.items=Object(I["f"])(s.items||s.duplicateCases||s.duplicate_cases||[]),a.pageNo=Number(s.pageNo||t)||t,a.pageSize=Number(s.pageSize||a.pageSize||20)||20,a.total=Number(s.duplicateCaseCount||s.total||a.items.length||0)||0}catch(i){a.error=i&&i.message?i.message:"关联案件加载失败"}finally{a.loading=!1,this.$set(this.caseStateMap,e.reviewRecordId,{...a})}},async handleToggleCaseList(e){const t=this.ensureCaseState(e);if(t.expanded)return t.expanded=!1,void this.$set(this.caseStateMap,e.reviewRecordId,{...t});t.expanded=!0,this.$set(this.caseStateMap,e.reviewRecordId,{...t});const a=Array.isArray(t.items)?t.items.length:0,i=Number(t.total||(null===e||void 0===e?void 0:e.duplicateCaseCount)||0)||0;(t.error||i>a)&&await this.fetchDuplicateCases(e,1)},async handleCasePageChange(e,t){const a=Number(t)||1;await this.fetchDuplicateCases(e,a),"undefined"!==typeof window&&window.scrollTo({top:Math.max(window.scrollY-120,0),behavior:"smooth"})},handleFilterChange(){this.filters.pageNo=1,this.syncRouteQuery(),this.fetchRecords()},handleReviewStatusChange(e){this.filters.reviewStatus=e,this.handleFilterChange()},handleOnlyPendingToggle(e){this.filters.onlyPending=e,this.filters.reviewStatus=e?"pending":"all",this.handleFilterChange()},handleCategoryChange(e){this.filters.llmCategoryLevel1=e,this.handleFilterChange()},handleBatchSaveConfirm(){if(!this.records.length)return void this.$message.warning("当前页没有可保存的记录");const e={pending:"待定",useful:"有用","not-useful":"无用"},t=e[this.batchDecision]||this.batchDecision||"待定";this.$confirm(`确认将当前页 ${this.records.length} 条记录统一标记为「${t}」吗?`,"批量保存确认",{confirmButtonText:"确认保存",cancelButtonText:"取消",type:"warning"}).then(()=>this.handleBatchSave()).catch(()=>{})},handlePageChange(e){this.filters.pageNo=e,this.records=[],this.draftStatusMap={},this.syncRouteQuery(),"undefined"!==typeof window&&window.scrollTo({top:0,behavior:"smooth"}),this.fetchRecords()},async handleSave(e){const t=this.draftStatusMap[e.reviewRecordId]||"pending";this.savingRecordId=e.reviewRecordId;try{const a=await z(this.getResolvedInterfaceUrl(),e.reviewRecordId,{decision:t},this.instance),i=a&&a.data||{};if(1!==i.code&&void 0!==i.code)throw new Error(i.message||"保存失败");const r=i.data;this.draftStatusMap={...this.draftStatusMap,[e.reviewRecordId]:t};const s=this.records.map(a=>a.reviewRecordId===e.reviewRecordId?{...a,...r||{},sourceHash:(null===r||void 0===r?void 0:r.sourceHash)||(null===r||void 0===r?void 0:r.source_hash)||(null===a||void 0===a?void 0:a.sourceHash)||(null===a||void 0===a?void 0:a.sourceCaseNo)||"",md5Hash:(null===r||void 0===r?void 0:r.md5Hash)||(null===r||void 0===r?void 0:r.md5_hash)||(null===a||void 0===a?void 0:a.md5Hash)||(null===a||void 0===a?void 0:a.targetCaseNo)||"",duplicateCases:Object(I["f"])((null===r||void 0===r?void 0:r.duplicateCases)||(null===r||void 0===r?void 0:r.duplicate_cases)||(null===a||void 0===a?void 0:a.duplicateCases)||[]),reviewStatus:t}:a);this.filters.onlyPending&&"pending"!==t?(this.records=s.filter(t=>t.reviewRecordId!==e.reviewRecordId),this.total=Math.max(0,Number(this.total||0)-1),!this.records.length&&this.total>0&&await this.fetchRecords()):this.records=s,this.$message.success("判断结果已保存")}catch(a){this.$message.error(a&&a.message?a.message:"保存失败")}finally{this.savingRecordId=null}},async handleBatchSave(){const e=this.records.map(e=>e&&e.reviewRecordId).filter(e=>Number(e)>0);if(!e.length)return void this.$message.warning("当前页没有可保存的记录");const t=this.batchDecision||"pending";this.batchSaving=!0;try{var a;const i=await P(this.getResolvedInterfaceUrl(),{reviewRecordIds:e,decision:t},this.instance),r=i&&i.data||{};if(1!==r.code&&void 0!==r.code)throw new Error(r.message||"批量保存失败");this.draftStatusMap=e.reduce((e,a)=>(e[a]=t,e),{...this.draftStatusMap}),this.filters.onlyPending&&"pending"!==t?(this.records=[],this.total=Math.max(0,Number(this.total||0)-e.length),await this.fetchRecords()):this.records=this.records.map(a=>({...a,reviewStatus:e.includes(a.reviewRecordId)?t:a.reviewStatus}));const s=Number((null===r||void 0===r||null===(a=r.data)||void 0===a?void 0:a.updatedCount)||e.length)||e.length;this.$message.success(`已批量保存 ${s} 条判断结果`)}catch(i){this.$message.error(i&&i.message?i.message:"批量保存失败")}finally{this.batchSaving=!1}},handleOpenDuplicateCase(e,t){if(null===t||void 0===t||!t.openable)return void this.$message.warning((null===t||void 0===t?void 0:t.disabledReason)||"当前案件暂不可跳转");const a=Object(I["b"])({caseNo:t.targetCaseNo,focusMaterialId:t.targetMaterialId,focusFileHash:t.targetFileHash||e.md5Hash||e.targetCaseNo||e.sourceHash||e.sourceCaseNo,focusMaterialType:t.targetMaterialType});window.open(a,"_blank")}}},F=U,H=(a("6694"),Object(d["a"])(F,i,r,!1,null,"1b68203c",null));t["default"]=H.exports},d0a5:function(e,t,a){},f75d:function(e,t,a){}}]); //# sourceMappingURL=chunk-6da2ac3a.c5591ee3e690f7fcd6e5.js.map