data.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. import { axios } from '@/utils/request'
  2. export function login (parameter) {
  3. return axios({
  4. url: '/login',
  5. method: 'post',
  6. data: parameter
  7. })
  8. }
  9. export const listLookUp = params => {
  10. let url = `/lookup/queryLike`
  11. return axios({
  12. url: url,
  13. data: params,
  14. method: 'POST'
  15. })
  16. }
  17. export const getLookUpData = (params) => {
  18. let url = `/lookupItem/query/${params.pageNo}/${params.pageSize}`
  19. delete params.pageNo
  20. delete params.pageSize
  21. return axios({
  22. url: url,
  23. data: params,
  24. method: 'post'
  25. })
  26. }
  27. export const getAreaAll = () => {
  28. return axios({
  29. url: '/area/findAll',
  30. method: 'get'
  31. }).then(res => res.data)
  32. }
  33. /**
  34. * 获取ali OSS 上传签名
  35. * @returns {Q.Promise<any> | * | Q.Promise<T | never> | PromiseLike<T | never> | Promise<T | never>}
  36. */
  37. export const getOSSToken = (params) => {
  38. return axios({
  39. url: `ossUpload?bizType=${params.bizType}`,
  40. method: 'get'
  41. })
  42. }
  43. /**
  44. * 上传文件到阿里OSS
  45. * @param params
  46. * @returns {Q.Promise<any> | * | Q.Promise<T | never> | PromiseLike<T | never> | Promise<T | never>}
  47. */
  48. export const uploadOSS = (params) => {
  49. return axios({
  50. // url: params.url,
  51. url: 'ossUploadFile',
  52. method: 'post',
  53. data: params.data,
  54. headers: {
  55. 'Content-Type': 'multipart/form-data'
  56. }
  57. })
  58. }
  59. /**
  60. * 上传文件到阿里OSS
  61. * @param params
  62. * @returns {Q.Promise<any> | * | Q.Promise<T | never> | PromiseLike<T | never> | Promise<T | never>}
  63. */
  64. export const uploadImgOnce = (bizType, params) => {
  65. return getOSSToken({
  66. bizType
  67. }).then(config => {
  68. const fileName = createFileName(params.name)
  69. const _data = new FormData()
  70. _data.append('key', config.dir + '/' + fileName)
  71. _data.append('name', fileName)
  72. _data.append('policy', config.policy)
  73. _data.append('OSSAccessKeyId', config['accessid'])
  74. _data.append('success_action_status', '200')
  75. _data.append('callback', config.callback)
  76. _data.append('signature', config.signature)
  77. _data.append('file', params)
  78. return uploadOSS({
  79. data: _data
  80. })
  81. })
  82. }
  83. function createFileName (filename) {
  84. const pos = filename.lastIndexOf('.')
  85. const suffix = filename.substring(pos)
  86. return randomStr(20) + suffix
  87. }
  88. function randomStr (len) {
  89. len = len || 32
  90. const chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'
  91. const maxPos = chars.length
  92. let pwd = ''
  93. for (let i = 0; i < len; i++) {
  94. pwd += chars.charAt(Math.floor(Math.random() * maxPos))
  95. }
  96. return pwd
  97. }