tugou.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331
  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: 1,
  117. confirm: function () {
  118. queryGrid1();
  119. }
  120. })
  121. );
  122. }
  123. },
  124. {
  125. text: '增补修订', iconCls: 'fa fa-pencil-square-o', 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.showDialog(this,
  136. require('/app/whepi/tugou/dialogTugou.js')({
  137. isEdit: 2,
  138. jmId: row.jmId,
  139. confirm: function () {
  140. queryGrid1();
  141. }
  142. })
  143. );
  144. }
  145. },
  146. {
  147. text: '取消', iconCls: 'fa fa-times-circle', onClick: function () {
  148. var row = $grid1.rowData();
  149. if (!row) {
  150. $.yvan.msg('请先选择一行数据');
  151. return;
  152. }
  153. if (row.tgStatus != 1) {
  154. $.yvan.msg('在团状态才能取消');
  155. return;
  156. }
  157. $.yvan.showDialog(this,///yeweihui/updateStatus
  158. require('/app/whepi/tugou/dialogTugou.js')({
  159. isEdit: 3,
  160. jmId: row.jmId,
  161. confirm: function () {
  162. queryGrid1();
  163. }
  164. })
  165. );
  166. }
  167. },
  168. {
  169. text: '完成', iconCls: 'fa fa-circle-o-notch', onClick: function () {
  170. var row = $grid1.rowData();
  171. if (!row) {
  172. $.yvan.msg('请先选择一行数据');
  173. return;
  174. }
  175. if (row.tgStatus == 3 || row.tgStatus == 4) {
  176. $.yvan.msg('在团状态或者发货状态才能完成');
  177. return;
  178. }
  179. $.yvan.confirm('是否' + "<span style='color: green; font-weight:bold;'>完成</span>" + '[' + (row.tgTitle) + ']吗?', {
  180. yes: function (index) {
  181. $.yvan.ajax({
  182. method: 'post',
  183. url: api('/yeweihui/updateStatusstarts'),
  184. data: {
  185. jmId: row.jmId,
  186. tgStatus: 3,
  187. },
  188. success: function (data) {
  189. $.yvan.msg('完成');
  190. $grid1.reload();
  191. }
  192. });
  193. }
  194. });
  195. }
  196. },
  197. {
  198. text: '查看需求详情', iconCls: 'fa fa-search', onClick: function () {
  199. var row = $grid1.rowData();
  200. if (!row) {
  201. $.yvan.msg('请先选择一行数据');
  202. return;
  203. }
  204. $.yvan.showDialog(this,
  205. require('/app/whepi/tugou/import.js')({
  206. jmId: row.jmId,
  207. confirm: function () {
  208. $grid1.reload();
  209. },
  210. })
  211. );
  212. }
  213. },
  214. ]
  215. };
  216. return {
  217. north: {
  218. height: 88,
  219. /* split: true,
  220. border: false,*///底框是否可变动
  221. items: [
  222. queryToolbar,
  223. queryForm
  224. ]
  225. },
  226. center: {
  227. height: '60%',
  228. split: true,
  229. items:
  230. {
  231. onRender: function () {
  232. $grid1 = $(this);
  233. queryGrid1()
  234. },
  235. xtype: 'grid',
  236. toolbar:
  237. gridToolbar,
  238. idField: 'jmId',
  239. autoSizeColumns: true,//序号多 正确显示
  240. columns:
  241. [
  242. [
  243. {field: 'jmId', title: '信息id', hidden: true},
  244. {field: 'tgTitle', title: '标题', maxWidth: 200, align: 'left'},
  245. {
  246. field: 'tgType', title: '需求类型', maxWidth: 200, align: 'left', formatter: function (value) {
  247. if (value == 1) {
  248. return '食蔬采购';
  249. } else if (value == 2) {
  250. return '药品采购';
  251. } else if (value == 3) {
  252. return '医疗服务';
  253. } else if (value == 4) {
  254. return '生活用品';
  255. } else if (value == 5) {
  256. return '其他服务';
  257. }
  258. }
  259. },
  260. {field: 'tgSupplier', title: '供应商', maxWidth: 200,},
  261. {
  262. field: 'tgGoods',
  263. title: '套餐描述', maxWidth: 200,
  264. },
  265. {
  266. field: 'tgPrice',
  267. title: '单价',
  268. },
  269. {
  270. field: 'tgItemNum',
  271. title: '个人限额',
  272. align: 'left',
  273. },
  274. {
  275. field: 'tgMinNum',
  276. title: '最低配送(份)',
  277. align: 'left',
  278. },
  279. {
  280. field: 'tgMaxNum',
  281. title: '配送上限(份)',
  282. align: 'left',
  283. },
  284. {
  285. field: 'tgEndTime',
  286. title: '需求截止时间',
  287. align: 'center',
  288. },
  289. {
  290. field: 'tgDeliverTime', title: '预计配送时间', align: 'center',
  291. },
  292. {field: 'tgPhoneNumber', title: '服务电话', align: 'center'},
  293. /*{field: 'remark', title: '备注', maxWidth: 200, align: 'left'},*/
  294. {
  295. field: 'tgStatus', title: '状态',
  296. align: 'center', formatter: function (value) {
  297. if (value == 1) {
  298. return '<span style="color: green">在团</span>';
  299. } else if (value == 2) {
  300. return '发货';
  301. } else if (value == 3) {
  302. return '完成';
  303. } else if (value == 4) {
  304. return '<span style="color: red">取消</span>';
  305. }
  306. },
  307. },
  308. {field: 'tgStatus', title: '状态', hidden: true},
  309. {field: 'remark', title: '备注', maxWidth: 300,},
  310. {field: 'timeCreate', title: '创建时间', align: 'center'},
  311. {field: 'timeUpdate', title: '修改时间', align: 'center'},
  312. ]
  313. ]
  314. }
  315. }
  316. };
  317. };
  318. }
  319. );