specialPersonnel.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. define(function (require) {
  2. return function (context) {
  3. var $grid1, $form;
  4. // 输入搜索文本后点击回车按钮查询列表
  5. function enterQueryGrid1(e) {
  6. if (e.keyCode === 13) {
  7. var tmp = $(this).val();
  8. $form.formSet({queryProperties: tmp});
  9. queryGrid1();
  10. }
  11. }
  12. // 检索条件查询
  13. function queryGrid1() {
  14. var queryForm = $form.formGet();
  15. $grid1.reload({
  16. mtype: 'POST',
  17. url: api('/OutUser/selectAllOutUser'),
  18. queryParams: queryForm
  19. }, true);
  20. }
  21. var queryToolbar = {
  22. xtype: 'toolbar',
  23. title: '特殊人员详情',
  24. items: [
  25. {
  26. text: '查询', iconCls: 'fa fa-search', onClick: function () {
  27. queryGrid1();
  28. }
  29. }, {
  30. text: '重置', iconCls: 'fa fa-refresh', onClick: function () {
  31. $form.formClear();
  32. queryGrid1();
  33. }
  34. }, {
  35. text: '关闭', iconCls: 'fa fa-times-circle', onClick: function () {
  36. App.closeMe(this);
  37. }
  38. }
  39. ]
  40. };
  41. var queryForm = {
  42. onRender: function () {
  43. $form = $(this);
  44. },
  45. xtype: 'form',
  46. items: [[
  47. {
  48. xtype: 'textbox',
  49. label: '检索条件',
  50. name: 'queryProperties',
  51. prompt: "小区名称/联系人姓名",
  52. labelWidth: 'auto',
  53. events: {keydown: enterQueryGrid1}, width: 350
  54. },
  55. {
  56. xtype: 'textbox',
  57. label: '电话',
  58. name: 'phone',
  59. prompt: "小区名称",
  60. labelWidth: 'auto',
  61. events: {keydown: enterQueryGrid1}, width: 350
  62. },
  63. ]]
  64. };
  65. return {
  66. north: {
  67. height: 88,
  68. /* split: true,
  69. border: false,*///底框是否可变动
  70. items: [
  71. queryToolbar,
  72. queryForm
  73. ]
  74. },
  75. center: {
  76. height: '60%',
  77. split: true,
  78. items:
  79. {
  80. onRender: function () {
  81. $grid1 = $(this);
  82. queryGrid1()
  83. },
  84. xtype: 'grid',
  85. toolbar: {
  86. xtype: 'toolbar',
  87. title: '特殊人员详情',
  88. items: [
  89. {
  90. text: '添加', iconCls: 'fa fa-plus-circle fa-lg', onClick: function () {
  91. $.yvan.showDialog(this,
  92. require('/app/whepi/scan/addOutUser.js')({
  93. isEdit: false,
  94. confirm: function () {
  95. queryGrid1();
  96. }
  97. })
  98. );
  99. }
  100. },
  101. {
  102. text: '保存', iconCls: 'fa fa-pencil-square-o', onClick: function () {
  103. var row = $grid1.rowData();
  104. if (!row) {
  105. $.yvan.msg('请选择一条要保存的数据');
  106. return;
  107. }
  108. var startDateStr = row.startDateStr;
  109. var endDateStr = row.endDateStr;
  110. if (startDateStr > endDateStr) {
  111. $.yvan.msg('开始时间必须小于等于结束时间');
  112. return;
  113. }
  114. $.yvan.ajax({
  115. url: api('/OutUser/updateOutUser'),
  116. data: {
  117. tuId: row.tuId,
  118. startDate: row.startDateStr,
  119. endDate: row.endDateStr
  120. },
  121. method: 'post',
  122. async: false,
  123. success: function (data) {
  124. $.yvan.msg("操作成功");
  125. $grid1.reload();
  126. queryGrid1();
  127. }
  128. });
  129. }
  130. },
  131. {
  132. text: '删除', iconCls: 'fa fa fa-pencil-square-o fa-lg', onClick: function () {
  133. var row = $grid1.checkedData();
  134. if (row.length == 0) {
  135. $.yvan.msg('请至少选择一行数据');
  136. return;
  137. }
  138. var ids = "";
  139. for (var i=0; i<row.length; i++) {
  140. ids += row[i].tuId + ","
  141. }
  142. $.yvan.confirm('确定删除勾选的这' + row.length + '条特殊人员吗?', {
  143. yes: function (index) {
  144. $.yvan.ajax({
  145. method: 'post',
  146. url: api('/OutUser/deleteOutUser'),
  147. data: {ids: ids},
  148. success: function (data) {
  149. $.yvan.msg("删除成功");
  150. $grid1.reload();
  151. queryGrid1();
  152. }
  153. });
  154. }
  155. });
  156. }
  157. }
  158. ]
  159. },
  160. multiselect: true, /// 表格多选
  161. idField: 'tuId',
  162. editable: true,
  163. editOnSelected: true,
  164. autoSizeColumns: true,
  165. columns:
  166. [
  167. [
  168. {field: 'tuId', title: '用户ID', hidden: true},
  169. {field: 'userId', title: '用户ID', hidden: true},
  170. {field: 'uptownName', title: '小区', maxWidth: 200, align: 'left',},
  171. {field: 'ridgepole', title: '栋', maxWidth: 200, align: 'left',},
  172. {field: 'unit', title: '单元', maxWidth: 200, align: 'left',},
  173. {field: 'name', title: '名字', maxWidth: 200, align: 'left',},
  174. {field: 'phone', title: '电话', maxWidth: 200, align: 'left',},
  175. {
  176. field: 'startDateStr', title: '开始时间', minWidth: 120, maxWidth: 300, align: 'left', editor: {
  177. xtype: 'datebox',
  178. required: true,
  179. onChange: function (value) {
  180. console.log(value)
  181. },
  182. maxlength: 50
  183. }
  184. },
  185. {
  186. field: 'endDateStr', title: '结束时间', minWidth: 120, maxWidth: 200, align: 'left', editor: {
  187. xtype: 'datebox',
  188. required: true,
  189. onChange: function (value) {
  190. console.log(value)
  191. },
  192. maxlength: 50
  193. }
  194. },
  195. ]
  196. ]
  197. }
  198. }
  199. };
  200. };
  201. }
  202. );