index.ts 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380
  1. import request from '@/utils/request';
  2. import { AxiosPromise } from 'axios';
  3. import { InfoVO, InfoForm, InfoQuery } from '@/api/customer/info/types';
  4. /**
  5. * 查询供应商信息列表
  6. * @param query
  7. * @returns {*}
  8. */
  9. export const listInfo = (query?: InfoQuery): AxiosPromise<InfoVO[]> => {
  10. return request({
  11. url: '/customer/info/list',
  12. method: 'get',
  13. params: query
  14. });
  15. };
  16. /**
  17. * 查询供应商名称列表
  18. * @param query
  19. * @returns {*}
  20. */
  21. export const listNameInfo = (query?: InfoQuery): AxiosPromise<InfoVO[]> => {
  22. return request({
  23. url: '/customer/info/getNameList',
  24. method: 'get',
  25. params: query
  26. });
  27. };
  28. /**
  29. * 查询供应商信息详细
  30. * @param id
  31. */
  32. export const getInfo = (id: string | number): AxiosPromise<InfoVO> => {
  33. return request({
  34. url: '/customer/info/srm/' + id,
  35. method: 'get'
  36. });
  37. };
  38. /**
  39. * 新增供应商信息
  40. * @param data
  41. */
  42. export const addInfo = (data: InfoForm) => {
  43. return request({
  44. url: '/customer/info',
  45. method: 'post',
  46. data: data
  47. });
  48. };
  49. /**
  50. * 修改供应商信息
  51. * @param data
  52. */
  53. export const updateInfo = (data: InfoForm) => {
  54. return request({
  55. url: '/customer/info/edit',
  56. method: 'put',
  57. data: data
  58. });
  59. };
  60. export const scmEditInfo = (data: InfoForm) => {
  61. return request({
  62. url: '/customer/info/edit',
  63. method: 'put',
  64. data: data
  65. });
  66. };
  67. /**
  68. * 删除供应商信息
  69. * @param id
  70. */
  71. export const delInfo = (id: string | number | Array<string | number>) => {
  72. return request({
  73. url: '/customer/info/' + id,
  74. method: 'delete'
  75. });
  76. };
  77. /**
  78. * 获取供应商类型列表
  79. */
  80. export const getComSupTyList = () => {
  81. return request({
  82. url: '/system/type/getComSupTyList',
  83. method: 'get'
  84. });
  85. };
  86. /**
  87. * 获取产品分类列表
  88. */
  89. export const getProductCategoryList = () => {
  90. return request({
  91. url: '/product/category/getProductCategoryList',
  92. method: 'get'
  93. });
  94. };
  95. /**
  96. * 获取人员信息列表
  97. */
  98. export const getComStaffList = (params?: any) => {
  99. return request({
  100. url: '/system/comStaff/list',
  101. method: 'get',
  102. params: params
  103. });
  104. };
  105. /**
  106. * 获取字典数据
  107. */
  108. export const getDictData = (dictType: string) => {
  109. return request({
  110. url: `/system/dict/data/type/${dictType}`,
  111. method: 'get'
  112. });
  113. };
  114. /**
  115. * 查询供应商信息列表(新接口,包含产品经理和采购员)
  116. * @param query
  117. * @returns {*}
  118. */
  119. export const getInfoList = (query?: InfoQuery): AxiosPromise<InfoVO[]> => {
  120. return request({
  121. url: '/customer/info/getList',
  122. method: 'get',
  123. params: query
  124. });
  125. };
  126. /**
  127. * 查询待审核供应商信息列表
  128. * @param query
  129. * @returns {*}
  130. */
  131. export const getApproveList = (query?: InfoQuery): AxiosPromise<InfoVO[]> => {
  132. return request({
  133. url: '/customer/info/getApproveList',
  134. method: 'get',
  135. params: query
  136. });
  137. };
  138. /**
  139. * 根据供应商ID获取人员信息
  140. * @param supplierId 供应商ID
  141. */
  142. export const getStaffInfoById = (supplierId: string | number) => {
  143. return request({
  144. url: '/system/comStaff/informationById',
  145. method: 'get',
  146. params: { supplierId }
  147. });
  148. };
  149. /**
  150. * 获取所有人员信息(用于下拉框)
  151. */
  152. export const getStaffListSplice = () => {
  153. return request({
  154. url: '/system/comStaff/listSplice',
  155. method: 'get'
  156. });
  157. };
  158. /**
  159. * 根据供应商ID获取产品经理和采购员ID
  160. * @param supplierId 供应商ID
  161. */
  162. export const getSupplierStaffIds = (supplierId: string | number) => {
  163. return request({
  164. url: '/system/comStaff/informationById',
  165. method: 'get',
  166. params: { supplierId: supplierId }
  167. });
  168. };
  169. /**
  170. * 根据供应商ID获取联系人列表
  171. * @param supplierId 供应商ID
  172. * @param params 分页参数
  173. */
  174. export const getContactListById = (supplierId: string | number, params?: any) => {
  175. return request({
  176. url: '/customer/contact/getSupplierContactlistById',
  177. method: 'get',
  178. params: {
  179. supplierId: supplierId,
  180. ...params
  181. }
  182. });
  183. };
  184. /**
  185. * 根据供应商ID获取已选择的品目ID列表
  186. * @param supplierId 供应商ID
  187. */
  188. export const getSupplierCategories = (supplierId: string | number) => {
  189. return request({
  190. url: '/customer/info/getsrmCategories',
  191. method: 'get',
  192. params: { supplierId }
  193. });
  194. };
  195. /**
  196. * 根据供应商ID获取合同列表
  197. * @param supplierId 供应商ID
  198. * @param params 查询参数
  199. */
  200. export const getSupplierContractsById = (supplierId: string | number, params?: any) => {
  201. return request({
  202. url: '/customer/supplierContract/supplierContractsById',
  203. method: 'get',
  204. params: {
  205. supplierId: supplierId,
  206. ...params
  207. }
  208. });
  209. };
  210. /**
  211. * 根据供应商ID获取合同列表(新接口)
  212. * @param supplierId 供应商ID
  213. * @param params 查询参数
  214. */
  215. export const getContractListById = (supplierId: string | number, params?: any) => {
  216. return request({
  217. url: '/customer/supplierContract/getListbyId',
  218. method: 'get',
  219. params: {
  220. supplierId: supplierId,
  221. ...params
  222. }
  223. });
  224. };
  225. /**
  226. * 根据供应商ID获取银行账户信息
  227. * @param id 供应商ID
  228. */
  229. export const getBankBySupplierId = (id: string | number) => {
  230. return request({
  231. url: '/customer/supplierbank/getBankBySupplierId',
  232. method: 'get',
  233. params: { id }
  234. });
  235. };
  236. /**
  237. * 根据供应商ID获取授权详情列表
  238. * @param params 查询参数,包含supplierId和分页信息
  239. */
  240. export const getAuthorizeDetailList = (params: any) => {
  241. return request({
  242. url: '/customer/supplierauthorize/getAuthorizeDetailList',
  243. method: 'get',
  244. params: params
  245. });
  246. };
  247. /**
  248. * 保存供应商采购信息(产品经理和采购员)
  249. * @param data 采购信息数据
  250. */
  251. export const savePurchaseInfo = (data: { supplierId: string | number; productManager: number | null; purchaser: number | null }) => {
  252. return request({
  253. url: '/customer/procurement',
  254. method: 'post',
  255. data: data
  256. });
  257. };
  258. /**
  259. * 根据供应商ID获取地址列表
  260. * @param supplierId 供应商ID
  261. */
  262. export const getSupplierAddressById = (supplierId: string | number) => {
  263. return request({
  264. url: '/customer/supplieraddress/supplierAddressById',
  265. method: 'get',
  266. params: { supplierId }
  267. });
  268. };
  269. /**
  270. * 获取公司列表
  271. */
  272. export const getCompanyList = () => {
  273. return request({
  274. url: '/system/company/list',
  275. method: 'get'
  276. });
  277. };
  278. /**
  279. * 获取供应商类型列表
  280. */
  281. export const getSupplierTypeList = (params?: any) => {
  282. return request({
  283. url: '/system/type/list',
  284. method: 'get',
  285. params: {
  286. dataSource: 'youyi',
  287. ...params
  288. }
  289. });
  290. };
  291. /**
  292. * 获取供应商等级列表
  293. */
  294. export const getSupplierLevelList = () => {
  295. return request({
  296. url: '/system/level/list',
  297. method: 'get'
  298. });
  299. };
  300. /**
  301. * 获取企业规模列表
  302. */
  303. export const getEnterpriseScaleList = () => {
  304. return request({
  305. url: '/customer/enterpriseScale/getlist',
  306. method: 'get'
  307. });
  308. };
  309. /**
  310. * 获取行业类别列表
  311. */
  312. export const getIndustryCategoryList = () => {
  313. return request({
  314. url: '/customer/industryCategory/getlist',
  315. method: 'get'
  316. });
  317. };
  318. /**
  319. * 获取税率列表
  320. */
  321. export const getTaxRateList = () => {
  322. return request({
  323. url: '/system/taxrate/list',
  324. method: 'get'
  325. });
  326. };
  327. /**
  328. * 获取结算方式列表
  329. */
  330. export const getSettlementMethodList = () => {
  331. return request({
  332. url: '/system/settlementMethod/list',
  333. method: 'get'
  334. });
  335. };
  336. /**
  337. * 获取发票类型列表
  338. */
  339. export const getInvoiceTypeList = () => {
  340. return request({
  341. url: '/system/invoiceType/list',
  342. method: 'get'
  343. });
  344. };