StoreHouse_Admin.js 41 KB

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