StoreHouse_Admin.js 45 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114
  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: 'ManageUserIdMobile',
  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: 'PreNum',
  228. width: 120,
  229. title: '小分仓数',
  230. sort: true
  231. }, {
  232. field: 'OutNum',
  233. width: 100,
  234. title: '出库数',
  235. sort: true
  236. }, {
  237. field: 'LimitTopUserId',
  238. width: 160,
  239. title: '限制创客特殊仓库',
  240. sort: true
  241. }, {
  242. field: 'Status',
  243. width: 110,
  244. title: '仓库状态',
  245. sort: true
  246. }, {
  247. field: 'OpIdStatus',
  248. width: 130,
  249. title: '关联运营中心',
  250. sort: true
  251. }, {
  252. field: 'StoreKind',
  253. width: 130,
  254. title: '仓库归属类型',
  255. sort: true
  256. }, {
  257. field: 'CreateMan',
  258. width: 130,
  259. title: '创建/修改人',
  260. sort: true
  261. }, {
  262. field: 'CreateDate',
  263. width: 110,
  264. title: '创建时间',
  265. sort: true
  266. }, {
  267. field: 'Deposit',
  268. width: 110,
  269. title: '押金',
  270. sort: true
  271. }, {
  272. field: 'ValidAmount',
  273. width: 110,
  274. title: '可用额度',
  275. sort: true
  276. }, {
  277. field: 'FixedAmount',
  278. width: 110,
  279. title: '固定额度',
  280. sort: true
  281. }, {
  282. field: 'TempAmount',
  283. width: 110,
  284. title: '临时额度',
  285. sort: true
  286. }, {
  287. field: 'PromissAmount',
  288. width: 110,
  289. title: '担保额度',
  290. sort: true
  291. }, {
  292. field: 'ThisMonthPreAmount',
  293. width: 150,
  294. title: '本月小分仓额度',
  295. sort: true
  296. }, {
  297. field: 'ValidPreAmount',
  298. width: 150,
  299. title: '可用小分仓额度',
  300. sort: true
  301. }, {
  302. title: '操作',
  303. width: 500,
  304. align: 'center',
  305. fixed: 'right',
  306. toolbar: '#table-list-tools'
  307. }
  308. ]
  309. ],
  310. where: {
  311. },
  312. page: true,
  313. limit: 500,
  314. height: 'full-' + String($('.layui-card-header').height() + 130),
  315. text: '对不起,加载出现异常!',
  316. done: function (res, curr, count) {
  317. $(".layui-none").text("无数据");
  318. layer.close(loadindex);
  319. }
  320. });
  321. //监听工具条
  322. table.on('tool(LAY-list-manage)', function (obj) {
  323. var data = obj.data;
  324. if (obj.event === 'del') {
  325. var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) {
  326. $.ajax({
  327. type: "POST",
  328. url: "/Admin/StoreHouse/Delete?r=" + Math.random(1),
  329. data: "Id=" + data.Id,
  330. dataType: "text",
  331. success: function (data) {
  332. if (data == "success") {
  333. obj.del();
  334. layer.close(index);
  335. } else {
  336. parent.layer.msg(data);
  337. }
  338. }
  339. });
  340. });
  341. } else if (obj.event === 'sycn') {
  342. var index = layer.confirm('确定要同步该仓库的库存数据吗?', function (index) {
  343. layer.close(index);
  344. var loadindex = layer.load(1, {
  345. shade: [0.5, '#000']
  346. });
  347. $.ajax({
  348. type: "POST",
  349. url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1),
  350. data: "Id=" + data.Id,
  351. dataType: "text",
  352. success: function (data) {
  353. layer.close(loadindex);
  354. if (data == "success") {
  355. layer.msg('同步成功');
  356. table.reload('LAY-list-manage');
  357. } else {
  358. layer.msg(data);
  359. }
  360. }
  361. });
  362. });
  363. } else if (obj.event === 'sycnamount') {
  364. var index = layer.confirm('确定要重置该仓库额度吗?', function (index) {
  365. layer.close(index);
  366. var loadindex = layer.load(1, {
  367. shade: [0.5, '#000']
  368. });
  369. $.ajax({
  370. type: "POST",
  371. url: "/Admin/StoreHouse/SycnAmountData?r=" + Math.random(1),
  372. data: "Id=" + data.Id,
  373. dataType: "text",
  374. success: function (data) {
  375. layer.close(loadindex);
  376. if (data == "success") {
  377. layer.msg('重置成功');
  378. table.reload('LAY-list-manage');
  379. } else {
  380. layer.msg(data);
  381. }
  382. }
  383. });
  384. });
  385. } else if (obj.event === 'edit') {
  386. var tr = $(obj.tr);
  387. var perContent = layer.open({
  388. type: 2,
  389. title: '仓库-编辑',
  390. content: 'Edit?Id=' + data.Id + '',
  391. maxmin: true,
  392. area: ['800px', '650px'],
  393. btn: ['确定', '取消'],
  394. yes: function (index, layero) {
  395. var iframeWindow = window['layui-layer-iframe' + index],
  396. submitID = 'LAY-list-front-submit',
  397. submit = layero.find('iframe').contents().find('#' + submitID);
  398. setTimeout(function () {
  399. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  400. var errObj = $(this).find('.layui-form-danger');
  401. if (errObj.length > 0) {
  402. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  403. submit.click();
  404. }
  405. });
  406. }, 300);
  407. //监听提交
  408. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  409. var field = data.field; //获取提交的字段
  410. var userdata = "";
  411. for (var prop in field) {
  412. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  413. }
  414. //提交 Ajax 成功后,静态更新表格中的数据
  415. //$.ajax({});
  416. $.ajax({
  417. type: "POST",
  418. url: "/Admin/StoreHouse/Edit?r=" + Math.random(1),
  419. data: userdata,
  420. dataType: "text",
  421. success: function (data) {
  422. if (data == "success") {
  423. layer.close(index); //关闭弹层
  424. table.reload('LAY-list-manage'); //数据刷新
  425. } else {
  426. layer.msg(data);
  427. }
  428. }
  429. });
  430. });
  431. submit.trigger('click');
  432. },
  433. success: function (layero, index) {
  434. }
  435. });
  436. } else if (obj.event === 'edits') {
  437. var tr = $(obj.tr);
  438. var perContent = layer.open({
  439. type: 2,
  440. title: '一键新建仓库',
  441. content: 'Edits?Id=' + data.Id + '',
  442. maxmin: true,
  443. area: ['860px', '650px'],
  444. btn: ['确定', '取消'],
  445. yes: function (index, layero) {
  446. var iframeWindow = window['layui-layer-iframe' + index],
  447. submitID = 'LAY-list-front-submit',
  448. submit = layero.find('iframe').contents().find('#' + submitID);
  449. setTimeout(function () {
  450. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  451. var errObj = $(this).find('.layui-form-danger');
  452. if (errObj.length > 0) {
  453. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  454. submit.click();
  455. }
  456. });
  457. }, 300);
  458. //监听提交
  459. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  460. var field = data.field; //获取提交的字段
  461. var userdata = "";
  462. for (var prop in field) {
  463. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  464. }
  465. //提交 Ajax 成功后,静态更新表格中的数据
  466. //$.ajax({});
  467. $.ajax({
  468. type: "POST",
  469. url: "/Admin/StoreHouse/Edits?r=" + Math.random(1),
  470. data: userdata,
  471. dataType: "text",
  472. success: function (data) {
  473. if (data == "success") {
  474. layer.close(index); //关闭弹层
  475. table.reload('LAY-list-manage'); //数据刷新
  476. } else {
  477. layer.msg(data);
  478. }
  479. }
  480. });
  481. });
  482. submit.trigger('click');
  483. },
  484. success: function (layero, index) {
  485. }
  486. });
  487. }
  488. });
  489. //监听搜索
  490. form.on('submit(LAY-list-front-search)', function (data) {
  491. var field = data.field;
  492. field.ShowFlag = 1;
  493. 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 == "") {
  494. layer.alert('请输入查询条件');
  495. }
  496. else {
  497. //执行重载
  498. table.reload('LAY-list-manage', {
  499. where: field,
  500. page: {
  501. curr: 1
  502. }
  503. });
  504. }
  505. });
  506. form.on('submit(LAY-list-front-searchall)', function (data) {
  507. var field = data.field;
  508. field.ShowFlag = 1;
  509. console.log(field.ShowFlag)
  510. field.StoreNo = "";
  511. field.StoreName = "";
  512. field.ManagerEmail = "";
  513. field.UserIdMakerCode = "";
  514. field.BrandId == "";
  515. field.UserIdRealName = "";
  516. field.ManageUserIdRealName = "";
  517. field.ManageUserIdMobile = "";
  518. field.ManageUserIdMakerCode = "";
  519. field.StoreStatusSelect = "";
  520. field.CreateDateData = "";
  521. table.reload('LAY-list-manage', {
  522. where: field,
  523. page: {
  524. curr: 1
  525. }
  526. });
  527. });
  528. //事件
  529. var active = {
  530. batchdel: function () {
  531. var checkStatus = table.checkStatus('LAY-list-manage'),
  532. data = checkStatus.data; //得到选中的数据
  533. if (data.length < 1) {
  534. parent.layer.msg("请选择要删除的项");
  535. } else {
  536. var ids = "";
  537. $.each(data, function (index, value) {
  538. ids += data[index].Id + ",";
  539. });
  540. ids = ids.substring(0, ids.length - 1);
  541. var index = layer.confirm('确定要删除吗?删除后不能恢复!', function (index) {
  542. $.ajax({
  543. type: "POST",
  544. url: "/Admin/StoreHouse/Delete?r=" + Math.random(1),
  545. data: "Id=" + ids,
  546. dataType: "text",
  547. success: function (data) {
  548. layer.close(index);
  549. if (data == "success") {
  550. table.reload('LAY-list-manage');
  551. } else {
  552. layer.msg(data);
  553. }
  554. }
  555. });
  556. });
  557. }
  558. },
  559. add: function () {
  560. var perContent = layer.open({
  561. type: 2,
  562. title: '仓库-添加',
  563. content: 'Add',
  564. maxmin: true,
  565. area: ['950px', '650px'],
  566. btn: ['确定', '取消'],
  567. yes: function (index, layero) {
  568. var iframeWindow = window['layui-layer-iframe' + index],
  569. submitID = 'LAY-list-front-submit',
  570. submit = layero.find('iframe').contents().find('#' + submitID);
  571. setTimeout(function () {
  572. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  573. var errObj = $(this).find('.layui-form-danger');
  574. if (errObj.length > 0) {
  575. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  576. submit.click();
  577. }
  578. });
  579. }, 300);
  580. //监听提交
  581. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  582. var field = data.field; //获取提交的字段
  583. var userdata = "";
  584. for (var prop in field) {
  585. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  586. }
  587. //提交 Ajax 成功后,静态更新表格中的数据
  588. //$.ajax({});
  589. $.ajax({
  590. type: "POST",
  591. url: "/Admin/StoreHouse/Add?r=" + Math.random(1),
  592. data: userdata,
  593. dataType: "text",
  594. success: function (data) {
  595. if (data == "success") {
  596. layer.close(index); //关闭弹层
  597. table.reload('LAY-list-manage'); //数据刷新
  598. } else {
  599. layer.msg(data);
  600. }
  601. }
  602. });
  603. });
  604. submit.trigger('click');
  605. }
  606. });
  607. },
  608. ImportMachine: function () {
  609. var perContent = layer.open({
  610. type: 2,
  611. title: '机具入库',
  612. content: 'Import?ExcelKind=1',
  613. maxmin: true,
  614. area: ['650px', '350px'],
  615. btn: ['确定', '取消'],
  616. yes: function (index, layero) {
  617. var iframeWindow = window['layui-layer-iframe' + index],
  618. submitID = 'LAY-list-front-submit',
  619. submit = layero.find('iframe').contents().find('#' + submitID);
  620. //监听提交
  621. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  622. var field = data.field; //获取提交的字段
  623. var userdata = "";
  624. for (var prop in field) {
  625. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  626. }
  627. //提交 Ajax 成功后,静态更新表格中的数据
  628. //$.ajax({});
  629. var loadindex = layer.load(1, {
  630. shade: [0.5, '#000']
  631. });
  632. $.ajax({
  633. type: "POST",
  634. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  635. data: userdata,
  636. dataType: "text",
  637. success: function (data) {
  638. if (data.indexOf("success") == 0) {
  639. var datalist = data.split('|');
  640. var key = datalist[1];
  641. CheckImport(table, key, loadindex, index);
  642. } else {
  643. layer.msg(data);
  644. }
  645. }
  646. });
  647. });
  648. submit.trigger('click');
  649. }
  650. });
  651. },
  652. ImportChange: function () {
  653. var perContent = layer.open({
  654. type: 2,
  655. title: '仓库调拨',
  656. content: 'Import?ExcelKind=2',
  657. maxmin: true,
  658. area: ['650px', '350px'],
  659. btn: ['确定', '取消'],
  660. yes: function (index, layero) {
  661. var iframeWindow = window['layui-layer-iframe' + index],
  662. submitID = 'LAY-list-front-submit',
  663. submit = layero.find('iframe').contents().find('#' + submitID);
  664. //监听提交
  665. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  666. var field = data.field; //获取提交的字段
  667. var userdata = "";
  668. for (var prop in field) {
  669. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  670. }
  671. //提交 Ajax 成功后,静态更新表格中的数据
  672. //$.ajax({});
  673. var loadindex = layer.load(1, {
  674. shade: [0.5, '#000']
  675. });
  676. $.ajax({
  677. type: "POST",
  678. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  679. data: userdata,
  680. dataType: "text",
  681. success: function (data) {
  682. if (data.indexOf("success") == 0) {
  683. var datalist = data.split('|');
  684. var key = datalist[1];
  685. CheckImport(table, key, loadindex, index);
  686. } else {
  687. layer.msg(data);
  688. }
  689. }
  690. });
  691. });
  692. submit.trigger('click');
  693. }
  694. });
  695. },
  696. ImportSend: function () {
  697. var perContent = layer.open({
  698. type: 2,
  699. title: '仓库发货至创客',
  700. content: 'Import?ExcelKind=3',
  701. maxmin: true,
  702. area: ['650px', '350px'],
  703. btn: ['确定', '取消'],
  704. yes: function (index, layero) {
  705. var iframeWindow = window['layui-layer-iframe' + index],
  706. submitID = 'LAY-list-front-submit',
  707. submit = layero.find('iframe').contents().find('#' + submitID);
  708. //监听提交
  709. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  710. var field = data.field; //获取提交的字段
  711. var userdata = "";
  712. for (var prop in field) {
  713. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  714. }
  715. //提交 Ajax 成功后,静态更新表格中的数据
  716. //$.ajax({});
  717. var loadindex = layer.load(1, {
  718. shade: [0.5, '#000']
  719. });
  720. $.ajax({
  721. type: "POST",
  722. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  723. data: userdata,
  724. dataType: "text",
  725. success: function (data) {
  726. if (data.indexOf("success") == 0) {
  727. var datalist = data.split('|');
  728. var key = datalist[1];
  729. CheckImport(table, key, loadindex, index);
  730. } else {
  731. layer.msg(data);
  732. }
  733. }
  734. });
  735. });
  736. submit.trigger('click');
  737. }
  738. });
  739. },
  740. ImportBack: function () {
  741. var perContent = layer.open({
  742. type: 2,
  743. title: '机具回仓库',
  744. content: 'Import?ExcelKind=4',
  745. maxmin: true,
  746. area: ['650px', '350px'],
  747. btn: ['确定', '取消'],
  748. yes: function (index, layero) {
  749. var iframeWindow = window['layui-layer-iframe' + index],
  750. submitID = 'LAY-list-front-submit',
  751. submit = layero.find('iframe').contents().find('#' + submitID);
  752. //监听提交
  753. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  754. var field = data.field; //获取提交的字段
  755. var userdata = "";
  756. for (var prop in field) {
  757. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  758. }
  759. //提交 Ajax 成功后,静态更新表格中的数据
  760. //$.ajax({});
  761. var loadindex = layer.load(1, {
  762. shade: [0.5, '#000']
  763. });
  764. $.ajax({
  765. type: "POST",
  766. url: "/Admin/StoreHouse/ImportPost?r=" + Math.random(1),
  767. data: userdata,
  768. dataType: "text",
  769. success: function (data) {
  770. if (data.indexOf("success") == 0) {
  771. var datalist = data.split('|');
  772. var key = datalist[1];
  773. CheckImport(table, key, loadindex, index);
  774. } else {
  775. layer.msg(data);
  776. }
  777. }
  778. });
  779. });
  780. submit.trigger('click');
  781. }
  782. });
  783. }, ImportRejectStore: function () {
  784. ExcelKind = 1;
  785. layer.open({
  786. type: 1,
  787. title: '导入',
  788. maxmin: false,
  789. area: ['650px', '350px'],
  790. // btn: ['确定', '取消'],
  791. content: $('#excelForm'),
  792. cancel: function () {
  793. }
  794. });
  795. $("#excelTemp").html('<a href="/users/创客机具驳回仓库模版.xlsx">点击下载创客机具驳回仓库模版</a>');
  796. },
  797. ExportExcel: function () {
  798. var userdata = '';
  799. $(".layuiadmin-card-header-auto input").each(function (i) {
  800. userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
  801. });
  802. $(".layuiadmin-card-header-auto select").each(function (i) {
  803. userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
  804. });
  805. $.ajax({
  806. type: "GET",
  807. url: "/Admin/StoreHouse/ExportExcel?r=" + Math.random(1),
  808. data: userdata,
  809. dataType: "json",
  810. success: function (data) {
  811. data.Obj.unshift(data.Fields);
  812. excel.exportExcel(data.Obj, data.Info, 'xlsx');
  813. }
  814. });
  815. }, BatchSetting: function () {
  816. var checkStatus = table.checkStatus('LAY-list-manage'),
  817. data = checkStatus.data; //得到选中的数据
  818. if (data.length < 1) {
  819. parent.layer.msg("请选择要关联的分仓");
  820. } else {
  821. var ids = "";
  822. $.each(data, function (index, value) {
  823. ids += data[index].Id + ",";
  824. });
  825. ids = ids.substring(0, ids.length - 1);
  826. var perContent = layer.open({
  827. type: 2,
  828. title: '关联分仓',
  829. content: 'BatchSetting?StoreIds=' + ids,
  830. maxmin: true,
  831. area: ['550px', '350px'],
  832. btn: ['确定', '取消'],
  833. yes: function (index, layero) {
  834. loadindex = layer.load(1, {
  835. shade: [0.5, '#000']
  836. });
  837. var iframeWindow = window['layui-layer-iframe' + index],
  838. submitID = 'LAY-list-front-submit',
  839. submit = layero.find('iframe').contents().find('#' + submitID);
  840. setTimeout(function () {
  841. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  842. var errObj = $(this).find('.layui-form-danger');
  843. if (errObj.length > 0) {
  844. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  845. submit.click();
  846. }
  847. });
  848. }, 300);
  849. //监听提交
  850. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  851. if (clickflag == 0) {
  852. clickflag = 1;
  853. var field = data.field; //获取提交的字段
  854. var userdata = "";
  855. for (var prop in field) {
  856. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  857. }
  858. //提交 Ajax 成功后,静态更新表格中的数据
  859. //$.ajax({});
  860. $.ajax({
  861. type: "POST",
  862. url: "/Admin/StoreHouse/BatchSetting?r=" + Math.random(1),
  863. data: userdata + "Id=" + ids,
  864. dataType: "text",
  865. success: function (data) {
  866. clickflag = 0;
  867. layer.close(index);
  868. if (data == "success") {
  869. layer.close(loadindex);
  870. layer.msg('关联成功', {
  871. time: 1000
  872. }, function () {
  873. table.reload('LAY-list-manage'); //数据刷新
  874. });
  875. }
  876. else if (data.indexOf("Warning") == 0) {
  877. var datalist = data.split('|');
  878. layer.alert(datalist[1], { time: 20000 }, function () {
  879. window.location.reload();
  880. });
  881. }
  882. else {
  883. layer.msg(data);
  884. }
  885. }
  886. });
  887. }
  888. });
  889. submit.trigger('click');
  890. }
  891. });
  892. }
  893. },
  894. BatchCancle: function () {
  895. var checkStatus = table.checkStatus('LAY-list-manage'),
  896. data = checkStatus.data; //得到选中的数据
  897. if (data.length < 1) {
  898. parent.layer.msg("请选择要取消关联的分仓");
  899. } else {
  900. var ids = "";
  901. $.each(data, function (index, value) {
  902. ids += data[index].Id + ",";
  903. });
  904. ids = ids.substring(0, ids.length - 1);
  905. var perContent = layer.open({
  906. type: 2,
  907. title: '取消关联',
  908. content: 'BatchCancle?StoreIds=' + ids,
  909. maxmin: true,
  910. area: ['650px', '550px'],
  911. btn: ['确定', '取消'],
  912. yes: function (index, layero) {
  913. loadindex = layer.load(1, {
  914. shade: [0.5, '#000']
  915. });
  916. var iframeWindow = window['layui-layer-iframe' + index],
  917. submitID = 'LAY-list-front-submit',
  918. submit = layero.find('iframe').contents().find('#' + submitID);
  919. setTimeout(function () {
  920. layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
  921. var errObj = $(this).find('.layui-form-danger');
  922. if (errObj.length > 0) {
  923. iframeWindow.element.tabChange('mytabbar', String(i + 1));
  924. submit.click();
  925. }
  926. });
  927. }, 300);
  928. //监听提交
  929. iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
  930. if (clickflag == 0) {
  931. clickflag = 1;
  932. var field = data.field; //获取提交的字段
  933. var userdata = "";
  934. for (var prop in field) {
  935. userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
  936. }
  937. //提交 Ajax 成功后,静态更新表格中的数据
  938. //$.ajax({});
  939. $.ajax({
  940. type: "POST",
  941. url: "/Admin/StoreHouse/BatchCancle?r=" + Math.random(1),
  942. data: userdata + "Id=" + ids,
  943. dataType: "text",
  944. success: function (data) {
  945. clickflag = 0;
  946. layer.close(index);
  947. if (data == "success") {
  948. layer.close(loadindex);
  949. layer.msg('取消成功', {
  950. time: 1000
  951. }, function () {
  952. table.reload('LAY-list-manage'); //数据刷新
  953. });
  954. }
  955. else if (data.indexOf("Warning") == 0) {
  956. var datalist = data.split('|');
  957. layer.alert(datalist[1], { time: 20000 }, function () {
  958. window.location.reload();
  959. });
  960. }
  961. else {
  962. layer.msg(data);
  963. }
  964. }
  965. });
  966. }
  967. });
  968. submit.trigger('click');
  969. }
  970. });
  971. }
  972. },
  973. Open: function () {
  974. var checkStatus = table.checkStatus('LAY-list-manage'),
  975. data = checkStatus.data; //得到选中的数据
  976. if (data.length < 1) {
  977. parent.layer.msg("请选择要开启的项");
  978. } else {
  979. var ids = "";
  980. $.each(data, function (index, value) {
  981. ids += data[index].Id + ",";
  982. });
  983. ids = ids.substring(0, ids.length - 1);
  984. var index = layer.confirm('确定要开启吗?', function (index) {
  985. $.ajax({
  986. type: "POST",
  987. url: "/Admin/StoreHouse/Open?r=" + Math.random(1),
  988. data: "Id=" + ids,
  989. dataType: "text",
  990. success: function (data) {
  991. layer.close(index);
  992. if (data == "success") {
  993. table.reload('LAY-list-manage');
  994. } else {
  995. layer.msg(data);
  996. }
  997. }
  998. });
  999. });
  1000. }
  1001. },
  1002. Close: function () {
  1003. var checkStatus = table.checkStatus('LAY-list-manage'),
  1004. data = checkStatus.data; //得到选中的数据
  1005. if (data.length < 1) {
  1006. parent.layer.msg("请选择要关闭的项");
  1007. } else {
  1008. var ids = "";
  1009. $.each(data, function (index, value) {
  1010. ids += data[index].Id + ",";
  1011. });
  1012. ids = ids.substring(0, ids.length - 1);
  1013. var index = layer.confirm('确定要关闭吗?', function (index) {
  1014. $.ajax({
  1015. type: "POST",
  1016. url: "/Admin/StoreHouse/Close?r=" + Math.random(1),
  1017. data: "Id=" + ids,
  1018. dataType: "text",
  1019. success: function (data) {
  1020. layer.close(index);
  1021. if (data == "success") {
  1022. table.reload('LAY-list-manage');
  1023. } else {
  1024. layer.msg(data);
  1025. }
  1026. }
  1027. });
  1028. });
  1029. }
  1030. },
  1031. SycnData: function () {
  1032. var index = layer.confirm('确定要同步所有仓库的库存数据吗?', function (index) {
  1033. layer.close(index);
  1034. var loadindex = layer.load(1, {
  1035. shade: [0.5, '#000']
  1036. });
  1037. $.ajax({
  1038. type: "POST",
  1039. url: "/Admin/StoreHouse/SycnData?r=" + Math.random(1),
  1040. data: "Id=0",
  1041. dataType: "text",
  1042. success: function (data) {
  1043. layer.close(loadindex);
  1044. if (data == "success") {
  1045. layer.msg('同步成功');
  1046. table.reload('LAY-list-manage');
  1047. } else {
  1048. layer.msg(data);
  1049. }
  1050. }
  1051. });
  1052. });
  1053. },
  1054. };
  1055. $('.layui-btn').on('click', function () {
  1056. var type = $(this).data('type');
  1057. active[type] ? active[type].call(this) : '';
  1058. });
  1059. });