formedit.js 55 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402
  1. 'use strict';
  2. var app = angular.module('app', [
  3. ]);
  4. app.controller("formeditCtrl", ["$scope", "$http", "$timeout", "$sce", function ($scope, $http, $timeout, $sce) {
  5. var self = this;
  6. var s4 = new SM4Util();
  7. self.userId = $.cookie("GlWorkPlatform-userid");
  8. self.userName = $.cookie("GlWorkPlatform-chineseName");
  9. self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken");
  10. self.routeid = sp.getUrlName("routeid");
  11. self.routeinfoid = sp.getUrlName("routeinfoid");
  12. self.copyrightid = sp.getUrlName("copyrightid");
  13. self.directionid = sp.getUrlName("directionid");
  14. self.formeditid = sp.getUrlName("formeditid");
  15. self.mbid = sp.getUrlName("mbid");
  16. self.fjid = sp.getUrlName("fjid");
  17. self.docmode = sp.getUrlName("docmode");
  18. self.dotype = sp.getUrlName("dotype");
  19. self.get_lastReturnPageno = sp.getUrlName("lastReturnPageno");
  20. self.get_lastReturnPage = sp.getUrlName("lastReturnPage");
  21. self.get_type = sp.getUrlName("type");
  22. self.return = "../list.html?lastReturnPageno=" + self.get_lastReturnPageno + "&type=" + self.get_type
  23. self.deviceType = localStorage.getItem("tjJxtGoldenlinkWork-deviceType");
  24. var postCfg = {
  25. headers: {
  26. 'Content-Type': 'application/json',
  27. 'Authorization': "Bearer " + self.get_AccessToken
  28. }
  29. };
  30. self.FormTitle = $.cookie("GlWorkPlatform-SYSNAME");
  31. //初始化右上角按钮
  32. self.buttonList = []
  33. var uploadformat = strToJson(s4.decryptData_CBC(apiurljs.uploadformat)).data.map(function (item) {
  34. return item.CNAME
  35. })
  36. //上层附件、业务参考、共享沟通组件
  37. self.arrayFile = null;
  38. self.arrayFile1 = [];
  39. self.uploading_zw = false;
  40. self.uploading = false;
  41. self.upload_zw = function () {
  42. $('#fileupload-zw').fileupload({
  43. url: apiurljs.login + (self.routeinfoid == 0 ? 'g2app/abase/uploadFileWithFormWithSaveRouteinfo' : 'g2app/abase/uploadFileWithForm'),
  44. dataType: 'json',
  45. beforeSend: function (xhr, data) {
  46. xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken);
  47. if (self.routeinfoid == 0) {
  48. 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=领导批示承办单-正文"));
  49. } else {
  50. xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=FILE_ATTACH,routeinfoid=" + self.routeinfoid + ",ATTACHTYPE=领导批示承办单-正文"));
  51. }
  52. },
  53. add: function (e, data) {
  54. var num = 0;
  55. var acceptFileTypes = eval('/(' + uploadformat.join("|") + ')$/i')
  56. //文件类型判断
  57. $.each(data.originalFiles, function (index, item) {
  58. if (item['type'].length > 0 && !acceptFileTypes.test(item['name'])) {
  59. sp.dialog("您好,请上传" + uploadformat.join("/") + "格式的文件!");
  60. return;
  61. } else {
  62. num++
  63. }
  64. })
  65. if (num == data.originalFiles.length) {
  66. self.uploading_zw = true;
  67. data.submit();
  68. $scope.$apply();
  69. }
  70. },
  71. // 上传完成后的执行逻辑
  72. done: function (e, data) {
  73. self.uploading_zw = false;
  74. if (self.routeinfoid == 0) {
  75. var res = strToJson(s4.decryptData_CBC(data.result.data));
  76. self.data.ID = res.data2.ID;
  77. self.routeid = res.data2.ROUTEID;
  78. self.routeinfoid = res.data2.ROUTEINFOID;
  79. self.getSwenList(0)
  80. } else {
  81. self.getOther()
  82. }
  83. }
  84. })
  85. }
  86. self.upload = function () {
  87. $('#fileupload').fileupload({
  88. url: apiurljs.login + 'g2app/abase/uploadFileWithForm',
  89. dataType: 'json',
  90. beforeSend: function (xhr, data) {
  91. xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken);
  92. xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=FILE_ATTACH,routeinfoid=" + self.routeinfoid + ",ATTACHTYPE=领导批示承办单"));
  93. },
  94. add: function (e, data) {
  95. var num = 0;
  96. var acceptFileTypes = eval('/(' + uploadformat.join("|") + ')$/i')
  97. //文件类型判断
  98. $.each(data.originalFiles, function (index, item) {
  99. if (item['type'].length > 0 && !acceptFileTypes.test(item['name'])) {
  100. sp.dialog("您好,请上传" + uploadformat.join("/") + "格式的文件!");
  101. return;
  102. } else {
  103. num++
  104. }
  105. })
  106. if (num == data.originalFiles.length) {
  107. self.uploading = true;
  108. data.submit();
  109. $scope.$apply();
  110. }
  111. },
  112. // 上传完成后的执行逻辑
  113. done: function (e, data) {
  114. self.uploading = false;
  115. self.getOther()
  116. }
  117. })
  118. }
  119. self.downLoad = function (item) {
  120. window.open(apiurljs.login + "g2work/files/" + item.FILEURL.slice(7))
  121. }
  122. self.deleteFile = function (file) {
  123. var dialogHead = "<span class=\"sp-dialog-head\"><span class=\"sp-dialog-tip\">温馨提示</span><span class=\"sp-dialog-close sp-closeDialog\" title=\"关闭\">×</span></span>";
  124. var dialogBody = "<div class=\"sp-dialog-body\">删除后不可恢复,您确认要删除吗?</div>";
  125. var dialogFoot = "<div class=\"sp-dialog-foot\"><input id='delDataTrue' type='button' value='确 认' class='sp-dialog-btnTrue' /><input type='button' value='取 消' class='sp-dialog-btnCancle sp-closeDialog' /></div>";
  126. $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot);
  127. sp.openCenter(".sp-dialog");
  128. ///取消按钮
  129. $('.sp-closeDialog').click(function (event) {
  130. sp.closeCenter(".sp-dialog");
  131. event.preventDefault();
  132. event.stopPropagation();
  133. });
  134. //post消息的id
  135. $("#delDataTrue").click(function () {
  136. var data = {
  137. tablename: "FILE_ATTACH",
  138. id: file.ID
  139. };
  140. $http.post(apiurljs.login + "g2app/dataabase/delDataById", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  141. .success(function (obj) {
  142. var res = strToJson(s4.decryptData_CBC(obj.data));
  143. sp.dialoghide();
  144. if (res.success) {
  145. self.getOther();
  146. } else {
  147. sp.dialog("删除失败,请联系管理员!");
  148. }
  149. });
  150. });
  151. }
  152. self.goAttach = function (obj) {
  153. if (obj) {
  154. if (apiurljs.zhType.indexOf(obj.FILEEXT) == -1) {
  155. sp.dialog("文件暂不支持在线预览,请点击下载查看!")
  156. return
  157. }
  158. $("#attachlist")[0].contentWindow.openFile(obj)
  159. if ($(".fa-chevron-down").is(":hidden") == true) {
  160. showToggle(document.getElementById("toggleButton"))
  161. }
  162. } else {
  163. $("#attachlist").attr("src", "attachlist.html?page=formedit&routeinfoid=" + self.routeinfoid)
  164. }
  165. }
  166. self.readonly = {
  167. JJCD:false,
  168. SWBH:false,
  169. LWDW:false,
  170. LWRQ:false,
  171. LWWH:false,
  172. SFDB:false,
  173. BT:false,
  174. BGSNBYJ:false,
  175. WLDPS:false,
  176. CBCSCLQK:false,
  177. DBLX:false,
  178. CDCS:false,
  179. DBSX:false,
  180. ZBCS:false,
  181. SFBJ:false,
  182. BJQK:false,
  183. FGLDBJQR:false,
  184. BZ:false,
  185. NGR:false,
  186. ZBRQ:false
  187. }
  188. self.getSwenList = function (n) {
  189. self.SwenList = [];
  190. var data = {
  191. directionid: self.directionid,
  192. userid: self.userId,
  193. routeinfoid: self.routeinfoid,
  194. routeid: self.routeid,
  195. formeditid: ""
  196. }
  197. $http.post(apiurljs.login + "g2app/abase/queryDataLink", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  198. .success(function (obj) {
  199. var res = strToJson(s4.decryptData_CBC(obj.data));
  200. if (self.copyrightid == "") {
  201. self.copyrightid = res.data.LINKS[0].COPYRIGHTID
  202. }
  203. $.each(res.data.LINKS, function (index, item) {
  204. if (item.TEMPFORM.indexOf("formedit.html") > -1) {
  205. self.Title = item.VNAME;
  206. }
  207. if (item.TEMPFORM.indexOf("?docmode") > 0) {
  208. item.TEMPFORM = item.TEMPFORM + "&dotype=" + self.dotype + "&type=" + self.get_type + "&lastReturnPageno=" + self.get_lastReturnPageno + "&lastReturnPage=" + self.get_lastReturnPage;
  209. } else {
  210. item.TEMPFORM = "#";
  211. }
  212. self.SwenList.push(item)
  213. })
  214. self.SwenList.push({
  215. VNAME: "流程图",
  216. DIRECTIONID: self.SwenList[0].DIRECTIONID,
  217. TEMPFORM: "modeler_read.html?" + self.SwenList[0].TEMPFORM.split("?")[1]
  218. })
  219. if (n == 0) {
  220. self.getFLOW()
  221. } else {
  222. self.getData()
  223. }
  224. })
  225. }
  226. self.getSwenList(0)
  227. self.getFLOW = function () {
  228. var data = {
  229. copyrightid: self.copyrightid
  230. }
  231. $http.post(apiurljs.login + "g2work/flow/queryDataByCopyrightid", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  232. .success(function (obj) {
  233. var res = strToJson(s4.decryptData_CBC(obj.data));
  234. self.flowTitle = res.data.CNAME;
  235. self.getJJQK()
  236. })
  237. }
  238. self.getJJQK = function () {
  239. var data = {
  240. ckey: "CODE_EMERGENCY",
  241. routeinfoid: self.routeinfoid
  242. }
  243. $http.post(apiurljs.login + "g2app/abase/queryDataCode", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  244. .success(function (obj) {
  245. var res = strToJson(s4.decryptData_CBC(obj.data));
  246. self.JJCD = res.data.CODE_EMERGENCY;
  247. self.getCDDB()
  248. })
  249. }
  250. self.getCDDB = function () {
  251. var data = {
  252. ckey: "CODE_DUBAN",
  253. routeinfoid: self.routeinfoid
  254. }
  255. $http.post(apiurljs.login + "g2app/abase/queryDataCode", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  256. .success(function (obj) {
  257. var res = strToJson(s4.decryptData_CBC(obj.data));
  258. self.DBTYPE = res.data.CODE_DUBAN;
  259. self.getSFDB()
  260. })
  261. }
  262. self.getSFDB = function () {
  263. var data = {
  264. ckey: "CODE_SFDB",
  265. routeinfoid: self.routeinfoid
  266. }
  267. $http.post(apiurljs.login + "g2app/abase/queryDataCode", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  268. .success(function (obj) {
  269. var res = strToJson(s4.decryptData_CBC(obj.data));
  270. self.SFDB = res.data.CODE_SFDB;
  271. self.getSFBJ()
  272. })
  273. }
  274. self.getSFBJ = function () {
  275. var data = {
  276. ckey: "CODE_SFBJ",
  277. routeinfoid: self.routeinfoid
  278. }
  279. $http.post(apiurljs.login + "g2app/abase/queryDataCode", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  280. .success(function (obj) {
  281. var res = strToJson(s4.decryptData_CBC(obj.data));
  282. self.SFBJ = res.data.CODE_SFBJ;
  283. self.getDpList()
  284. })
  285. }
  286. self.getDpList = function () {
  287. var data = {
  288. unitid: "AA"
  289. }
  290. $http.post(apiurljs.login + "g2app/dataabase/querySectByCode", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  291. .success(function (obj) {
  292. var res = strToJson(s4.decryptData_CBC(obj.data));
  293. self.dpList = [];
  294. res.data.forEach(function (item) {
  295. if (item.CHILD_DATA.length == 0) {
  296. self.dpList.push(item)
  297. } else {
  298. item.CHILD_DATA.forEach(function (item1) {
  299. if (item1.CHILD_DATA.length == 0) {
  300. self.dpList.push(item1)
  301. } else {
  302. item1.CHILD_DATA.forEach(function (item2) {
  303. if (item2.CHILD_DATA.length == 0) {
  304. self.dpList.push(item2)
  305. }
  306. })
  307. }
  308. })
  309. }
  310. })
  311. self.dpList.forEach(function (item) {
  312. item.checked = false;
  313. })
  314. self.DpList = {
  315. ZBCS: JSON.parse(JSON.stringify(self.dpList))
  316. }
  317. self.AllCheckedDp = {};
  318. self.DpLength = {};
  319. self.selectDpList = {};
  320. self.getSWBH()
  321. })
  322. }
  323. self.getSWBH = function () {
  324. var data = {
  325. flowid: sp.getUrlName("flowid")
  326. }
  327. $http.post(apiurljs.login + "g2app/shouwen/querySWCodeByFlowid", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  328. .success(function (obj) {
  329. var res = strToJson(s4.decryptData_CBC(obj.data));
  330. self.SWBH = res.data;
  331. self.getData()
  332. })
  333. }
  334. //获取数据
  335. self.getData = function () {
  336. var data = {
  337. ckey: "SW_ZJWWJCBD",
  338. id: 0,
  339. directionid: self.directionid,
  340. formeditid: self.formeditid,
  341. routeid: self.routeid,
  342. routeinfoid: self.routeinfoid
  343. }
  344. $http.post(apiurljs.login + "g2app/abase/queryData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  345. .success(function (obj) {
  346. var res = strToJson(s4.decryptData_CBC(obj.data));
  347. self.data = {
  348. ID: res.data.SW_ZJWWJCBD.ID,
  349. APPCODE: res.data.SW_ZJWWJCBD.APPCODE,
  350. JJCD: res.data.SW_ZJWWJCBD.JJCD == "" ? self.JJCD[0].CODE : res.data.SW_ZJWWJCBD.JJCD,
  351. SWBH: res.data.SW_ZJWWJCBD.SWBH == "" ? self.SWBH.replace("|", "〔 ").replace("|", " 〕") + "号" : res.data.SW_ZJWWJCBD.SWBH,
  352. SWBH1: res.data.SW_ZJWWJCBD.SWBH,
  353. LWDW: res.data.SW_ZJWWJCBD.LWDW,
  354. LWRQ: res.data.SW_ZJWWJCBD.LWRQ == "" ? sp.format(sp.getLocalDate()) : sp.format(res.data.SW_ZJWWJCBD.LWRQ),
  355. LWWH: res.data.SW_ZJWWJCBD.LWWH == "" ? "〔 " + sp.currentYear() + " 〕号" : res.data.SW_ZJWWJCBD.LWWH,
  356. SFDB: res.data.SW_ZJWWJCBD.SFDB == "" ? self.SFDB[1].CODE : res.data.SW_ZJWWJCBD.SFDB,
  357. BT: res.data.SW_ZJWWJCBD.BT,
  358. BGSNBYJ: res.data.SW_ZJWWJCBD.BGSNBYJ,
  359. WLDPS: res.data.SW_ZJWWJCBD.WLDPS,
  360. CBCSCLQK: res.data.SW_ZJWWJCBD.CBCSCLQK,
  361. DBLX: res.data.SW_ZJWWJCBD.DBLX == "" ? self.DBTYPE[0].CODE : res.data.SW_ZJWWJCBD.DBLX,
  362. CDCS: res.data.SW_ZJWWJCBD.CDCS,
  363. DBSX: res.data.SW_ZJWWJCBD.DBSX == "" ? "" : sp.format(res.data.SW_ZJWWJCBD.DBSX),
  364. ZBCS: res.data.SW_ZJWWJCBD.ZBCS,
  365. ZBCSCODE: res.data.SW_ZJWWJCBD.ZBCSCODE,
  366. SFBJ: res.data.SW_ZJWWJCBD.SFBJ == "" ? self.SFBJ[0].CODE : res.data.SW_ZJWWJCBD.SFBJ,
  367. BJQK: res.data.SW_ZJWWJCBD.BJQK,
  368. FGLDBJQR: res.data.SW_ZJWWJCBD.FGLDBJQR,
  369. BZ: res.data.SW_ZJWWJCBD.BZ,
  370. NGR: res.data.SW_ZJWWJCBD.NGR == "" ? self.userName : res.data.SW_ZJWWJCBD.NGR,
  371. ZBRQ: res.data.SW_ZJWWJCBD.ZBRQ == "" ? sp.format(sp.getLocalDate()) : sp.format(res.data.SW_ZJWWJCBD.ZBRQ)
  372. }
  373. self.readonly = {
  374. JJCD: res.data.SW_ZJWWJCBD["JJCD.EREADONLY"] == "true",
  375. SWBH: res.data.SW_ZJWWJCBD["SWBH.EREADONLY"] == "true",
  376. LWDW: res.data.SW_ZJWWJCBD["LWDW.EREADONLY"] == "true",
  377. LWRQ: res.data.SW_ZJWWJCBD["LWRQ.EREADONLY"] == "true",
  378. LWWH: res.data.SW_ZJWWJCBD["LWWH.EREADONLY"] == "true",
  379. SFDB: res.data.SW_ZJWWJCBD["SFDB.EREADONLY"] == "true",
  380. BT: res.data.SW_ZJWWJCBD["BT.EREADONLY"] == "true",
  381. BGSNBYJ: res.data.SW_ZJWWJCBD["BGSNBYJ.EREADONLY"] == "true",
  382. WLDPS: res.data.SW_ZJWWJCBD["WLDPS.EREADONLY"] == "true",
  383. CBCSCLQK: res.data.SW_ZJWWJCBD["CBCSCLQK.EREADONLY"] == "true",
  384. DBLX: res.data.SW_ZJWWJCBD["DBLX.EREADONLY"] == "true",
  385. CDCS: res.data.SW_ZJWWJCBD["CDCS.EREADONLY"] == "true",
  386. DBSX: res.data.SW_ZJWWJCBD["DBSX.EREADONLY"] == "true",
  387. ZBCS: res.data.SW_ZJWWJCBD["ZBCS.EREADONLY"] == "true",
  388. SFBJ: res.data.SW_ZJWWJCBD["SFBJ.EREADONLY"] == "true",
  389. BJQK: res.data.SW_ZJWWJCBD["BJQK.EREADONLY"] == "true",
  390. FGLDBJQR: res.data.SW_ZJWWJCBD["FGLDBJQR.EREADONLY"] == "true",
  391. BZ: res.data.SW_ZJWWJCBD["BZ.EREADONLY"] == "true",
  392. NGR: res.data.SW_ZJWWJCBD["NGR.EREADONLY"] == "true",
  393. ZBRQ: res.data.SW_ZJWWJCBD["ZBRQ.EREADONLY"] == "true"
  394. }
  395. self.filedChange = true;
  396. //if (self.data.ID == 0) {
  397. // self.filedChange = true;
  398. //} else {
  399. // self.filedChange = false;
  400. //}
  401. self.buttonList = res.data["SW_ZJWWJCBD.FUNCLIST"];
  402. var n = {}, all = {};
  403. for (var i in self.DpList) {
  404. self.AllCheckedDp[i] = false;
  405. self.DpLength[i] = 0;
  406. self.selectDpList[i] = []
  407. all[i] = 0;
  408. $.each(self.DpList[i], function (index, item) {
  409. self.DpLength[i]++
  410. if (self.data.ZBCS.indexOf(item.SECTION) != -1 && i == "ZBCS") {
  411. all[i]++;
  412. item.checked = true;
  413. self.selectDpList[i].push(item);
  414. }
  415. })
  416. if (all[i] == self.DpList[i].length) {
  417. self.AllCheckedDp[i] = true;
  418. } else {
  419. self.AllCheckedDp[i] = false;
  420. }
  421. }
  422. self.getOpinion("BGSNBYJ")
  423. self.getOpinion("WLDPS")
  424. self.getOpinion("FGLDBJQR")
  425. self.getOpinion("CBCSCLQK")
  426. self.getOpinion1()
  427. self.getOther()
  428. //watermark({
  429. // "watermarl_element": "app",
  430. // "watermark_txt": "测试水印内容",
  431. // "watermark_width": 150,
  432. // "watermark_height": 110,
  433. // "watermark_angle": 345
  434. //})
  435. })
  436. }
  437. //获取附件和插件
  438. self.getOther = function () {
  439. var data = {
  440. tablename: "FILE_ATTACH",
  441. colums: "*",
  442. order: "ID desc",
  443. sqlwhere: { ROUTEINFOID: self.routeinfoid },
  444. sqlinwhere: "",
  445. sqllikewhere: ""
  446. }
  447. $http.post(apiurljs.login + "g2app/dataabase/queryDataByCol", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  448. .success(function (obj) {
  449. var res = strToJson(s4.decryptData_CBC(obj.data));
  450. self.arrayFile1 = [];
  451. if (res.data.length > 0) {
  452. res.data.forEach(function (item) {
  453. if (item.ATTACHTYPE.indexOf("-正文") > -1) {
  454. self.arrayFile = item;
  455. } else {
  456. self.arrayFile1.push(item)
  457. }
  458. })
  459. self.goAttach()
  460. }
  461. })
  462. }
  463. //获取意见
  464. self.getOpinion = function (str) {
  465. var data = {
  466. cmanid: self.userId,
  467. routeinfoid: self.routeinfoid,
  468. routeid: "",//self.routeid,
  469. tableid: "SW_ZJWWJCBD",
  470. colid: str,
  471. opiniontype: 0,
  472. orderbycol: "CDATE desc"
  473. }
  474. $http.post(apiurljs.login + "g2app/abase/queryDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  475. .success(function (obj) {
  476. var res = strToJson(s4.decryptData_CBC(obj.data));
  477. if (res.success == true) {
  478. self.YJ[str] = res.data;
  479. self.YJ[str + "STATUS"] = false;
  480. self.YJ[str].forEach(function (item) {
  481. item.CDATE = sp.datefmt("yyyy-MM-dd HH:mm", item.CDATE);
  482. if (item.ROUTEID == self.routeid) {
  483. self.YJ[str + "STATUS"] = true;
  484. }
  485. })
  486. } else {
  487. sp.dialog(res.message)
  488. }
  489. })
  490. }
  491. //获取意见(不上表)
  492. self.opiniontype = 99;
  493. self.getOpinion1 = function () {
  494. var data = {
  495. cmanid: self.userId,
  496. routeinfoid: self.routeinfoid,
  497. routeid: "",//self.routeid,
  498. tableid: "SW_ZJWWJCBD",
  499. colid: "",
  500. opiniontype: self.opiniontype,
  501. orderbycol: "CDATE desc"
  502. }
  503. $http.post(apiurljs.login + "g2app/abase/queryDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  504. .success(function (obj) {
  505. var res = strToJson(s4.decryptData_CBC(obj.data));
  506. if (res.success == true) {
  507. self.YJ.nulla = res.data;
  508. self.YJ.nullaSTATUS = false;
  509. self.YJ.nulla.forEach(function (item) {
  510. item.CDATE = sp.datefmt("yyyy-MM-dd HH:mm", item.CDATE);
  511. //if (item.ROUTEID == self.routeid && item.COLID == "") {
  512. // self.YJ.nullaSTATUS = true;
  513. //}
  514. })
  515. } else {
  516. sp.dialog(res.message)
  517. }
  518. })
  519. }
  520. //判断页面字段是否只读readonly、是否隐藏show
  521. self.hide = function (type, field) {
  522. if (self.dotype == 0 && type == "readonly") {
  523. return true;
  524. } else {
  525. if (self[type][field] == true) {
  526. return true;
  527. } else {
  528. return false;
  529. }
  530. }
  531. }
  532. //右上角按钮调用方法
  533. self.btnEvent = function (item) {
  534. switch (item.CODE) {
  535. case "SAVEITEM": self.btnSave(0); break;
  536. case "PRINTITEM": self.btnPrint(); break;
  537. case "PRINTITEMEXTEND": self.btnPrint1(); break;
  538. case "MEETITEM": self.Meet(); break;
  539. case "SENDLOG": self.RouteList(); break;
  540. default: self.forward(item); break;
  541. }
  542. }
  543. self.openDpList = function (str) {
  544. if (self.hide("readonly", str) == true) {
  545. return
  546. } else {
  547. self.filed = str;
  548. //self.AllCheckedDp = false;
  549. sp.layer("#DpList")
  550. $("#DpList .sp-page").eq(0).scrollTop(0);
  551. }
  552. }
  553. self.checkAllDp = function () {
  554. self.AllCheckedDp[self.filed] = !self.AllCheckedDp[self.filed];
  555. $.each(self.DpList[self.filed], function (index, item) {
  556. item.checked = self.AllCheckedDp[self.filed];
  557. })
  558. self.submitDpList(1)
  559. }
  560. self.checkDpItem = function (item) {
  561. item.checked = !item.checked;
  562. var n = 0;
  563. $.each(self.DpList[self.filed], function (index, item) {
  564. if (item.checked == true) {
  565. n++
  566. }
  567. })
  568. if (n == self.DpList[self.filed].length) {
  569. self.AllCheckedDp[self.filed] = true;
  570. } else {
  571. self.AllCheckedDp[self.filed] = false;
  572. }
  573. self.submitDpList(1)
  574. }
  575. self.submitDpList = function (n) {
  576. var AllCheckedLength1 = 0;
  577. self.selectDpList[self.filed] = [];
  578. $.each(self.DpList[self.filed], function (index, item) {
  579. if (item.checked == true) {
  580. AllCheckedLength1++;
  581. self.selectDpList[self.filed].push(item)
  582. }
  583. })
  584. self.data[self.filed] = self.selectDpList[self.filed].map(function (item) {
  585. return item.SECTION
  586. }).join(",")
  587. if (self.filed == "ZBCS") {
  588. self.data.ZBCSCODE = self.selectDpList[self.filed].map(function (item) {
  589. return item.DEPCODE
  590. }).join(",")
  591. }
  592. self.AllCheckedDp[self.filed] = AllCheckedLength1 == self.DpLength[self.filed];
  593. self.changeFiled(self.filed)
  594. if (n == 0) {
  595. sp.layerhide();
  596. }
  597. }
  598. self.openUserList = function (str) {
  599. if (self.hide("readonly", str) == true) {
  600. return
  601. } else {
  602. self.filed = str;
  603. //self.AllChecked[self.filed] = false;
  604. sp.layer("#userList")
  605. $("#userList .sp-page").eq(0).scrollTop(0);
  606. }
  607. }
  608. self.checkAllUser = function () {
  609. self.AllChecked[self.filed] = !self.AllChecked[self.filed];
  610. $.each(self.UserList[self.filed], function (index, item) {
  611. item.checked = self.AllChecked[self.filed];
  612. $.each(item.USER, function (index1, item1) {
  613. item1.checked = self.AllChecked[self.filed];
  614. })
  615. })
  616. self.submitUserList(1)
  617. }
  618. self.checkUserItem = function (item) {
  619. item.checked = !item.checked;
  620. $.each(item.USER, function (index, item1) {
  621. item1.checked = item.checked;
  622. })
  623. var n = 0;
  624. $.each(self.UserList[self.filed], function (index, item) {
  625. if (item.checked == true) {
  626. n++
  627. }
  628. })
  629. if (n == self.UserList[self.filed].length) {
  630. self.AllChecked[self.filed] = true;
  631. } else {
  632. self.AllChecked[self.filed] = false;
  633. }
  634. self.submitUserList(1)
  635. }
  636. self.checkUser = function (item) {
  637. item.checked = !item.checked;
  638. var n = [], all = 0;
  639. $.each(self.UserList[self.filed], function (x, y) {
  640. n.push(0);
  641. $.each(y.USER, function (x1, y1) {
  642. if (y1.checked == true) {
  643. n[x]++
  644. }
  645. })
  646. if (n[x] == y.USER.length && n[x] != 0) {
  647. y.checked = true;
  648. all++
  649. } else {
  650. y.checked = false;
  651. }
  652. })
  653. if (all == self.UserList[self.filed].length) {
  654. self.AllChecked[self.filed] = true;
  655. } else {
  656. self.AllChecked[self.filed] = false;
  657. }
  658. self.submitUserList(1)
  659. }
  660. self.submitUserList = function (n) {
  661. var AllCheckedLength = 0;
  662. self.selectList[self.filed] = [];
  663. $.each(self.UserList[self.filed], function (index, item) {
  664. $.each(item.USER, function (index1, item1) {
  665. if (item1.checked == true) {
  666. AllCheckedLength++;
  667. self.selectList[self.filed].push(item1)
  668. }
  669. })
  670. })
  671. self.data[self.filed] = self.selectList[self.filed].map(function (item) {
  672. return item.USHOWNAME
  673. }).join(",")
  674. if (self.data[self.filed + "ID"] != undefined) {
  675. self.data[self.filed + "ID"] = self.selectList[self.filed].map(function (item) {
  676. return item.USERID
  677. }).join(",")
  678. }
  679. self.AllChecked[self.filed] = AllCheckedLength == self.UserLength[self.filed];
  680. self.changeFiled(self.filed)
  681. if (n == 0) {
  682. sp.layerhide();
  683. }
  684. }
  685. //保存提交
  686. self.btnSave = function (n) {
  687. if (self.repeat == true) {
  688. return
  689. }
  690. if (spngvld.submit(".formedit")) {
  691. if (self.data.SWBH1 == "") {
  692. var postData = {
  693. swcode: self.SWBH,
  694. cuserid: self.userId,
  695. flowid: sp.getUrlName("flowid")
  696. }
  697. $http.post(apiurljs.login + "g2app/shouwen/saveSWCodeBySWCode", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
  698. .success(function (obj1) {
  699. var res1 = strToJson(s4.decryptData_CBC(obj1.data));
  700. if (res1.success) {
  701. if (res1.data == "-1") {
  702. sp.dialog("保存失败!");
  703. return;
  704. }
  705. var dataArray = [];
  706. self.data.BGSNBYJ = "";
  707. self.data.WLDPS = "";
  708. self.data.FGLDBJQR = "";
  709. self.data.CBCSCLQK = "";
  710. dataArray.push(self.data);
  711. var data = {
  712. ckey: "SW_ZJWWJCBD",
  713. id: self.data.ID,
  714. routeid: self.routeid,
  715. routeinfoid: self.routeinfoid,
  716. routeinfotitle: self.data.BT.replace(/\n/g, '').replace(/\s/g, ''),//self.data.BT,
  717. directionid: self.directionid,
  718. formeditid: self.formeditid,
  719. data: JSON.stringify(dataArray)
  720. }
  721. $http.post(apiurljs.login + "g2app/abase/saveData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  722. .success(function (obj) {
  723. var res = strToJson(s4.decryptData_CBC(obj.data));
  724. if (res.code == 0) {
  725. self.data.ID = res.data.ID;
  726. self.routeid = res.data.ROUTEID;
  727. self.routeinfoid = res.data.ROUTEINFOID;
  728. self.filedChange = false;
  729. if (n == 0) {
  730. if (res1.data != self.SWBH.split("|")[2]) {
  731. sp.dialog("收文编号已改变!")
  732. } else {
  733. sp.dialog("保存成功!");
  734. }
  735. $timeout(function () {
  736. sp.dialoghide()
  737. }, 1500)
  738. self.getSwenList(1)
  739. } else if (n == 1) {
  740. self.forward(self.btnItem);
  741. } else if (n == 2) {
  742. self.sendAll();
  743. } else if (n == 3) {
  744. self.btnPrint();
  745. } else if (n == 4) {
  746. sp.layer("#print")
  747. }
  748. } else {
  749. sp.dialog(res.message)
  750. }
  751. })
  752. } else {
  753. sp.dialog(res1.message)
  754. }
  755. })
  756. } else {
  757. var dataArray = [];
  758. self.data.BGSNBYJ = "";
  759. self.data.WLDPS = "";
  760. self.data.FGLDBJQR = "";
  761. self.data.CBCSCLQK = "";
  762. dataArray.push(self.data);
  763. var data = {
  764. ckey: "SW_ZJWWJCBD",
  765. id: self.data.ID,
  766. routeid: self.routeid,
  767. routeinfoid: self.routeinfoid,
  768. routeinfotitle: self.data.BT.replace(/\n/g, '').replace(/\s/g, ''),//self.data.BT,
  769. directionid: self.directionid,
  770. formeditid: self.formeditid,
  771. data: JSON.stringify(dataArray)
  772. }
  773. $http.post(apiurljs.login + "g2app/abase/saveData", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  774. .success(function (obj) {
  775. var res = strToJson(s4.decryptData_CBC(obj.data));
  776. if (res.code == 0) {
  777. self.data.ID = res.data.ID;
  778. self.routeid = res.data.ROUTEID;
  779. self.routeinfoid = res.data.ROUTEINFOID;
  780. self.filedChange = false;
  781. if (n == 0) {
  782. sp.dialog("保存成功!");
  783. $timeout(function () {
  784. sp.dialoghide()
  785. }, 1500)
  786. self.getSwenList(1)
  787. } else if (n == 1) {
  788. self.forward(self.btnItem);
  789. } else if (n == 2) {
  790. self.sendAll();
  791. } else if (n == 3) {
  792. self.btnPrint();
  793. } else if (n == 4) {
  794. sp.layer("#print")
  795. }
  796. } else {
  797. sp.dialog(res.message)
  798. }
  799. })
  800. }
  801. }
  802. }
  803. //打印
  804. self.btnPrint = function () {
  805. if (self.filedChange == true) {
  806. self.btnSave(3)
  807. } else {
  808. // 创建隐藏的可下载链接
  809. var eleLink = document.createElement('a');
  810. eleLink.download = "";
  811. eleLink.style.display = 'none';
  812. eleLink.href = apiurljs.login + "g2app/shouwen/PrintWord?data=" + encodeURIComponent(s4.encryptData_CBC("templatefilename=moban33.ftl&tablename=SW_ZJWWJCBD&outfilepath=/tmp/行政公文.wps&printdate=LWRQ,DBSX,ZBRQ&routeinfoid=" + self.routeinfoid));
  813. // 触发点击
  814. document.body.appendChild(eleLink);
  815. eleLink.click();
  816. // 然后移除
  817. document.body.removeChild(eleLink);
  818. //window.open(apiurljs.login + "g2app/shouwen/PrintWord?templatefilename=shouwen.ftl&tablename=SW_ZJWWJCBD&outfilepath=" + apiurljs.print + "&routeinfoid=" + self.routeinfoid)
  819. }
  820. }
  821. /*综合打印*/
  822. self.printFiled = 1;
  823. self.btnPrint1 = function () {
  824. if (self.filedChange == true) {
  825. self.btnSave(4)
  826. } else {
  827. sp.layer("#print")
  828. }
  829. }
  830. self.printSubmit = function () {
  831. if (self.printFiled == 1) {
  832. var templatefilename = "moban33"
  833. } else if (self.printFiled == 2) {
  834. var templatefilename = "mobanoption"
  835. } else {
  836. var templatefilename = "moban33_all"
  837. }
  838. var data = {
  839. templatefilename: templatefilename + ".ftl",
  840. outfilepath: "/tmp/行政公文" + sp.datefmt('yyyyMMddHHmmss', sp.getLocalDate()) + ".wps",
  841. routeinfoid: self.routeinfoid,
  842. tablename: "SW_ZJWWJCBD",
  843. printtype: self.printFiled,
  844. printdate: "LWRQ,DBSX,ZBRQ"
  845. }
  846. $http.post(apiurljs.login + "g2app/dataabase/PrintWordExtend", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  847. .success(function (obj) {
  848. var res = strToJson(s4.decryptData_CBC(obj.data));
  849. //window.open("../../../printPreview.html?url=" + apiurljs.login + "g2work" + res.data[0].url)
  850. sp.openNewWindow("../../../printPreview.html?url=" + apiurljs.yzFcscloud + "g2work" + res.data[0].url, '打印预览')
  851. })
  852. //// 创建隐藏的可下载链接
  853. //var eleLink = document.createElement('a');
  854. //eleLink.download = "";
  855. //eleLink.style.display = 'none';
  856. //eleLink.href = apiurljs.login + "g2app/dataabase/PrintWord?data=" + encodeURIComponent(s4.encryptData_CBC("templatefilename=" + templatefilename + ".ftl&tablename=SW_DWGWCBD&outfilepath=/tmp/党委公文承办单.wps&printdate=LWRQ,DBSX&routeinfoid=" + self.routeinfoid + "&printtype=" + self.printFiled));
  857. //// 触发点击
  858. //document.body.appendChild(eleLink);
  859. //eleLink.click();
  860. //// 然后移除
  861. //document.body.removeChild(eleLink);
  862. sp.layerhide()
  863. }
  864. //签写意见编辑状态
  865. self.opinion = {
  866. BGSNBYJ: false,
  867. BGSNBYJImg: false,
  868. WLDPS: false,
  869. WLDPSImg: false,
  870. FGLDBJQR: false,
  871. FGLDBJQRImg: false,
  872. CBCSCLQK: false,
  873. CBCSCLQKImg: false,
  874. nulla: false
  875. }
  876. self.YJ = {
  877. BGSNBYJ: [],
  878. BGSNBYJSTATUS: false,
  879. WLDPS: [],
  880. WLDPSSTATUS: false,
  881. FGLDBJQR: [],
  882. FGLDBJQRSTATUS: false,
  883. CBCSCLQK: [],
  884. CBCSCLQKSTATUS: false,
  885. nulla: [],
  886. nullaSTATUS: false
  887. }
  888. //意见(下表)
  889. self.openOptionList = function () {
  890. if (self.routeinfoid == 0 && self.routeid == 0) {
  891. sp.dialog("请先保存!")
  892. return;
  893. }
  894. if (self.opinion.nulla == true) {
  895. return;
  896. }
  897. self.nulla = "";
  898. $(".optionList").css("height", 149)
  899. self.opinion.nulla = true;
  900. }
  901. self.closeOptionList = function () {
  902. $(".optionList").css("height", 389)
  903. self.opinion.nulla = false;
  904. }
  905. self.submitOptionList = function () {
  906. var data = {
  907. cmanid: self.userId,
  908. routeinfoid: self.routeinfoid,
  909. routeid: self.routeid,
  910. tableid: "SW_ZJWWJCBD",
  911. colid: "",
  912. opiniontype: 99,
  913. cresult: "",
  914. opinion: self.nulla,
  915. opinionimage: ""
  916. }
  917. $http.post(apiurljs.login + "g2app/abase/saveDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  918. .success(function (obj) {
  919. var res = strToJson(s4.decryptData_CBC(obj.data));
  920. if (res.success == true) {
  921. self.getOpinion1();
  922. self.opinion.nulla = false;
  923. $(".optionList").css("height", 389)
  924. } else {
  925. sp.dialog(res.message)
  926. }
  927. })
  928. }
  929. self.changeOptionList = function (item) {
  930. self.nulla = item.OPINION;
  931. self.opinion.nulla = true;
  932. }
  933. //意见附件(下表)
  934. self.uploading1 = false;
  935. self.upload1 = function () {
  936. $('#fileupload1').fileupload({
  937. url: apiurljs.login + 'g2app/abase/UploadWholeFileWithRouteAttach',
  938. dataType: 'json',
  939. beforeSend: function (xhr, data) {
  940. xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken);
  941. xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=SYS_ROUTE_ATTACHLIST,userid=" + self.userId + ",routeinfoid=" + self.routeinfoid
  942. + ",routeid=" + self.routeid + ",tableid=SW_ZJWWJCBD"));
  943. },
  944. // 上传完成后的执行逻辑
  945. done: function (e, data) {
  946. self.uploading1 = false;
  947. self.getOpinion1()
  948. }
  949. })
  950. }
  951. //下载意见表附件
  952. self.downLoadOption = function (item) {
  953. window.open(apiurljs.login + "g2work/files/" + item.FILEPATH.slice(7))
  954. }
  955. //删除意见表附件
  956. self.deleteOptionFile = function (file, str) {
  957. var data = {
  958. routeid: file.ROUTEID,
  959. tableid: "SW_ZJWWJCBD",
  960. colid: str,
  961. fileid: file.FILEID
  962. };
  963. $http.post(apiurljs.login + "g2app/abase/deleteDataOpinionWithRouteAttach", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  964. .success(function (obj) {
  965. var res = strToJson(s4.decryptData_CBC(obj.data));
  966. sp.dialoghide();
  967. if (res.success) {
  968. if (str != "") {
  969. self.getOpinion(str);
  970. } else {
  971. self.getOpinion1();
  972. }
  973. } else {
  974. sp.dialog("删除失败,请联系管理员!");
  975. }
  976. });
  977. }
  978. //意见附件(上表)
  979. self.upload2 = function (str) {
  980. $('#fileupload-' + str).fileupload({
  981. url: apiurljs.login + 'g2app/abase/UploadWholeFileWithRouteAttach',
  982. dataType: 'json',
  983. beforeSend: function (xhr, data) {
  984. xhr.setRequestHeader("Authorization", "Bearer " + self.get_AccessToken);
  985. xhr.setRequestHeader("File-Argument", s4.encryptData_CBC("tablename=SYS_ROUTE_ATTACHLIST,userid=" + self.userId + ",routeinfoid=" + self.routeinfoid
  986. + ",routeid=" + self.routeid + ",tableid=SW_ZJWWJCBD,colid=" + str));
  987. },
  988. // 上传完成后的执行逻辑
  989. done: function (e, data) {
  990. self.uploading1 = false;
  991. self.getOpinion(str)
  992. }
  993. })
  994. }
  995. //签写意见
  996. self.openOpinion = function (str) {
  997. if (self.routeinfoid == 0 && self.routeid == 0) {
  998. sp.dialog("请先保存!")
  999. return;
  1000. }
  1001. self.opinion[str] = true;
  1002. }
  1003. //修改意见
  1004. self.changeOpinion = function (str) {
  1005. self.data[str] = self.YJ[str][0].OPINION;
  1006. self.opinion[str] = true;
  1007. }
  1008. self.changeOpinionItem = function (str, item) {
  1009. if (item.OPINIONIMAGE != "") {
  1010. self.QianZi(str);
  1011. self.opinion[str + "Img"] = true;
  1012. }
  1013. self.data[str] = item.OPINION;
  1014. self.opinion[str] = true;
  1015. }
  1016. //提交意见
  1017. self.Sopinion = function (str) {
  1018. if (self.opinion[str + "Img"] == true) {
  1019. self.data[str] = $("#" + str + "QZ").find("canvas")[0].toDataURL();
  1020. } else {
  1021. self.data[str] = $("#" + str).val();
  1022. }
  1023. var data = {
  1024. cmanid: self.userId,
  1025. routeinfoid: self.routeinfoid,
  1026. routeid: self.routeid,
  1027. tableid: "SW_ZJWWJCBD",
  1028. colid: str,
  1029. opiniontype: 0,
  1030. cresult: "",
  1031. opinion: self.opinion[str + "Img"] == false ? self.data[str] : "",
  1032. opinionimage: self.opinion[str + "Img"] == true ? self.data[str] : ""
  1033. }
  1034. $http.post(apiurljs.login + "g2app/abase/saveDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1035. .success(function (obj) {
  1036. var res = strToJson(s4.decryptData_CBC(obj.data));
  1037. if (res.success == true) {
  1038. self.getOpinion(str);
  1039. self.opinion[str] = false;
  1040. self.opinion[str + "Img"] = false;
  1041. self.data[str] = "";
  1042. self.changeFiled(str)
  1043. } else {
  1044. sp.dialog(res.message)
  1045. }
  1046. })
  1047. }
  1048. //删除意见
  1049. self.Dopinion = function (str, item) {
  1050. var data = {
  1051. cmanid: self.userId,
  1052. routeid: self.routeid,
  1053. tableid: "SW_ZJWWJCBD",
  1054. colid: str,
  1055. }
  1056. $http.post(apiurljs.login + "g2app/abase/deleteDataOpinion", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1057. .success(function (obj) {
  1058. var res = strToJson(s4.decryptData_CBC(obj.data));
  1059. if (res.success == true) {
  1060. if (str != "") {
  1061. self.getOpinion(str);
  1062. } else {
  1063. self.getOpinion1();
  1064. }
  1065. self.changeFiled(str)
  1066. } else {
  1067. sp.dialog(res.message)
  1068. }
  1069. })
  1070. }
  1071. self.phraseText = "";//添加常用语
  1072. self.phraseList = []//常用语列表
  1073. //获取常用语库
  1074. self.phrase = function (colid) {
  1075. sp.layer("#phrase");
  1076. self.colid = colid;
  1077. self.getPhrase();
  1078. }
  1079. //添加常用语到常用语库
  1080. self.Aphrase = function () {
  1081. if (self.phraseText == "") {
  1082. return;
  1083. }
  1084. var data = {
  1085. cmanid: self.userId,
  1086. tableid: "SW_ZJWWJCBD",
  1087. colid: self.colid,
  1088. contents: self.phraseText
  1089. }
  1090. $http.post(apiurljs.login + "g2app/abase/insertDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1091. .success(function (obj) {
  1092. var res = strToJson(s4.decryptData_CBC(obj.data));
  1093. if (res.success == true) {
  1094. self.phraseText = "";
  1095. self.getPhrase();
  1096. } else {
  1097. sp.dialog(res.message)
  1098. }
  1099. })
  1100. }
  1101. //获取常用语库
  1102. self.getPhrase = function () {
  1103. var data = {
  1104. cmanid: self.userId,
  1105. tableid: "SW_ZJWWJCBD",
  1106. colid: self.colid
  1107. }
  1108. $http.post(apiurljs.login + "g2app/abase/queryDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1109. .success(function (obj) {
  1110. var res = strToJson(s4.decryptData_CBC(obj.data));
  1111. self.phraseList = res.data;
  1112. self.phraseSelect = self.phraseList[0].CONTENTS;
  1113. })
  1114. }
  1115. //从常用语库删除
  1116. self.Dphrase = function () {
  1117. var id = null;
  1118. $.each(self.phraseList, function (index, item) {
  1119. if (item.CONTENTS == self.phraseSelect) {
  1120. id = item.ID;
  1121. }
  1122. })
  1123. var data = {
  1124. id: id
  1125. }
  1126. $http.post(apiurljs.login + "g2app/abase/deleteDataPatterns", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1127. .success(function (obj) {
  1128. var res = strToJson(s4.decryptData_CBC(obj.data));
  1129. self.getPhrase();
  1130. })
  1131. }
  1132. //常用语确认为意见
  1133. self.btnPhrase = function () {
  1134. if (!self.colid) {
  1135. self.nulla = self.phraseSelect;
  1136. } else {
  1137. self.data[self.colid] = self.phraseSelect;
  1138. }
  1139. sp.layerhide();
  1140. }
  1141. //签字—手写
  1142. self.QianZi = function (str) {
  1143. if (self.opinion[str + "Img"] == true) { return; }
  1144. self.opinion[str + "Img"] = true;
  1145. setTimeout(function () {
  1146. new lineCanvas(str + "QZ")
  1147. }, 1)
  1148. }
  1149. //清除手写
  1150. self.canvasClear = function (str) {
  1151. var cxt = $("#" + str + "QZ").find("canvas")[0].getContext("2d");
  1152. cxt.clearRect(0, 0, $("#" + str + "QZ").find("canvas")[0].width, $("#" + str + "QZ").find("canvas")[0].height)
  1153. }
  1154. //发生修改
  1155. self.changeFiled = function (str) {
  1156. self.filedChange = true;
  1157. if (str == "SFDB" && self.data.SFDB == "C02") {
  1158. self.data.DBLX = "";
  1159. self.data.DBSX = "";
  1160. } else {
  1161. self.data.DBLX = self.DBTYPE[0].CODE;
  1162. }
  1163. }
  1164. //验证是否重复
  1165. self.repeat = false;
  1166. self.verify = function (str) {
  1167. if (self.data[str] == "") { return; }
  1168. var data = {
  1169. tablename: "SW_ZJWWJCBD",
  1170. colums: "*",
  1171. order: "ID desc",
  1172. sqlwhere: {},
  1173. sqlinwhere: "",
  1174. sqllikewhere: ""
  1175. }
  1176. data.sqlwhere[str] = self.data[str]
  1177. console.log(data)
  1178. $http.post(apiurljs.login + "g2app/dataabase/queryDataByCol", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1179. .success(function (obj) {
  1180. var res = strToJson(s4.decryptData_CBC(obj.data));
  1181. if (res.data.length > 0 && self.data.ID != res.data[0].ID) {
  1182. self.repeat = true;
  1183. sp.dialog("标题已存在,请修改后重试!")
  1184. } else {
  1185. self.repeat = false;
  1186. }
  1187. })
  1188. }
  1189. //转发
  1190. self.forward = function (obj) {
  1191. self.btnItem = obj;
  1192. if (self.filedChange == true) {
  1193. self.btnSave(1)
  1194. } else {
  1195. $("#forwardWin").attr("src", "../../forward/forward.html?routeid=" + self.routeid + "&routeinfoid=" + self.routeinfoid + "&copyrightid=" + self.copyrightid + "&directionid=" + self.directionid + "&formeditid=" + self.formeditid + "&codefuncbutton=" + obj.CODE + "&directionidtarget=" + obj.DIRECTIONIDTARGET + "&cookie=shouwenbg")
  1196. sp.layer("#forward")
  1197. }
  1198. }
  1199. //查看流转记录
  1200. self.RouteList = function () {
  1201. sp.openNewWindow("../../forward/modeler_read.html?" + self.SwenList[0].TEMPFORM.split("?")[1], "流程图")
  1202. //var data = {
  1203. // directionid: self.directionid,
  1204. // userid: self.userId,
  1205. // routeid: self.routeid,
  1206. // routeinfoid: self.routeinfoid,
  1207. //}
  1208. //$http.post(apiurljs.login + "g2app/abase/queryDataRouteList", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1209. //.success(function (obj) {
  1210. // var res = strToJson(s4.decryptData_CBC(obj.data));
  1211. // self.routeList = res.data;
  1212. // $.each(self.routeList, function (index, item) {
  1213. // item.mainUser = [];
  1214. // item.copyUsers = [];
  1215. // $.each(item.USERS, function (index1, item1) {
  1216. // if (item1.KIND == 0) {
  1217. // item.mainUser.push(item1.USERNAME);
  1218. // } else {
  1219. // item.copyUsers.push(item1.USERNAME);
  1220. // }
  1221. // })
  1222. // item.mainUser = item.mainUser.join(",");
  1223. // item.copyUsers = item.copyUsers.join(",");
  1224. // })
  1225. // setTimeout(function (item) {
  1226. // sp.layer("#RouteList");
  1227. // }, 100);
  1228. //})
  1229. }
  1230. self.reSizeRow = function () {
  1231. var bodybox = document.getElementById("bodyDiv");
  1232. var topbox = document.getElementById("topDiv");
  1233. var bottombox = document.getElementById("bottomDiv");
  1234. var line = document.getElementById("lineDiv");
  1235. document.getElementById("lineDiv").addEventListener("mousedown", function (event) {
  1236. $(".mousemove").show()
  1237. var bodyboxH = bodybox.clientHeight;
  1238. var topboxH = topbox.clientHeight;
  1239. var bottomboxH = bottombox.clientHeight;
  1240. //var y = event.pageY - line.offsetTop;
  1241. var y = event.pageY - line.clientHeight;
  1242. document.addEventListener("mousemove", boxMove)
  1243. function boxMove(event) {
  1244. if (topboxH * 1 + (event.pageY - y) * 1 - 36 <= 45) {
  1245. //
  1246. } else if (bottomboxH * 1 - (event.pageY - y) * 1 - 36 <= 45) {
  1247. //
  1248. } else {
  1249. topbox.style.height = topboxH * 1 + (event.pageY - y) * 1 - 36 + "px";
  1250. //topbox.getElementsByTagName("iframe")[0].style.height = topboxH * 1 + (event.pageY - y) * 1 - 45 + "px";
  1251. bottombox.style.height = bodyboxH * 1 - topboxH * 1 - (event.pageY - y) * 1 + 36 + "px";
  1252. bottombox.getElementsByTagName("iframe")[0].style.height = bodyboxH * 1 - topboxH * 1 - (event.pageY - y) * 1 - 25 + "px";
  1253. }
  1254. }
  1255. document.addEventListener("mouseup", function () {
  1256. $(".mousemove").hide()
  1257. document.removeEventListener("mousemove", boxMove)
  1258. })
  1259. })
  1260. }
  1261. ////头部关键字搜索---20230905
  1262. self.headBtnSearchKeyword = "";
  1263. self.headSearchResult = [];
  1264. self.headSearchResult_view = false;
  1265. self.headBtnSearch = function () {
  1266. if (sp.isval(self.headBtnSearchKeyword)) {
  1267. self.headSearchResult = [];
  1268. var data = {
  1269. "url": "/basic/api/StatSelect/selectCodeList",
  1270. "data": { "keyWord": self.headBtnSearchKeyword }
  1271. }
  1272. //console.log(JSON.stringify(data));
  1273. $http.post(apiurljs.login + "g2app/yizhangtu/selectCodeList", { data: s4.encryptData_CBC(JSON.stringify(data)) }, postCfg)
  1274. .success(function (obj) {
  1275. var res = strToJson(s4.decryptData_CBC(obj.data));
  1276. //console.log(JSON.stringify(res.data));
  1277. self.headSearchResult = res.data.build;
  1278. if (sp.isval(self.headSearchResult)) {
  1279. self.headSearchResult_view = true;
  1280. } else {
  1281. self.headSearchResult_view = false;
  1282. }
  1283. })
  1284. } else {
  1285. self.headSearchResult_view = false;
  1286. }
  1287. };
  1288. self.headKeywordPage = function (itemdata) {
  1289. var get_token = localStorage.getItem("main-token");
  1290. var set_url = apiurljs.onePic + "wholeProcessPage/?token=" + get_token + "&name=" + itemdata.name + "&type=" + itemdata.type + "&id=" + itemdata.id;
  1291. $('#attachlist')[0].contentWindow.openTool(set_url, '一张图');
  1292. self.headSearchResult_view = false;
  1293. };
  1294. self.onePic = function () {
  1295. $('#attachlist')[0].contentWindow.openTool(apiurljs.onePic + "wholeProcessPage/?token=" + localStorage.getItem("main-token"), "地图搜索")
  1296. }
  1297. //头部下滚冻结
  1298. $(function () {
  1299. $(".sp-page-center").eq(0).css("max-height", $("#topDiv").height()).css("height", $("#topDiv").height())
  1300. //$("body").bind("scroll", function () {
  1301. // var scrollTop = $("body").scrollTop();
  1302. // if (scrollTop == 0) {
  1303. // $(".FixTop").removeClass("FixTop");
  1304. // }
  1305. // if (scrollTop > 35) {
  1306. // $(".sp-page-title").parents(".sp-box").addClass("FixTop");
  1307. // }
  1308. //});
  1309. //页面高度撑满
  1310. setTimeout(function () {
  1311. if ($(".ibox-content").height() < $(window).height() - 31) {
  1312. $(".ibox-content").css("height", $(window).height() - 31)
  1313. }
  1314. $(".mousemove").css("top", 0).css("left", 0).css("width", $(window).width()).css("height", $(window).height() - 10)
  1315. }, 1)
  1316. })
  1317. }])
  1318. app.filter('trustHtml', function ($sce) {
  1319. return function (input) {
  1320. return $sce.trustAsHtml(input.replace(/\n/g, '<br/>').replace(/\s/g, '&nbsp;'));
  1321. };
  1322. });
  1323. //canvas画布签字
  1324. function lineCanvas(obj) {
  1325. var self = this;
  1326. self.linewidth = 1;
  1327. self.color = "#000000";
  1328. self.background = "#ffffff";
  1329. self.canvas = document.createElement("canvas");
  1330. document.getElementById(obj).appendChild(self.canvas);
  1331. self.cxt = self.canvas.getContext("2d");
  1332. self.canvas.width = document.getElementById(obj).clientWidth;
  1333. self.canvas.height = document.getElementById(obj).scrollHeight;
  1334. self.cxt.fillStyle = self.background;
  1335. self.cxt.fillRect(0, 0, self.canvas.width, self.canvas.width);
  1336. self.cxt.strokeStyle = self.color;
  1337. self.cxt.lineWidth = self.linewidth;
  1338. self.cxt.lineCap = "round";
  1339. //开始绘制
  1340. self.canvas.addEventListener("mousedown", function (e) {
  1341. self.cxt.beginPath();
  1342. self.cxt.lineTo(e.pageX - document.getElementById(obj).offsetLeft - 25, e.pageY - document.getElementById(obj).offsetTop + $(".sp-page-center").scrollTop() - 25);
  1343. self.canvas.addEventListener("mousemove", move)
  1344. }.bind(self), false);
  1345. //绘制中
  1346. function move() {
  1347. var e = window.event;
  1348. self.cxt.lineTo(e.pageX - document.getElementById(obj).offsetLeft - 25, e.pageY - document.getElementById(obj).offsetTop + $(".sp-page-center").scrollTop() - 25);
  1349. self.cxt.stroke();
  1350. }
  1351. //结束绘制
  1352. self.canvas.addEventListener("mouseup", up)
  1353. function up() {
  1354. self.cxt.closePath();
  1355. self.canvas.removeEventListener("mousemove", move)
  1356. }
  1357. };
  1358. function showToggle(e) {
  1359. $(e).children().toggle()
  1360. $(e).next().toggle()
  1361. }
  1362. function toggleYJL(e) {
  1363. if ($(e).children(".fa-angle-double-down").is(":hidden") == true) {
  1364. $("#topDiv").css("height", 160)
  1365. $(e).parent().css("height", 450)
  1366. $("#attachlist").css("height", 200)
  1367. $("#bottomDiv").css("height", "")
  1368. } else {
  1369. $("#topDiv").css("height", 600)
  1370. $(e).parent().css("height", 10)
  1371. }
  1372. $(e).children().toggle()
  1373. }