StoreHouse_Admin.js 35 KB

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