stockchange.js 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../stockchange/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: '单号', name: 'id', index: 'id', key: true, width: 80, align: 'center'},
  7. {label: '类型', name: 'type', index: 'type', width: 80, align: 'center', formatter: function (value) {
  8. if (value == '0') {
  9. return '普通入库';
  10. } else if (value == '1') {
  11. return '调拨入库';
  12. } else if (value == '2') {
  13. return '销售出库';
  14. } else if (value == '3') {
  15. return '普通出库';
  16. } else if (value == '4') {
  17. return '调拨出库';
  18. }
  19. return '-';
  20. }},
  21. {label: '出入库时间', name: 'time', index: 'time', width: 80, align: 'center'},
  22. {label: '商户编号', name: 'merchSn', index: 'merch_sn', width: 80, align: 'center'},
  23. {label: '商户名称', name: 'merch', index: 'merch', width: 80, align: 'center'},
  24. {label: '门店id', name: 'storeId', index: 'store_id', width: 80, align: 'center'},
  25. {label: '门店名称', name: 'store', index: 'store', width: 80, align: 'center'},
  26. {label: '商品名称', name: 'product', index: 'product', width: 80, align: 'center'},
  27. {label: '第三方商户', name: 'thirdMerchSn', index: 'third_merch_sn', width: 80, align: 'center'},
  28. {label: '审核状态', name: 'audit', index: 'audit', width: 80, align: 'center', formatter: function (value) {
  29. if (value == '0') {
  30. return '待审核';
  31. } else if (value == '1') {
  32. return '审核成功';
  33. } else if (value == '2') {
  34. return '审核拒绝';
  35. }
  36. return '-';
  37. }},
  38. {label: '第三方商户名称', name: 'thirdMerch', index: 'third_merch', width: 80, align: 'center'},
  39. {label: '备注', name: 'remark', index: 'remark', width: 80, align: 'center'},
  40. {label: '创建人', name: 'createBy', index: 'create_by', width: 80, align: 'center'},
  41. {label: '创建时间', name: 'createTime', index: 'create_time', width: 80, align: 'center'},
  42. {label: '修改人', name: 'modifyBy', index: 'modify_by', width: 80, align: 'center'},
  43. {label: '修改时间', name: 'modifyTime', index: 'modify_time', width: 80, align: 'center'},
  44. {label: '审核人', name: 'auditBy', index: 'audit_by', width: 80, align: 'center'},
  45. {label: '审核时间', name: 'auditTime', index: 'audit_time', width: 80, align: 'center'},
  46. {label: '规格', name: 'specification', index: 'specification', width: 80, align: 'center'},
  47. ],
  48. viewrecords: true,
  49. height: 550,
  50. rowNum: 10,
  51. rowList: [10, 30, 50],
  52. rownumbers: true,
  53. rownumWidth: 25,
  54. autowidth: true,
  55. multiselect: true,
  56. pager: "#jqGridPager",
  57. jsonReader: {
  58. root: "page.list",
  59. page: "page.currPage",
  60. total: "page.totalPage",
  61. records: "page.totalCount"
  62. },
  63. prmNames: {
  64. page: "page",
  65. rows: "limit",
  66. order: "order"
  67. },
  68. gridComplete: function () {
  69. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
  70. }
  71. });
  72. });
  73. let vm = new Vue({
  74. el: '#rrapp',
  75. data: {
  76. showList: true,
  77. title: null,
  78. stockChange: {},
  79. ruleValidate: {
  80. name: [
  81. {required: true, message: '名称不能为空', trigger: 'blur'}
  82. ]
  83. },
  84. q: {
  85. name: '',
  86. orderId:'',
  87. type:'',
  88. time:'',
  89. audit:'',
  90. storeId:''
  91. },
  92. uploadData:[],
  93. stores:[],
  94. stockChangeTypes:[],
  95. stockChangeAudits:[],
  96. saveOrUpdateState:true
  97. },
  98. methods: {
  99. query: function () {
  100. vm.reload();
  101. },
  102. add: function () {
  103. vm.showList = false;
  104. vm.title = "新增";
  105. vm.stockChange = {};
  106. vm.saveOrUpdateState=true;
  107. },
  108. update: function (event) {
  109. vm.saveOrUpdateState=false;
  110. let id = getSelectedRow();
  111. if (id == null) {
  112. alert("请选择数据!");
  113. return;
  114. }
  115. vm.showList = false;
  116. vm.title = "修改";
  117. vm.getInfo(id)
  118. },
  119. saveOrUpdate: function (event) {
  120. let url = vm.saveOrUpdateState ? "../stockchange/save" : "../stockchange/update";
  121. var time = vm.stockChange.time;
  122. vm.stockChange.time = vm.timeFommater(vm.stockChange.time);
  123. $.ajax({
  124. type: "POST",
  125. url: url,
  126. contentType: "application/json",
  127. data: JSON.stringify(vm.stockChange),
  128. success: function (r) {
  129. if (r.code === 0) {
  130. alert('操作成功', function (index) {
  131. vm.reload();
  132. });
  133. } else {
  134. alert(r.msg);
  135. }
  136. }
  137. });
  138. },
  139. del: function (event) {
  140. let ids = getSelectedRows();
  141. if (ids == null){
  142. alert("请选择至少一行!");
  143. return;
  144. }
  145. confirm('确定要删除选中的记录?', function () {
  146. $.ajax({
  147. type: "POST",
  148. url: "../stockchange/delete",
  149. contentType: "application/json",
  150. data: JSON.stringify(ids),
  151. success: function (r) {
  152. if (r.code == 0) {
  153. alert('操作成功', function (index) {
  154. $("#jqGrid").trigger("reloadGrid");
  155. });
  156. } else {
  157. alert(r.msg);
  158. }
  159. }
  160. });
  161. });
  162. },
  163. audit: function (type) {
  164. let ids = getSelectedRows();
  165. if (ids == null){
  166. alert("请选择至少一行!");
  167. return;
  168. }
  169. console.log(type);
  170. let param = {
  171. "ids" : ids,
  172. "type" : type,
  173. }
  174. let msg;
  175. if (type == '1') {
  176. msg = "确定要审核成功吗?";
  177. } else {
  178. msg = "确定要拒绝审核吗?";
  179. }
  180. confirm(msg, function () {
  181. $.ajax({
  182. type: "POST",
  183. url: "../stockchange/audit",
  184. contentType: "application/json",
  185. data: JSON.stringify(param),
  186. success: function (r) {
  187. if (r.code == 0) {
  188. alert('操作成功', function (index) {
  189. $("#jqGrid").trigger("reloadGrid");
  190. });
  191. } else {
  192. alert(r.msg);
  193. }
  194. }
  195. });
  196. });
  197. },
  198. getInfo: function(id){
  199. $.get("../stockchange/info/"+id, function (r) {
  200. vm.stockChange = r.stockChange;
  201. });
  202. },
  203. reloadSearch: function() {
  204. vm.q = {
  205. name: ''
  206. }
  207. vm.reload();
  208. },
  209. reload: function (event) {
  210. vm.showList = true;
  211. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  212. $("#jqGrid").jqGrid('setGridParam', {
  213. postData: {'name': vm.q.name,'orderId':vm.q.orderId,'type':vm.q.type,'time':vm.q.time,'audit':vm.q.audit,"storeId":vm.q.storeId},
  214. page: page
  215. }).trigger("reloadGrid");
  216. vm.handleReset('formValidate');
  217. },
  218. handleSubmit: function (name) {
  219. handleSubmitValidate(this, name, function () {
  220. vm.saveOrUpdate()
  221. });
  222. },
  223. handleReset: function (name) {
  224. handleResetForm(this, name);
  225. },
  226. uploadExcelSuccess: function (data) {
  227. if(data.code==0){
  228. alert('导入成功', function (index) {
  229. $("#jqGrid").trigger("reloadGrid");
  230. });
  231. }else{
  232. alert(data.msg);
  233. }
  234. },
  235. uploadExcelError: function () {
  236. alert('上传出现异常,请重试!');
  237. },
  238. uploadExcelFormatError: function (file) {
  239. this.$Notice.warning({
  240. title: '文件格式不正确',
  241. desc: '文件 ' + file.name + ' 格式不正确,请上传 xls 或 xlsx 格式的文件。'
  242. });
  243. },beforeUpload(){
  244. vm.uploadData = {
  245. storeId: vm.storeId,
  246. mkaId : vm.mkaId
  247. }
  248. let promise = new Promise((resolve) => {
  249. this.$nextTick(function () {
  250. resolve(true);
  251. });
  252. });
  253. return promise; //通过返回一个promis对象解决
  254. },
  255. timeFommater:function (value) {
  256. var dateee = new Date(value).toJSON();
  257. var date = new Date(+new Date(dateee) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
  258. return date;
  259. }
  260. },
  261. mounted() {
  262. // this.uploadList = this.$refs.upload.fileList;
  263. /*$.get("../category/getCategorySelect", function (r) {
  264. vm.queryCategories = r.list;
  265. });*/
  266. $.get("../sys/macro/queryMacrosByValue?value=stockChangeType", function (r) {
  267. vm.stockChangeTypes = r.list;
  268. });
  269. $.get("../sys/macro/queryMacrosByValue?value=stockChangeAudit", function (r) {
  270. vm.stockChangeAudits = r.list;
  271. });
  272. $.get("../store/queryAll", function (r) {
  273. vm.stores = r.list;
  274. });
  275. }
  276. });