{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/src/components/o_photo.vue?vue&type=script&lang=js&","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/src/components/o_photo.vue","mtime":1740130327258},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-mobile/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport wx from \"weixin-js-sdk\"\nimport Constant from \"@/Constant.js\"\nimport API from \"@/api.js\"\nimport { Toast } from \"mint-ui\"\nimport controlHidden from \"@/assets/js/controlHidden.js\"\nexport default {\n name: \"o-photo\",\n props: [\"id\"],\n computed: {\n field: function() {\n let formData = this.$parent.findField(this.id);\n let accessToken = \"?accessToken=\" + this.accessToken\n if(typeof formData.value == \"string\") {\n if(formData.value.charAt(0) == '[') {\n // if(formData.value && formData.value.length>0) {\n // formData.value = formData.value.replace(/\\\\|\\[|\\]|\"/g,\"\");\n // formData.imgURL = formData.value.split(\",\")\n // let host = \"http://\" + window.location.host + \"/obpm\";\n // for(let i=0; i {\n this.onClickToTakePhoto(res);\n }\n this.$nextTick(()=>{\n let field = this.field;\n if(field.isHideType) {\n let id = this.id,\n formShowType = field.formShowType;\n controlHidden({id, field, formShowType})\n }\n })\n },\n data: function() {\n return {\n Constant,\n dialogVisible: false,\n photo: \"\",\n savePhoto: \"\",\n photoURL:[],\n value:'',\n popupVisible:false,\n datas:'',\n multiple: true,\n resData: \"00\",\n accessToken: localStorage.getItem(\"accessToken\")\n };\n },\n methods: {\n async inputChange(e) {\n let files = e.target.files;\n [].slice.call(files, 0).map(this.upload);\n //let result = await Promise.all(uploadAll);\n document.getElementById(this.field.divId).value = \"\";\n },\n\n upload(file) {\n let nameArr = file.name.split(\".\");\n let name = nameArr[nameArr.length -1];\n\t\t\tlet arr = ['jpeg','png','gif','jpg', 'JPG', 'JPEG', 'PNG', 'GIF'];\n\t\t\tlet isSuffix = arr.indexOf(name) > 0;\n if(!isSuffix) {\n this.dialogVisible = false;\n Toast(\"图片类型错误\");\n return\n }\n\n let that = this;\n return new Promise(async () => {\n let form = new FormData();\n form.append(\"files\", file);\n let files = form;\n let actionType = this.imageType;\n let appId = this.$root.appid;\n let allowedTypes = this.field.fileType;\n let fieldId = this.id;\n let fileSaveMode = this.field.fileSaveMode;\n let path = 'uploads';\n this.$api.uploadFile(\n files, \n appId, \n allowedTypes, \n fieldId, \n fileSaveMode, \n path, \n actionType,\n {\n onSucess: response => {\n if(response.data.data) {\n let datas = response.data.data;\n let arr = [];\n for(let i=0; i{\n \n },\n )\n });\n },\n\n onClickToTakePhoto(res) {\n let currentfieldId = localStorage.getItem(\"currentTakePhotoFieldId\");\n let datas = JSON.parse(res);\n let arr = [];\n for(let i=0; i {\n if(res.data.errcode == 0) {\n for(let i=0; i= 0) { //嗨办公\n // this.uploadImageWithNative();\n let count = 3;\n this.uploadImageWithNative({\n fileSaveMode: '00',//存盘模式,默认值‘00’ \n path: 'ITEM_PATH',//存盘路径,默认值‘ITEM_PATH’ \n fieldId: that.field.divId,//表单控件id \n applicationId: that.$root.appid,//软件应用id \n count: count, // 文件数量,默认9,当文件数量1时,仅允许选择一个文件 \n sourceType: sourcetype, //['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有\n result: (res) => {\n onClickToTakePhoto(res);\n }\n });\n }else if (ua.toLowerCase().indexOf(\"wxwork\") >= 0 || ua.toLowerCase().indexOf(\"weixin\") >= 0){\n let _url = location.href.split(\"#\")[0];\n API.getWeixinApi(\n encodeURIComponent(_url),\n {\n onSucess: response => {\n let that = this;\n wx.config({\n debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。\n appId: response.data.data.appId, // 必填,公众号的唯一标识\n timestamp: response.data.data.timestamp, // 必填,生成签名的时间戳\n nonceStr: response.data.data.nonceStr, // 必填,生成签名的随机串\n signature: response.data.data.signature, // 必填,签名,见附录1\n jsApiList: [\n \"checkJsApi\",\n \"onMenuShareTimeline\",\n \"onMenuShareAppMessage\",\n \"onMenuShareQQ\",\n \"onMenuShareWeibo\",\n \"hideMenuItems\",\n \"showMenuItems\",\n \"hideAllNonBaseMenuItem\",\n \"showAllNonBaseMenuItem\",\n \"translateVoice\",\n \"startRecord\",\n \"stopRecord\",\n \"onRecordEnd\",\n \"playVoice\",\n \"pauseVoice\",\n \"stopVoice\",\n \"uploadVoice\",\n \"downloadVoice\",\n \"chooseImage\",\n \"previewImage\",\n \"uploadImage\",\n \"downloadImage\",\n \"getNetworkType\",\n \"openLocation\",\n \"getLocation\",\n \"hideOptionMenu\",\n \"showOptionMenu\",\n \"closeWindow\",\n \"scanQRCode\",\n \"chooseWXPay\",\n \"openProductSpecificView\",\n \"addCard\",\n \"chooseCard\",\n \"openCard\"\n ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2\n });\n \n wx.chooseImage({\n count: 9,\n sizeType: [\"original\", \"compressed\"], // o:原图,c:压缩图\n sourceType: sourcetype, // a:来自相册,c:来自相机\n success: function(res) {\n that.uploadFile(res.localIds);\n },\n fail: function(error) {\n alert(\"网络异常,请再次尝试!\");\n }\n });\n }\n }\n );\n }else {\n document.getElementById(this.field.divId).click();\n }\n },\n\n uploadImageWithNative(callback){\n let that = this;\n let count = 3;\n let u = window.navigator.userAgent;\n let isiOS = !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/);\n let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端\n if(isiOS){\n let result = callback.result;\n callback.result = result.toString();\n window.webkit.messageHandlers.upload.postMessage(callback);\n // window.webkit.messageHandlers.upload.postMessage({\n // fileSaveMode: '00',//存盘模式,默认值‘00’ \n // path: 'ITEM_PATH',//存盘路径,默认值‘ITEM_PATH’ \n // fieldId: this.field.divId,//表单控件id \n // applicationId: this.$root.appid,//软件应用id \n // count: count, // 文件数量,默认9,当文件数量1时,仅允许选择一个文件 \n // sourceType: ['album', 'camera'], //['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有\n // success: function (res) {\n // let datas = JSON.parse(res);\n // let arr = [];\n // for(let i=0; i {\n if(response.data.data) {\n let val = response.data.data;\n that.photoURL.push(val);\n that.field.value = that.photoURL;\n }\n }\n });\n },\n fail: function () {\n alert(\"网络异常,请再次尝试!\");\n }\n });\n }\n },\n\n }\n};\n",null]}