deliver.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. index: function () {
  4. $('#lager').click(function () {
  5. $('#iframe1').contentWindow.location.reload('lager.html');
  6. });
  7. Controller.api.bindevent();
  8. },
  9. lager: function () {
  10. // 初始化表格参数配置
  11. Table.api.init();
  12. this.table.first();
  13. this.table.second();
  14. Controller.api.bindevent();
  15. },
  16. table:{
  17. first:function (){
  18. var table = $("#table");
  19. // 初始化表格
  20. table.bootstrapTable({
  21. url: 'deliver/lager',
  22. pk: 'id',
  23. height:300,
  24. sortName: 'id',
  25. toolbar:'#toolbar',
  26. searchFormVisible:true,
  27. search:false,
  28. showToggle:false,
  29. showColumns:false,
  30. showExport:false,
  31. columns: [
  32. [
  33. {checkbox: true},
  34. {field: 'id', title: 'ID', visible:false,operate: false},
  35. {field: 'bach', title: __('批次号'),operate: "LIKE"},
  36. {field: 'l_flow', title: __('托盘号'), operate: false},
  37. {field: 'matter_name', title: __('辅料名称'), operate: 'LIKE',searchList: $.getJSON("deliver/matterName")},
  38. {field: 'manufacture_date', title: '生产日期', operate: 'RANGE', addclass: 'datetimerange',datetimeFormat:'YYYY-MM-DD', formatter: Table.api.formatter.datetime},
  39. {field: 'code', title: __('大件编码'), operate: false},
  40. {field: 'small_num', title: __('小件数'),operate: false},
  41. ]
  42. ]
  43. });
  44. //导出发货按钮
  45. $('.btn-print').on('click',function () {
  46. var ids = Table.api.selectedids(table);
  47. if (ids.length === 0){
  48. alert('至少选择一个大件');
  49. }
  50. var lager = ids.toString();
  51. Fast.api.ajax({
  52. url:'deliver/print',
  53. data:{lager_id:lager},
  54. },function (data,res) {
  55. return false;
  56. },function (data) {
  57. return false;
  58. })
  59. })
  60. // 为表格绑定事件
  61. Table.api.bindevent(table);
  62. //去掉时间区间记忆
  63. table.on('post-body.bs.table',function (e,settings,json,xhr) {
  64. $('.datetimerange').each(function () {
  65. $(this).attr('autocomplete','off');
  66. })
  67. });
  68. //复选框全选事件
  69. table.on('check-all.bs.table',function (e,rows){
  70. var lagerlist = '';
  71. for (i=0;i<rows.length;i++){
  72. lagerlist = lagerlist + rows[i].id + ',';
  73. }
  74. $("#myTabContent1 .search input").val(lagerlist);
  75. $("#myTabContent1 .btn-refresh").trigger("click");
  76. });
  77. //复选框全反选
  78. table.on('uncheck-all.bs.table',function (e,rows) {
  79. });
  80. //复选框单个选中
  81. table.on('check.bs.table',function (e,rows){
  82. });
  83. //复选框单个反选
  84. table.on('uncheck.bs.table',function (e,rows) {
  85. });
  86. }, second:function(){
  87. //小件列表
  88. var smallTable = $('#small_table');
  89. smallTable.bootstrapTable({
  90. url:'deliver/smallList',
  91. height: 300,
  92. toolbar: '#toolbar1',
  93. searchText:'',
  94. commonSearch:false,
  95. showToggle:false,
  96. showColumns:false,
  97. showExport:false,
  98. columns: [
  99. [
  100. {field: 'code', title: __('小件标签代码'),operate: false},
  101. {field: 'l_flow', title: __('当前序号'),operate: false},
  102. {field: 'print_num', title: __('打印次数'),operate: false},
  103. {field: 'status', title: __('状态'),operate: false},
  104. ]
  105. ]
  106. });
  107. // 为表格绑定事件
  108. Table.api.bindevent(smallTable);
  109. }
  110. },
  111. apply: function () {
  112. // 初始化表格参数配置
  113. Table.api.init({
  114. extend: {
  115. index_url: 'deliver/apply' + location.search,
  116. goods_url: 'deliver/goods',
  117. del_url:'deliver/apply_del',
  118. table:'deliver'
  119. }
  120. });
  121. var table = $("#table2");
  122. // 初始化表格
  123. table.bootstrapTable({
  124. url: $.fn.bootstrapTable.defaults.extend.index_url,
  125. pk: 'id',
  126. height:500,
  127. sortName: 'id',
  128. searchFormVisible:true,
  129. search:false,
  130. showToggle:false,
  131. showColumns:false,
  132. showExport:false,
  133. fixedColumns: true,
  134. fixedRightNumber: 1,
  135. columns: [
  136. [
  137. {checkbox: true},
  138. {field: 'id', title: __('Id'),visible:false,operate: false},
  139. {field: 'matter_name', title: '辅料名称', operate: 'LIKE',searchList: $.getJSON("deliver/matterName")},
  140. {field: 'matter_no', title: '辅料编码', operate: false},
  141. {field: 'username', title: '所属用户', operate: 'LIKE'},
  142. {field: 'large_num', title: '大件数量', operate: false},
  143. {field: 'small_num', title: '小件数量', operate: false},
  144. {field: 'create_time', title: '创建时间', operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime},
  145. {field: 'file_dir', title: '下载路径', operate: false},
  146. {field: 'status', title: '状态', operate: 'LIKE',searchList: {"0":'待发货',"1":'已删除'}, formatter: Table.api.formatter.status},
  147. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  148. ]
  149. ],
  150. });
  151. // 为表格绑定事件
  152. Table.api.bindevent(table);
  153. //发货按钮
  154. $('.btn-goods').on('click',function () {
  155. var ids = Table.api.selectedids(table);
  156. if (ids.length === 0){
  157. alert('至少选择一个订单');
  158. }
  159. var id_str = ids.toString();
  160. Fast.api.open('deliver/goods?ids='+id_str,'发货信息',{area:["60%","60%"]})
  161. });
  162. //去掉时间区间输入记忆
  163. table.on('post-body.bs.table',function (e,settings,json,xhr) {
  164. $('.datetimerange').each(function () {
  165. $(this).attr('autocomplete','off');
  166. })
  167. });
  168. Controller.api.bindevent();
  169. },
  170. goods: function () {
  171. $('#apply_btn').click(function () {
  172. var ids = $('#goods_id').val();
  173. var order_number = $('#c-order_number').val();
  174. if (order_number == null || order_number === ''){
  175. layer.confirm('订单号不能为空');
  176. }
  177. var deliveryman = $('#c-deliveryman').val();
  178. if (deliveryman == null || deliveryman === ''){
  179. layer.confirm('司机名称不能为空');
  180. }
  181. var shr_phone = $('#c-shr_phone').val();
  182. if (shr_phone == null || shr_phone === ''){
  183. layer.confirm('手机号不能为空');
  184. }
  185. var plate_number = $('c-plate_number').val();
  186. var note = $('c-note').val();
  187. Fast.api.ajax({
  188. url:'deliver/apply_add',
  189. data:{
  190. ids:ids,
  191. order_number:order_number,
  192. deliveryman:deliveryman,
  193. shr_phone:shr_phone,
  194. plate_number:plate_number,
  195. note:note,
  196. }
  197. },function (data,res) {
  198. parent.Toastr.success("成功");
  199. Fast.api.close();
  200. parent.Fast.api.refreshmenu();
  201. return false;
  202. },function (data) {
  203. parent.Toastr.error('失败');
  204. Fast.api.close();
  205. return false;
  206. })
  207. });
  208. Controller.api.bindevent();
  209. },
  210. dispatch: function () {
  211. // 初始化表格参数配置
  212. Table.api.init({
  213. extend: {
  214. index_url: 'deliver/dispatch' + location.search,
  215. del_url:'deliver/dispatch_del',
  216. table:'deliver'
  217. }
  218. });
  219. var table = $("#table3");
  220. // 初始化表格
  221. table.bootstrapTable({
  222. url: $.fn.bootstrapTable.defaults.extend.index_url,
  223. pk: 'id',
  224. height:500,
  225. sortName: 'id',
  226. searchFormVisible:true,
  227. showToggle:false,
  228. showColumns:false,
  229. showExport:false,
  230. fixedColumns: true,
  231. fixedRightNumber: 1,
  232. columns: [
  233. [
  234. {checkbox: true},
  235. {field: 'id', title: __('Id'),visible:false,operate: false},
  236. {field: 'matter_name', title: '辅料名称', operate: 'LIKE',},
  237. {field: 'matter_no', title: '辅料编码', operate: false},
  238. {field: 'username', title: '所属用户', operate: 'LIKE'},
  239. {field: 'large_num', title: '大件数量', operate: false},
  240. {field: 'small_num', title: '小件数量', operate: false},
  241. {field: 'create_time', title: '创建时间', operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime},
  242. {field: 'file_dir', title: '下载路径', operate: false},
  243. {field: 'status', title: '状态', operate: 'LIKE',searchList: {"0":'待发货',"1":'已删除'}, formatter: Table.api.formatter.status},
  244. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  245. ]
  246. ],
  247. });
  248. // 为表格绑定事件
  249. Table.api.bindevent(table);
  250. Controller.api.bindevent();
  251. },
  252. receive: function () {
  253. // 初始化表格参数配置
  254. Table.api.init({
  255. extend: {
  256. index_url: 'deliver/receive' + location.search,
  257. del_url:'deliver/receive_del',
  258. table:'deliver'
  259. }
  260. });
  261. var table = $("#table");
  262. // 初始化表格
  263. table.bootstrapTable({
  264. url: $.fn.bootstrapTable.defaults.extend.index_url,
  265. pk: 'id',
  266. height:500,
  267. sortName: 'id',
  268. searchFormVisible:true,
  269. showToggle:false,
  270. showColumns:false,
  271. showExport:false,
  272. fixedColumns: true,
  273. fixedRightNumber: 1,
  274. columns: [
  275. [
  276. {checkbox: true},
  277. {field: 'id', title: __('Id'),visible:false,operate: false},
  278. {field: 'matter_name', title: '辅料名称', operate: 'LIKE',},
  279. {field: 'matter_no', title: '辅料编码', operate: false},
  280. {field: 'username', title: '所属用户', operate: 'LIKE'},
  281. {field: 'large_num', title: '大件数量', operate: false},
  282. {field: 'small_num', title: '小件数量', operate: false},
  283. {field: 'create_time', title: '创建时间', operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime},
  284. {field: 'file_dir', title: '下载路径', operate: false},
  285. {field: 'status', title: '状态', operate: 'LIKE',searchList: {"0":'待发货',"1":'已删除'}, formatter: Table.api.formatter.status},
  286. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  287. ]
  288. ],
  289. });
  290. // 为表格绑定事件
  291. Table.api.bindevent(table);
  292. Controller.api.bindevent();
  293. },
  294. api: {
  295. bindevent: function () {
  296. Form.api.bindevent($("form[role=form]"));
  297. }
  298. }
  299. };
  300. return Controller;
  301. });