1
0

mkdistsellallocation.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../mkdistsellallocation/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: 'sellAllocId', name: 'sellAllocId', index: 'sell_alloc_id', key: true, hidden: true},
  7. {label: '分销渠道名称', name: 'distFlag', index: 'dist_flag', width: 280},
  8. {label: '所属三方商户', name: 'thirdPartyMerchName', index: 'thirdPartyMerchName', width: 180},
  9. {label: '所属供应商', name: 'childSupplierName', index: 'childSupplierName', width: 180},
  10. {label: '商品所属分销商', name: 'distName', index: 'distName', width: 180},
  11. {label: '所属门店', name: 'storeName', index: 'storeName', width: 180},
  12. {label: '商品', name: 'goodsName', index: 'goodsName', width: 280},
  13. {label: '分配方式', name: 'allocType', index: 'alloc_type', width: 80,align: 'center',
  14. formatter: function (value) {
  15. if (value == '00') {
  16. return '比例';
  17. } else if (value == '10') {
  18. return '金额';
  19. }
  20. return '';
  21. }},
  22. {label: '子级分销商id规则', name: 'expendDistIds', index: 'expend_dist_ids', width: 160},
  23. {label: '子级分销额度分配(点数/金额)', name: 'expendDistLines', index: 'expend_dist_lines', width: 220},
  24. {label: '是否有效', name: 'isValid', index: 'is_valid', width: 80,align: 'center',
  25. formatter: function (value) {
  26. if (value == '0') {
  27. return '有效';
  28. } else if (value == '1') {
  29. return '无效';
  30. }
  31. return '';
  32. }},
  33. {label: '备注', name: 'note', index: 'note', width: 160},
  34. {label: '创建人编号', name: 'createrSn', index: 'creater_sn', align: 'center',width: 120},
  35. {label: '创建时间', name: 'createTime', index: 'create_time', width: 160,align: 'center',
  36. formatter: function (value) {
  37. return transDate(value, 'yyyy-MM-dd hh:mm:ss');
  38. }},
  39. {label: '修改人编号', name: 'moderSn', index: 'moder_sn', align: 'center',width: 120},
  40. {label: '修改时间', name: 'modTime', index: 'mod_time', width: 160,align: 'center',
  41. formatter: function (value) {
  42. return transDate(value, 'yyyy-MM-dd hh:mm:ss');
  43. }}],
  44. viewrecords: true,
  45. height: 550,
  46. rowNum: 10,
  47. rowList: [10, 30, 50],
  48. rownumbers: true,
  49. rownumWidth: 25,
  50. autowidth: true,
  51. shrinkToFit: false,
  52. autoScroll: true, //开启水平滚动条
  53. width: 1500,
  54. multiselect: true,
  55. pager: "#jqGridPager",
  56. jsonReader: {
  57. root: "page.list",
  58. page: "page.currPage",
  59. total: "page.totalPage",
  60. records: "page.totalCount"
  61. },
  62. prmNames: {
  63. page: "page",
  64. rows: "limit",
  65. order: "order"
  66. },
  67. gridComplete: function () {
  68. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"});
  69. }
  70. });
  71. });
  72. //菜单树
  73. var menu_ztree;
  74. var menu_setting = {
  75. data: {
  76. simpleData: {
  77. enable: true,
  78. idKey: "distId",
  79. pIdKey: "pdistId",
  80. rootPId: -1
  81. },
  82. key: {
  83. url: "nourl"
  84. }
  85. },
  86. check: {
  87. enable: true,
  88. nocheckInherit: true
  89. }
  90. };
  91. let vm = new Vue({
  92. el: '#rrapp',
  93. data: {
  94. showList: true,
  95. title: null,
  96. mkDistSellAllocation: {},
  97. ruleValidate: {
  98. name: [
  99. {required: true, message: '名称不能为空', trigger: 'blur'}
  100. ]
  101. },
  102. q: {
  103. distChnlId: '',
  104. storeId:'',
  105. distId:'',
  106. goodsId:''
  107. },
  108. mkDistChnlList:[],
  109. thirdMerchantBizList: [],
  110. suppliers:[],
  111. mkDistList:[],
  112. goodsList:[],
  113. storeList:[],
  114. mkDist:{},
  115. storeId: '',
  116. sellAllocId: '',
  117. queryGoodsList:[],
  118. queryStoreList:[],
  119. queryMkDistList:[],
  120. queryMkDistChnlList:[],
  121. distChnlId:'',
  122. distId:'',
  123. expendDistList: []
  124. },
  125. methods: {
  126. query: function () {
  127. vm.reload();
  128. },
  129. add: function () {
  130. vm.showList = false;
  131. vm.title = "新增";
  132. vm.mkDistSellAllocation = {isValid:0,storeId:''};
  133. vm.mkDistChnlList = [];
  134. vm.thirdMerchantBizList = [];
  135. vm.storeList = [];
  136. vm.suppliers = [];
  137. vm.mkDistList = [];
  138. vm.goodsList = [];
  139. vm.expendDistList = [{expendDistId:'',expendDistName:'',expendDistLine:'',expendDistLvl:''}];
  140. // vm.getMkDistChnlList();
  141. vm.getThirdMerchantBizList();
  142. // vm.getMkDistList();
  143. },
  144. update: function (event) {
  145. let sellAllocId = getSelectedRow();
  146. if (sellAllocId == null) {
  147. return;
  148. }
  149. vm.showList = false;
  150. vm.title = "修改";
  151. // vm.getMkDistChnlList();
  152. vm.getThirdMerchantBizList();
  153. // vm.getMkDistList();
  154. // vm.getInfo(sellAllocId);
  155. vm.getInfo(sellAllocId);
  156. },
  157. saveOrUpdate: function (event) {
  158. // //获取选择的菜单
  159. // var nodes = menu_ztree.getCheckedNodes(true);
  160. // var expendDistIdList = new Array();
  161. // for (var i = 0; i < nodes.length; i++) {
  162. // expendDistIdList.push(nodes[i].distId);
  163. // }
  164. // vm.mkDistSellAllocation.expendDistIdList = expendDistIdList;
  165. vm.mkDistSellAllocation.expendDistDtoList = vm.expendDistList;
  166. let url = vm.mkDistSellAllocation.sellAllocId == null ? "../mkdistsellallocation/save" : "../mkdistsellallocation/update";
  167. $.ajax({
  168. type: "POST",
  169. url: url,
  170. contentType: "application/json",
  171. data: JSON.stringify(vm.mkDistSellAllocation),
  172. success: function (r) {
  173. if (r.code === 0) {
  174. alert('操作成功', function (index) {
  175. vm.reload();
  176. });
  177. } else {
  178. alert(r.msg);
  179. }
  180. }
  181. });
  182. },
  183. del: function (event) {
  184. let sellAllocIds = getSelectedRows();
  185. if (sellAllocIds == null){
  186. return;
  187. }
  188. confirm('确定要删除选中的记录?', function () {
  189. $.ajax({
  190. type: "POST",
  191. url: "../mkdistsellallocation/delete",
  192. contentType: "application/json",
  193. data: JSON.stringify(sellAllocIds),
  194. success: function (r) {
  195. if (r.code == 0) {
  196. alert('操作成功', function (index) {
  197. $("#jqGrid").trigger("reloadGrid");
  198. });
  199. } else {
  200. alert(r.msg);
  201. }
  202. }
  203. });
  204. });
  205. },
  206. getInfo: function(sellAllocId){
  207. if(sellAllocId){
  208. $.get("../mkdistsellallocation/info/"+sellAllocId, function (r) {
  209. vm.mkDistSellAllocation = r.mkDistSellAllocation;
  210. vm.sellAllocId = r.mkDistSellAllocation.sellAllocId;
  211. //勾选角色所拥有的菜单
  212. vm.expendDistIds = r.mkDistSellAllocation.expendDistIdList;
  213. });
  214. }
  215. },
  216. getMkDistChnlList: function () {
  217. $.get("../mkdistchnl/queryAll", function (r) {
  218. vm.mkDistChnlList = r.list;
  219. });
  220. },
  221. // changeDist: function (option) {
  222. // var distChnlId = option.value;
  223. // if(distChnlId){
  224. // vm.distChnlId = distChnlId;
  225. // $.get("../mkdistchnl/info/"+distChnlId, function (r) {
  226. // var thirdMerchSn = r.mkDistChnl.thirdMerchSn;
  227. // vm.getThirdMerchantBizList(thirdMerchSn);
  228. // vm.showSupplier(thirdMerchSn);
  229. // vm.getStoreList(thirdMerchSn);
  230. // });
  231. // }
  232. // // vm.loadTree();
  233. // // vm.goodsList = [];
  234. // // vm.mkDistList = [];
  235. // // menu_ztree = $.fn.zTree.init($("#expendDistIdsTree"), menu_setting, []);
  236. // },
  237. getThirdMerchantBizList: function() {
  238. $.get("../thirdmerchantbiz/queryAll", function (r) {
  239. vm.thirdMerchantBizList = r.list;
  240. });
  241. },
  242. changeDist: function (option) {
  243. var thirdMerchSn = option.value;
  244. if(thirdMerchSn){
  245. vm.showSupplier(thirdMerchSn);
  246. vm.getStoreList(thirdMerchSn);
  247. }
  248. // vm.loadTree();
  249. // vm.goodsList = [];
  250. // vm.mkDistList = [];
  251. // menu_ztree = $.fn.zTree.init($("#expendDistIdsTree"), menu_setting, []);
  252. },
  253. showSupplier: function (thirdMerchSn) {
  254. $.get("../supplier/queryAll?thirdMerchSn=" + thirdMerchSn, function (r) {
  255. vm.suppliers = r.list;
  256. });
  257. },
  258. getStoreList: function(thirdMerchSn){
  259. $.get("../store/queryAll?thirdMerchSn=" + thirdMerchSn, function (r) {
  260. vm.storeList = r.list;
  261. });
  262. },
  263. changeGoods: function (option) {
  264. var storeId = option.value;
  265. if(storeId){
  266. vm.getGoodsList(storeId);
  267. vm.changeMkDist(storeId);
  268. vm.expendDistList = [{expendDistId:'',expendDistName:'',expendDistLine:'',expendDistLvl:''}];
  269. }
  270. },
  271. getGoodsList: function(storeId){
  272. if(storeId){
  273. vm.storeId = storeId;
  274. $.get("../productstorerela/queryAll?storeId=" + storeId, function (r) {
  275. vm.goodsList = r.list;
  276. });
  277. }
  278. },
  279. changeMkDist: function (storeId) {
  280. if(storeId) {
  281. $.get("../mkdist/queryDistByGoodsId?storeId=" + storeId, function (r) {
  282. vm.mkDist = r.mkDistEntity;
  283. if (r.mkDistEntity) {
  284. vm.getMkDistList(r.mkDistEntity.distId);
  285. } else {
  286. vm.mkDistList = [];
  287. }
  288. });
  289. }
  290. },
  291. getMkDistList: function (distId) {
  292. if(distId) {
  293. $.get("../mkdist/queryAll?distId=" + distId, function (r) {
  294. vm.mkDistList = r.list;
  295. });
  296. }
  297. },
  298. // getExpendDistTree: function (pdistId,sellAllocId) {
  299. // //加载树
  300. // $.get("../mkdisthier/queryAll/tree?pdistId="+pdistId+"&sidx=s.hier_lvl", function (r) {
  301. // menu_ztree = $.fn.zTree.init($("#expendDistIdsTree"), menu_setting, r.list);
  302. // //展开所有节点
  303. // menu_ztree.expandAll(true);
  304. // if (sellAllocId != null) {
  305. // vm.getInfo(sellAllocId);
  306. // }
  307. // });
  308. // },
  309. showTree:function (option) {
  310. var goodsId = option.value;
  311. vm.goodsId = goodsId;
  312. // vm.loadTree();
  313. vm.loadExpendDistList(goodsId);
  314. },
  315. /*loadTree: function () {
  316. if(vm.distId){
  317. // console.log('vm.distChnlId:'+vm.distChnlId);
  318. // console.log('vm.distId:'+vm.distId);
  319. //加载树
  320. $.get("../mkdisthier/queryAll/tree?distId=" + vm.distId + "&sidx=h.hier_lvl", function (r) {
  321. menu_ztree = $.fn.zTree.init($("#expendDistIdsTree"), menu_setting, r.list);
  322. //展开所有节点
  323. menu_ztree.expandAll(true);
  324. var exIds = vm.expendDistIds;
  325. if(exIds){
  326. for (var i = 0; i < exIds.length; i++) {
  327. var node = menu_ztree.getNodeByParam("distId", exIds[i]);
  328. menu_ztree.checkNode(node, true, false);
  329. }
  330. }
  331. });
  332. }else{
  333. menu_ztree = $.fn.zTree.init($("#expendDistIdsTree"), menu_setting, []);
  334. }
  335. },*/
  336. loadExpendDistList:function (goodsId) {
  337. if(goodsId && vm.storeId){
  338. $.get("../mkdisthier/queryAll/tree?goodsId="+ goodsId +"&storeId="+ vm.storeId +"&sidx=h.hier_lvl", function (r) {
  339. vm.expendDistList = r.list;
  340. // console.log(vm.expendDistList)
  341. });
  342. }else{
  343. // vm.expendDistList =[];
  344. }
  345. },
  346. queryChangeGoodsByStore: function (storeId) {
  347. if(storeId){
  348. $.get("../productstorerela/queryAll?storeId=" + storeId, function (r) {
  349. vm.queryGoodsList = r.list;
  350. });
  351. }
  352. },
  353. queryChangeByDistChnlId: function (distChnlId) {
  354. if(distChnlId){
  355. $.get("../mkdistchnl/info/"+distChnlId, function (r) {
  356. var thirdMerchSn = r.mkDistChnl.thirdMerchSn;
  357. $.get("../store/queryAll?thirdMerchSn="+thirdMerchSn, function (r) {
  358. vm.queryStoreList = r.list;
  359. });
  360. $.get("../mkdist/queryAll?thirdMerchSn="+thirdMerchSn, function (r) {
  361. vm.queryMkDistList = r.list;
  362. });
  363. });
  364. }
  365. },
  366. reloadSearch: function() {
  367. vm.q = {
  368. distChnlId: '',
  369. storeId:'',
  370. distId:'',
  371. goodsId:''
  372. }
  373. vm.reload();
  374. },
  375. reload: function (event) {
  376. vm.showList = true;
  377. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  378. $("#jqGrid").jqGrid('setGridParam', {
  379. postData: {'distChnlId': vm.q.distChnlId,'storeId': vm.q.storeId,'distId': vm.q.distId,'goodsId': vm.q.goodsId},
  380. page: page
  381. }).trigger("reloadGrid");
  382. // vm.handleReset('formValidate');
  383. },
  384. handleSubmit: function (name) {
  385. handleSubmitValidate(this, name, function () {
  386. vm.saveOrUpdate()
  387. });
  388. },
  389. handleReset: function (name) {
  390. handleResetForm(this, name);
  391. }
  392. },
  393. mounted() {
  394. $.get("../mkdistchnl/queryAll", function (r) {
  395. vm.queryMkDistChnlList = r.list;
  396. });
  397. }
  398. });