yxk_pc_mdh/gyhl/static/js/433.79746cf6ea43e9a8bb22.js

1 line
14 KiB
JavaScript

webpackJsonp([433],{YU1m:function(e,t){},Z2sh:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=a("d7EF"),n=a.n(i),s=a("//Fk"),o=a.n(s),l=a("mvHQ"),r=a.n(l),c=a("BO1k"),d=a.n(c),p=a("Dod7"),u=(a("NYxO"),a("MJLE")),h=a.n(u),m={name:"equipment_index",data:function(){return{depOptions:[],selectDeptId:[],total:0,pageSizes:[10,20,50],search_data:{pageno:1,pagesize:10,name:""},adv_search_data:{},tableData:[],dialogVisible:!1,btnDelDisabled:!0,btnOtherDisabled:!0,deptList:[],usingList:[],typeList:[],rowIds:[],codeData:{},printHtml:"",pictLoading:!1,uploadAttachment:[],fileDocList:[],uploadUrl:p.a.uploadUrl,ftpPrefix:p.a.ftpPrefix,fullscreenLoading:!1,auto_upload:!1}},created:function(){var e=this;document.onkeydown=function(t){"Enter"===t.key&&e.search()}},mounted:function(){this.initDta(),this.search(),console.log(this.$route.query.using_status),this.$route.query.using_status&&this.$set(this.search_data,"using_status",parseInt(this.$route.query.using_status))},methods:{treeFindPath:function(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];if(!e)return[];var i=!0,n=!1,s=void 0;try{for(var o,l=d()(e);!(i=(o=l.next()).done);i=!0){var r=o.value;if(a.push(r.id),t(r))return a;if(r.children){var c=this.treeFindPath(r.children,t,a);if(c.length)return c}a.pop()}}catch(e){n=!0,s=e}finally{try{!i&&l.return&&l.return()}finally{if(n)throw s}}return[]},setDeptList:function(e){var t=!0,a=!1,i=void 0;try{for(var n,s=d()(e);!(t=(n=s.next()).done);t=!0){var o=n.value;o.hasChildren?this.setDeptList(o.children):o.children=void 0}}catch(e){a=!0,i=e}finally{try{!t&&s.return&&s.return()}finally{if(a)throw i}}},setDefaultDept:function(){if(this.depOptions.length>0&&this.search_data.deptId){var e=r()(this.search_data.deptId),t=this.treeFindPath(this.depOptions,function(t){return t.id===e});this.selectDeptId=JSON.parse(r()(t))}},handleChange:function(e){this.search_data.deptId=e[e.length-1],this.selectDeptId=e},clickRow:function(e){this.$refs.tb.toggleRowSelection(e)},initDta:function(){var e=this;o.a.all([this.$api.dictAPI.getDictsByType("device_type"),this.$api.commonAPI.getDeptsTree(),this.$api.dictAPI.getDictsByType("device_status")]).then(function(t){var a=n()(t,3),i=a[0],s=a[1],o=a[2];0===i.code&&(e.typeList=i.datas),0===s.code&&(e.depOptions=s.data.children,e.setDefaultDept(),e.setDeptList(e.depOptions)),0===o.code&&(e.usingList=o.datas)}).catch(function(e){console.log(e)})},openDetails:function(e){this.$router.push({path:"/equipment/info",query:{id:e.id,t:Date.now()}})},add:function(){this.$router.push({path:"/equipment/info",query:{t:Date.now()}})},remove:function(){var e=this,t=[];this.rowIds.forEach(function(e){t.push(e.id)}),this.$confirm("确认删除选中的设备台账吗?","提示",{type:"warning"}).then(function(){e.$api.deviceAPI.allDelete({deviceId:t}).then(function(t){0===t.code?(e.$message({message:t.msg,type:"success"}),e.search()):e.$message({message:t.msg?t.msg:"删除失败,请重试",type:"error"})}).catch(function(t){e.$message({message:"删除失败,请重试",type:"error"})})})},generateQR:function(){var e=this,t=this,a=this.rowIds[0].id;this.$api.deviceAPI.getDeviceQRCode(a).then(function(a){0===a.code&&(console.log(a.data),e.codeData={id:a.data.id,serialNo:a.data.serialNo},e.dialogVisible=!0,e.$nextTick(function(){document.getElementById("qrcode").innerHTML="",console.log(e.codeData);new h.a("qrcode",{width:200,height:200,text:r()(t.codeData)})},100))})},saveQRPic:function(){var e=document.getElementById("qrcode").getElementsByTagName("canvas"),t=document.getElementById("qrcode").getElementsByTagName("img"),a=document.createElement("a"),i=e[0].toDataURL("image/jpg"),n=navigator.userAgent;if(-1!=n.indexOf("Trident")&&-1!=n.indexOf("Windows")){for(var s=atob(i.split(",")[1]),o=s.length,l=new Uint8Array(o);o--;)l[o]=s.charCodeAt(o);var r=new Blob([l]);window.navigator.msSaveOrOpenBlob(r,this.codeData.name+".png")}else if(n.indexOf("Firefox")>-1){var c=this.base64ToBlob(i);document.createEvent("HTMLEvents").initEvent("click",!0,!0),a.download=" ",a.href=URL.createObjectURL(c),a.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window}))}else t.src=e[0].toDataURL("image/jpg"),a.href=t.src,a.download=this.codeData.name,a.click();this.dialogVisible=!1},base64ToBlob:function(e){for(var t=e.split(";base64,"),a=t[0].split(":")[1],i=window.atob(t[1]),n=i.length,s=new Uint8Array(n),o=0;o<n;++o)s[o]=i.charCodeAt(o);return new Blob([s],{type:a})},printQR:function(){for(var e="",t=this.rowIds.length,a=0;a<t;a++)0!=a&&a%2==0&&a!=t&&(e+="</tr><tr style='padding:10px;'>"),e+="<td width='50%' height='250' style='padding-left: 180px;padding-top: 30px'><div id='XQ"+a+"'></div><div style='text-align: center'><strong>"+this.rowIds[a].name+"</strong></div></td>";this.printHtml="<em style='padding: 10px;text-align: center'><table style='border-collapse:collapse;width: auto;><tr style='padding:10px;'>"+e+"</tr></table></em>",document.getElementById("qrcode2").innerHTML=this.printHtml;var i=document.getElementById("qrcode2").innerHTML;document.body.innerHTML="<html><head><title>设备二维码打印</title></head><body>"+i+"</body></html>";for(var n=0;n<this.rowIds.length;n++){document.getElementById("XQ"+n).innerHTML="";var s=this.rowIds[n];new h.a(document.getElementById("XQ"+n),{text:r()(s),width:250,height:250,colorDark:"#000000",colorLight:"#ffffff"})}return window.print(),window.location.reload(),this.dialogVisible=!1,!1},search:function(){this.search_data.pageno=1,this.getList()},getList:function(){var e=this;this.pictLoading=!0,this.$api.deviceAPI.advancedQuery(this.search_data).then(function(t){0===t.code&&(e.tableData=t.data?t.data.datas:[],e.tableData.forEach(function(e){e.buy_time=/\d{4}-\d{1,2}-\d{1,2}/g.exec(e.buy_time)}),e.total=t.data?t.data.totalRows:0),e.pictLoading=!1}).catch(function(t){e.pictLoading=!1})},handleCurrentChange:function(e){this.search_data.pageno=e,this.getList()},handleSizeChange:function(e){this.search_data.pagesize=e,this.getList()},handleSelectionChange:function(e){this.rowIds=e,this.setBtn(e)},setBtn:function(e){var t=!0,a=!0;e.length>0?(a=!1,1==e.length&&(t=!1)):(t=!0,a=!0),this.btnDelDisabled=a,this.btnOtherDisabled=t},alertQR:function(){var e=this;this.$alert("请您选择要打印二维码设备","提示",{confirmButtonText:"确定",callback:function(t){e.$message({type:"info",message:"action: "+t})}})},httpRequest:function(e,t,a){var i=this,n=this,s=new FormData;s.append("file",e,t),this.$api.deviceAPI.importExcel(s).then(function(e){n.fullscreenLoading=!1,0==e.code?(n.$message({message:"上传成功",type:"success",duration:2e3}),i.getList()):(n.fullscreenLoading=!1,n.$message.error(e.msg),n.$refs.upload.uploadFiles.splice(n.$refs.upload.uploadFiles.length-1,1))})},uploadSuccess:function(e,t){"操作成功"===e.msg&&this.uploadAttachment.push({filePath:e.filePath,fileName:e.fileName})},onChange:function(e,t){if(e.size>1e8)return this.$message.error("上传文件不能超过100M!"),this.$refs.upload.fileList=this.$refs.upload.fileList,this.$refs.upload.uploadFiles.splice(this.$refs.upload.uploadFiles.length-1,1),!1;if(e=e.raw,/image\/\w+/.test(e.type)){this.fullscreenLoading=!0;var a=this;imageConversion.compressAccurately(e,400).then(function(t){t.size?a.httpRequest(t,e.name,e):(a.$message.error("压缩图片失败"),a.fullscreenLoading=!1,a.$refs.upload.uploadFiles.splice(a.$refs.upload.uploadFiles.length-1,1))})}else this.fullscreenLoading=!0,this.httpRequest(e,e.name)},upLoadExcel:function(){this.$api.netWorkingAPI.downExcel({filePath:"/gyhl-file/template/device-account-template.xlsx",fileName:"device-account-template.xlsx"}).then(function(e){})}}},f={render:function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"sys-box"},[a("div",{staticClass:"sys-operate",staticStyle:{position:"relative"}},[a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:add",expression:"'equipment:add'"}],staticStyle:{position:"absolute",top:"0"},attrs:{type:"primary"},on:{click:function(t){return e.add()}}},[e._v("新增")]),e._v(" "),a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:remove",expression:"'equipment:remove'"}],staticStyle:{position:"absolute",top:"0",left:"76px"},attrs:{type:"primary",disabled:e.btnOtherDisabled},on:{click:function(t){return e.remove()}}},[e._v("删除\n ")]),e._v(" "),a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:generateQR",expression:"'equipment:generateQR'"}],staticStyle:{position:"absolute",top:"0",left:"142px"},attrs:{type:"primary",disabled:e.btnOtherDisabled},on:{click:function(t){return e.generateQR()}}},[e._v("生成二维码\n ")]),e._v(" "),a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:printQR",expression:"'equipment:printQR'"}],staticStyle:{position:"absolute",top:"0",left:"243px"},attrs:{type:"primary",disabled:e.btnDelDisabled},on:{click:function(t){return e.printQR()}}},[e._v("批量打印二维码\n ")]),e._v(" "),a("el-upload",{directives:[{name:"loading",rawName:"v-loading.lock",value:e.fullscreenLoading,expression:"fullscreenLoading",modifiers:{lock:!0}}],ref:"upload",staticClass:"inline-block",staticStyle:{"margin-left":"358px",display:"inline-block"},attrs:{action:e.uploadUrl,"on-success":e.uploadSuccess,"show-file-list":!1,"before-remove":function(){return!1},"auto-upload":e.auto_upload,"on-change":e.onChange,accept:".xls,.xlsx,"}},[a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:upload",expression:"'equipment:upload'"}],attrs:{size:"small",type:"primary"}},[e._v("导入")])],1),e._v(" "),a("el-button",{directives:[{name:"has",rawName:"v-has",value:"equipment:download",expression:"'equipment:download'"}],attrs:{type:"primary"},on:{click:e.upLoadExcel}},[e._v("下载模板")])],1),e._v(" "),a("div",{staticClass:"sys-search"},[a("el-form",{staticClass:"form_item_search_out",attrs:{inline:""}},[a("div",{staticClass:"form_item_input_out"},[a("el-form-item",{staticClass:"form_item-inline",staticStyle:{width:"25%"},attrs:{label:"设备名称"}},[a("el-input",{attrs:{placeholder:"编号、名称模糊查询"},model:{value:e.search_data.nameAndType,callback:function(t){e.$set(e.search_data,"nameAndType",t)},expression:"search_data.nameAndType"}})],1),e._v(" "),a("el-form-item",{staticClass:"form_item-inline",staticStyle:{width:"25%"},attrs:{label:"使用部门"}},[a("el-cascader",{attrs:{clearable:"",options:e.depOptions,props:{expandTrigger:"hover",label:"text",value:"id",checkStrictly:!0}},on:{change:e.handleChange},model:{value:e.selectDeptId,callback:function(t){e.selectDeptId=t},expression:"selectDeptId"}})],1),e._v(" "),a("el-form-item",{staticClass:"form_item-inline",staticStyle:{width:"25%"},attrs:{label:"使用状况"}},[a("el-select",{attrs:{placeholder:"请选择使用状况",clearable:""},model:{value:e.search_data.using_status,callback:function(t){e.$set(e.search_data,"using_status",t)},expression:"search_data.using_status"}},e._l(e.usingList,function(e){return a("el-option",{key:e.id,attrs:{label:e.name,value:e.id}})}),1)],1),e._v(" "),a("el-form-item",{staticClass:"form_item-inline",staticStyle:{width:"25%"},attrs:{label:"设备类型"}},[a("el-select",{attrs:{placeholder:"请选择设备类型",clearable:""},model:{value:e.search_data.type,callback:function(t){e.$set(e.search_data,"type",t)},expression:"search_data.type"}},e._l(e.typeList,function(e){return a("el-option",{key:e.id,attrs:{label:e.name,value:e.id}})}),1)],1)],1),e._v(" "),a("div",{staticClass:"form_item_btn_out"},[a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.search()}}},[e._v("查询")])],1)],1)])],1),e._v(" "),a("div",{staticClass:"sys-table"},[a("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.pictLoading,expression:"pictLoading"}],ref:"tb",attrs:{border:"",data:e.tableData,"header-cell-style":{fontWeight:"normal",textAlign:"center",backgroundColor:"#eceff4",color:"#222"}},on:{"row-click":e.clickRow,"selection-change":e.handleSelectionChange}},[a("el-table-column",{attrs:{type:"selection",width:"55",align:"center"}}),e._v(" "),a("el-table-column",{attrs:{"show-overflow-tooltip":"",align:"center",label:"设备编号"},scopedSlots:e._u([{key:"default",fn:function(t){return[a("el-link",{attrs:{type:"primary"},on:{click:function(a){return e.openDetails(t.row)}}},[e._v(e._s(t.row.serialno))])]}}])}),e._v(" "),a("el-table-column",{attrs:{prop:"name","show-overflow-tooltip":"",align:"center",label:"设备名称"}}),e._v(" "),a("el-table-column",{attrs:{prop:"model",align:"center",label:"规格型号","show-overflow-tooltip":""}}),e._v(" "),a("el-table-column",{attrs:{prop:"type_mes",align:"center",label:"设备类型","show-overflow-tooltip":""}}),e._v(" "),a("el-table-column",{attrs:{prop:"status_name",align:"center",label:"使用状况","show-overflow-tooltip":""}}),e._v(" "),a("el-table-column",{attrs:{prop:"site","show-overflow-tooltip":"",align:"center",label:"安装地点"}}),e._v(" "),a("el-table-column",{attrs:{prop:"dept_name","show-overflow-tooltip":"",align:"center",label:"使用部门"}}),e._v(" "),a("el-table-column",{attrs:{prop:"user_name",align:"center",label:"负责人"}}),e._v(" "),a("el-table-column",{attrs:{prop:"buy_time","show-overflow-tooltip":"",align:"center",label:"购置时间",width:"114"}})],1)],1),e._v(" "),a("div",{staticClass:"sys-pagination"},[a("el-pagination",{attrs:{"current-page":e.search_data.pageno,"page-sizes":e.pageSizes,"page-size":e.search_data.pagesize,layout:"total, sizes, prev, pager, next, jumper",total:e.total},on:{"size-change":e.handleSizeChange,"current-change":e.handleCurrentChange}})],1),e._v(" "),a("el-dialog",{attrs:{title:"生成二维码",visible:e.dialogVisible,center:"",width:"500px"},on:{"update:visible":function(t){e.dialogVisible=t}}},[a("div",{staticClass:"qrcode-box"},[a("p",[e._v(e._s(e.codeData.name))]),e._v(" "),a("p",[e._v(e._s(e.codeData.serialno))]),e._v(" "),a("div",{staticClass:"qrcode-img"},[a("div",{ref:"qrcode",attrs:{id:"qrcode"}})])]),e._v(" "),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.printQR()}}},[e._v("打 印")]),e._v(" "),a("el-button",{attrs:{type:"primary"},on:{click:function(t){return e.saveQRPic()}}},[e._v("存为图片")])],1)]),e._v(" "),a("div",{staticStyle:{margin:"0 auto",display:"none"},attrs:{id:"qrcode2"},domProps:{innerHTML:e._s(e.printHtml)}})],1)},staticRenderFns:[]};var g=a("VU/8")(m,f,!1,function(e){a("YU1m")},"data-v-298a7967",null);t.default=g.exports}});