webpackJsonp([42],{c2qR:function(e,t,a){var n=a("p1c0");"string"==typeof n&&(n=[[e.i,n,""]]),n.locals&&(e.exports=n.locals);a("rjj0")("079f1e57",n,!0)},iJem:function(e,t,a){"use strict";var n=a("//Fk"),r=a.n(n),i={logable:!0,db:null,createOrOpenDb:function(e,t){var a=this,n=indexedDB.open(e,t);return new r.a(function(e,t){n.onsuccess=function(t){a.logable,a.db=t.target.result,e(a.db)},n.onerror=function(e){a.logable,t(e.target.error.message)},n.onupgradeneeded=function(e){a.logable,a.db=e.target.result,a.createObjectStore("image",{keyPath:"id"})}})},createObjectStore:function(e,t){if(!this.db.objectStoreNames.contains(e)){var a=this.db.createObjectStore(e,{keyPath:t.keyPath});for(var n in t)a.createIndex(n,n,{unique:t.unique});this.logable}},getCurrentStore:function(e){return this.db.transaction([e],"readwrite").objectStore(e)},createObjectStoreOperations:function(e){var t=this;this[e]={add:function(a){if(a)return new r.a(function(n,r){var i=t.getCurrentStore(e).add(a);i.onsuccess=function(e){t.logable,n(a)},i.onerror=function(e){t.logable,r(e.target.error.message)}})},remove:function(a){return new r.a(function(n,r){var i=t.getCurrentStore(e).delete(a);i.onsuccess=function(e){n(!0)},i.onerror=function(e){r(e.target.error.message)}})},clearData:function(){return new r.a(function(a,n){var r=t.getCurrentStore(e).clear();r.onsuccess=function(e){a(!0)},r.onerror=function(e){n(e.target.error.message)}})},update:function(a){if(!a.id)throw new Error("必须拥有id属性的数据对象才能被修改");var n=t.getCurrentStore(e);return new r.a(function(e,r){var i=n.put(a);i.onsuccess=function(a){t.logable,e(!0)},i.onerror=function(e){t.logable,r(e.target.error.message)}})},readAll:function(){var a=t.getCurrentStore(e);return new r.a(function(e,t){var n=[],r=a.openCursor();r.onsuccess=function(t){var a=t.target.result;a?(n.push(a.value),a.continue()):e(n)},r.onerror=function(e){t(e.target.error.message)}})},readWithIndex:function(a){return new r.a(function(n,r){var i=t.getCurrentStore(e).index("name").openCursor(),s=[];i.onsuccess=function(e){var t=e.target.result;t?(t.value.name.includes(a)&&s.push(t.value),t.continue()):n(s)},i.onerror=function(e){r(e.target.error.message)}})}}}};t.a=i},lJJr:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=a("Dd8w"),r=a.n(n),i=a("//Fk"),s=a.n(i),o=a("+giH"),c=a("mn/P"),u=a("MZdq"),l=a("9Zzp"),d=a("COE1"),p=a("iJem"),g={data:function(){return{action:"/cwos-portal/portal/biology/image/upload",dialogVisible:!1,imageUrl:"",ajax:o.a,responseText:"",compareList:[],showList:[],isCompare:!0,isDefault:!0,dataBaseList:[],baseFileList:[],avandaFile64:"",avandaFeature:""}},created:function(){var e=this;this.getDatabase(),p.a.createOrOpenDb("imgDB","1.0").then(function(t){p.a.createObjectStoreOperations("image"),p.a.image.readAll().then(function(t){e.dataBaseList=t,e.compareList=t,e.dataBaseList.length&&(e.avandaFeature=e.dataBaseList[0].id,e.imageUrl&&(e.isCompare=!1))}).catch(function(e){})})},methods:{handleRemove:function(e){var t=this;if(e.id){var a={groupId:"customize",algorithmSubType:2001,featureId:e.id};c.a.delFaceBaseImg(a).then(function(a){t.$message.success(a.data.message),p.a.image.remove(e.id).then(function(a){t.dataBaseList.forEach(function(a,n){a.id===e.id&&t.dataBaseList.splice(n,1)}),t.compareList.forEach(function(a,n){a.id===e.id&&t.compareList.splice(n,1)}),t.dataBaseList&&0!==t.dataBaseList.length&&t.imageUrl||(t.isCompare=!0),t.$message.success("删除成功")}).catch(function(e){t.$message.error("数据库删除失败")})}).catch(function(e){t.$message.error(e.message)})}},handleAvatarSuccess:function(e){var t=this;return e.size/1024/1024>3?(this.$message.error("图片过大, 请上传不大于3M, 像素在4000*3000以内的照片"),!1):(this.imageUrl=URL.createObjectURL(e),Object(l.b)(e).then(function(e){var a={imageA:e.split(";base64,")[1],algorithmSubType:2041};t.avandaFile64=e.split(";base64,")[1],u.b.featureExtract(a).then(function(e){t.avandaFeature=e.data[0].feature,t.isCompare=0==t.dataBaseList.length})}).catch(function(e){t.$message.error(e.message)}),!1)},handleChange:function(e){if(e.size/1024/1024>3)return this.$message.error("图片过大, 请上传不大于3M, 像素在4000*3000以内的照片"),!1},beforeUpload:function(e){var t=this;return["image/jpeg","image/png","image/bmp","image/gif"].includes(e.type)?e.size/1024/1024>3?(this.$message.error("请上传3M以内的图片"),!1):new s.a(function(a,n){var r=new Image;r.src=URL.createObjectURL(e),r.onload=function(){this.naturalWidth>4e3||this.naturalHeight>3e3?(t.$message.error("请上传4000像素 * 3000像素以内的图片"),n()):(t.handleSuccess(e),n())}}):(this.$message.error("上传文件格式不正确"),!1)},handleSuccess:function(e){var t=this;Object(l.b)(e).then(function(e){var a=e.split(";base64,")[1];t.featureExtract(a,e)})},handleClose:function(e){this.baseFileList=[],e()},featureExtract:function(e,t){var a=this,n={imageA:e,algorithmSubType:2041};u.b.featureExtract(n).then(function(e){""!==e.data[0].feature?a.addFeature(e.data[0].feature,t):a.$message.error("特征提取失败")})},getUUid:function(){for(var e=[],t=0;t<36;t++)e[t]="0123456789abcdef".substr(Math.floor(16*Math.random()),1);return e[14]="4",e[19]="0123456789abcdef".substr(3&e[19]|8,1),e[8]=e[13]=e[18]=e[23]="-",e.join("")},addFeature:function(e,t){var a=this,n=this.getUUid(),r={groupId:"customize",feature:e,featureId:n,algorithmSubType:2001},i={id:n,url:t};c.a.addFeature(r).then(function(e){e.data&&p.a.image.add(i).then(function(e){a.$message.success("添加图片成功!"),a.dataBaseList.push(i),a.imageUrl&&(a.isCompare=!1)}).catch(function(e){a.$message.error("添加图片失败!")})}).catch(function(e){a.$message.error(e.message)})},compare:function(){var e=this,t={groupId:"customize",feature:this.avandaFeature,topN:6,algorithmSubType:2001};c.a.compare(t).then(function(t){var a=[];if(t.success&&t.data){for(var n=0;n