EditController.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. var app = angular.module('app',['baseServices','NodeMsgTemplateService','commonListService','arrayToolService']);
  2. app.controller("EditController",['$scope','BaseService','NodeMsgTemplate','CommonListService','ArrayToolService',function($scope,BaseService,NodeMsgTemplate,CommonListService,ArrayToolService){
  3. $scope.CommonList=CommonListService;
  4. $scope.ArrayTool=ArrayToolService;
  5. $scope.prop={};//prop
  6. $scope.prop.defId=defId;
  7. $scope.prop.nodeId=nodeId;
  8. $scope.prop.parentDefId=parentDefId;
  9. $scope.param={};
  10. $scope.param.columnNum=1;
  11. if(defId!=""){//获取表
  12. NodeMsgTemplate.ngjs({action:"getTableByDefId",defId:defId},function(data){
  13. $scope.param.table=data;
  14. //开始拼装树数据
  15. var iconFolder = __ctx + '/styles/tree/';
  16. var treeData=[];
  17. for(var i=0,c;c=data.fieldList[i++];){//主表字段
  18. if(c.isHidden == 0){
  19. c.tableId = data.tableId;
  20. c.name = c.fieldDesc;
  21. c.id = c.fieldId;
  22. c.pId = 0;
  23. c.icon = iconFolder + c.fieldType + '.png';
  24. treeData.push(c);
  25. }
  26. }
  27. for(var i=0,c;c=data.subTableList[i];i++){//子表字段
  28. c.icon = iconFolder + 'table.png';
  29. c.pId = 0;
  30. c.id = c.tableId;
  31. c.name=c.tableDesc;
  32. treeData.push(c);
  33. for(var j = 0,m;m=c.fieldList[j++];){
  34. m.id = m.fieldId;
  35. m.pId = c.tableId;
  36. m.name = m.fieldDesc;
  37. m.icon = iconFolder + m.fieldType + '.png';
  38. m.tableName=c.tableName;//记录是第几张子表,后面取值有用
  39. treeData.push(m);
  40. }
  41. }
  42. var setting = {
  43. data: {
  44. key : {
  45. name: "name"
  46. },
  47. simpleData: {
  48. enable: true,
  49. idKey: "id",
  50. pIdKey: "pId",
  51. rootPId: 0
  52. }
  53. },
  54. callback : {
  55. beforeClick : function(treeId, treeNode, clickFlag) {
  56. var tab = liger.get("tab");
  57. var text="";
  58. if(!treeNode.dbFieldNameLow){//点击了是表节点,就增加一段
  59. text=eval("$scope.param.subTableTempMap."+treeNode.tableName);
  60. }else if(treeNode.pId==0){//主表字段
  61. text="${"+treeNode.dbFieldNameLow+"}";
  62. }else{
  63. text="${"+treeNode.tableName+"."+treeNode.dbFieldNameLow+"}";
  64. }
  65. //按照目前焦点在哪里就添加在哪里
  66. if(tab.getSelectedTabItemID()=="html"){
  67. ue.execCommand("inserthtml",text);
  68. }
  69. if(tab.getSelectedTabItemID()=="text"){
  70. insertText(document.getElementById('text'),text);
  71. }
  72. return false;
  73. }
  74. }
  75. };
  76. fieldTree = $.fn.zTree.init($("#fieldTree"),setting, treeData);
  77. });
  78. }
  79. //初始化子表模板
  80. NodeMsgTemplate.ngjs({action:"getSubTableTemp",defId:defId},function(data){
  81. $scope.param.subTableTempMap=data;
  82. });
  83. //初始化
  84. if(defId!=""){
  85. NodeMsgTemplate.ngjs({action:"getObject",defId:defId,nodeId:nodeId,parentDefId:parentDefId},function(data){
  86. if(!data){//新增页面根据模板初始化html
  87. $scope.initTemp();
  88. //初始化title
  89. NodeMsgTemplate.ngjs({action:"getNode",defId:defId,nodeId:nodeId},function(data){
  90. var title="全局-";
  91. if(data.nodeName){
  92. title=data.nodeName+"节点-";
  93. }
  94. $scope.prop.title=title+"消息模板";
  95. });
  96. return;
  97. }
  98. $scope.prop=data;
  99. ue.ready(function () {
  100. ue.setContent(data.html);
  101. });
  102. $("#text").val(data.text);
  103. });
  104. }
  105. //保存
  106. $scope.save=function(){
  107. var frm=$('#frmSubmit').form();
  108. if(!frm.valid()) return;
  109. //获取ngjs model获取不到的内容
  110. $scope.prop.html=ue.getContent();
  111. $scope.prop.text=$("#text").val();
  112. if($scope.prop.html==""){
  113. $.ligerDialog.error("请正确输入html模板");
  114. return;
  115. }
  116. if($scope.prop.text==""){
  117. $.ligerDialog.error("请正确输入text模板");
  118. return;
  119. }
  120. NodeMsgTemplate.save($scope.prop,function(data){
  121. if(data.result==1){
  122. $.ligerDialog.confirm(data.message+",是否继续操作", "提示信息",
  123. function(rtn) {
  124. if (rtn) {
  125. window.location.reload();
  126. } else {
  127. closeWin();
  128. }
  129. });
  130. }else{
  131. $.ligerDialog.err("提示","保存流程节点消息模板出错",data.message);
  132. }
  133. });
  134. }
  135. //初始化模板
  136. $scope.initTemp=function(){
  137. NodeMsgTemplate.ngjs({action:"getInitTemp",defId:defId,columnNum:$scope.param.columnNum},function(data){
  138. ue.ready(function () {
  139. ue.setContent(data.html);
  140. $("#text").val(data.text);
  141. });
  142. });
  143. }
  144. }]);