rule_logiclist.html 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. {{template "inc"}}
  2. <!-- Main Header -->
  3. {{template "header"}}
  4. <!-- Left side column. 权限菜单 -->
  5. {{template "memu"}}
  6. <!-- Content Wrapper. Contains page content -->
  7. <div class="content-wrapper">
  8. <section class="content-header">
  9. <h1>
  10. <small><a class="btn btn-primary opr" opr="new">新增逻辑</a></small>
  11. </h1>
  12. <ol class="breadcrumb">
  13. <li><a href="/admin/version"><i class="fa fa-dashboard"></i>抽取版本</a></li>
  14. <li class="active"><a href="/admin/version/info?vid={{.vid}}">属性配置</a></li>
  15. <li class="active"><a href="/admin/rulelogic?vid={{.vid}}&pid={{.pid}}">抽取逻辑</a></li>
  16. </ol>
  17. </section>
  18. <!-- Main content -->
  19. <section class="content">
  20. <div class="row">
  21. <div class="col-xs-12">
  22. <div class="box">
  23. <div class="box-body">
  24. <table id="dataTable" class="table table-bordered table-hover">
  25. <thead>
  26. <tr>
  27. <th>名称</th>
  28. <th>创建人</th>
  29. <th>描述</th>
  30. <th>是否启用</th>
  31. <th>配置规则</th>
  32. <th>操作</th>
  33. </tr>
  34. </thead>
  35. </table>
  36. </div>
  37. <!-- /.box-body -->
  38. </div>
  39. <!-- /.box -->
  40. </div>
  41. </div>
  42. </section>
  43. </div>
  44. {{template "luares"}}
  45. {{template "dialog"}}
  46. {{template "footer"}}
  47. <script>
  48. menuActive("version")
  49. $(function () {
  50. ttable=$('#dataTable').DataTable({
  51. "paging" : false,
  52. "lengthChange": false,
  53. "searching" : true,
  54. "ordering" : false,
  55. "info" : true,
  56. "autoWidth" : false,
  57. "ajax": {
  58. "url": "/admin/rulelogic/data",
  59. "type": "post",
  60. "data":{"vid":{{ .vid}} ,"pid":{{ .pid}} }
  61. },
  62. "language": {
  63. "url": "/res/dist/js/dataTables.chinese.lang"
  64. },
  65. "columns": [
  66. { "data": "s_name"},
  67. { "data": "s_username"},
  68. { "data": "s_descript"},
  69. { "data": "isuse",render:function(val,a,row){
  70. tmp=""
  71. if(val){
  72. tmp="<a href='#' title='停用' onclick='use(\""+row._id+"\",false)'><i class='fa fa-fw fa-circle text-green'></i></a>已启用"
  73. }else{
  74. tmp="<a href='#' title='启用' onclick='use(\""+row._id+"\",true)'><i class='fa fa-fw fa-circle text-red'></i></a>未启用"
  75. }
  76. return tmp
  77. }},
  78. {"data":"_id","width":"25%",render:function(val,a,row){
  79. tmp = '<div class="btn-group">'+
  80. '<a class="btn btn-sm btn-primary" href="/admin/logicpre?vid={{.vid}}&pid={{.pid}}&sid='+row._id+'">前置规则</a>'+
  81. '<a class="btn btn-sm btn-success" href="/admin/logicore?vid={{.vid}}&pid={{.pid}}&sid='+row._id+'">抽取规则</a>'+
  82. '<a class="btn btn-sm btn-info" href="/admin/logicback?vid={{.vid}}&pid={{.pid}}&sid='+row._id+'">后置规则</a>'+
  83. '<a class="btn btn-sm btn-warning" href="/admin/logickv?vid={{.vid}}&pid={{.pid}}&sid='+row._id+'">kv规则</a>'+
  84. '</div>';
  85. return tmp
  86. }},
  87. {"data":"s_version","width":"15%",render:function(val,a,row,pos){
  88. return '<a class="btn btn-sm btn-primary opr" opr="edit" row="'+pos.row+'" >编辑</a>'+
  89. '&nbsp;&nbsp;<a class="btn btn-sm btn-warning" onclick="del(\''+row._id+'\')">删除</a>';
  90. }}
  91. ]
  92. });
  93. ttable.on('init.dt', function () {
  94. $(".opr").click(function(){
  95. var n=$(this).attr("opr")
  96. var htmlObj={},obj,tag=[]
  97. var _tit=""
  98. switch(n){
  99. case "edit":
  100. obj=ttable.row($(this).closest("tr")).data()
  101. case "editlua":
  102. obj=ttable.row($(this).closest("tr")).data()
  103. case "new":
  104. tag=[{label:"名称",s_label:"s_name",placeholder:"",must:true},
  105. {label:"描述",s_label:"s_descript",type:"tpl_text"},
  106. {label:"启用",s_label:"isuse",type:"tpl_list_local",list:[{"s_name":"是","_id":true},{"s_name":"否","_id":false}],default:true},
  107. {label:"标题抽取",s_label:"extfrom",type:"tpl_list_local",list:[{"s_name":"是","_id":true},{"s_name":"否","_id":false}],default:false},
  108. {label:"是否适用",s_label:"s_luascript",type:"tpl_text",must:true},
  109. {s_label:"_id",type:"tpl_hidden"},
  110. {s_label:"vid",type:"tpl_hidden"},{s_label:"pid",type:"tpl_hidden"}]
  111. if(n=="edit"){
  112. _tit="编辑-"+obj.s_name
  113. }else{
  114. _tit="新增逻辑"
  115. obj={"s_luascript":"function logic(doc)\n\treturn true\nend","vid":"{{.vid}}","pid":"{{.pid}}","s_type":"0"}
  116. }
  117. htmlObj={
  118. title:_tit,
  119. tag:tag,
  120. lua:true,
  121. bts:[
  122. {label:"保存",class:"btn-primary",
  123. fun:function(){
  124. var obj={}
  125. var bcon=true
  126. $("#_con").find("input[id!=s_show],textarea").each(function(i,el){
  127. var val=$(el).val();
  128. if(el.id=="s_luascript"){
  129. val=editor_1.getValue()
  130. obj[el.id]=val
  131. }else{
  132. obj[el.id]=$(el).val()
  133. }
  134. if(el.id!="_id"&&$(el).attr("must")&&!val){
  135. bcon=false
  136. return false
  137. }
  138. })
  139. if (bcon){
  140. $.post("/admin/rulelogic/save",obj,function(data){
  141. if(data&&data.rep){
  142. window.location.href="/admin/rulelogic?vid={{.vid}}&pid={{.pid}}"
  143. }else{
  144. showTip(data.msg,1000)
  145. }
  146. },'json')
  147. }else{
  148. alert("红色标签的表单不能为空!")
  149. }
  150. }
  151. }
  152. ]
  153. }
  154. OpenDialog(htmlObj,obj)
  155. break;
  156. }
  157. });
  158. })
  159. })
  160. function del(_id){
  161. showConfirm("确定删除?", function() {
  162. $.ajax({
  163. url:"/admin/rulelogic/del",
  164. type:"post",
  165. data:{"_id":_id},
  166. success:function(r){
  167. if(r.rep){
  168. window.location.href="/admin/rulelogic?vid={{.vid}}&pid={{.pid}}";
  169. }else{
  170. showTip("删除失败", 1000);
  171. }
  172. }
  173. })
  174. });
  175. }
  176. function use(_id,utype){
  177. smg=""
  178. if(utype){
  179. smg="确定启用?"
  180. }else{
  181. smg="确定停用?"
  182. }
  183. showConfirm(smg, function() {
  184. $.ajax({
  185. url:"/admin/rulelogic/use",
  186. type:"post",
  187. data:{"_id":_id,"isuse":utype},
  188. success:function(r){
  189. if(r.rep){
  190. window.location.href="/admin/rulelogic?vid={{.vid}}&pid={{.pid}}"
  191. }else{
  192. showTip("启用失败", 1000, function() {});
  193. }
  194. }
  195. })
  196. });
  197. }
  198. </script>