frame_mgn.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436
  1. var app = angular.module('app', [
  2. ]);
  3. //定义一个全局的截图插件变量
  4. var cropper;
  5. app.controller("frameMgn", ["$scope", "$http", "$interval", "$timeout", function ($scope, $http, $interval, $timeout) {
  6. var self = this;
  7. var s4 = new SM4Util();
  8. self.userId = $.cookie("GlWorkPlatform-userid");
  9. self.userName = $.cookie("GlWorkPlatform-username");
  10. self.userCName = $.cookie("GlWorkPlatform-chineseName");
  11. self.get_AccessToken = localStorage.getItem("GlWorkPlatform-AccessToken");
  12. self.userTypeEng = $.cookie("GlWorkPlatform-userTypeEng");
  13. var postCfg = {
  14. headers: {
  15. 'Content-Type': 'application/json',
  16. 'Authorization': "Bearer " + self.get_AccessToken
  17. }
  18. };
  19. self.CrossPage = window.parent.CrossPage;
  20. self.loading = false;
  21. self.activeFrame = -1;
  22. self.frameArray = [];
  23. ////加载框架数据
  24. self.getPluginData = function () {
  25. self.loading = true;
  26. var postData = {
  27. "isdefault": ""
  28. }
  29. //console.log(postData);
  30. //console.log(postData); s4.encryptData_CBC(JSON.stringify(postData))
  31. $http.post(apiurljs.login + "g2work/frame/queryDataList", JSON.stringify(postData), postCfg)
  32. .success(function (obj) {
  33. //var res = strToJson(s4.decryptData_CBC(obj.data));
  34. var res = obj;
  35. //console.log(JSON.stringify(res));
  36. if (res.success) {
  37. self.loading = false;
  38. self.frameArray = res.data;
  39. angular.forEach(self.frameArray,function (item,index) {
  40. item.indexnum = index + 1;
  41. if (item.ISDEFAULT == "0") {
  42. item.ISDEFAULT_set = "非缺省框架";
  43. } else {
  44. item.ISDEFAULT_set = "缺省框架";
  45. }
  46. });
  47. self.activeFrame = 1;
  48. self.getPersonData(self.frameArray[0].CODE);
  49. } else {
  50. self.loading = false;
  51. self.frameArray = [];
  52. self.activeFrame = -1;
  53. }
  54. })
  55. .error(function (XMLHttpRequest, textStatus, errorThrown) {
  56. if (textStatus != 200) {
  57. self.loading = false;
  58. }
  59. })
  60. };
  61. self.getPluginData();
  62. self.checkSelectItem = function (itemdata) {
  63. if (self.activeFrame != itemdata.indexnum) {
  64. self.loading = true;
  65. self.activeFrame = itemdata.indexnum;
  66. self.getPersonData(itemdata.CODE);
  67. }
  68. };
  69. self.info = {
  70. "code": "0",
  71. "cname": "",//名称
  72. "fileurl":"",
  73. "imagesmall": "",///图片
  74. "isdefault": "0"//是否缺省框架
  75. }
  76. ///新增---框架
  77. self.btnAdd = function () {
  78. self.info = {
  79. "code": "0",
  80. "cname": "",//名称
  81. "fileurl": "",
  82. "imagesmall": "",///图片
  83. "isdefault": "0"//是否缺省框架
  84. }
  85. $("#btnfile").val(""); //文件
  86. $(".sp-upload-img").attr("src", "");
  87. self.pluginUpload_view = false;
  88. sp.layer("#layer_addplgn", 1);
  89. };
  90. ///编辑--框架
  91. self.btnEditPlugin = function ($item) {
  92. self.info = {
  93. "code": $item.CODE,
  94. "cname": $item.CNAME,//名称
  95. "fileurl": $item.URL,
  96. "imagesmall": $item.IMAGESMALL,///缩略图
  97. "isdefault": $item.ISDEFAULT//是否缺省框架
  98. }
  99. $(".sp-upload-img").attr("src", $item.IMAGESMALL);
  100. sp.layer("#layer_addplgn", 1)
  101. };
  102. //图片文件转base64
  103. var imgBaseArr, fileSize;
  104. self.upload = function () {
  105. $("#btnfile").change(function (e) {
  106. //获取图片大小,字节
  107. var fileMsg = e.currentTarget.files;
  108. if (fileMsg[0].type.indexOf('image') !== -1) {
  109. //console.log(fileMsg[0].type);
  110. fileSize = fileMsg[0].size;//不能超过2668484,大约为2.6MB
  111. if (fileSize > 0.5 * 1024 * 1024) {
  112. alert("选择的图像文件不能超过500K,请重新选择!");
  113. $("#btnfile").val(""); //文件
  114. self.info.imagesmall = "";
  115. $(".sp-upload-img").attr("src", "");
  116. } else {
  117. var reader = new FileReader();
  118. reader.onload = function (e) {
  119. //console.log(e)
  120. var imgBase = reader.result; //这个就是base64的编码
  121. imgBaseArr = imgBase;
  122. //截取掉前面的内容“data:image/png;base64”,
  123. //if (imgBase.split(',')[0].indexOf('base64') >= 0) {
  124. // imgBaseArr = imgBase.split(',')[1];
  125. //}
  126. self.info.imagesmall = imgBaseArr;
  127. $(".sp-upload-img").attr("src", imgBaseArr);
  128. }
  129. reader.readAsDataURL(this.files[0]);
  130. }
  131. } else {
  132. alert("仅能上传图片");
  133. }
  134. })
  135. };
  136. self.upload();
  137. self.btnSubmitPlnDsabled = false;
  138. self.btnSubmitPln_text = "提 交";
  139. self.submit_plguin = function () {
  140. if (spngvld.submit("#layer_addplgn")) {
  141. //console.log(self.info.imagesmall);
  142. if (sp.isval(self.info.imagesmall)) {
  143. self.btnSubmitPlnDsabled = true;
  144. self.btnSubmitPln_text = "正在提交,请稍等..";
  145. var postData = {
  146. "code": self.info.code,
  147. "cname": self.info.cname,
  148. "url": self.info.fileurl,
  149. "imagesmall": self.info.imagesmall,
  150. "isdefault": self.info.isdefault
  151. }
  152. //console.log(postData);
  153. //console.log(postData); s4.encryptData_CBC(JSON.stringify(postData))
  154. $http.post(apiurljs.login + "g2work/frame/saveData", JSON.stringify(postData), postCfg)
  155. .success(function (obj) {
  156. //var res = strToJson(s4.decryptData_CBC(obj.data));
  157. var res = obj;
  158. //console.log(JSON.stringify(res));
  159. if (res.success) {
  160. sp.closeCenter('.sp-layer');
  161. $timeout(function () {
  162. self.getPluginData();
  163. }, 210);
  164. } else {
  165. sp.closeCenter('.sp-layer');
  166. sp.dialog(res.message);
  167. }
  168. self.btnSubmitPlnDsabled = false;
  169. self.btnSubmitPln_text = "提 交";
  170. })
  171. .error(function (XMLHttpRequest, textStatus, errorThrown) {
  172. if (textStatus != 200) {
  173. self.loading = false;
  174. }
  175. })
  176. } else {
  177. alert("您好,图片不能为空!");
  178. }
  179. }
  180. }
  181. self.cancel_plguin = function () {
  182. sp.closeCenter('.sp-layer');
  183. }
  184. //删除框架
  185. self.removePlugin = function ($item) {
  186. var time1 = sp.getLocalDate1();
  187. //self.journalRecord(time1, sp.getLocalDate1(), "删除", "修改日志", window.location.pathname)
  188. var getDelID = $item.CODE;
  189. //console.log(getDelID);
  190. var dialogHead = "<span class=\"sp-dialog-head\"><span class=\"sp-dialog-tip\">温馨提示</span><span class=\"sp-dialog-close sp-closeDialog\" title=\"关闭\">×</span></span>";
  191. var dialogBody = "<div class=\"sp-dialog-body\">删除后不可恢复,您确认要删除吗?</div>";
  192. var dialogFoot = "<div class=\"sp-dialog-foot\"><input data-id=" + getDelID + " id='delDataTrue' type='button' value='确 认' class='sp-dialog-btnTrue' /><input type='button' value='取 消' class='sp-dialog-btnCancle sp-closeDialog' /></div>";
  193. $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot);
  194. sp.openCenter(".sp-dialog");
  195. ///取消按钮
  196. $('.sp-closeDialog').click(function (event) {
  197. sp.closeCenter(".sp-dialog");
  198. event.preventDefault(); event.stopPropagation();
  199. });
  200. //post消息的id
  201. $("#delDataTrue").click(function () {
  202. var getid = $(this).attr("data-id");
  203. var data = {
  204. code: getid///角色编码
  205. };
  206. //console.log(data);
  207. $http.post(apiurljs.login + "g2work/frame/deleteDataByCode", JSON.stringify(data), postCfg)
  208. .success(function (obj) {
  209. //var res = strToJson(s4.decryptData_CBC(obj.data));
  210. var res = obj;
  211. if (res.success) {
  212. self.getPluginData();
  213. sp.dialoghide();
  214. } else {
  215. sp.dialog(res.message);
  216. }
  217. });
  218. });
  219. }
  220. //上移一位--框架
  221. self.moveUp_plugin = function (itemdata, indexnum) {
  222. var set_index = indexnum - 2;
  223. var postData = {
  224. "code2": self.frameArray[set_index].CODE,
  225. "code1": itemdata.CODE
  226. };
  227. //console.log(postData);
  228. $http.post(apiurljs.login + "g2work/frame/swapSortidByCode", JSON.stringify(postData), postCfg)
  229. .success(function (obj) {
  230. //var res = strToJson(s4.decryptData_CBC(obj.data));
  231. var res = obj;
  232. if (res.success) {
  233. self.getPluginData();
  234. self.activeRole = -1;
  235. //self.getPluginData(self.unit, "0"); ///加载机构下方的人员
  236. } else {
  237. sp.dialog(res.message);
  238. }
  239. });
  240. }
  241. //下移一位--框架
  242. self.moveDown_plugin = function (itemdata, indexnum) {
  243. var set_index = indexnum;
  244. var postData = {
  245. "code2": self.frameArray[set_index].CODE,
  246. "code1": itemdata.CODE
  247. };
  248. //console.log(postData);
  249. $http.post(apiurljs.login + "g2work/frame/swapSortidByCode", JSON.stringify(postData), postCfg)
  250. .success(function (obj) {
  251. //var res = strToJson(s4.decryptData_CBC(obj.data));
  252. var res = obj;
  253. if (res.success) {
  254. self.getPluginData();
  255. } else {
  256. sp.dialog(res.message);
  257. }
  258. });
  259. }
  260. ////加载用户列表
  261. self.getPerson = [];///声明用户列表数组
  262. self.getPersonData = function (code) {
  263. var postData = {
  264. code: code
  265. }
  266. $http.post(apiurljs.login + "g2work/frame/queryDataUserByCode", { data: s4.encryptData_CBC(JSON.stringify(postData)) }, postCfg)
  267. .success(function (obj) {
  268. //var res = strToJson(s4.decryptData_CBC(obj.data));
  269. var res = obj;
  270. self.loading = false;
  271. ///console.log(JSON.stringify(res));
  272. if (res.success) {
  273. if (sp.isval(res.data)) {
  274. self.isSelectedAll = true;
  275. self.getPerson = res.data;
  276. self.getPerson.forEach(function (itm) {
  277. itm.users.forEach(function (itm2) {
  278. if (itm2.AUTH == "1") {
  279. itm2.check = true;
  280. } else {
  281. itm2.check = false;
  282. self.isSelectedAll = false; //有一个未选中就是未全选
  283. }
  284. });
  285. });
  286. } else {
  287. self.getPerson = [];
  288. }
  289. } else {
  290. sp.dialog(res.message);
  291. }
  292. })
  293. .error(function (XMLHttpRequest, textStatus, errorThrown) {
  294. if (textStatus != 200) {
  295. self.loading = false;
  296. }
  297. })
  298. };
  299. ///点击用户checkbox选中事件
  300. self.isSelected = function () {
  301. self.isSelectedAll = true;
  302. self.getPerson.forEach(function (itm) {
  303. itm.users.forEach(function (item2) {
  304. if (!item2.check) {
  305. return self.isSelectedAll = false;
  306. }
  307. })
  308. })
  309. }
  310. //全选
  311. self.isSelectedAll = false;
  312. self.selectAll = function () {
  313. if (self.isSelectedAll) {
  314. self.getPerson.forEach(function (itm) {
  315. itm.users.forEach(function (item2) {
  316. item2.check = true;
  317. })
  318. })
  319. } else {
  320. self.getPerson.forEach(function (itm) {
  321. itm.users.forEach(function (item2) {
  322. item2.check = false;
  323. })
  324. })
  325. }
  326. }
  327. //保存人员设置
  328. self.saveRole = function () {
  329. if (sp.isval(self.getPerson)) {
  330. var get_checkedUser = [];
  331. self.getPerson.forEach(function (itm) {
  332. itm.users.forEach(function (item2) {
  333. if (item2.check) {
  334. get_checkedUser.push({
  335. "code": self.frameArray[self.activeFrame-1].CODE,
  336. "USERID": item2.USERID,
  337. "ISDEFAULT": self.frameArray[self.activeFrame - 1].ISDEFAULT
  338. })
  339. }
  340. });
  341. })
  342. //console.log(JSON.stringify(get_checkedUser));
  343. if (sp.isval(get_checkedUser)) {
  344. var dialogHead = "<span class=\"sp-dialog-head\"><span class=\"sp-dialog-tip\">温馨提示</span><span class=\"sp-dialog-close sp-closeDialog\" title=\"关闭\">×</span></span>";
  345. var dialogBody = "<div class=\"sp-dialog-body\">您确认要提交吗?</div>";
  346. 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>";
  347. $('.sp-dialog').html(dialogHead + dialogBody + dialogFoot);
  348. sp.openCenter(".sp-dialog");
  349. ///取消按钮
  350. $('.sp-closeDialog').click(function (event) {
  351. sp.closeCenter(".sp-dialog");
  352. event.preventDefault(); event.stopPropagation();
  353. });
  354. //post消息的id
  355. $("#delDataTrue").click(function () {
  356. var postData = {
  357. code: self.frameArray[self.activeFrame - 1].CODE,
  358. data: JSON.stringify(get_checkedUser)
  359. }
  360. //console.log(JSON.stringify(postData));
  361. $http.post(apiurljs.login + "g2work/frame/updateDataUserByCode", JSON.stringify(postData), postCfg)
  362. .success(function (obj) {
  363. //var res = strToJson(s4.decryptData_CBC(obj.data));
  364. var res = obj;
  365. if (res.success) {
  366. //sp.dialog(res.message);
  367. self.getPersonData(self.frameArray[self.activeFrame - 1].CODE);
  368. sp.dialoghide();
  369. } else {
  370. sp.dialog(res.message);
  371. }
  372. });
  373. });
  374. } else {
  375. sp.dialog("人员不能为空!");
  376. }
  377. } else {
  378. sp.dialog("没有人员数据,不能提交!");
  379. }
  380. }
  381. }]);