canlendar.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. define(['jquery', 'bootstrap', 'backend', 'form', 'table'], function ($, undefined, Backend, Form, Table) {
  2. function get_need_number(){
  3. $.post("qingdong/customer/need/get_need_number",function (data){
  4. top.window.Backend.api.sidebar({
  5. 'qingdong/customer/need/index':[data.data.number, 'red', 'badge'],
  6. 'qingdong/examine/examine/index':[data.data.contract, 'red', 'badge'], //合同
  7. 'qingdong/examine/examine/consume':[data.data.consume, 'red', 'badge'],
  8. 'qingdong/examine/examine/receivables':[data.data.receivables, 'red', 'badge'],
  9. 'qingdong/examine/examine/achievement':[data.data.achievement, 'red', 'badge'],
  10. 'qingdong/examine/examine/work':[data.data.approval, 'red', 'badge'],
  11. 'qingdong/canlendar/canlendar':[data.data.eventOne, 'red', 'badge'],
  12. });
  13. },'json');
  14. }
  15. get_need_number();
  16. setInterval(function (){
  17. get_need_number();
  18. },50000);
  19. var Controller = {
  20. index: function () {
  21. // 初始化表格参数配置
  22. Table.api.init({
  23. extend: {
  24. index_url: 'qingdong/canlendar/canlendar/index?need='+Fast.api.query("need"),
  25. add_url: 'qingdong/canlendar/canlendar/add',
  26. edit_url: 'qingdong/canlendar/canlendar/edit',
  27. del_url: 'qingdong/canlendar/canlendar/del',
  28. table: 'canlendar'
  29. }
  30. });
  31. var table = $("#table");
  32. // 初始化表格
  33. table.bootstrapTable({
  34. url: $.fn.bootstrapTable.defaults.extend.index_url,
  35. sortName: 'id',
  36. columns: [
  37. [
  38. {field: 'state', checkbox: true},
  39. {field: 'title', title: __('标题'), operate:'like'},
  40. {field: 'start_time', title: __('开始时间'),operate:false},
  41. {field: 'end_time', title: __('结束时间'),operate:false},
  42. {field: 'status', title: __('状态'), formatter: Table.api.formatter.status, searchList: {0: __('未开始'), 1: __('执行中'), 2: __('已结束'), 3: __('已取消')}},
  43. {field: 'level', title: __('紧要程度'), formatter: Table.api.formatter.status, searchList: {1: __('重要'), 2: __('紧急'), 3: __('普通'), 4: __('重要且紧急')}},
  44. {field: 'remark', title: __('备注'),operate:false},
  45. {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
  46. {
  47. field: 'operate',
  48. title: __('Operate'),
  49. table: table,
  50. events: Table.api.events.operate,
  51. formatter: Table.api.formatter.operate
  52. }
  53. ]
  54. ],
  55. //启用普通表单搜索
  56. commonSearch: true,
  57. searchFormVisible: true,
  58. onLoadSuccess:function(){
  59. // 这里就是数据渲染结束后的回调函数
  60. $('.btn-editone').html('编辑');
  61. $('.fa-pencil').remove();
  62. $('.btn-delone').html('删除');
  63. $('.fa-trash').remove();
  64. $('.btn-editone').removeClass('btn-success')
  65. $('.btn-editone').removeClass('btn')
  66. $('.btn-delone').removeClass('btn')
  67. $('.btn-delone').removeClass('btn-danger')
  68. }
  69. });
  70. // 为表格绑定事件
  71. Table.api.bindevent(table);
  72. $('.search').hide();
  73. $('.btn-import').hide();
  74. },
  75. add: function () {
  76. $('.relation_type').change(function(){
  77. var type = $(this).val();
  78. var url = '';
  79. if(type == 1){
  80. url = 'qingdong/canlendar/canlendar/customer';
  81. }else if(type == 2){
  82. url = 'qingdong/canlendar/canlendar/contacts';
  83. }else if(type == 3){
  84. url = 'qingdong/canlendar/canlendar/contract';
  85. }else{
  86. url = 'qingdong/canlendar/canlendar/leads';
  87. }
  88. $.ajax({url:url,success:function(ret) {
  89. if (ret.code == 1) {
  90. var data = ret.data;
  91. var length = data.length;
  92. var html = '';
  93. for (var i = 0; i < length; i++) {
  94. html += '<option value="' + data[i].id + '">' + data[i].name + '</option>';
  95. }
  96. $('#c-type').html(html);
  97. $('select').selectpicker('refresh');
  98. }
  99. }
  100. });
  101. });
  102. Controller.api.bindevent();
  103. },
  104. edit: function () {
  105. $('.relation_type').change(function(){
  106. var type = $(this).val();
  107. var url = '';
  108. if(type == 1){
  109. url = 'qingdong/canlendar/canlendar/customer';
  110. }else if(type == 2){
  111. url = 'qingdong/canlendar/canlendar/contacts';
  112. }else if(type == 3){
  113. url = 'qingdong/canlendar/canlendar/contract';
  114. }else{
  115. url = 'qingdong/canlendar/canlendar/leads';
  116. }
  117. $.ajax({url:url,success:function(ret) {
  118. if (ret.code == 1) {
  119. var data = ret.data;
  120. var length = data.length;
  121. var html = '';
  122. for (var i = 0; i < length; i++) {
  123. html += '<option value="' + data[i].id + '">' + data[i].name + '</option>';
  124. }
  125. $('#c-type').html(html);
  126. $('select').selectpicker('refresh');
  127. }
  128. }
  129. });
  130. });
  131. Controller.api.bindevent();
  132. },
  133. api: {
  134. bindevent: function () {
  135. Form.api.bindevent($("form[role=form]"));
  136. },
  137. formatter: {
  138. thumb: function (value, row, index) {
  139. var style = row.storage == 'upyun' ? '!/fwfh/120x90' : '';
  140. return '<img src="' + row.image + '" data-tips-image alt="" title="封面图" style="max-height:90px;max-width:120px">';
  141. },
  142. }
  143. }
  144. };
  145. return Controller;
  146. });