mkactivityform.js 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../mkactivityform/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: 'mmId', name: 'mmId', index: 'mm_id', key: true, hidden: true},
  7. {label: '活动形式名称', name: 'mkName', index: 'mk_name', width: 80, align: 'center'},
  8. {label: '活动形式代码', name: 'mkCode', index: 'mk_code', width: 80, align: 'center'},
  9. {label: '创建时间', name: 'createTime', index: 'create_time', width: 80, align: 'center',
  10. formatter: function (value) {
  11. return transDate(value, 'yyyy-MM-dd hh:mm:ss');
  12. }
  13. },
  14. {label: '创建人', name: 'createrName', width: 80, align: 'center'},
  15. {label: '操作', width: 80, align: 'center',
  16. formatter: function (value, col, row) {
  17. htmlStr = "<button class='btn btn-outline btn-primary' " +
  18. "onclick='vm.showMkactivities(\""+row.mkCode+"\")'>管理营销方式</button>";
  19. return htmlStr;
  20. }
  21. }
  22. ],
  23. viewrecords: true,
  24. height: 550,
  25. width:1680,
  26. rowNum: 10,
  27. rowList: [10, 30, 50],
  28. rownumbers: true,
  29. rownumWidth: 25,
  30. autowidth: false,
  31. multiselect: true,
  32. pager: "#jqGridPager",
  33. jsonReader: {
  34. root: "page.list",
  35. page: "page.currPage",
  36. total: "page.totalPage",
  37. records: "page.totalCount"
  38. },
  39. prmNames: {
  40. page: "page",
  41. rows: "limit",
  42. order: "order"
  43. },
  44. gridComplete: function () {
  45. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
  46. }
  47. });
  48. var marketing =
  49. {'lscx': '临时促销','yhq': '优惠券','rchd': '日常活动','mysy': '买一送一','mj': '满减', 'mz': '满赠','dz': '打折','zhjsp': '组合价商品'};
  50. $("#jqGridOrder").jqGrid({
  51. url: '../mkactivityform/queryMkactivitiesList',
  52. datatype: "json",
  53. colModel: [
  54. {label: 'mkaId', name: 'mkaId', index: 'mka_id', key: true, hidden: true},
  55. {label: '活动主题', name: 'mkaTopic', index: 'mka_topic', width: 80, align: 'center',
  56. formatter:function(value){
  57. var mkaTopicName ;
  58. if(value === 'lscx')
  59. mkaTopicName = marketing.lscx;
  60. else if(value === 'yhq')
  61. mkaTopicName = marketing.yhq;
  62. else if(value === 'rchd')
  63. mkaTopicName = marketing.rchd;
  64. else if(value === 'mysy')
  65. mkaTopicName = marketing.mysy;
  66. else if(value === 'mj')
  67. mkaTopicName = marketing.mj;
  68. else if(value === 'mz')
  69. mkaTopicName = marketing.mz;
  70. else if(value === 'dz')
  71. mkaTopicName = marketing.dz;
  72. else if(value === 'zhjsp')
  73. mkaTopicName = marketing.zhjsp;
  74. return mkaTopicName == null? value : mkaTopicName;
  75. }},
  76. {label: '商户名称', name: 'merchName', width: 80, align: 'center'},
  77. {label: '第三方商户', name: 'thirdMerchName', width: 80, align: 'center'},
  78. {label: '门店编号', name: 'storeId', width: 80, align: 'center',hidden: true},
  79. {label: '活动门店', name: 'storeName', width: 80, align: 'center'},
  80. {label: '是否启用', name: 'mkaStatus', index: 'mka_status', width: 60, align: 'center',
  81. formatter: function (value) {
  82. if (value == '0') {
  83. return '否';
  84. } else if (value == '1') {
  85. return '是';
  86. }
  87. return '';
  88. }
  89. },
  90. {label: '开始时间', name: 'mkaStartTime', index: 'mka_start_time', width: 80, align: 'center'},
  91. {label: '结束时间', name: 'mkdEndTime', index: 'mkd_end_time', width: 80, align: 'center'},
  92. {label: '是否提前结束', name: 'mkaEndEarly', index: 'mka_end_early', width: 60, align: 'center',
  93. formatter: function (value) {
  94. if (value == '0') {
  95. return '否';
  96. } else if (value == '1') {
  97. return '是';
  98. }
  99. return '';
  100. }
  101. },
  102. {label: '提前结束时间', name: 'mkdEndEarlyTime', index: 'mkd_end_early_time', width: 80, align: 'center'},
  103. {label: '操作', width: 80, align: 'center',
  104. formatter: function (value, col, row) {
  105. htmlStr = "<button class='btn btn-outline btn-primary' " +
  106. "onclick='vm.showMkactivitiesGoods(\""+row.mkaId+"\",\""+row.storeId+"\",\""+row.mkaTopic+"\")'>管理商品</button>";
  107. return htmlStr;
  108. }
  109. }],
  110. viewrecords: true,
  111. height: 550,
  112. width:1680,
  113. rowNum: 10,
  114. rowList: [10, 30, 50],
  115. rownumbers: true,
  116. rownumWidth: 25,
  117. autowidth: false,
  118. multiselect: true,
  119. pager: "#jqGridPagerOrder",
  120. jsonReader: {
  121. root: "page.list",
  122. page: "page.currPage",
  123. total: "page.totalPage",
  124. records: "page.totalCount"
  125. },
  126. prmNames: {
  127. page: "page",
  128. rows: "limit",
  129. order: "order"
  130. },
  131. gridComplete: function () {
  132. $("#jqGridOrder").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
  133. }
  134. });
  135. });
  136. let vm = new Vue({
  137. el: '#rrapp',
  138. data: {
  139. showViewList: true,
  140. showList: true,
  141. title: null,
  142. mkActivityForm: {},
  143. ruleValidate: {
  144. mkCode: [
  145. {required: true, message: '活动形式代码不能为空', trigger: 'blur'}
  146. ],
  147. mkName: [
  148. {required: true, message: '活动形式名称不能为空', trigger: 'blur'}
  149. ]
  150. },
  151. q: {
  152. name: ''
  153. },
  154. showMkactivitiesViewList: true,//管理营销方式
  155. showMkactivitiesList: true,
  156. mkActivities: {},
  157. mkCode: '',
  158. isMkdEndEarlyTimeShow: true,//提前结束活动时间
  159. merchList: {},//商户
  160. thirdMerchantBizList: {},//第三方商户
  161. storeList: {},//门店
  162. mkaStartTime: '',//开始时间
  163. mkdEndTime: '',//结束时间
  164. mkdEndEarlyTime: '',//提前结束时间,
  165. marketings:[
  166. {
  167. id: 'lscx',
  168. name: '临时促销'
  169. }, {
  170. id: 'yhq',
  171. name: '优惠券'
  172. }, {
  173. id: 'rchd',
  174. name: '日常活动'
  175. }, {
  176. id: 'mysy',
  177. name: '买一送一'
  178. }, {
  179. id: 'mj',
  180. name: '满减'
  181. }, {
  182. id: 'mz',
  183. name: '满赠'
  184. }, {
  185. id: 'dz',
  186. name: '打折'
  187. }, {
  188. id: 'zhjsp',
  189. name: '组合价商品'
  190. }
  191. ],
  192. },
  193. methods: {
  194. query: function () {
  195. vm.reload();
  196. },
  197. add: function () {
  198. vm.showViewList = false;
  199. vm.showMkactivitiesViewList = true;
  200. vm.showList = false;
  201. vm.title = "新增";
  202. vm.mkActivityForm = {};
  203. },
  204. update: function (event) {
  205. let mmId = getSelectedRow();
  206. if (mmId == null) {
  207. return;
  208. }
  209. vm.showViewList = false;
  210. vm.showMkactivitiesViewList = true;
  211. vm.showList = false;
  212. vm.title = "修改";
  213. vm.getInfo(mmId)
  214. },
  215. saveOrUpdate: function (event) {
  216. let url = vm.mkActivityForm.mmId == null ? "../mkactivityform/save" : "../mkactivityform/update";
  217. $.ajax({
  218. type: "POST",
  219. url: url,
  220. contentType: "application/json",
  221. data: JSON.stringify(vm.mkActivityForm),
  222. success: function (r) {
  223. if (r.code === 0) {
  224. alert('操作成功', function (index) {
  225. vm.reload();
  226. });
  227. } else {
  228. alert(r.msg);
  229. }
  230. }
  231. });
  232. },
  233. del: function (event) {
  234. let mmIds = getSelectedRows();
  235. if (mmIds == null){
  236. return;
  237. }
  238. confirm('确定要删除选中的记录?', function () {
  239. $.ajax({
  240. type: "POST",
  241. url: "../mkactivityform/delete",
  242. contentType: "application/json",
  243. data: JSON.stringify(mmIds),
  244. success: function (r) {
  245. if (r.code == 0) {
  246. alert('操作成功', function (index) {
  247. $("#jqGrid").trigger("reloadGrid");
  248. });
  249. } else {
  250. alert(r.msg);
  251. }
  252. }
  253. });
  254. });
  255. },
  256. getInfo: function(mmId){
  257. $.get("../mkactivityform/info/"+mmId, function (r) {
  258. vm.mkActivityForm = r.mkActivityForm;
  259. });
  260. },
  261. reloadSearch: function() {
  262. vm.q = {
  263. name: ''
  264. }
  265. vm.reload();
  266. },
  267. reload: function (event) {
  268. vm.showList = true;
  269. vm.showViewList = true;
  270. vm.showMkactivitiesViewList = true;
  271. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  272. $("#jqGrid").jqGrid('setGridParam', {
  273. postData: {'name': vm.q.name},
  274. page: page
  275. }).trigger("reloadGrid");
  276. vm.handleReset('formValidate');
  277. },
  278. handleSubmit: function (name) {
  279. handleSubmitValidate(this, name, function () {
  280. vm.saveOrUpdate()
  281. });
  282. },
  283. handleReset: function (name) {
  284. handleResetForm(this, name);
  285. },
  286. /*===营销方式===*/
  287. showMkactivities: function (mkCode) {
  288. if(null == mkCode){
  289. return;
  290. }
  291. vm.mkCode = mkCode;
  292. vm.showList = true;
  293. vm.showViewList = false;
  294. vm.reloadMkactivitiesSearch();
  295. },
  296. reloadMkactivitiesSearch: function() {
  297. vm.reloadMkactivities();
  298. },
  299. reloadMkactivities: function () {
  300. vm.title = '管理营销方式';
  301. vm.showMkactivitiesViewList = false;
  302. vm.showMkactivitiesList = true;
  303. let page = $("#jqGridOrder").jqGrid('getGridParam', 'page');
  304. $("#jqGridOrder").jqGrid('setGridParam', {
  305. postData: {'mkCode': vm.mkCode},
  306. page: page
  307. }).trigger("reloadGrid");
  308. vm.handleReset('formMkactivitiesValidate');
  309. },
  310. addMkactivities: function () {
  311. vm.showMkactivitiesViewList = true;
  312. vm.showMkactivitiesList = false;
  313. vm.title = "新增";
  314. vm.mkActivities = {
  315. mkaStatus: 0,
  316. mkaEndEarly: 0
  317. };
  318. vm.isMkdEndEarlyTimeShow = false;
  319. vm.getMerchList();
  320. },
  321. getMerchList: function() {
  322. $.get("../merch/queryAll", function (r) {
  323. vm.merchList = r.list;
  324. });
  325. },
  326. changeMerch: function(opt) {
  327. var value = opt.value;
  328. vm.getThirdMerchantBizList(value);
  329. },
  330. getThirdMerchantBizList: function(merchSn) {
  331. $.get("../thirdmerchantbiz/queryAll?merchSn=" + merchSn, function (r) {
  332. vm.thirdMerchantBizList = r.list;
  333. });
  334. },
  335. changeThirdMerchantBiz: function (opt) {
  336. var value = opt.value;
  337. $.get("../store/getStoresByThirdMerch?thirdPartyMerchCode=" + value, function (r) {
  338. vm.storeList = r.list;
  339. });
  340. },
  341. updateMkactivities: function(event){
  342. let mkaId = vm.getMkactivitiesRow();
  343. if (mkaId == null) {
  344. return;
  345. }
  346. vm.showMkactivitiesViewList = true;
  347. vm.showMkactivitiesList = false;
  348. vm.title = "修改";
  349. vm.getMerchList();
  350. vm.getMkactivitiesInfo(mkaId);
  351. },
  352. getMkactivitiesInfo: function(mkaId){
  353. $.get("../mkactivities/info/"+mkaId, function (r) {
  354. vm.mkActivities = r.mkActivities;
  355. //转换为int型,对应活动门店value值
  356. vm.mkActivities.mkaStoreId = parseInt(vm.mkActivities.mkaStoreId);
  357. if(vm.mkActivities.mkaEndEarly == '0'){
  358. vm.isMkdEndEarlyTimeShow = false;
  359. }
  360. vm.mkaStartTime = vm.mkActivities.mkaStartTime;
  361. vm.mkdEndTime = vm.mkActivities.mkdEndTime;
  362. vm.mkdEndEarlyTime = vm.mkActivities.mkdEndEarlyTime;
  363. });
  364. },
  365. delMkactivities: function(event){
  366. let mkaId = vm.getSelectedRows();
  367. if (mkaId == null) {
  368. return;
  369. }
  370. confirm('确定要删除选中的记录?', function () {
  371. $.ajax({
  372. type: "POST",
  373. url: "../mkactivities/delete",
  374. contentType: "application/json",
  375. data: JSON.stringify(mkaId),
  376. success: function (r) {
  377. if (r.code == 0) {
  378. alert('操作成功', function (index) {
  379. $("#jqGridOrder").trigger("reloadGrid");
  380. });
  381. } else {
  382. alert(r.msg);
  383. }
  384. }
  385. });
  386. });
  387. },
  388. handleMkactivitiesSubmit: function (name) {
  389. handleSubmitValidate(this, name, function () {
  390. vm.mkactivitiesSaveOrUpdate()
  391. });
  392. },
  393. mkactivitiesSaveOrUpdate: function (event) {
  394. let url = vm.mkActivities.mkaId == null ? "../mkactivities/save" : "../mkactivities/update";
  395. debugger;
  396. vm.mkActivities.mkaStartTime = vm.mkaStartTime;
  397. vm.mkActivities.mkdEndTime = vm.mkdEndTime;
  398. vm.mkActivities.mkdEndEarlyTime = vm.mkdEndEarlyTime;
  399. vm.mkActivities.mkCode = vm.mkCode;
  400. $.ajax({
  401. type: "POST",
  402. url: url,
  403. contentType: "application/json",
  404. data: JSON.stringify(vm.mkActivities),
  405. success: function (r) {
  406. if (r.code === 0) {
  407. alert('操作成功', function (index) {
  408. vm.reloadMkactivities();
  409. });
  410. } else {
  411. alert(r.msg);
  412. }
  413. }
  414. });
  415. },
  416. changeMkaEndEarly: function (opt) {
  417. var value = opt;
  418. if(value == 0){
  419. vm.isMkdEndEarlyTimeShow = false;
  420. }
  421. if(value == 1){
  422. vm.isMkdEndEarlyTimeShow = true;
  423. }
  424. },
  425. getMkaStartTime: function(e){
  426. vm.mkaStartTime = e;
  427. },
  428. getMkdEndTime: function (e) {
  429. vm.mkdEndTime = e;
  430. },
  431. getMkdEndEarlyTime: function (e) {
  432. vm.mkdEndEarlyTime = e;
  433. },
  434. getMkactivitiesRow: function(){
  435. var grid = $("#jqGridOrder");
  436. var rowKey = grid.getGridParam("selrow");
  437. if (!rowKey) {
  438. iview.Message.error("请选择一条记录");
  439. return;
  440. }
  441. var selectedIDs = grid.getGridParam("selarrrow");
  442. if (selectedIDs.length > 1) {
  443. iview.Message.error("只能选择一条记录");
  444. return;
  445. }
  446. return selectedIDs[0];
  447. },
  448. getSelectedRows: function(){
  449. var grid = $("#jqGridOrder");
  450. var rowKey = grid.getGridParam("selrow");
  451. if (!rowKey) {
  452. iview.Message.error("请选择一条记录");
  453. return;
  454. }
  455. return grid.getGridParam("selarrrow");
  456. },
  457. // 管理商品
  458. showMkactivitiesGoods: function(mkaId,storeId,mkaTopic){
  459. var url ;
  460. // "/mk/mkstorecampminus.html"
  461. if(mkaTopic === 'lscx')
  462. url = "/mk/mkactivitiespromotion.html";
  463. else if(mkaTopic === 'yhq')
  464. url = "/mk/mkactivitiescoupon.html";
  465. else if(mkaTopic === 'rchd')
  466. url = "/mk/mkdailyactivities.html";
  467. else if(mkaTopic === 'mysy')
  468. url = "/mk/mkactivitiesgetonefreegoods.html";
  469. else if(mkaTopic === 'mj')
  470. url = "/mk/mkactivitiesfullreduction.html";
  471. else if(mkaTopic === 'mz')
  472. url = "/mk/mkactivitiesfullgift.html";
  473. else if(mkaTopic === 'dz')
  474. url = "/mk/mkactivitiesdiscount.html";
  475. else if(mkaTopic === 'zhjsp')
  476. url = "/mk/mkactivitiescombinationprice.html";
  477. window.location.href = url ; ;
  478. }
  479. }
  480. });