StoreHouse_Admin.js 46 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124
  1. var ExcelData, ExcelKind;
  2. var clickflag = 0;
  3. function ConfirmImport() {
  4. var index = layer.load(1, {
  5. shade: [0.5, '#000']
  6. });
  7. $.ajax({
  8. type: "POST",
  9. url: "/Admin/StoreHouse/Import?r=" + Math.random(1),
  10. data: "Kind=" + ExcelKind + "&ExcelData=" + encodeURIComponent(JSON.stringify(ExcelData)),
  11. dataType: "text",
  12. success: function (data) {
  13. layer.close(index);
  14. if (data.indexOf("success") == 0) {
  15. layer.msg("成功操作" + data.split('|')[1] + "部机具", {
  16. time: 2000
  17. }, function () {
  18. window.location.reload();
  19. });
  20. } else {
  21. layer.msg(data);
  22. }
  23. }
  24. });
  25. }
  26. function ConfirmRejectImport() {
  27. $.ajax({
  28. type: "POST",
  29. url: "/Admin/StoreHouse/RejectStore?r=" + Math.random(1),
  30. data: "ExcelKind=" + ExcelKind + "&ExcelData=" + encodeURIComponent(JSON.stringify(ExcelData)),
  31. dataType: "text",
  32. success: function (data) {
  33. if (data == "success") {
  34. layer.msg("导入成功", { time: 2000 }, function () {
  35. window.location.reload();
  36. });
  37. } else if (data.indexOf("warning") == 0) {
  38. var datalist = data.split('|');
  39. layer.alert(datalist[0], { time: 20000 }, function () {
  40. window.location.reload();
  41. });
  42. } else {
  43. layer.msg(data);
  44. }
  45. }
  46. });
  47. }
  48. function CheckImport(table, key, loadindex, index) {
  49. $.ajax({
  50. url: "/Admin/StoreHouse/CheckImportV2?r=" + Math.random(1),
  51. data: "key=" + key,
  52. dataType: "json",
  53. success: function (data) {
  54. if (data.status == 1) {
  55. layer.msg("成功操作" + data.data + "部机具", {
  56. time: 2000
  57. }, function () {
  58. layer.close(index); //关闭弹层
  59. layer.close(loadindex);
  60. table.reload('LAY-list-manage'); //数据刷新
  61. });
  62. } else if (data.status == 2) {
  63. layer.close(index); //关闭弹层
  64. layer.close(loadindex);
  65. var content = '';
  66. for (var i = 0; i < data.errList.length; i++) {
  67. content += data.errList[i] + '<br/>'
  68. }
  69. layer.alert(content);
  70. } else {
  71. layer.msg(data.data, {
  72. time: 1000
  73. }, function () {
  74. CheckImport(table, key, loadindex, index);
  75. });
  76. }
  77. }
  78. });
  79. }
  80. var excel;
  81. var loadindex;
  82. layui.config({
  83. base: '/layuiadmin/' //静态资源所在路径
  84. }).extend({
  85. myexcel: 'layui/lay/modules/excel',
  86. index: 'lib/index' //主入口模块
  87. }).use(['index', 'table', 'excel', 'laydate'], function () {
  88. var $ = layui.$,
  89. form = layui.form,
  90. table = layui.table;
  91. //- 筛选条件-日期
  92. var laydate = layui.laydate;
  93. var layCreateDate = laydate.render({
  94. elem: '#CreateDate',
  95. type: 'date',
  96. range: true,
  97. trigger: 'click',
  98. change: function (value, date, endDate) {
  99. var op = true;
  100. if (date.year == endDate.year && endDate.month - date.month <= 1) {
  101. if (endDate.month - date.month == 1 && endDate.date > date.date) {
  102. op = false;
  103. layCreateDate.hint('日期范围请不要超过1个月');
  104. setTimeout(function () {
  105. $(".laydate-btns-confirm").addClass("laydate-disabled");
  106. }, 1);
  107. }
  108. } else {
  109. op = false;
  110. layCreateDate.hint('日期范围请不要超过1个月');
  111. setTimeout(function () {
  112. $(".laydate-btns-confirm").addClass("laydate-disabled");
  113. }, 1);
  114. }
  115. if (op) {
  116. $('#CreateDate').val(value);
  117. }
  118. }
  119. });
  120. //excel导入
  121. excel = layui.excel;
  122. $('#ExcelFile').change(function (e) {
  123. var files = e.target.files;
  124. excel.importExcel(files, {}, function (data) {
  125. ExcelData = data[0].Sheet1;
  126. });
  127. });
  128. //监听单元格编辑
  129. table.on('edit(LAY-list-manage)', function (obj) {
  130. var value = obj.value //得到修改后的值
  131. ,
  132. data = obj.data //得到所在行所有键值
  133. ,
  134. field = obj.field; //得到字段
  135. if (field == "Sort") {
  136. $.ajax({
  137. type: "POST",
  138. url: "/Admin/StoreHouse/Sort?r=" + Math.random(1),
  139. data: "Id=" + data.Id + "&Sort=" + value,
  140. dataType: "text",
  141. success: function (data) { }
  142. });
  143. }
  144. });
  145. //列表数据
  146. table.render({
  147. elem: '#LAY-list-manage',
  148. url: '/Admin/StoreHouse/IndexData' //模拟接口
  149. ,
  150. cols: [
  151. [{
  152. type: 'checkbox',
  153. fixed: 'left'
  154. }, {
  155. field: 'StoreNo',
  156. width: 110,
  157. title: '仓库编号',
  158. sort: true
  159. }, {
  160. field: 'StoreName',
  161. width: 110,
  162. title: '仓库名称',
  163. sort: true
  164. }, {
  165. field: 'TopUserInfo',
  166. width: 110,
  167. title: '顶级创客信息',
  168. sort: true
  169. }, {
  170. field: 'ManageUserIdMakerCode',
  171. width: 145,
  172. title: '仓库负责人编号',
  173. sort: true,
  174. templet: '#ManageTpl'
  175. }, {
  176. field: 'ManageUserIdRealName',
  177. width: 120,
  178. title: '仓库管理员',
  179. sort: true
  180. }, {
  181. field: 'UserIdMakerCode',
  182. width: 160,
  183. title: '仓库归属创客编号',
  184. sort: true,
  185. templet: '#MakerCodeTpl'
  186. }, {
  187. field: 'UserIdRealName',
  188. width: 175,
  189. title: '仓库归属人真实姓名',
  190. sort: true
  191. }, {
  192. field: 'BrandId',
  193. width: 110,
  194. title: '产品类型',
  195. sort: true
  196. }, {
  197. field: 'Address',
  198. width: 110,
  199. title: '仓库地址',
  200. sort: true
  201. }, {
  202. field: 'ManageMobile',
  203. width: 160,
  204. title: '仓库管理员手机号',
  205. sort: true
  206. }, {
  207. field: 'ManagerEmail',
  208. width: 120,
  209. title: '管理者邮箱',
  210. sort: true
  211. }, {
  212. field: 'StoreType',
  213. width: 110,
  214. title: '仓库类型',
  215. sort: true
  216. }, {
  217. field: 'TotalNum',
  218. width: 110,
  219. title: '总库存数',
  220. sort: true
  221. }, {
  222. field: 'LaveNum',
  223. width: 120,
  224. title: '剩余库存数',
  225. sort: true
  226. }, {
  227. field: 'ApplyNum',
  228. width: 120,
  229. title: '未发货订单数',
  230. sort: true
  231. }, {
  232. field: 'AvailableNum',
  233. width: 120,
  234. title: '可用库存数',
  235. sort: true
  236. }, {
  237. field: 'PreNum',
  238. width: 120,
  239. title: '小分仓数',
  240. sort: true
  241. }, {
  242. field: 'OutNum',
  243. width: 100,
  244. title: '出库数',
  245. sort: true
  246. }, {
  247. field: 'LimitTopUserId',
  248. width: 160,
  249. title: '限制创客特殊仓库',
  250. sort: true
  251. }, {
  252. field: 'Status',
  253. width: 110,
  254. title: '仓库状态',
  255. sort: true
  256. }, {
  257. field: 'OpIdStatus',
  258. width: 130,
  259. title: '关联运营中心',
  260. sort: true
  261. }, {
  262. field: 'StoreKind',
  263. width: 130,
  264. title: '仓库归属类型',
  265. sort: true
  266. }, {
  267. field: 'CreateMan',
  268. width: 130,
  269. title: '创建/修改人',
  270. sort: true
  271. }, {
  272. field: 'CreateDate',
  273. width: 110,
  274. title: '创建时间',
  275. sort: true
  276. }, {
  277. field: 'Deposit',
  278. width: 110,
  279. title: '押金',
  280. sort: true
  281. }, {
  282. field: 'ValidAmount',
  283. width: 110,
  284. title: '可用额度',
  285. sort: true
  286. }, {
  287. field: 'FixedAmount',
  288. width: 110,
  289. title: '固定额度',
  290. sort: true
  291. }, {
  292. field: 'TempAmount',
  293. width: 110,
  294. title: '临时额度',
  295. sort: true
  296. }, {
  297. field: 'PromissAmount',
  298. width: 110,
  299. title: '担保额度',
  300. sort: true
  301. }, {
  302. field: 'ThisMonthPreAmount',
  303. width: 150,
  304. title: '本月小分仓额度',
  305. sort: true
  306. }, {
  307. field: 'ValidPreAmount',
  308. width: 150,
  309. title: '可用小分仓额度',
  310. sort: true
  311. }, {
  312. title: '操作',
  313. width: 500,
  314. align: 'center',
  315. fixed: 'right',
  316. toolbar: '#table-list-tools'
  317. }
  318. ]
  319. ],
  320. where: {
  321. },
  322. page: true,
  323. limit: 500,
  324. height: 'full-' + String($('.layui-card-header').height() + 130),
  325. text: '对不起,加载出现异常!',
  326. done: function (res, curr, count) {
  327. $(".layui-none").text("无数据");
  328. layer.close(loadindex);
  329. }
  330. });
  331. //监听工具条
  332. table.on('tool(LAY-list-manage)', function (obj) {
  333. var data = obj.data;
  334. if (obj.event === 'del') {
  335. var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) {
  336. $.ajax({
  337. type: "POST",
  338. url: "/Admin/StoreHouse/Delete?r=" + Math.random(1),
  339. data: "Id=" + data.Id,
  340. dataType: "text",
  341. success: function (data) {
  342. if (data == "success") {
  343. obj.del();
  344. layer.close(index);
  345. } else {
  346. parent.layer.msg(data);
  347. }
  348. }
  349. });
  350. });
  351. } else if (obj.event === 'sycn') {
  352. var index = layer.confirm('确定要同步该仓库的库存数据吗?', function (index) {
  353. layer.close(index);
  354. var loadindex = layer.load(1, {
  355. shade: [0.5, '#000']
  356. });
  357. $.ajax({
  358. type: "POST",
  359. url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1),
  360. data: "Id=" + data.Id,
  361. dataType: "text",
  362. success: function (data) {
  363. layer.close(loadindex);
  364. if (data == "success") {
  365. layer.msg('同步成功');
  366. table.reload('LAY-list-manage');
  367. } else {
  368. layer.msg(data);
  369. }
  370. }
  371. });
  372. });
  373. } else if (obj.event === 'sycnamount') {
  374. var index = layer.confirm('确定要重置该仓库额度吗?', function (index) {
  375. layer.close(index);
  376. var loadindex = layer.load(1, {
  377. shade: [0.5, '#000']
  378. });
  379. $.ajax({
  380. type: "POST",
  381. url: "/Admin/StoreHouse/SycnAmountData?r=" + Math.random(1),
  382. data: "Id=" + data.Id,
  383. dataType: "text",
  384. success: function (data) {
  385. layer.close(loadindex);
  386. if (data == "success") {
  387. layer.msg('重置成功');
  388. table.reload('LAY-list-manage');
  389. } else {
  390. layer.msg(data);
  391. }
  392. }
  393. });
  394. });
  395. } else if (obj.event === 'edit') {
  396. var tr = $(obj.tr);
  397. var perContent = layer.open({
  398. type: 2,
  399. title: '仓库-编辑',
  400. content: 'Edit?Id=' + data.Id + '',
  401. maxmin: true,
  402. area: ['800px', '650px'],
  403. btn: ['确定', '取消'],
  404. yes: function (index, layero) {
  405. var iframeWindow = window['layui-layer-iframe' + index],
  406. submitID = 'LAY-list-front-submit',
  407. submit = layero.find('iframe').contents().find('#' + submitID);
  408. setTimeout(function () {
  409. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  410. var errObj = $(this).find('.layui-form-danger');
  411. if (errObj.length > 0) {
  412. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  413. submit.click();
  414. }
  415. });
  416. }, 300);
  417. //监听提交
  418. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  419. var field = data.field; //获取提交的字段
  420. var userdata = "";
  421. for (var prop in field) {
  422. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  423. }
  424. //提交 Ajax 成功后,静态更新表格中的数据
  425. //$.ajax({});
  426. $.ajax({
  427. type: "POST",
  428. url: "/Admin/StoreHouse/Edit?r=" + Math.random(1),
  429. data: userdata,
  430. dataType: "text",
  431. success: function (data) {
  432. if (data == "success") {
  433. layer.close(index); //关闭弹层
  434. table.reload('LAY-list-manage'); //数据刷新
  435. } else {
  436. layer.msg(data);
  437. }
  438. }
  439. });
  440. });
  441. submit.trigger('click');
  442. },
  443. success: function (layero, index) {
  444. }
  445. });
  446. } else if (obj.event === 'edits') {
  447. var tr = $(obj.tr);
  448. var perContent = layer.open({
  449. type: 2,
  450. title: '一键新建仓库',
  451. content: 'Edits?Id=' + data.Id + '',
  452. maxmin: true,
  453. area: ['860px', '650px'],
  454. btn: ['确定', '取消'],
  455. yes: function (index, layero) {
  456. var iframeWindow = window['layui-layer-iframe' + index],
  457. submitID = 'LAY-list-front-submit',
  458. submit = layero.find('iframe').contents().find('#' + submitID);
  459. setTimeout(function () {
  460. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  461. var errObj = $(this).find('.layui-form-danger');
  462. if (errObj.length > 0) {
  463. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  464. submit.click();
  465. }
  466. });
  467. }, 300);
  468. //监听提交
  469. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  470. var field = data.field; //获取提交的字段
  471. var userdata = "";
  472. for (var prop in field) {
  473. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  474. }
  475. //提交 Ajax 成功后,静态更新表格中的数据
  476. //$.ajax({});
  477. $.ajax({
  478. type: "POST",
  479. url: "/Admin/StoreHouse/Edits?r=" + Math.random(1),
  480. data: userdata,
  481. dataType: "text",
  482. success: function (data) {
  483. if (data == "success") {
  484. layer.close(index); //关闭弹层
  485. table.reload('LAY-list-manage'); //数据刷新
  486. } else {
  487. layer.msg(data);
  488. }
  489. }
  490. });
  491. });
  492. submit.trigger('click');
  493. },
  494. success: function (layero, index) {
  495. }
  496. });
  497. }
  498. });
  499. //监听搜索
  500. form.on('submit(LAY-list-front-search)', function (data) {
  501. var field = data.field;
  502. field.ShowFlag = 1;
  503. if (field.StoreNo == "" && field.StoreName == "" && field.UserIdMakerCode == "" && field.BrandId == "" && field.UserIdRealName == "" && field.ManageUserIdRealName == "" && field.ManageUserIdMobile == "" && field.ManageUserIdMakerCode == "" && field.ManagerEmail == "" && field.StoreStatusSelect == "" && field.CreateDateData == "" && field.MakerCode == "" && field.YZOpCode == "" && field.OpStatusSelect == "" && field.StoreKindSelect == "") {
  504. layer.alert('请输入查询条件');
  505. }
  506. else {
  507. //执行重载
  508. table.reload('LAY-list-manage', {
  509. where: field,
  510. page: {
  511. curr: 1
  512. }
  513. });
  514. }
  515. });
  516. form.on('submit(LAY-list-front-searchall)', function (data) {
  517. var field = data.field;
  518. field.ShowFlag = 1;
  519. console.log(field.ShowFlag)
  520. field.StoreNo = "";
  521. field.StoreName = "";
  522. field.ManagerEmail = "";
  523. field.UserIdMakerCode = "";
  524. field.BrandId == "";
  525. field.UserIdRealName = "";
  526. field.ManageUserIdRealName = "";
  527. field.ManageUserIdMobile = "";
  528. field.ManageUserIdMakerCode = "";
  529. field.StoreStatusSelect = "";
  530. field.CreateDateData = "";
  531. table.reload('LAY-list-manage', {
  532. where: field,
  533. page: {
  534. curr: 1
  535. }
  536. });
  537. });
  538. //事件
  539. var active = {
  540. batchdel: function () {
  541. var checkStatus = table.checkStatus('LAY-list-manage'),
  542. data = checkStatus.data; //得到选中的数据
  543. if (data.length < 1) {
  544. parent.layer.msg("请选择要删除的项");
  545. } else {
  546. var ids = "";
  547. $.each(data, function (index, value) {
  548. ids += data[index].Id + ",";
  549. });
  550. ids = ids.substring(0, ids.length - 1);
  551. var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) {
  552. $.ajax({
  553. type: "POST",
  554. url: "/Admin/StoreHouse/Delete?r=" + Math.random(1),
  555. data: "Id=" + ids,
  556. dataType: "text",
  557. success: function (data) {
  558. layer.close(index);
  559. if (data == "success") {
  560. table.reload('LAY-list-manage');
  561. } else {
  562. layer.msg(data);
  563. }
  564. }
  565. });
  566. });
  567. }
  568. },
  569. add: function () {
  570. var perContent = layer.open({
  571. type: 2,
  572. title: '仓库-添加',
  573. content: 'Add',
  574. maxmin: true,
  575. area: ['950px', '650px'],
  576. btn: ['确定', '取消'],
  577. yes: function (index, layero) {
  578. var iframeWindow = window['layui-layer-iframe' + index],
  579. submitID = 'LAY-list-front-submit',
  580. submit = layero.find('iframe').contents().find('#' + submitID);
  581. setTimeout(function () {
  582. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  583. var errObj = $(this).find('.layui-form-danger');
  584. if (errObj.length > 0) {
  585. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  586. submit.click();
  587. }
  588. });
  589. }, 300);
  590. //监听提交
  591. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  592. var field = data.field; //获取提交的字段
  593. var userdata = "";
  594. for (var prop in field) {
  595. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  596. }
  597. //提交 Ajax 成功后,静态更新表格中的数据
  598. //$.ajax({});
  599. $.ajax({
  600. type: "POST",
  601. url: "/Admin/StoreHouse/Add?r=" + Math.random(1),
  602. data: userdata,
  603. dataType: "text",
  604. success: function (data) {
  605. if (data == "success") {
  606. layer.close(index); //关闭弹层
  607. table.reload('LAY-list-manage'); //数据刷新
  608. } else {
  609. layer.msg(data);
  610. }
  611. }
  612. });
  613. });
  614. submit.trigger('click');
  615. }
  616. });
  617. },
  618. ImportMachine: function () {
  619. var perContent = layer.open({
  620. type: 2,
  621. title: '机具入库',
  622. content: 'Import?ExcelKind=1',
  623. maxmin: true,
  624. area: ['650px', '350px'],
  625. btn: ['确定', '取消'],
  626. yes: function (index, layero) {
  627. var iframeWindow = window['layui-layer-iframe' + index],
  628. submitID = 'LAY-list-front-submit',
  629. submit = layero.find('iframe').contents().find('#' + submitID);
  630. //监听提交
  631. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  632. var field = data.field; //获取提交的字段
  633. var userdata = "";
  634. for (var prop in field) {
  635. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  636. }
  637. //提交 Ajax 成功后,静态更新表格中的数据
  638. //$.ajax({});
  639. var loadindex = layer.load(1, {
  640. shade: [0.5, '#000']
  641. });
  642. $.ajax({
  643. type: "POST",
  644. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  645. data: userdata,
  646. dataType: "text",
  647. success: function (data) {
  648. if (data.indexOf("success") == 0) {
  649. var datalist = data.split('|');
  650. var key = datalist[1];
  651. CheckImport(table, key, loadindex, index);
  652. } else {
  653. layer.msg(data);
  654. }
  655. }
  656. });
  657. });
  658. submit.trigger('click');
  659. }
  660. });
  661. },
  662. ImportChange: function () {
  663. var perContent = layer.open({
  664. type: 2,
  665. title: '仓库调拨',
  666. content: 'Import?ExcelKind=2',
  667. maxmin: true,
  668. area: ['650px', '350px'],
  669. btn: ['确定', '取消'],
  670. yes: function (index, layero) {
  671. var iframeWindow = window['layui-layer-iframe' + index],
  672. submitID = 'LAY-list-front-submit',
  673. submit = layero.find('iframe').contents().find('#' + submitID);
  674. //监听提交
  675. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  676. var field = data.field; //获取提交的字段
  677. var userdata = "";
  678. for (var prop in field) {
  679. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  680. }
  681. //提交 Ajax 成功后,静态更新表格中的数据
  682. //$.ajax({});
  683. var loadindex = layer.load(1, {
  684. shade: [0.5, '#000']
  685. });
  686. $.ajax({
  687. type: "POST",
  688. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  689. data: userdata,
  690. dataType: "text",
  691. success: function (data) {
  692. if (data.indexOf("success") == 0) {
  693. var datalist = data.split('|');
  694. var key = datalist[1];
  695. CheckImport(table, key, loadindex, index);
  696. } else {
  697. layer.msg(data);
  698. }
  699. }
  700. });
  701. });
  702. submit.trigger('click');
  703. }
  704. });
  705. },
  706. ImportSend: function () {
  707. var perContent = layer.open({
  708. type: 2,
  709. title: '仓库发货至创客',
  710. content: 'Import?ExcelKind=3',
  711. maxmin: true,
  712. area: ['650px', '350px'],
  713. btn: ['确定', '取消'],
  714. yes: function (index, layero) {
  715. var iframeWindow = window['layui-layer-iframe' + index],
  716. submitID = 'LAY-list-front-submit',
  717. submit = layero.find('iframe').contents().find('#' + submitID);
  718. //监听提交
  719. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  720. var field = data.field; //获取提交的字段
  721. var userdata = "";
  722. for (var prop in field) {
  723. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  724. }
  725. //提交 Ajax 成功后,静态更新表格中的数据
  726. //$.ajax({});
  727. var loadindex = layer.load(1, {
  728. shade: [0.5, '#000']
  729. });
  730. $.ajax({
  731. type: "POST",
  732. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  733. data: userdata,
  734. dataType: "text",
  735. success: function (data) {
  736. if (data.indexOf("success") == 0) {
  737. var datalist = data.split('|');
  738. var key = datalist[1];
  739. CheckImport(table, key, loadindex, index);
  740. } else {
  741. layer.msg(data);
  742. }
  743. }
  744. });
  745. });
  746. submit.trigger('click');
  747. }
  748. });
  749. },
  750. ImportBack: function () {
  751. var perContent = layer.open({
  752. type: 2,
  753. title: '机具回仓库',
  754. content: 'Import?ExcelKind=4',
  755. maxmin: true,
  756. area: ['650px', '350px'],
  757. btn: ['确定', '取消'],
  758. yes: function (index, layero) {
  759. var iframeWindow = window['layui-layer-iframe' + index],
  760. submitID = 'LAY-list-front-submit',
  761. submit = layero.find('iframe').contents().find('#' + submitID);
  762. //监听提交
  763. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  764. var field = data.field; //获取提交的字段
  765. var userdata = "";
  766. for (var prop in field) {
  767. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  768. }
  769. //提交 Ajax 成功后,静态更新表格中的数据
  770. //$.ajax({});
  771. var loadindex = layer.load(1, {
  772. shade: [0.5, '#000']
  773. });
  774. $.ajax({
  775. type: "POST",
  776. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  777. data: userdata,
  778. dataType: "text",
  779. success: function (data) {
  780. if (data.indexOf("success") == 0) {
  781. var datalist = data.split('|');
  782. var key = datalist[1];
  783. CheckImport(table, key, loadindex, index);
  784. } else {
  785. layer.msg(data);
  786. }
  787. }
  788. });
  789. });
  790. submit.trigger('click');
  791. }
  792. });
  793. }, ImportRejectStore: function () {
  794. ExcelKind = 1;
  795. layer.open({
  796. type: 1,
  797. title: '导入',
  798. maxmin: false,
  799. area: ['650px', '350px'],
  800. // btn: ['确定', '取消'],
  801. content: $('#excelForm'),
  802. cancel: function () {
  803. }
  804. });
  805. $("#excelTemp").html('<a href="/users/创客机具驳回仓库模版.xlsx">点击下载创客机具驳回仓库模版</a>');
  806. },
  807. ExportExcel: function () {
  808. var userdata = '';
  809. $(".layuiadmin-card-header-auto input").each(function (i) {
  810. userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
  811. });
  812. $(".layuiadmin-card-header-auto select").each(function (i) {
  813. userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
  814. });
  815. $.ajax({
  816. type: "GET",
  817. url: "/Admin/StoreHouse/ExportExcel?r=" + Math.random(1),
  818. data: userdata,
  819. dataType: "json",
  820. success: function (data) {
  821. data.Obj.unshift(data.Fields);
  822. excel.exportExcel(data.Obj, data.Info, 'xlsx');
  823. }
  824. });
  825. }, BatchSetting: function () {
  826. var checkStatus = table.checkStatus('LAY-list-manage'),
  827. data = checkStatus.data; //得到选中的数据
  828. if (data.length < 1) {
  829. parent.layer.msg("请选择要关联的分仓");
  830. } else {
  831. var ids = "";
  832. $.each(data, function (index, value) {
  833. ids += data[index].Id + ",";
  834. });
  835. ids = ids.substring(0, ids.length - 1);
  836. var perContent = layer.open({
  837. type: 2,
  838. title: '关联分仓',
  839. content: 'BatchSetting?StoreIds=' + ids,
  840. maxmin: true,
  841. area: ['550px', '350px'],
  842. btn: ['确定', '取消'],
  843. yes: function (index, layero) {
  844. loadindex = layer.load(1, {
  845. shade: [0.5, '#000']
  846. });
  847. var iframeWindow = window['layui-layer-iframe' + index],
  848. submitID = 'LAY-list-front-submit',
  849. submit = layero.find('iframe').contents().find('#' + submitID);
  850. setTimeout(function () {
  851. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  852. var errObj = $(this).find('.layui-form-danger');
  853. if (errObj.length > 0) {
  854. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  855. submit.click();
  856. }
  857. });
  858. }, 300);
  859. //监听提交
  860. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  861. if (clickflag == 0) {
  862. clickflag = 1;
  863. var field = data.field; //获取提交的字段
  864. var userdata = "";
  865. for (var prop in field) {
  866. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  867. }
  868. //提交 Ajax 成功后,静态更新表格中的数据
  869. //$.ajax({});
  870. $.ajax({
  871. type: "POST",
  872. url: "/Admin/StoreHouse/BatchSetting?r=" + Math.random(1),
  873. data: userdata + "Id=" + ids,
  874. dataType: "text",
  875. success: function (data) {
  876. clickflag = 0;
  877. layer.close(index);
  878. if (data == "success") {
  879. layer.close(loadindex);
  880. layer.msg('关联成功', {
  881. time: 1000
  882. }, function () {
  883. table.reload('LAY-list-manage'); //数据刷新
  884. });
  885. }
  886. else if (data.indexOf("Warning") == 0) {
  887. var datalist = data.split('|');
  888. layer.alert(datalist[1], { time: 20000 }, function () {
  889. window.location.reload();
  890. });
  891. }
  892. else {
  893. layer.msg(data);
  894. }
  895. }
  896. });
  897. }
  898. });
  899. submit.trigger('click');
  900. }
  901. });
  902. }
  903. },
  904. BatchCancle: function () {
  905. var checkStatus = table.checkStatus('LAY-list-manage'),
  906. data = checkStatus.data; //得到选中的数据
  907. if (data.length < 1) {
  908. parent.layer.msg("请选择要取消关联的分仓");
  909. } else {
  910. var ids = "";
  911. $.each(data, function (index, value) {
  912. ids += data[index].Id + ",";
  913. });
  914. ids = ids.substring(0, ids.length - 1);
  915. var perContent = layer.open({
  916. type: 2,
  917. title: '取消关联',
  918. content: 'BatchCancle?StoreIds=' + ids,
  919. maxmin: true,
  920. area: ['650px', '550px'],
  921. btn: ['确定', '取消'],
  922. yes: function (index, layero) {
  923. loadindex = layer.load(1, {
  924. shade: [0.5, '#000']
  925. });
  926. var iframeWindow = window['layui-layer-iframe' + index],
  927. submitID = 'LAY-list-front-submit',
  928. submit = layero.find('iframe').contents().find('#' + submitID);
  929. setTimeout(function () {
  930. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  931. var errObj = $(this).find('.layui-form-danger');
  932. if (errObj.length > 0) {
  933. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  934. submit.click();
  935. }
  936. });
  937. }, 300);
  938. //监听提交
  939. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  940. if (clickflag == 0) {
  941. clickflag = 1;
  942. var field = data.field; //获取提交的字段
  943. var userdata = "";
  944. for (var prop in field) {
  945. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  946. }
  947. //提交 Ajax 成功后,静态更新表格中的数据
  948. //$.ajax({});
  949. $.ajax({
  950. type: "POST",
  951. url: "/Admin/StoreHouse/BatchCancle?r=" + Math.random(1),
  952. data: userdata + "Id=" + ids,
  953. dataType: "text",
  954. success: function (data) {
  955. clickflag = 0;
  956. layer.close(index);
  957. if (data == "success") {
  958. layer.close(loadindex);
  959. layer.msg('取消成功', {
  960. time: 1000
  961. }, function () {
  962. table.reload('LAY-list-manage'); //数据刷新
  963. });
  964. }
  965. else if (data.indexOf("Warning") == 0) {
  966. var datalist = data.split('|');
  967. layer.alert(datalist[1], { time: 20000 }, function () {
  968. window.location.reload();
  969. });
  970. }
  971. else {
  972. layer.msg(data);
  973. }
  974. }
  975. });
  976. }
  977. });
  978. submit.trigger('click');
  979. }
  980. });
  981. }
  982. },
  983. Open: function () {
  984. var checkStatus = table.checkStatus('LAY-list-manage'),
  985. data = checkStatus.data; //得到选中的数据
  986. if (data.length < 1) {
  987. parent.layer.msg("请选择要开启的项");
  988. } else {
  989. var ids = "";
  990. $.each(data, function (index, value) {
  991. ids += data[index].Id + ",";
  992. });
  993. ids = ids.substring(0, ids.length - 1);
  994. var index = layer.confirm('确定要开启吗?', function (index) {
  995. $.ajax({
  996. type: "POST",
  997. url: "/Admin/StoreHouse/Open?r=" + Math.random(1),
  998. data: "Id=" + ids,
  999. dataType: "text",
  1000. success: function (data) {
  1001. layer.close(index);
  1002. if (data == "success") {
  1003. table.reload('LAY-list-manage');
  1004. } else {
  1005. layer.msg(data);
  1006. }
  1007. }
  1008. });
  1009. });
  1010. }
  1011. },
  1012. Close: function () {
  1013. var checkStatus = table.checkStatus('LAY-list-manage'),
  1014. data = checkStatus.data; //得到选中的数据
  1015. if (data.length < 1) {
  1016. parent.layer.msg("请选择要关闭的项");
  1017. } else {
  1018. var ids = "";
  1019. $.each(data, function (index, value) {
  1020. ids += data[index].Id + ",";
  1021. });
  1022. ids = ids.substring(0, ids.length - 1);
  1023. var index = layer.confirm('确定要关闭吗?', function (index) {
  1024. $.ajax({
  1025. type: "POST",
  1026. url: "/Admin/StoreHouse/Close?r=" + Math.random(1),
  1027. data: "Id=" + ids,
  1028. dataType: "text",
  1029. success: function (data) {
  1030. layer.close(index);
  1031. if (data == "success") {
  1032. table.reload('LAY-list-manage');
  1033. } else {
  1034. layer.msg(data);
  1035. }
  1036. }
  1037. });
  1038. });
  1039. }
  1040. },
  1041. SycnData: function () {
  1042. var index = layer.confirm('确定要同步所有仓库的库存数据吗?', function (index) {
  1043. layer.close(index);
  1044. var loadindex = layer.load(1, {
  1045. shade: [0.5, '#000']
  1046. });
  1047. $.ajax({
  1048. type: "POST",
  1049. url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1),
  1050. data: "Id=0",
  1051. dataType: "text",
  1052. success: function (data) {
  1053. layer.close(loadindex);
  1054. if (data == "success") {
  1055. layer.msg('同步成功');
  1056. table.reload('LAY-list-manage');
  1057. } else {
  1058. layer.msg(data);
  1059. }
  1060. }
  1061. });
  1062. });
  1063. },
  1064. };
  1065. $('.layui-btn').on('click', function () {
  1066. var type = $(this).data('type');
  1067. active[type] ? active[type].call(this) : '';
  1068. });
  1069. });