wms.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. import { listWarehouseNoPage } from '@/api/wms/warehouse';
  2. import { listMerchantNoPage } from "@/api/wms/merchant";
  3. import { listItemCategory, treeSelectItemCategory } from "@/api/wms/itemCategory";
  4. import { listItemBrand } from "@/api/wms/itemBrand";
  5. import { listProject } from "@/api/wms/project";
  6. import { listCompany,listEmployee,listWork } from "@/api/wms/employee";
  7. import { listOrder,getOrderDetail } from "@/api/wms/product";
  8. import { listItemPage2 } from "@/api/wms/item";
  9. import { listItemSkuPage } from "@/api/wms/itemSku";
  10. import {defineStore} from "pinia";
  11. import {ref} from "vue";
  12. export const useWmsStore = defineStore('wms', () => {
  13. // 仓库管理
  14. const warehouseList = ref([]);
  15. const warehouseMap = ref(new Map());
  16. const getWarehouseList = () => {
  17. listWarehouseNoPage({}).then((res) => {
  18. warehouseList.value = res.data.list;
  19. const map = new Map();
  20. warehouseList.value.forEach((supplier) => {
  21. map.set(supplier.id, supplier);
  22. });
  23. warehouseMap.value = map;
  24. });
  25. };
  26. // 企业管理
  27. const merchantList = ref([]);
  28. const merchantMap = ref(new Map());
  29. const getMerchantList = () => {
  30. listMerchantNoPage({}).then((res) => {
  31. merchantList.value = res.data.list;
  32. const map = new Map();
  33. merchantList.value.forEach((supplier) => {
  34. map.set(supplier.id, supplier);
  35. });
  36. merchantMap.value = map;
  37. });
  38. }
  39. // 产品分类管理
  40. const itemCategoryList = ref([])
  41. const itemCategoryTreeList = ref([])
  42. const itemCategoryMap = ref(new Map())
  43. const getItemCategoryList = () => {
  44. return new Promise((resolve, reject) => {
  45. listItemCategory({page:1,limit:-1}).then(res => {
  46. itemCategoryList.value = res.data.list;
  47. const map = new Map()
  48. itemCategoryList.value.forEach(supplier => {
  49. map.set(supplier.id, supplier)
  50. })
  51. itemCategoryMap.value = map
  52. resolve()
  53. }).catch(() => reject())
  54. })
  55. }
  56. const getItemCategoryTreeList = async () => {
  57. return new Promise((resolve, reject) => {
  58. treeSelectItemCategory().then(res => {
  59. itemCategoryTreeList.value = res.data
  60. resolve(res.data)
  61. }).catch(() => reject())
  62. })
  63. }
  64. // 产品品牌管理
  65. const itemBrandList = ref([])
  66. const itemBrandMap = ref(new Map())
  67. const getItemBrandList = (queryParams) => {
  68. return new Promise((resolve, reject) => {
  69. listItemBrand(queryParams).then(res => {
  70. itemBrandList.value = res.data.list
  71. const map = new Map()
  72. itemBrandList.value.forEach(supplier => {
  73. map.set(supplier.id, {...supplier})
  74. })
  75. itemBrandMap.value = map
  76. resolve()
  77. }).catch(() => reject())
  78. })
  79. }
  80. // 合同管理
  81. const projectList = ref([])
  82. const projectMap = ref(new Map())
  83. const getProjectList = (queryParams) => {
  84. return new Promise((resolve, reject) => {
  85. listProject(queryParams).then(res => {
  86. projectList.value = res.data.list
  87. const map = new Map()
  88. projectList.value.forEach(supplier => {
  89. map.set(supplier.id, {...supplier})
  90. })
  91. projectMap.value = map
  92. resolve()
  93. }).catch(() => reject())
  94. })
  95. }
  96. // 外包公司管理
  97. const companyList = ref([]);
  98. const companyMap = ref(new Map());
  99. const getCompanyList = () => {
  100. listCompany({page:1,limit:-1}).then((res) => {
  101. companyList.value = res.data.list;
  102. const map = new Map();
  103. companyList.value.forEach((supplier) => {
  104. map.set(supplier.id, supplier);
  105. });
  106. companyMap.value = map;
  107. });
  108. }
  109. // 员工管理
  110. const employeeList = ref([]);
  111. const employeeMap = ref(new Map());
  112. const getEmployeeList = () => {
  113. listEmployee({page:1,limit:-1}).then((res) => {
  114. employeeList.value = res.data.list;
  115. const map = new Map();
  116. employeeList.value.forEach((supplier) => {
  117. map.set(supplier.id, supplier);
  118. });
  119. employeeMap.value = map;
  120. });
  121. }
  122. // 生产订单
  123. const orderList = ref([]);
  124. const orderMap = ref(new Map());
  125. const getOrderList = () => {
  126. listOrder({page:1,limit:-1}).then((res) => {
  127. orderList.value = res.data.list;
  128. const map = new Map();
  129. orderList.value.forEach((supplier) => {
  130. map.set(supplier.id, supplier);
  131. });
  132. orderMap.value = map;
  133. });
  134. }
  135. // 生产订单产品
  136. const skuList = ref([]);
  137. const skuMap = ref(new Map());
  138. const getSkuList = (orderId) => {
  139. getOrderDetail(orderId).then((res) => {
  140. skuList.value = res.data;
  141. const map = new Map();
  142. skuList.value.forEach((supplier) => {
  143. map.set(supplier.id, supplier);
  144. });
  145. skuMap.value = map;
  146. });
  147. }
  148. // 产品管理产品(成品)
  149. const productList = ref([]);
  150. const productMap = ref(new Map());
  151. const getProductList = () => {
  152. listItemSkuPage({page:1,limit:-1,categoryType:1}).then((res) => {
  153. productList.value = res.data.list;
  154. const map = new Map();
  155. productList.value.forEach((supplier) => {
  156. map.set(supplier.id, supplier);
  157. });
  158. productMap.value = map;
  159. });
  160. }
  161. // 外包人员工种
  162. const employeeWorkList = ref([]);
  163. const employeeWorkMap = ref(new Map());
  164. const getEmployeeWorkList = () => {
  165. listWork({page:1,limit:-1}).then((res) => {
  166. employeeWorkList.value = res.data.list;
  167. const map = new Map();
  168. employeeWorkList.value.forEach((supplier) => {
  169. map.set(supplier.id, supplier);
  170. });
  171. employeeWorkMap.value = map;
  172. });
  173. }
  174. return {
  175. // 仓库管理
  176. warehouseList,
  177. warehouseMap,
  178. getWarehouseList,
  179. // 企业管理
  180. merchantList,
  181. merchantMap,
  182. getMerchantList,
  183. // 产品分类管理
  184. itemCategoryList,
  185. itemCategoryTreeList,
  186. itemCategoryMap,
  187. getItemCategoryList,
  188. getItemCategoryTreeList,
  189. // 产品品牌管理
  190. itemBrandList,
  191. itemBrandMap,
  192. getItemBrandList,
  193. // 合同管理
  194. projectList,
  195. projectMap,
  196. getProjectList,
  197. // 外包公司
  198. companyList,
  199. companyMap,
  200. getCompanyList,
  201. // 员工管理
  202. employeeList,
  203. employeeMap,
  204. getEmployeeList,
  205. // 生产订单
  206. orderList,
  207. orderMap,
  208. getOrderList,
  209. //生产订单产品sku
  210. skuList,
  211. skuMap,
  212. getSkuList,
  213. //产品管理中产品
  214. productList,
  215. productMap,
  216. getProductList,
  217. // 外包人员工种
  218. employeeWorkList,
  219. employeeWorkMap,
  220. getEmployeeWorkList,
  221. };
  222. });