'use strict'; var app = angular.module('app', [ ]); 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.copyrightid = sp.getUrlName("copyrightid"); self.directionid = sp.getUrlName("directionid"); self.formeditid = sp.getUrlName("formeditid"); self.mbid = sp.getUrlName("mbid"); self.fjid = sp.getUrlName("fjid"); 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"); self.return = "../list1.html?lastReturnPageno=" + self.get_lastReturnPageno + "&type=" + self.get_type self.deviceType = localStorage.getItem("tjJxtGoldenlinkWork-deviceType"); var postCfg = { headers: { 'Content-Type': 'application/json', 'Authorization': "Bearer " + self.get_AccessToken } }; self.FormTitle = $.cookie("GlWorkPlatform-SYSNAME"); var uploadformat = strToJson(s4.decryptData_CBC(apiurljs.uploadformat)).data.map(function (item) { return item.CNAME }) //上层附件、业务参考、共享沟通组件 self.arrayFile2 = null; self.arrayFile1 = []; self.uploading_zw = false; self.uploading = false; self.upload_zw = function () { $('#fileupload-zw').fileupload({ url: apiurljs.login + (self.routeinfoid == 0 ? 'g2app/abase/uploadFileWithFormWithSaveRouteinfo' : 'g2app/abase/uploadFileWithForm'), dataType: 'json', beforeSend: function (xhr, data) { xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken); if (self.routeinfoid == 0) { xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("copyrightid=" + self.copyrightid + ",directionid=" + self.directionid + ",formeditid=" + self.formeditid + ",routeinfoid=" + self.routeinfoid + ",routeid=" + self.routeid + ",tablename=FILE_ATTACH,ATTACHTYPE=领导批示承办单-正文")); } else { xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=FILE_ATTACH,routeinfoid=" + self.routeinfoid + ",ATTACHTYPE=领导批示承办单-正文")); } }, 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_zw = true; data.submit(); $scope.$apply(); } }, // 上传完成后的执行逻辑 done: function (e, data) { self.uploading_zw = false; if (self.routeinfoid == 0) { var res = strToJson(s4.decryptData_CBC(data.result.data)); self.data.ID = res.data2.ID; self.routeid = res.data2.ROUTEID; self.routeinfoid = res.data2.ROUTEINFOID; self.getSwenList(0) } else { self.getOther() } } }) } self.upload3 = function () { $('#fileupload3').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=领导批示承办单")); }, 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.getOther() } }) } 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) { self.getOther(); } else { sp.dialog("删除失败,请联系管理员!"); } }); }); } self.goAttach = function (obj) { if (obj) { if (apiurljs.zhType.indexOf(obj.FILEEXT) == -1) { sp.dialog("文件暂不支持在线预览,请点击下载查看!") return } $("#attachlist")[0].contentWindow.openFile(obj) if ($(".fa-chevron-down").is(":hidden") == true) { showToggle(document.getElementById("toggleButton")) } } else { $("#attachlist").attr("src", "attachlist.html?page=formedit&routeinfoid=" + self.routeinfoid) } } //初始化右上角按钮 self.buttonList = [] self.readonly = { HYSJ: false, HYDD: false, CHRY: false, HYNR: false, LDYJ: false, HYWJ: false, BZ: false, TBR: false, XBGZJY: false, LXFS: false } //上传附件 self.arrayFile = []; self.beforeUpload = function () { if (self.data.ID == 0) { var dataArray = []; dataArray.push(self.data); var data = { ckey: "SX_HYFK", id: self.data.ID, routeid: self.routeid, routeinfoid: self.routeinfoid, routeinfotitle: self.data.HYBT, directionid: self.directionid, formeditid: self.formeditid, data: JSON.stringify(dataArray) } $http.post(apiurljs.login + "g2app/abase/saveData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.code == 0) { self.data.ID = res.data.ID; self.routeid = res.data.ROUTEID; self.routeinfoid = res.data.ROUTEINFOID; self.getSwenList(1) self.upload() } else { sp.dialog(res.message) } }) } else { self.upload() } } self.upload = function () { $('#fileupload').fileupload({ url: apiurljs.login + 'g2app/abase/saveUploadFileName', dataType: 'json', beforeSend: function (xhr, data) { xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken); xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=SX_HYFK,column=HYWJ,routeinfoid=" + self.routeinfoid + ",loaded=" + data.loaded + ",total=" + data.total)); }, add: function (e, data) { var num = 0; //文件类型判断 $.each(data.originalFiles, function (index, item) { if (item['type'].length) { num++ } }) if (num == data.originalFiles.length) { data.submit(); } }, // 上传完成后的执行逻辑 done: function (e, data) { var arrayFile = strToJson(s4.decryptData_CBC(data.result.data).slice(0, s4.decryptData_CBC(data.result.data).lastIndexOf("}") + 1)) self.arrayFile = arrayFile.data; $scope.$apply();//绑定数据局部刷新 } }) $timeout(function () { $("#fileupload").trigger("click") }, 1) } 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) { self.getOther(); } else { sp.dialog("删除失败,请联系管理员!"); } }); }); } self.goAttach = function (obj) { if (obj) { if (apiurljs.zhType.indexOf(obj.FILEEXT) == -1) { sp.dialog("文件暂不支持在线预览,请点击下载查看!") return } $("#attachlist")[0].contentWindow.openFile(obj) if ($(".fa-chevron-down").is(":hidden") == true) { showToggle(document.getElementById("toggleButton")) } } else { $("#attachlist").attr("src", "attachlist.html?page=formedit&routeinfoid=" + self.routeinfoid) } } self.getSwenList = function (n) { 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)); if (res.data.LINKS.length > 0) { if (self.copyrightid == "") { self.copyrightid = res.data.LINKS[0].COPYRIGHTID } $.each(res.data.LINKS, function (index, item) { if (item.TEMPFORM.indexOf("formedit.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] }) console.log(self.copyrightid) } if (n == 0) { self.getROLE() } else { self.getData() } }) } self.getSwenList(0) self.getROLE = function () { var data = { userid: self.userId }; $http.post(apiurljs.login + "g2work/datazu/queryDataUserAuth", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); for (var i = 0; i < res.data[0].auths.length; i++) { if (res.data[0].auths[i].ZID == "AA08" && res.data[0].auths[i].AUTH == "1") { self.DQJS = 3; break; } else if (res.data[0].auths[i].ZID == "AA28" && res.data[0].auths[i].AUTH == "1") { self.DQJS = 4; break; } else { self.DQJS = 1; } } self.getUserList() }); } self.getUserList = function () { $http.post(apiurljs.login + "g2app/dataabase/getDpList", { data: s4.encryptData_CBC("") }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.userList = res.data; self.userList.forEach(function (item) { item.checked = false; item.USER.forEach(function (item1) { item1.checked = false; item1.USHOWNAME1 = item1.USHOWNAME.length > 3 ? item1.USHOWNAME.slice(0, 3) + "..." : item1.USHOWNAME; item1.USHOWNAME2 = item1.USHOWNAME.length > 10 ? item1.USHOWNAME.slice(0, 10) + "..." : item1.USHOWNAME }) }) self.UserList = { CHRY: JSON.parse(JSON.stringify(self.userList)) }; self.AllChecked = {}; self.UserLength = {}; self.selectList = {}; self.getData() }) } //获取数据 self.getData = function () { var data = { ckey: "SX_HYFK", id: 0, directionid: self.directionid, formeditid: self.formeditid, routeid: self.routeid, routeinfoid: self.routeinfoid } $http.post(apiurljs.login + "g2app/abase/queryData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.data = { ID: res.data.SX_HYFK.ID, APPCODE: res.data.SX_HYFK.APPCODE, HYSJ: res.data.SX_HYFK.HYSJ == "" ? "" : res.data.SX_HYFK.HYSJ, HYBT: res.data.SX_HYFK.HYBT, HYDD: res.data.SX_HYFK.HYDD, CHRY: res.data.SX_HYFK.CHRY, HYNR: res.data.SX_HYFK.HYNR, BZ: res.data.SX_HYFK.BZ, TBR: res.data.SX_HYFK.TBR == "" ? self.userName : res.data.SX_HYFK.TBR, TBUSERID: res.data.SX_HYFK.TBUSERID == "" ? self.userId : res.data.SX_HYFK.TBUSERID, LRSJ: res.data.SX_HYFK.LRSJ == "" ? sp.getLocalDate() : res.data.SX_HYFK.LRSJ, XBGZJY: res.data.SX_HYFK.XBGZJY, LXFS: res.data.SX_HYFK.LXFS, DQJS: res.data.SX_HYFK.DQJS == "" ? self.DQJS : res.data.SX_HYFK.DQJS } console.log(self.data.DQJS) self.readonly = { HYSJ: res.data.SX_HYFK["HYSJ.EREADONLY"] == "true", HYBT: res.data.SX_HYFK["HYBT.EREADONLY"] == "true", HYDD: res.data.SX_HYFK["HYDD.EREADONLY"] == "true", CHRY: res.data.SX_HYFK["CHRY.EREADONLY"] == "true", HYNR: res.data.SX_HYFK["HYNR.EREADONLY"] == "true", LDYJ: res.data.SX_HYFK["LDYJ.EREADONLY"] == "true", HYWJ: res.data.SX_HYFK["HYWJ.EREADONLY"] == "true", BZ: res.data.SX_HYFK["BZ.EREADONLY"] == "true", TBR: res.data.SX_HYFK["TBR.EREADONLY"] == "true", XBGZJY: res.data.SX_HYFK["XBGZJY.EREADONLY"] == "true", LXFS: res.data.SX_HYFK["LXFS.EREADONLY"] == "true", } if (self.data.ID == 0) { self.filedChange = true; } else { self.filedChange = false; } if (res.data.SX_HYFK.HYWJ && res.data.SX_HYFK.HYWJ != "") { self.arrayFile = JSON.parse(res.data.SX_HYFK.HYWJ); } self.buttonList = res.data["SX_HYFK.FUNCLIST"]; var n = {}, all = {}; for (var i in self.UserList) { self.AllChecked[i] = false; self.UserLength[i] = 0; self.selectList[i] = [] n[i] = []; all[i] = 0; $.each(self.UserList[i], function (index, item) { n[i].push(0) $.each(item.USER, function (index1, item1) { self.UserLength[i]++ if (self.data.CHRY.indexOf(item1.USHOWNAME) != -1 && i == "CHRY") { n[i][index]++; item1.checked = true; self.selectList[i].push(item1); } }) if (n[i][index] == item.USER.length && n[i][index] != 0) { item.checked = true; all[i]++; } else { item.checked == false; } }) if (all[i] == self.UserList[i].length) { self.AllChecked[i] = true; } else { self.AllChecked[i] = false; } } self.getOpinion("LDYJ") self.getOpinion1() self.getOther() //watermark({ // "watermarl_element": "app", // "watermark_txt": "测试水印内容", // "watermark_width": 150, // "watermark_height": 110, // "watermark_angle": 345 //}) }) } //获取附件和插件 self.getOther = function () { if (self.routeinfoid == 0) { return } 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.arrayFile1 = []; if (res.data.length > 0) { res.data.forEach(function (item) { if (item.ATTACHTYPE.indexOf("-正文") > -1) { self.arrayFile = item; } else { self.arrayFile1.push(item) } }) self.goAttach() } }) } //获取意见 self.getOpinion = function (str) { var data = { cmanid: self.userId, routeinfoid: self.routeinfoid, routeid: "",//self.routeid, tableid: "SX_HYFK", colid: str, opiniontype: 0, orderbycol: "CDATE desc" } $http.post(apiurljs.login + "g2app/abase/queryDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.YJ[str] = res.data; self.YJ[str + "STATUS"] = false; self.YJ[str].forEach(function (item) { item.CDATE = sp.datefmt("yyyy-MM-dd", item.CDATE); if (item.ROUTEID == self.routeid) { self.YJ[str + "STATUS"] = true; } }) } else { sp.dialog(res.message) } }) } //获取意见(不上表) self.opiniontype = 99; self.getOpinion1 = function () { var data = { cmanid: self.userId, routeinfoid: self.routeinfoid, routeid: "",//self.routeid, tableid: "SX_HYFK", colid: "", opiniontype: self.opiniontype, orderbycol: "CDATE desc" } $http.post(apiurljs.login + "g2app/abase/queryDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.YJ.nulla = res.data; console.log(res.data) self.YJ.nullaSTATUS = false; self.YJ.nulla.forEach(function (item) { item.CDATE = sp.datefmt("yyyy-MM-dd", item.CDATE); //if (item.ROUTEID == self.routeid && item.COLID == "") { // self.YJ.nullaSTATUS = true; //} }) } else { sp.dialog(res.message) } }) } //判断页面字段是否只读readonly、是否隐藏show self.hide = function (type, field) { if (self.dotype == 0 && type == "readonly") { return true; } else { if (self[type][field] == true) { return true; } else { return false; } } } //右上角按钮调用方法 self.btnEvent = function (item) { switch (item.CODE) { case "SAVEITEM": self.btnSave(0); break; case "PRINTITEM": self.btnPrint(); break; case "MEETITEM": self.Meet(); break; case "SENDLOG": self.RouteList(); break; default: self.forward(item); break; } } self.openDpList = function (str) { if (self.hide("readonly", str) == true) { return } else { self.filed = str; //self.AllCheckedDp = false; sp.layer("#DpList") $("#DpList .sp-page").eq(0).scrollTop(0); } } self.checkAllDp = function () { self.AllCheckedDp[self.filed] = !self.AllCheckedDp[self.filed]; $.each(self.DpList[self.filed], function (index, item) { item.checked = self.AllCheckedDp[self.filed]; }) self.submitDpList(1) } self.checkDpItem = function (item) { item.checked = !item.checked; var n = 0; $.each(self.DpList[self.filed], function (index, item) { if (item.checked == true) { n++ } }) if (n == self.DpList[self.filed].length) { self.AllCheckedDp[self.filed] = true; } else { self.AllCheckedDp[self.filed] = false; } self.submitDpList(1) } self.submitDpList = function (n) { var AllCheckedLength1 = 0; self.selectDpList[self.filed] = []; $.each(self.DpList[self.filed], function (index, item) { if (item.checked == true) { AllCheckedLength1++; self.selectDpList[self.filed].push(item) } }) self.data[self.filed] = self.selectDpList[self.filed].map(function (item) { return item.DEP }).join(",") self.AllCheckedDp[self.filed] = AllCheckedLength1 == self.DpLength[self.filed]; self.changeFiled(self.filed) if (n == 0) { sp.layerhide(); } } self.openUserList = function (str) { if (self.hide("readonly", str) == true) { return } else { self.filed = str; //self.AllChecked[self.filed] = false; sp.layer("#userList") $("#userList .sp-page").eq(0).scrollTop(0); } } self.checkAllUser = function () { self.AllChecked[self.filed] = !self.AllChecked[self.filed]; $.each(self.UserList[self.filed], function (index, item) { item.checked = self.AllChecked[self.filed]; $.each(item.USER, function (index1, item1) { item1.checked = self.AllChecked[self.filed]; }) }) self.submitUserList(1) } self.checkUserItem = function (item) { item.checked = !item.checked; $.each(item.USER, function (index, item1) { item1.checked = item.checked; }) var n = 0; $.each(self.UserList[self.filed], function (index, item) { if (item.checked == true) { n++ } }) if (n == self.UserList[self.filed].length) { self.AllChecked[self.filed] = true; } else { self.AllChecked[self.filed] = false; } self.submitUserList(1) } self.checkUser = function (item) { item.checked = !item.checked; var n = [], all = 0; $.each(self.UserList[self.filed], function (x, y) { n.push(0); $.each(y.USER, function (x1, y1) { if (y1.checked == true) { n[x]++ } }) if (n[x] == y.USER.length && n[x] != 0) { y.checked = true; all++ } else { y.checked = false; } }) if (all == self.UserList[self.filed].length) { self.AllChecked[self.filed] = true; } else { self.AllChecked[self.filed] = false; } self.submitUserList(1) } self.submitUserList = function (n) { var AllCheckedLength = 0; self.selectList[self.filed] = []; $.each(self.UserList[self.filed], function (index, item) { $.each(item.USER, function (index1, item1) { if (item1.checked == true) { AllCheckedLength++; self.selectList[self.filed].push(item1) } }) }) self.data[self.filed] = self.selectList[self.filed].map(function (item) { return item.USHOWNAME }).join(",") if (self.data[self.filed + "ID"] != undefined) { self.data[self.filed + "ID"] = self.selectList[self.filed].map(function (item) { return item.USERID }).join(",") } self.AllChecked[self.filed] = AllCheckedLength == self.UserLength[self.filed]; self.changeFiled(self.filed) if (n == 0) { sp.layerhide(); } } //保存提交 self.btnSave = function (n) { if (spngvld.submit(".sp-page-center"), 2) { var dataArray = []; dataArray.push(self.data); var data = { ckey: "SX_HYFK", id: self.data.ID, routeid: self.routeid, routeinfoid: self.routeinfoid, routeinfotitle: self.data.HYBT, directionid: self.directionid, formeditid: self.formeditid, data: JSON.stringify(dataArray) } $http.post(apiurljs.login + "g2app/abase/saveData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.code == 0) { self.data.ID = res.data.ID; self.routeid = res.data.ROUTEID; self.routeinfoid = res.data.ROUTEINFOID; self.filedChange = false; if (n == 0 || n == 4) { self.getSwenList(1) if (n == 0) { sp.dialog("保存成功!"); $timeout(function () { sp.dialoghide() }, 1500) } } else if (n == 1) { self.forward(self.btnItem); } else { self.sendAll(); } } else { sp.dialog(res.message) } }) } } //打印 self.btnPrint = function () { // 创建隐藏的可下载链接 var eleLink = document.createElement('a'); eleLink.download = ""; eleLink.style.display = 'none'; eleLink.href = apiurljs.login + "g2app/shouwen/PrintWord?data=" + encodeURIComponent(s4.encryptData_CBC("templatefilename=XZGZDT.ftl&tablename=SX_HYFK&outfilepath=/tmp/会议反馈表.wps&prtdate=LRSJ&routeinfoid=" + self.routeinfoid)); // 触发点击 document.body.appendChild(eleLink); eleLink.click(); // 然后移除 document.body.removeChild(eleLink); //window.open(apiurljs.login + "g2app/shouwen/PrintWord?templatefilename=shouwen.ftl&tablename=SX_HYFK&outfilepath=" + apiurljs.print + "&routeinfoid=" + self.routeinfoid) } //下载附件 self.download = function (item) { window.open(apiurljs.login + "g2work/files/" + item.FILEURL.slice(7)) } //删除附件 self.deleteFile = function (item, str) { var data = { tablename: "SX_HYFK", column: str, routeinfoid: self.routeinfoid, fileid: item.FILEID, filenames: item.FILEOLDNAME } $http.post(apiurljs.login + "g2app/abase/deleteUploadFileName", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.arrayFile = res.data; } else { sp.dialog(res.message) } }) } //签写意见编辑状态 self.opinion = { LDYJ: false, LDYJImg: false, nulla: false } self.YJ = { LDYJ: [], LDYJSTATUS: false, nulla: [], nullaSTATUS: false } //意见(下表) self.openOptionList = function () { if (self.routeinfoid == 0 && self.routeid == 0) { sp.dialog("请先保存!") return; } if (self.opinion.nulla == true) { return; } self.nulla = ""; $(".optionList").css("height", 149) self.opinion.nulla = true; } self.closeOptionList = function () { $(".optionList").css("height", 389) self.opinion.nulla = false; } self.submitOptionList = function () { var data = { cmanid: self.userId, routeinfoid: self.routeinfoid, routeid: self.routeid, tableid: "SX_HYFK", colid: "", opiniontype: 99, cresult: "", opinion: self.nulla, opinionimage: "" } $http.post(apiurljs.login + "g2app/abase/saveDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.getOpinion1(); self.opinion.nulla = false; $(".optionList").css("height", 389) } else { sp.dialog(res.message) } }) } self.changeOptionList = function (item) { self.nulla = item.OPINION; self.opinion.nulla = true; } //意见附件(下表) self.uploading1 = false; self.upload1 = function () { $('#fileupload1').fileupload({ url: apiurljs.login + 'g2app/abase/UploadWholeFileWithRouteAttach', dataType: 'json', beforeSend: function (xhr, data) { xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken); xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=SYS_ROUTE_ATTACHLIST,userid=" + self.userId + ",routeinfoid=" + self.routeinfoid + ",routeid=" + self.routeid + ",tableid=SX_HYFK")); }, // 上传完成后的执行逻辑 done: function (e, data) { self.uploading1 = false; self.getOpinion1() } }) } //下载意见表附件 self.downLoadOption = function (item) { window.open(apiurljs.login + "g2work/files/" + item.FILEPATH.slice(7)) } //删除意见表附件 self.deleteOptionFile = function (file, str) { var data = { routeid: file.ROUTEID, tableid: "SX_HYFK", colid: str, fileid: file.FILEID }; $http.post(apiurljs.login + "g2app/abase/deleteDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); sp.dialoghide(); if (res.success) { if (str != "") { self.getOpinion(str); } else { self.getOpinion1(); } } else { sp.dialog("删除失败,请联系管理员!"); } }); } //意见附件(上表) self.upload2 = function (str) { $('#fileupload-' + str).fileupload({ url: apiurljs.login + 'g2app/abase/UploadWholeFileWithRouteAttach', dataType: 'json', beforeSend: function (xhr, data) { xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken); xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=SYS_ROUTE_ATTACHLIST,userid=" + self.userId + ",routeinfoid=" + self.routeinfoid + ",routeid=" + self.routeid + ",tableid=SX_HYFK,colid=" + str)); }, // 上传完成后的执行逻辑 done: function (e, data) { self.uploading1 = false; self.getOpinion(str) } }) } //签写意见 self.openOpinion = function (str) { if (self.routeinfoid == 0 && self.routeid == 0) { sp.dialog("请先保存!") return; } self.opinion[str] = true; } //修改意见 self.changeOpinion = function (str) { self.data[str] = self.YJ[str][0].OPINION; self.opinion[str] = true; } self.changeOpinionItem = function (str, item) { if (item.OPINIONIMAGE != "") { self.QianZi(str); self.opinion[str + "Img"] = true; } self.data[str] = item.OPINION; self.opinion[str] = true; } //提交意见 self.Sopinion = function (str) { if (self.opinion[str + "Img"] == true) { self.data[str] = $("#" + str + "QZ").find("canvas")[0].toDataURL(); } else { self.data[str] = $("#" + str).val(); } var data = { cmanid: self.userId, routeinfoid: self.routeinfoid, routeid: self.routeid, tableid: "SX_HYFK", colid: str, opiniontype: 0, cresult: "", opinion: self.opinion[str + "Img"] == false ? self.data[str] : "", opinionimage: self.opinion[str + "Img"] == true ? self.data[str] : "" } $http.post(apiurljs.login + "g2app/abase/saveDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.getOpinion(str); self.opinion[str] = false; self.opinion[str + "Img"] = false; self.data[str] = ""; self.changeFiled(str) } else { sp.dialog(res.message) } }) } //删除意见 self.Dopinion = function (str, item) { var data = { cmanid: self.userId, routeid: self.routeid, tableid: "SX_HYFK", colid: str, } $http.post(apiurljs.login + "g2app/abase/deleteDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { if (str != "") { self.getOpinion(str); } else { self.getOpinion1(); } self.changeFiled(str) } else { sp.dialog(res.message) } }) } self.phraseText = "";//添加常用语 self.phraseList = []//常用语列表 //获取常用语库 self.phrase = function (colid) { sp.layer("#phrase"); self.colid = colid; self.getPhrase(); } //添加常用语到常用语库 self.Aphrase = function () { if (self.phraseText == "") { return; } var data = { cmanid: self.userId, tableid: "SX_HYFK", colid: self.colid, contents: self.phraseText } $http.post(apiurljs.login + "g2app/abase/insertDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); if (res.success == true) { self.phraseText = ""; self.getPhrase(); } else { sp.dialog(res.message) } }) } //获取常用语库 self.getPhrase = function () { var data = { cmanid: self.userId, tableid: "SX_HYFK", colid: self.colid } $http.post(apiurljs.login + "g2app/abase/queryDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.phraseList = res.data; self.phraseSelect = self.phraseList[0].CONTENTS; }) } //从常用语库删除 self.Dphrase = function () { var id = null; $.each(self.phraseList, function (index, item) { if (item.CONTENTS == self.phraseSelect) { id = item.ID; } }) var data = { id: id } $http.post(apiurljs.login + "g2app/abase/deleteDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); self.getPhrase(); }) } //常用语确认为意见 self.btnPhrase = function () { if (!self.colid) { self.nulla = self.phraseSelect; } else { self.data[self.colid] = self.phraseSelect; } sp.layerhide(); } //签字—手写 self.QianZi = function (str) { if (self.opinion[str + "Img"] == true) { return; } self.opinion[str + "Img"] = true; setTimeout(function () { new lineCanvas(str + "QZ") }, 1) } //清除手写 self.canvasClear = function (str) { var cxt = $("#" + str + "QZ").find("canvas")[0].getContext("2d"); cxt.clearRect(0, 0, $("#" + str + "QZ").find("canvas")[0].width, $("#" + str + "QZ").find("canvas")[0].height) } //发生修改 self.changeFiled = function (str) { self.filedChange = true; self.btnSave(4) } //转发 self.forward = function (obj) { self.btnItem = obj; if (self.filedChange == true) { self.btnSave(1) } else { $("#forwardWin").attr("src", "../../forward/forward.html?routeid=" + self.routeid + "&routeinfoid=" + self.routeinfoid + "©rightid=" + self.copyrightid + "&directionid=" + self.directionid + "&formeditid=" + self.formeditid + "&codefuncbutton=" + obj.CODE + "&directionidtarget=" + obj.DIRECTIONIDTARGET + "&cookie=huiyishibg1") sp.layer("#forward") } } //查看流转记录 self.RouteList = function () { sp.openNewWindow("../../forward/modeler_read.html?" + self.SwenList[0].TEMPFORM.split("?")[1], "流程图") //var data = { // directionid: self.directionid, // userid: self.userId, // routeid: self.routeid, // routeinfoid: self.routeinfoid, //} //$http.post(apiurljs.login + "g2app/abase/queryDataRouteList", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) //.success(function (obj) { // var res = strToJson(s4.decryptData_CBC(obj.data)); // self.routeList = res.data; // $.each(self.routeList, function (index, item) { // item.mainUser = []; // item.copyUsers = []; // $.each(item.USERS, function (index1, item1) { // if (item1.KIND == 0) { // item.mainUser.push(item1.USERNAME); // } else { // item.copyUsers.push(item1.USERNAME); // } // }) // item.mainUser = item.mainUser.join(","); // item.copyUsers = item.copyUsers.join(","); // }) // setTimeout(function (item) { // sp.layer("#RouteList"); // }, 100); //}) } self.reSizeRow = function () { var bodybox = document.getElementById("bodyDiv"); var topbox = document.getElementById("topDiv"); var bottombox = document.getElementById("bottomDiv"); var line = document.getElementById("lineDiv"); document.getElementById("lineDiv").addEventListener("mousedown", function (event) { $(".mousemove").show() var bodyboxH = bodybox.clientHeight; var topboxH = topbox.clientHeight; var bottomboxH = bottombox.clientHeight; //var y = event.pageY - line.offsetTop; var y = event.pageY - line.clientHeight; document.addEventListener("mousemove", boxMove) function boxMove(event) { if (topboxH * 1 + (event.pageY - y) * 1 - 36 <= 45) { // } else if (bottomboxH * 1 - (event.pageY - y) * 1 - 36 <= 45) { // } else { topbox.style.height = topboxH * 1 + (event.pageY - y) * 1 - 36 + "px"; //topbox.getElementsByTagName("iframe")[0].style.height = topboxH * 1 + (event.pageY - y) * 1 - 45 + "px"; bottombox.style.height = bodyboxH * 1 - topboxH * 1 - (event.pageY - y) * 1 + 36 + "px"; bottombox.getElementsByTagName("iframe")[0].style.height = bodyboxH * 1 - topboxH * 1 - (event.pageY - y) * 1 - 25 + "px"; } } document.addEventListener("mouseup", function () { $(".mousemove").hide() document.removeEventListener("mousemove", boxMove) }) }) } ////头部关键字搜索---20230905 self.headBtnSearchKeyword = ""; self.headSearchResult = []; self.headSearchResult_view = false; self.headBtnSearch = function () { if (sp.isval(self.headBtnSearchKeyword)) { self.headSearchResult = []; var data = { "url": "/basic/api/StatSelect/selectCodeList", "data": { "keyWord": self.headBtnSearchKeyword } } //console.log(JSON.stringify(data)); $http.post(apiurljs.login + "g2app/yizhangtu/selectCodeList", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); //console.log(JSON.stringify(res.data)); self.headSearchResult = res.data.build; if (sp.isval(self.headSearchResult)) { self.headSearchResult_view = true; } else { self.headSearchResult_view = false; } }) } else { self.headSearchResult_view = false; } }; self.headKeywordPage = function (itemdata) { var get_token = localStorage.getItem("main-token"); var set_url = apiurljs.onePic + "wholeProcessPage/?token=" + get_token + "&name=" + itemdata.name + "&type=" + itemdata.type + "&id=" + itemdata.id; $('#attachlist')[0].contentWindow.openTool(set_url, '一张图'); self.headSearchResult_view = false; }; self.onePic = function () { $('#attachlist')[0].contentWindow.openTool(apiurljs.onePic + "wholeProcessPage/?token=" + localStorage.getItem("main-token"), "地图搜索") } //公开 self.PUBLICITEM = function () { var data = { userid: self.userId } $http.post(apiurljs.login + "g2app/richang/queryDpInfo", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); var data1 = { tablename: "CODE_LM" } $http.post(apiurljs.login + "g2app/filepublishing/getTreeListByTablename", { data: s4.encryptData_CBC(JSON.stringify(data1)) }, postCfg) .success(function (obj1) { var res1 = strToJson(s4.decryptData_CBC(obj1.data)); self.LM = res1.data[0].C_H_I_L_D_DATA; self.LM.forEach(function (item) { item.show = true; if (item.CNAME == "新闻动态" || item.CNAME == "通知公告" || (item.MKUSERID && item.MKUSERID.indexOf(self.userId) == -1)) { item.show = false; } item.C_H_I_L_D_DATA.forEach(function (item1) { item1.show = true; if (item1.MKUSERID && item1.MKUSERID.indexOf(self.userId) == -1) { item1.show = false; } }) }) self.filed = "GKFW"; self.msgGK = { WJLY: "FW", FLOWID: "AA88", FORMROUTEINFOID: self.routeinfoid, FBUSERID: self.userId, FBNAME: self.userName, GKFW: "", LM: "P0103", LM1: "委发文件", FBRQ: sp.getLocalDate(), FBBM: res.data[0].SECTION, WJBT: self.data.FWBT } sp.layer("#PUBLICITEM") $("#PUBLICITEM .sp-page").eq(0).scrollTop(0); }) }) } self.showCol = function ($event, ele) { $('.detail-col').not(ele).hide(); $(ele).toggle("slow").autoHide(); $event.stopPropagation(); } self.selectLM = function (item) { self.msgGK.LM = item.CODE self.msgGK.LM1 = item.CNAME console.log(self.msgGK) $(".detail-col").toggle("slow"); } self.showSecond = function (obj, n) { self.LM1 = obj.C_H_I_L_D_DATA; $(".detail-col").eq(1).css("top", (n + 1) * 30 + n); $(".detail-col").eq(1).show().autoHide() } self.checkAllUser1 = function () { self.AllChecked[self.filed] = !self.AllChecked[self.filed]; $.each(self.UserList[self.filed], function (index, item) { item.checked = self.AllChecked[self.filed]; $.each(item.USER, function (index1, item1) { item1.checked = self.AllChecked[self.filed]; }) }) self.submitGK(1) } self.checkUserItem1 = function (item) { item.checked = !item.checked; $.each(item.USER, function (index, item1) { item1.checked = item.checked; }) var n = 0; $.each(self.UserList[self.filed], function (index, item) { if (item.checked == true) { n++ } }) if (n == self.UserList[self.filed].length) { self.AllChecked[self.filed] = true; } else { self.AllChecked[self.filed] = false; } self.submitGK(1) } self.checkUser1 = function (item) { item.checked = !item.checked; var n = [], all = 0; $.each(self.UserList[self.filed], function (x, y) { n.push(0); $.each(y.USER, function (x1, y1) { if (y1.checked == true) { n[x]++ } }) if (n[x] == y.USER.length && n[x] != 0) { y.checked = true; all++ } else { y.checked = false; } }) if (all == self.UserList[self.filed].length) { self.AllChecked[self.filed] = true; } else { self.AllChecked[self.filed] = false; } self.submitGK(1) } self.submitGK = function (n) { var AllCheckedLength = 0; self.selectList[self.filed] = []; $.each(self.UserList[self.filed], function (index, item) { $.each(item.USER, function (index1, item1) { if (item1.checked == true) { AllCheckedLength++; self.selectList[self.filed].push(item1) } }) }) self.msgGK[self.filed] = self.selectList[self.filed].map(function (item) { return item.USERID }).join(",") self.AllChecked[self.filed] = AllCheckedLength == self.UserLength[self.filed]; if (n == 0) { sp.layerhide(); var data = { tablename: "SX_FBLIST", data: { WJLY: self.msgGK.WJLY, FLOWID: self.msgGK.FLOWID, FORMROUTEINFOID: self.msgGK.FORMROUTEINFOID, FBUSERID: self.msgGK.FBUSERID, FBNAME: self.msgGK.FBNAME, GKFW: self.msgGK.GKFW, LM: self.msgGK.LM, FBRQ: self.msgGK.FBRQ, FBBM: self.msgGK.FBBM, WJBT: self.msgGK.WJBT } } $http.post(apiurljs.login + "g2app/dataabase/insertFormData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg) .success(function (obj) { var res = strToJson(s4.decryptData_CBC(obj.data)); sp.layerhide(); if (res.success) { sp.dialog("操作成功!"); $timeout(function () { sp.dialoghide(); }, 1000) } else { sp.dialog(res.message); } }) } } //头部下滚冻结 $(function () { $(".sp-page-center").eq(0).css("max-height", $("#topDiv").height()).css("height", $("#topDiv").height()) $(".formedit center").css("height", $(".formedit center").next("div").height()).css("line-height", $(".formedit center").next("div").height() / 6 + "px") //$("body").bind("scroll", function () { // var scrollTop = $("body").scrollTop(); // if (scrollTop == 0) { // $(".FixTop").removeClass("FixTop"); // } // if (scrollTop > 35) { // $(".sp-page-title").parents(".sp-box").addClass("FixTop"); // } //}); //页面高度撑满 setTimeout(function () { if ($(".ibox-content").height() < $(window).height() - 31) { $(".ibox-content").css("height", $(window).height() - 31) } $(".mousemove").css("top", 0).css("left", 0).css("width", $(window).width()).css("height", $(window).height() - 10) }, 1) }) }]) app.filter('trustHtml', function ($sce) { return function (input) { return $sce.trustAsHtml(input.replace(/\n/g, '
').replace(/\s/g, ' ')); }; }); //canvas画布签字 function lineCanvas(obj) { var self = this; self.linewidth = 1; self.color = "#000000"; self.background = "#ffffff"; self.canvas = document.createElement("canvas"); document.getElementById(obj).appendChild(self.canvas); self.cxt = self.canvas.getContext("2d"); self.canvas.width = document.getElementById(obj).clientWidth; self.canvas.height = document.getElementById(obj).scrollHeight; self.cxt.fillStyle = self.background; self.cxt.fillRect(0, 0, self.canvas.width, self.canvas.width); self.cxt.strokeStyle = self.color; self.cxt.lineWidth = self.linewidth; self.cxt.lineCap = "round"; //开始绘制 self.canvas.addEventListener("mousedown", function (e) { self.cxt.beginPath(); self.cxt.lineTo(e.pageX - document.getElementById(obj).offsetLeft - 25, e.pageY - document.getElementById(obj).offsetTop + $(".sp-page-center").scrollTop() - 25); self.canvas.addEventListener("mousemove", move) }.bind(self), false); //绘制中 function move() { var e = window.event; self.cxt.lineTo(e.pageX - document.getElementById(obj).offsetLeft - 25, e.pageY - document.getElementById(obj).offsetTop + $(".sp-page-center").scrollTop() - 25); self.cxt.stroke(); } //结束绘制 self.canvas.addEventListener("mouseup", up) function up() { self.cxt.closePath(); self.canvas.removeEventListener("mousemove", move) } }; var parentData = {} function getData() { parentData = angular.element(document.getElementById("app")).scope().data return parentData } function showToggle(e) { $(e).children().toggle() $(e).next().toggle() } function toggleYJL(e) { if ($(e).children(".fa-angle-double-down").is(":hidden") == true) { $("#topDiv").css("height", 160) $(e).parent().css("height", 450) $("#attachlist").css("height", 200) $("#bottomDiv").css("height", "") } else { $("#topDiv").css("height", 600) $(e).parent().css("height", 10) } $(e).children().toggle() }