tugou.js 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. define(function (require) {
  2. return function (context) {
  3. var $grid1, $form;
  4. //查询小区
  5. function queryGrid2() {
  6. var _datas = [];
  7. $.yvan.ajax({
  8. async: false,
  9. method: 'post',
  10. url: api('/getAllUptown'),
  11. data: {userId: 0},
  12. success: function (data) {
  13. if (data.data != null && data.data != undefined) {
  14. for (var i = 0; i < data.data.length; i++) {
  15. _datas.push({
  16. "id": data.data[i].uptownId,
  17. "text": data.data[i].uptownName
  18. })
  19. }
  20. }
  21. }
  22. });
  23. return _datas;
  24. }
  25. // 输入搜索文本后点击回车按钮查询列表
  26. function enterQueryGrid1(e) {
  27. if (e.keyCode === 13) {
  28. var tmp = $(this).val();
  29. $form.formSet({queryProperties: tmp});
  30. queryGrid1();
  31. }
  32. }
  33. // 检索条件查询
  34. function queryGrid1() {
  35. var queryUrl = '/yeweihui/tglist';// 自行替换此参数
  36. var queryForm = $form.formGet();
  37. $grid1.reload({
  38. mtype: 'POST',
  39. url: api(queryUrl),
  40. queryParams: queryForm
  41. }, true);
  42. }
  43. // 搜索按钮
  44. var queryToolbarTitle = '资源需求管理';// 自行替换此参数
  45. var queryToolbar = {
  46. xtype: 'toolbar', title: queryToolbarTitle, items: [
  47. {
  48. text: '查询', iconCls: 'fa fa-search', onClick: function () {
  49. queryGrid1();
  50. }
  51. }, {
  52. text: '重置', iconCls: 'fa fa-refresh', onClick: function () {
  53. $form.formClear();
  54. queryGrid1();
  55. }
  56. }, {
  57. text: '关闭', iconCls: 'fa fa-times-circle', onClick: function () {
  58. App.closeMe(this);
  59. }
  60. }
  61. ]
  62. };
  63. // 搜索条件
  64. var queryFormPrompt = '团购标题';// 自行替换此参数
  65. var queryForm = {
  66. onRender: function () {
  67. $form = $(this);
  68. },
  69. xtype: 'form',
  70. items: [[
  71. {
  72. xtype: 'textbox',
  73. label: '检索条件',
  74. name: 'queryProperties',
  75. prompt: queryFormPrompt,
  76. labelWidth: 'auto',
  77. events: {keydown: enterQueryGrid1}, width: 350
  78. },
  79. {
  80. xtype: 'yvselect',
  81. name: 'uptownIds',
  82. label: '小区',
  83. data: queryGrid2(),
  84. multiple: true,
  85. labelWidth: 'auto',
  86. width: 350,
  87. onChange: function (data) {
  88. queryGrid1();
  89. },
  90. },
  91. {
  92. xtype: 'yvselect',
  93. name: 'tgStatus',
  94. label: '状态',
  95. data: [{id: '', text: '全部'}, {id: '1', text: '在团'}, {id: '2', text: '发货'}, {id: '3', text: '完成'}, {
  96. id: '4',
  97. text: '取消'
  98. }],
  99. labelWidth: 'auto',
  100. width: 200,
  101. onChange: function (data) {
  102. queryGrid1();
  103. },
  104. }
  105. ]]
  106. };
  107. var gridToolbarTitle = '资源需求列表';// 自行替换此参数
  108. var gridToolbar = {
  109. xtype: 'toolbar',
  110. title: gridToolbarTitle,
  111. items: [
  112. {
  113. text: '新增', iconCls: 'fa fa-plus-circle fa-lg', onClick: function () {
  114. $.yvan.showDialog(this,
  115. require('/app/whepi/tugou/dialogTugou.js')({
  116. isEdit: false,
  117. confirm: function () {
  118. queryGrid1();
  119. }
  120. })
  121. );
  122. }
  123. },
  124. {
  125. text: '取消', iconCls: 'fa fa-times-circle', onClick: function () {
  126. var row = $grid1.rowData();
  127. if (!row) {
  128. $.yvan.msg('请先选择一行数据');
  129. return;
  130. }
  131. if (row.tgStatus != 1) {
  132. $.yvan.msg('在团状态才能取消');
  133. return;
  134. }
  135. $.yvan.confirm('是否' + "<span style='color: red; font-weight:bold;'>取消</span>" + '[' + (row.tgTitle) + ']吗?', {
  136. yes: function (index) {
  137. $.yvan.ajax({
  138. method: 'post',
  139. url: api('/yeweihui/updateStatus'),
  140. data: {
  141. jmId: row.jmId,
  142. tgStatus: 4,
  143. },
  144. success: function (data) {
  145. $.yvan.msg('取消成功');
  146. $grid1.reload();
  147. }
  148. });
  149. }
  150. });
  151. }
  152. },
  153. {
  154. text: '完成', iconCls: 'fa fa-circle-o-notch', onClick: function () {
  155. var row = $grid1.rowData();
  156. if (!row) {
  157. $.yvan.msg('请先选择一行数据');
  158. return;
  159. }
  160. if (row.tgStatus != 1) {
  161. $.yvan.msg('在团状态才能完成');
  162. return;
  163. }
  164. $.yvan.confirm('是否' + "<span style='color: green; font-weight:bold;'>完成</span>" + '[' + (row.tgTitle) + ']吗?', {
  165. yes: function (index) {
  166. $.yvan.ajax({
  167. method: 'post',
  168. url: api('/yeweihui/updateStatus'),
  169. data: {
  170. jmId: row.jmId,
  171. tgStatus: 3,
  172. },
  173. success: function (data) {
  174. $.yvan.msg('完成');
  175. $grid1.reload();
  176. }
  177. });
  178. }
  179. });
  180. }
  181. },
  182. {
  183. text: '查看需求详情', iconCls: 'fa fa-search', onClick: function () {
  184. var row = $grid1.rowData();
  185. if (!row) {
  186. $.yvan.msg('请先选择一行数据');
  187. return;
  188. }
  189. $.yvan.showDialog(this,
  190. require('/app/whepi/tugou/import.js')({
  191. jmId: row.jmId,
  192. confirm: function () {
  193. $grid1.reload();
  194. },
  195. })
  196. );
  197. }
  198. },
  199. ]
  200. };
  201. return {
  202. north: {
  203. height: 88,
  204. /* split: true,
  205. border: false,*///底框是否可变动
  206. items: [
  207. queryToolbar,
  208. queryForm
  209. ]
  210. },
  211. center: {
  212. height: '60%',
  213. split: true,
  214. items:
  215. {
  216. onRender: function () {
  217. $grid1 = $(this);
  218. queryGrid1()
  219. },
  220. xtype: 'grid',
  221. toolbar:
  222. gridToolbar,
  223. idField: 'jmId',
  224. autoSizeColumns: true,//序号多 正确显示
  225. columns:
  226. [
  227. [
  228. {field: 'jmId', title: '信息id', hidden: true},
  229. {field: 'tgTitle', title: '标题', maxWidth: 200, align: 'left'},
  230. {
  231. field: 'tgType', title: '需求类型', maxWidth: 200, align: 'left', formatter: function (value) {
  232. if (value == 1) {
  233. return '食蔬采购';
  234. } else if (value == 2) {
  235. return '药品采购';
  236. } else if (value == 3) {
  237. return '医疗服务';
  238. } else if (value == 4) {
  239. return '生活用品';
  240. } else if (value == 5) {
  241. return '其他服务';
  242. }
  243. }
  244. },
  245. // {field: 'tgSupplier', title: '组织者', maxWidth: 200,},
  246. {
  247. field: 'tgGoods',
  248. title: '套餐描述', maxWidth: 200,
  249. },
  250. {
  251. field: 'tgPrice',
  252. title: '单价',
  253. },
  254. {
  255. field: 'tgMinNum',
  256. title: '最低配送(份)',
  257. align: 'left',
  258. },
  259. {
  260. field: 'tgMaxNum',
  261. title: '配送上限(份)',
  262. align: 'left',
  263. },
  264. {
  265. field: 'tgEndTime',
  266. title: '需求截止时间',
  267. align: 'center',
  268. },
  269. {
  270. field: 'tgDeliverTime', title: '预计配送时间', align: 'center',
  271. },
  272. {field: 'tgPhoneNumber', title: '服务电话', align: 'center'},
  273. /*{field: 'remark', title: '备注', maxWidth: 200, align: 'left'},*/
  274. {
  275. field: 'tgStatus', title: '状态',
  276. align: 'center', formatter: function (value) {
  277. if (value == 1) {
  278. return '<span style="color: green">在团</span>';
  279. } else if (value == 2) {
  280. return '发货';
  281. } else if (value == 3) {
  282. return '完成';
  283. } else if (value == 4) {
  284. return '<span style="color: red">取消</span>';
  285. }
  286. },
  287. },
  288. {field: 'tgStatus', title: '状态', hidden: true},
  289. {field: 'timeCreate', title: '创建时间', align: 'center'},
  290. {field: 'timeUpdate', title: '修改时间', align: 'center'},
  291. ]
  292. ]
  293. }
  294. }
  295. };
  296. };
  297. }
  298. );