'use strict'; var app = angular.module('app', [ ]); //定义一个全局的截图插件变量 var cropper; app.controller("formeditCtrl", ["$scope", "$http", "$timeout", "$sce", function ($scope, $http, $timeout, $sce) { var self = this; var s4 = new SM4Util(); self.userId = $.cookie("GlWorkPlatform-userid"); self.userName = $.cookie("GlWorkPlatform-chineseName"); self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken"); self.routeid = sp.getUrlName("routeid"); self.routeinfoid = sp.getUrlName("routeinfoid"); self.directionid = sp.getUrlName("directionid"); self.formeditid = sp.getUrlName("formeditid"); self.docmode = sp.getUrlName("docmode"); self.dotype = sp.getUrlName("dotype"); self.get_lastReturnPageno = sp.getUrlName("lastReturnPageno"); self.get_lastReturnPage = sp.getUrlName("lastReturnPage"); self.get_type = sp.getUrlName("type"); if (self.get_lastReturnPage != "") { self.return = "../../../" + self.get_lastReturnPage + "?lastReturnPageno=" + self.get_lastReturnPageno + "&type=" + self.get_type } else { self.return = "../list.html?lastReturnPageno=" + self.get_lastReturnPageno + "&type=" + self.get_type } var postCfg = { headers: { 'Content-Type': 'application/json', 'Authorization': "Bearer " + self.get_AccessToken } }; self.video = false; self.QianPi = false; self.watchNum = 0; //初始化右上角按钮 self.buttonList = [] var uploadformat = window.top.uploadformat.map(function (item) { return item.CNAME }) self.getSwenList = function () { self.SwenList = []; var data = { directionid: self.directionid, userid: self.userId, routeinfoid: self.routeinfoid, routeid: self.routeid, formeditid: "" } $http.post(apiurljs.login + "g2app/abase/queryDataLink", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); $.each(res.data.LINKS, function (index, item) { if (item.TEMPFORM.indexOf("attachlist.html") > -1) { self.Title = item.VNAME; } if (item.TEMPFORM.indexOf("?docmode") > 0) { if (item.TEMPFORM.indexOf("attachlist") > -1) { item.TEMPFORM = item.TEMPFORM + "&dotype=" + self.dotype + "&type=" + self.get_type + "&lastReturnPageno=" + self.get_lastReturnPageno + "&lastReturnPage=" + self.get_lastReturnPage; } else { item.TEMPFORM = "../" + item.TEMPFORM + "&dotype=" + self.dotype + "&type=" + self.get_type + "&lastReturnPageno=" + self.get_lastReturnPageno + "&lastReturnPage=" + self.get_lastReturnPage; } } else { item.TEMPFORM = "#"; } self.SwenList.push(item) }) self.SwenList.push({ VNAME: "流程图", DIRECTIONID: self.SwenList[0].DIRECTIONID, TEMPFORM: "modeler_read.html?" + self.SwenList[0].TEMPFORM.split("?")[1] }) self.getFuncList() }) } self.getSwenList(0) self.getFuncList = function () { var data = { formeditid: self.formeditid, billkey: "FILE_ATTACH" } $http.post(apiurljs.login + "g2work/formedit/queryDataFormEditFunc", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.buttonList = res.data self.getData() }) } self.getData = function () { var data = { tablename: "FILE_ATTACH", colums: "*", order: "ID desc", sqlwhere: { ROUTEINFOID: self.routeinfoid }, sqlinwhere: "", sqllikewhere: "" } $http.post(apiurljs.login + "g2app/dataabase/queryDataByCol", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.arrayFile = res.data; if (self.arrayFile.length > 0) { self.browse(self.arrayFile[0]) } }) } //右上角按钮调用方法 self.btnEvent = function (item) { switch (item.CODE) { case "SENDLOG": self.RouteList(); break; case "PRINTITEM": self.btnPrint(); break; case "MEETITEM": self.Meet(); break; case "SAVESIGN": self.Qian(); break; default: self.forward(item); break; } } self.uploading = false; self.upload = function () { $('#fileupload').fileupload({ url: apiurljs.login + 'g2app/abase/uploadFileWithForm', dataType: 'json', beforeSend: function (xhr, data) { xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken); xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=FILE_ATTACH,routeinfoid=" + self.routeinfoid + ",ATTACHTYPE=oa变更单")); }, add: function (e, data) { var num = 0; var acceptFileTypes = eval('/(' + uploadformat.join("|") + ')$/i') //文件类型判断 $.each(data.originalFiles, function (index, item) { if (item['type'].length > 0 && !acceptFileTypes.test(item['name'])) { sp.dialog("您好,请上传" + uploadformat.join("/") + "格式的文件!"); return; } else { num++ } }) if (num == data.originalFiles.length) { self.uploading = true; data.submit(); $scope.$apply(); } }, // 上传完成后的执行逻辑 done: function (e, data) { self.uploading = false; self.getData() } }) } self.downLoad = function (item) { window.open(apiurljs.login + "g2work/files/" + item.FILEURL.slice(7)) } self.deleteFile = function (file) { var dialogHead = "温馨提示×"; var dialogBody = "
删除后不可恢复,您确认要删除吗?
"; var dialogFoot = "
"; $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot); sp.openCenter(".sp-dialog"); ///取消按钮 $('.sp-closeDialog').click(function (event) { sp.closeCenter(".sp-dialog"); event.preventDefault(); event.stopPropagation(); }); //post消息的id $("#delDataTrue").click(function () { var data = { tablename: "FILE_ATTACH", id: file.ID }; $http.post(apiurljs.login + "g2app/dataabase/delDataById", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); sp.dialoghide(); if (res.success) { $.each(self.iframeList,function (index,item) { if (item.title == file.FILENAMES && item.source == apiurljs.login + "g2work/files2/inline/" + file.FILEURL.slice(7)) { self.closeItem(index); return false; } }) self.getData(); } else { sp.dialog("删除失败,请联系管理员!"); } }); }); } self.browse = function (obj) { var n = 0; self.iframeList.forEach(function (item) { if (item.title == obj.FILENAMES && item.source == apiurljs.login + "g2work/files2/inline/" + obj.FILEURL.slice(7)) { n++ } }) if (n == 0) { //console.log(obj); ///20230324---zyg ---永中转换-----start var set_convertType = 0; if (obj.FILEEXT == "doc") { set_convertType = 0; } else if (obj.FILEEXT == "pdf") { set_convertType = 20; } else if (obj.FILEEXT == "ofd") { set_convertType = 570; } else if (/(png|jpg|jpeg|gif|bmp|jfif|svg|tif|tiff)$/i.test(obj.FILEEXT) == true) { set_convertType = 23; } else { set_convertType = 0; } let postData = { convertType: set_convertType, fileUrl: apiurljs.login + "g2work/files2/inline/" + obj.FILEURL.slice(7) }; var postCfg_transfer = { headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, transformRequest: function (data) { return $.param(data); } }; $http.post(apiurljs.login.split("glwork/")[0] + "fcscloud/composite/httpfile", postData, postCfg_transfer) .success(function (res) { //console.log(res); if (res.errorcode === 0) { let rst = res.data; //console.log(rst.viewUrl); self.iframeList.push({ id: self.iframeList.length + 1, title: obj.FILENAMES, url: $sce.trustAsResourceUrl(rst.viewUrl), source: apiurljs.login + "g2work/files2/inline/" + obj.FILEURL.slice(7) }) self.add() } else { sp.dialog(res.message); } }); ///20230324---zyg ---永中转换-----end } } self.iframeList = []//[{ id: 1, url: "../../index/img-new/background3.png", source: "../../index/img-new/background3.png", boxWidth: { width: 1200 }, iframeWidth: { width: 1190 } }] self.add = function () { if (self.iframeList.length == 1) { self.iframeList[0].boxWidth = { width: $(".col-md-10").width() } self.iframeList[0].iframeWidth = { width: $(".col-md-10").width() - 10 } } else { self.iframeList.forEach(function (item) { item.boxWidth = { width: Math.trunc($(".col-md-10").width() / 4 * 2 / (self.iframeList.length - 1)) - 10 } item.iframeWidth = { width: item.boxWidth.width - 10 } }) self.iframeList[self.iframeList.length - 1].boxWidth = { width: Math.trunc($(".col-md-10").width() / 4 * 2) - 10 } self.iframeList[self.iframeList.length - 1].iframeWidth = { width: self.iframeList[self.iframeList.length - 1].boxWidth.width - 10 } } } self.openItem = function (obj) { window.open(obj.url) } self.closeItem = function (n) { self.iframeList.splice(n, 1) if (self.iframeList.length == 0) { } else if (self.iframeList.length == 1) { self.iframeList[0].boxWidth = { width: $(".col-md-10").width() } self.iframeList[0].iframeWidth = { width: $(".col-md-10").width() - 10 } } else { self.iframeList.forEach(function (item) { item.boxWidth = { width: Math.trunc($(".col-md-10").width() / 4 * 2 / (self.iframeList.length - 1)) - 10 } item.iframeWidth = { width: item.boxWidth.width - 10 } }) self.iframeList[self.iframeList.length - 1].boxWidth = { width: Math.trunc($(".col-md-10").width() / 4 * 2) - 10 } self.iframeList[self.iframeList.length - 1].iframeWidth = { width: self.iframeList[self.iframeList.length - 1].boxWidth.width - 10 } } } self.reSize = function (n) { var leftbox = document.getElementsByClassName("iframe-item")[n - 1]; var rightbox = document.getElementsByClassName("iframe-item")[n]; var line = document.getElementsByClassName("iframe-border-right")[n - 1]; document.getElementsByClassName("iframe-border-right")[n - 1].addEventListener("mousedown", function (event) { $(".mousemove").show() var leftboxW = leftbox.style.width.slice(0, leftbox.style.width.length - 2); var rightboxW = rightbox.style.width.slice(0, rightbox.style.width.length - 2); var x = event.pageX - line.offsetLeft; document.addEventListener("mousemove", boxMove) function boxMove(event) { if (leftboxW * 1 + (event.pageX - x) * 1 <= 200) { //document.removeEventListener("mousemove", boxMove) } else if (rightboxW * 1 - (event.pageX - x) * 1 <= 200) { //document.removeEventListener("mousemove", boxMove) } else { leftbox.style.width = leftboxW * 1 + (event.pageX - x) * 1 + "px"; //leftbox.getElementsByClassName("iframe-title")[0].style.width = leftboxW * 1 + (event.pageX - x) * 1 - 10 + "px"; leftbox.getElementsByTagName("iframe")[0].style.width = leftboxW * 1 + (event.pageX - x) * 1 - 10 + "px"; self.iframeList[n - 1].boxWidth.width = leftboxW * 1 + (event.pageX - x) * 1; self.iframeList[n - 1].iframeWidth.width = leftboxW * 1 + (event.pageX - x) * 1 - 10; rightbox.style.width = rightboxW * 1 - (event.pageX - x) * 1 + "px"; //rightbox.getElementsByClassName("iframe-title")[0].style.width = rightboxW * 1 - (event.pageX - x) * 1 - 10 + "px"; rightbox.getElementsByTagName("iframe")[0].style.width = rightboxW * 1 - (event.pageX - x) * 1 - 10 + "px"; self.iframeList[n].boxWidth.width = rightboxW * 1 - (event.pageX - x) * 1; self.iframeList[n].iframeWidth.width = rightboxW * 1 - (event.pageX - x) * 1 - 10; } } document.addEventListener("mouseup", function () { $(".mousemove").hide() document.removeEventListener("mousemove", boxMove) }) }) } //头部下滚冻结 $(function () { //页面高度撑满 setTimeout(function () { if ($(".ibox-content").height() < $(window).height() - 31) { $(".ibox-content").css("height", $(window).height() - 31) } $(".sp-line-gray").next("div").css("height", $(".ibox-content").height() - 119) }, 1) }) }]) app.directive("repeatFinish", function () { return { link: function (scope) { if (scope.$last == true) { $("#iframeList").css("height", $(window).height() - 110) $(".mousemove").css("top", $("#iframeList").offset().top).css("left", $("#iframeList").offset().left).css("width", $("#iframeList").width()).css("height", $(window).height() - 110) } } }; });