mkactivityform.js 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515
  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. let mkCode = getQueryString("mkCode");
  136. vm.showMkactivities(mkCode);
  137. });
  138. let vm = new Vue({
  139. el: '#rrapp',
  140. data: {
  141. showViewList: true,
  142. showList: true,
  143. title: null,
  144. mkActivityForm: {},
  145. ruleValidate: {
  146. mkCode: [
  147. {required: true, message: '活动形式代码不能为空', trigger: 'blur'}
  148. ],
  149. mkName: [
  150. {required: true, message: '活动形式名称不能为空', trigger: 'blur'}
  151. ]
  152. },
  153. q: {
  154. name: '',
  155. topic: ''
  156. },
  157. showMkactivitiesViewList: true,//管理营销方式
  158. showMkactivitiesList: true,
  159. mkActivities: {},
  160. mkCode: '',
  161. isMkdEndEarlyTimeShow: true,//提前结束活动时间
  162. merchList: {},//商户
  163. thirdMerchantBizList: {},//第三方商户
  164. storeList: {},//门店
  165. mkaStartTime: '',//开始时间
  166. mkdEndTime: '',//结束时间
  167. mkdEndEarlyTime: '',//提前结束时间,
  168. marketings:[
  169. {
  170. id: 'lscx',
  171. name: '临时促销'
  172. }, {
  173. id: 'yhq',
  174. name: '优惠券'
  175. }, {
  176. id: 'rchd',
  177. name: '日常活动'
  178. }, {
  179. id: 'mysy',
  180. name: '买一送一'
  181. }, {
  182. id: 'mj',
  183. name: '满减'
  184. }, {
  185. id: 'mz',
  186. name: '满赠'
  187. }, {
  188. id: 'dz',
  189. name: '打折'
  190. }, {
  191. id: 'zhjsp',
  192. name: '组合价商品'
  193. }
  194. ],
  195. },
  196. methods: {
  197. query: function () {
  198. vm.reload();
  199. },
  200. add: function () {
  201. vm.showViewList = false;
  202. vm.showMkactivitiesViewList = true;
  203. vm.showList = false;
  204. vm.title = "新增";
  205. vm.mkActivityForm = {};
  206. },
  207. update: function (event) {
  208. let mmId = getSelectedRow();
  209. if (mmId == null) {
  210. return;
  211. }
  212. vm.showViewList = false;
  213. vm.showMkactivitiesViewList = true;
  214. vm.showList = false;
  215. vm.title = "修改";
  216. vm.getInfo(mmId)
  217. },
  218. saveOrUpdate: function (event) {
  219. let url = vm.mkActivityForm.mmId == null ? "../mkactivityform/save" : "../mkactivityform/update";
  220. $.ajax({
  221. type: "POST",
  222. url: url,
  223. contentType: "application/json",
  224. data: JSON.stringify(vm.mkActivityForm),
  225. success: function (r) {
  226. if (r.code === 0) {
  227. alert('操作成功', function (index) {
  228. vm.reload();
  229. });
  230. } else {
  231. alert(r.msg);
  232. }
  233. }
  234. });
  235. },
  236. del: function (event) {
  237. let mmIds = getSelectedRows();
  238. if (mmIds == null){
  239. return;
  240. }
  241. confirm('确定要删除选中的记录?', function () {
  242. $.ajax({
  243. type: "POST",
  244. url: "../mkactivityform/delete",
  245. contentType: "application/json",
  246. data: JSON.stringify(mmIds),
  247. success: function (r) {
  248. if (r.code == 0) {
  249. alert('操作成功', function (index) {
  250. $("#jqGrid").trigger("reloadGrid");
  251. });
  252. } else {
  253. alert(r.msg);
  254. }
  255. }
  256. });
  257. });
  258. },
  259. getInfo: function(mmId){
  260. $.get("../mkactivityform/info/"+mmId, function (r) {
  261. vm.mkActivityForm = r.mkActivityForm;
  262. });
  263. },
  264. reloadSearch: function() {
  265. vm.q.name = '';
  266. vm.reload();
  267. },
  268. reload: function (event) {
  269. vm.showList = true;
  270. vm.showViewList = true;
  271. vm.showMkactivitiesViewList = true;
  272. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  273. $("#jqGrid").jqGrid('setGridParam', {
  274. postData: {'name': vm.q.name},
  275. page: page
  276. }).trigger("reloadGrid");
  277. vm.handleReset('formValidate');
  278. },
  279. handleSubmit: function (name) {
  280. handleSubmitValidate(this, name, function () {
  281. vm.saveOrUpdate()
  282. });
  283. },
  284. handleReset: function (name) {
  285. handleResetForm(this, name);
  286. },
  287. /*===营销方式===*/
  288. queryMkactivities: function(){
  289. vm.reloadMkactivities();
  290. },
  291. showMkactivities: function (mkCode) {
  292. if(null == mkCode){
  293. return;
  294. }
  295. vm.mkCode = mkCode;
  296. vm.showList = true;
  297. vm.showViewList = false;
  298. vm.reloadMkactivitiesSearch();
  299. },
  300. reloadMkactivitiesSearch: function() {
  301. vm.q.topic = '';
  302. vm.reloadMkactivities();
  303. },
  304. reloadMkactivities: function () {
  305. vm.title = '管理营销方式';
  306. vm.showMkactivitiesViewList = false;
  307. vm.showMkactivitiesList = true;
  308. let page = $("#jqGridOrder").jqGrid('getGridParam', 'page');
  309. $("#jqGridOrder").jqGrid('setGridParam', {
  310. postData: {'mkCode': vm.mkCode, 'topic': vm.q.topic},
  311. page: page
  312. }).trigger("reloadGrid");
  313. vm.handleReset('formMkactivitiesValidate');
  314. },
  315. addMkactivities: function () {
  316. vm.showMkactivitiesViewList = true;
  317. vm.showMkactivitiesList = false;
  318. vm.title = "新增";
  319. vm.mkActivities = {
  320. mkaStatus: 0,
  321. mkaEndEarly: 0
  322. };
  323. vm.isMkdEndEarlyTimeShow = false;
  324. vm.getMerchList();
  325. },
  326. getMerchList: function() {
  327. $.get("../merch/queryAll", function (r) {
  328. vm.merchList = r.list;
  329. });
  330. },
  331. changeMerch: function(opt) {
  332. var value = opt.value;
  333. vm.getThirdMerchantBizList(value);
  334. },
  335. getThirdMerchantBizList: function(merchSn) {
  336. $.get("../thirdmerchantbiz/queryAll?merchSn=" + merchSn, function (r) {
  337. vm.thirdMerchantBizList = r.list;
  338. });
  339. },
  340. changeThirdMerchantBiz: function (opt) {
  341. var value = opt.value;
  342. $.get("../store/getStoresByThirdMerch?thirdPartyMerchCode=" + value, function (r) {
  343. vm.storeList = r.list;
  344. });
  345. },
  346. updateMkactivities: function(event){
  347. let mkaId = vm.getMkactivitiesRow();
  348. if (mkaId == null) {
  349. return;
  350. }
  351. vm.showMkactivitiesViewList = true;
  352. vm.showMkactivitiesList = false;
  353. vm.title = "修改";
  354. vm.getMerchList();
  355. vm.getMkactivitiesInfo(mkaId);
  356. },
  357. getMkactivitiesInfo: function(mkaId){
  358. $.get("../mkactivities/info/"+mkaId, function (r) {
  359. vm.mkActivities = r.mkActivities;
  360. //转换为int型,对应活动门店value值
  361. vm.mkActivities.mkaStoreId = parseInt(vm.mkActivities.mkaStoreId);
  362. if(vm.mkActivities.mkaEndEarly == '0'){
  363. vm.isMkdEndEarlyTimeShow = false;
  364. }
  365. vm.mkaStartTime = vm.mkActivities.mkaStartTime;
  366. vm.mkdEndTime = vm.mkActivities.mkdEndTime;
  367. vm.mkdEndEarlyTime = vm.mkActivities.mkdEndEarlyTime;
  368. });
  369. },
  370. delMkactivities: function(event){
  371. let mkaId = vm.getSelectedRows();
  372. if (mkaId == null) {
  373. return;
  374. }
  375. confirm('确定要删除选中的记录?', function () {
  376. $.ajax({
  377. type: "POST",
  378. url: "../mkactivities/delete",
  379. contentType: "application/json",
  380. data: JSON.stringify(mkaId),
  381. success: function (r) {
  382. if (r.code == 0) {
  383. alert('操作成功', function (index) {
  384. $("#jqGridOrder").trigger("reloadGrid");
  385. });
  386. } else {
  387. alert(r.msg);
  388. }
  389. }
  390. });
  391. });
  392. },
  393. handleMkactivitiesSubmit: function (name) {
  394. handleSubmitValidate(this, name, function () {
  395. vm.mkactivitiesSaveOrUpdate()
  396. });
  397. },
  398. mkactivitiesSaveOrUpdate: function (event) {
  399. let url = vm.mkActivities.mkaId == null ? "../mkactivities/save" : "../mkactivities/update";
  400. debugger;
  401. vm.mkActivities.mkaStartTime = vm.mkaStartTime;
  402. vm.mkActivities.mkdEndTime = vm.mkdEndTime;
  403. vm.mkActivities.mkdEndEarlyTime = vm.mkdEndEarlyTime;
  404. vm.mkActivities.mkCode = vm.mkCode;
  405. $.ajax({
  406. type: "POST",
  407. url: url,
  408. contentType: "application/json",
  409. data: JSON.stringify(vm.mkActivities),
  410. success: function (r) {
  411. if (r.code === 0) {
  412. alert('操作成功', function (index) {
  413. vm.reloadMkactivities();
  414. });
  415. } else {
  416. alert(r.msg);
  417. }
  418. }
  419. });
  420. },
  421. changeMkaEndEarly: function (opt) {
  422. var value = opt;
  423. if(value == 0){
  424. vm.isMkdEndEarlyTimeShow = false;
  425. }
  426. if(value == 1){
  427. vm.isMkdEndEarlyTimeShow = true;
  428. }
  429. },
  430. getMkaStartTime: function(e){
  431. vm.mkaStartTime = e;
  432. },
  433. getMkdEndTime: function (e) {
  434. vm.mkdEndTime = e;
  435. },
  436. getMkdEndEarlyTime: function (e) {
  437. vm.mkdEndEarlyTime = e;
  438. },
  439. getMkactivitiesRow: function(){
  440. var grid = $("#jqGridOrder");
  441. var rowKey = grid.getGridParam("selrow");
  442. if (!rowKey) {
  443. iview.Message.error("请选择一条记录");
  444. return;
  445. }
  446. var selectedIDs = grid.getGridParam("selarrrow");
  447. if (selectedIDs.length > 1) {
  448. iview.Message.error("只能选择一条记录");
  449. return;
  450. }
  451. return selectedIDs[0];
  452. },
  453. getSelectedRows: function(){
  454. var grid = $("#jqGridOrder");
  455. var rowKey = grid.getGridParam("selrow");
  456. if (!rowKey) {
  457. iview.Message.error("请选择一条记录");
  458. return;
  459. }
  460. return grid.getGridParam("selarrrow");
  461. },
  462. // 管理商品
  463. showMkactivitiesGoods: function(mkaId,storeId,mkaTopic){
  464. var url ;
  465. // "/mk/mkstorecampminus.html"
  466. if(mkaTopic === 'lscx')
  467. url = "/mk/mkactivitiespromotion.html";
  468. else if(mkaTopic === 'yhq')
  469. url = "/mk/mkactivitiescoupon.html";
  470. else if(mkaTopic === 'rchd')
  471. url = "/mk/mkdailyactivities.html";
  472. else if(mkaTopic === 'mysy')
  473. url = "/mk/mkactivitiesgetonefreegoods.html";
  474. else if(mkaTopic === 'mj')
  475. url = "/mk/mkactivitiesfullreduction.html";
  476. else if(mkaTopic === 'mz')
  477. url = "/mk/mkactivitiesfullgift.html";
  478. else if(mkaTopic === 'dz')
  479. url = "/mk/mkactivitiesdiscount.html";
  480. else if(mkaTopic === 'zhjsp')
  481. url = "/mk/mkactivitiescombinationprice.html";
  482. window.location.href = url+"?flag=false&mkCode="+vm.mkCode;
  483. }
  484. }
  485. });