helper.js 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. import * as config from '../config'
  2. const rolesList = []
  3. const ossUploadUrl = 'https://taohaoliang.oss-cn-beijing.aliyuncs.com/';
  4. const chooseImage = {
  5. count: '1',
  6. sizeType: ['original', 'compressed'],
  7. sourceType: ['album'],
  8. }
  9. const imgType = '请选择图片来源'
  10. const imgTypeList = [{
  11. name: '相册',
  12. },
  13. {
  14. name: '拍照',
  15. }
  16. ]
  17. const makeValidityPeriod = function(type, name) {
  18. //获取当前年
  19. let nowDate = new Date();
  20. let year = nowDate.getFullYear()
  21. let _list = []
  22. let _list1 = []
  23. // let _list2 = ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]
  24. let _list2 = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"]
  25. let _list3 = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14",
  26. "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30",
  27. "31"
  28. ]
  29. let _ValidityPeriod = []
  30. for (let i = 0; i < 30; i++) {
  31. _list1.push(year + i)
  32. }
  33. if (type == 0) {
  34. _list1.unshift(name)
  35. _list2.unshift('')
  36. _list3.unshift('')
  37. }
  38. _list.push(_list1, _list2, _list3)
  39. return _list
  40. }
  41. const getListByUserId = function() {
  42. let baseUrlNew = config.def().baseUrlNew
  43. var userInfo = uni.getStorageSync("userInfo")
  44. console.log("------", userInfo)
  45. if (userInfo) {
  46. uni.request({
  47. url: baseUrlNew + '/roleMenu/query/getListByUserId',
  48. data: {
  49. userId: userInfo.id ? userInfo.id : userInfo.data.id
  50. },
  51. method: 'GET',
  52. success: (res) => {
  53. if (res.statusCode === 200) {
  54. uni.setStorageSync("jurisdiction", res.data.data)
  55. let list = getUserAllRoles(res.data.data);
  56. uni.setStorageSync("rolesList", list)
  57. }
  58. }
  59. })
  60. }
  61. }
  62. const getUserAllRoles = (item) => {
  63. console.log(item)
  64. for (let i = 0; i < item.length; i++) {
  65. rolesList.push(item[i].name)
  66. // console.log('用户权限',rolesList)
  67. if (item[i].children && item[i].children.length > 0) {
  68. getUserAllRoles(item[i].children)
  69. }
  70. }
  71. return rolesList;
  72. }
  73. const setAudit = (item) => {
  74. let _list = uni.getStorageSync("copyTaskInfo")
  75. let _isShowbtn = true
  76. if (_list.length == 0) {
  77. _isShowbtn = false
  78. }
  79. for (let i = 0; i < _list.length; i++) {
  80. if (_list[i].businessId == item.id) {
  81. _list.splice(i, 1)
  82. uni.setStorageSync("copyTaskInfo", _list)
  83. }
  84. }
  85. if (_list.length > 0) {
  86. uni.navigateTo({
  87. url: _list[0].itemUrl + '&isShowbtn=' + _isShowbtn,
  88. })
  89. }
  90. console.log(item)
  91. }
  92. const contactCustomerService = (item) => {
  93. console.log(item)
  94. if (!item) {
  95. // item = '400123123'
  96. item = '13304979986'
  97. }
  98. console.log("联系客服")
  99. uni.makePhoneCall({
  100. phoneNumber: item,
  101. success: (res) => {
  102. console.log('调用成功!')
  103. },
  104. // 失败回调
  105. fail: (res) => {
  106. console.log('调用失败!')
  107. contactCustomerService(item)
  108. }
  109. });
  110. }
  111. // 获取市、区简称
  112. const filterUrban = (s) => {
  113. if (s.lastIndexOf('市') != -1) {
  114. return s.substring(0, s.length - 1)
  115. }
  116. return s
  117. }
  118. const filterArea = (q) => {
  119. if (q.lastIndexOf('区') != -1) {
  120. return q.substring(0, q.length - 1)
  121. }
  122. return q
  123. }
  124. // const getAddress = (item) => {
  125. // let regex = "(?<province>[^省]+省|.+自治区)(?<city>[^自治州]+自治州|[^市]+市|[^盟]+盟|[^地区]+地区|.+区划)(?<county>[^市]+市|[^县]+县|[^旗]+旗|.+区)?(?<town>[^区]+区|.+镇)?(?<village>.*)";
  126. // return item.match(regex).groups
  127. // }
  128. const formatLocation = (str) => {
  129. // console.log('``````')
  130. // console.log(str)
  131. let area = {}
  132. let index11 = 0
  133. let index1 = str.indexOf("省")
  134. if (index1 == -1) {
  135. index11 = str.indexOf("自治区")
  136. if (index11 != -1) {
  137. area.Province = str.substring(0, index11 + 3)
  138. } else {
  139. area.Province = str.substring(0, 0)
  140. }
  141. } else {
  142. area.Province = str.substring(0, index1 + 1)
  143. }
  144. let index2 = str.indexOf("市")
  145. if (index11 == -1) {
  146. area.City = str.substring(index11 + 1, index2 + 1)
  147. } else {
  148. if (index11 == 0) {
  149. area.City = str.substring(index1 + 1, index2 + 1)
  150. } else {
  151. area.City = str.substring(index11 + 3, index2 + 1)
  152. }
  153. }
  154. let index3 = str.indexOf("区")
  155. if (index3 == -1) {
  156. index3 = str.indexOf("县")
  157. area.Country = str.substring(index2 + 1, index3 + 1)
  158. } else {
  159. area.Country = str.substring(index2 + 1, index3 + 1)
  160. }
  161. area.Village = str.substring(index3 + 1, str.length)
  162. return area;
  163. }
  164. //获取省份简称
  165. const getProvinceAbbreviation = (province) => {
  166. if (province == "北京市" || province == "北京")
  167. return "京";
  168. else if (province == "天津市" || province == "天津")
  169. return "津";
  170. else if (province == "重庆市" || province == "重庆")
  171. return "渝";
  172. else if (province == "上海市" || province == "上海")
  173. return "沪";
  174. else if (province == "河北省" || province == "河北")
  175. return "冀";
  176. else if (province == "山西省" || province == "山西")
  177. return "晋";
  178. else if (province == "辽宁省" || province == "辽宁")
  179. return "辽";
  180. else if (province == "吉林省" || province == "吉林")
  181. return "吉";
  182. else if (province == "黑龙江省" || province == "黑龙江")
  183. return "黑";
  184. else if (province == "江苏省" || province == "江苏")
  185. return "苏";
  186. else if (province == "浙江省" || province == "浙江")
  187. return "浙";
  188. else if (province == "安徽省" || province == "安徽")
  189. return "皖";
  190. else if (province == "福建省" || province == "福建")
  191. return "闽";
  192. else if (province == "江西省" || province == "江西")
  193. return "赣";
  194. else if (province == "山东省" || province == "山东")
  195. return "鲁";
  196. else if (province == "河南省" || province == "河南")
  197. return "豫";
  198. else if (province == "湖北省" || province == "湖北")
  199. return "鄂";
  200. else if (province == "湖南省" || province == "湖南")
  201. return "湘";
  202. else if (province == "广东省" || province == "广东")
  203. return "粤";
  204. else if (province == "海南省" || province == "海南")
  205. return "琼";
  206. else if (province == "四川省" || province == "四川")
  207. return "川";
  208. else if (province == "贵州省" || province == "贵州")
  209. return "贵";
  210. else if (province == "云南省" || province == "云南")
  211. return "云";
  212. else if (province == "陕西省" || province == "陕西")
  213. return "陕";
  214. else if (province == "甘肃省" || province == "甘肃")
  215. return "甘";
  216. else if (province == "青海省" || province == "青海")
  217. return "青";
  218. else if (province == "台湾省" || province == "台湾")
  219. return "台";
  220. else if (province == "内蒙古自治区" || province == "内蒙古")
  221. return "蒙";
  222. else if (province == "广西壮族自治区" || province == "广西")
  223. return "桂";
  224. else if (province == "宁夏回族自治区" || province == "宁夏")
  225. return "宁";
  226. else if (province == "新疆维吾尔自治区" || province == "新疆")
  227. return "新";
  228. else if (province == "西藏自治区" || province == "西藏")
  229. return "藏";
  230. else if (province == "香港特别行政区" || province == "香港")
  231. return "港";
  232. else if (province == "澳门特别行政区" || province == "澳门")
  233. return "澳";
  234. }
  235. const getDistance = (lat1, lng1, lat2, lng2) => {
  236. function Rad(d) {
  237. return d * Math.PI / 180.0;
  238. }
  239. if (!lat1 || !lng1) {
  240. return '';
  241. }
  242. // lat1用户的纬度
  243. // lng1用户的经度
  244. // lat2商家的纬度
  245. // lng2商家的经度
  246. let radLat1 = Rad(lat1);
  247. let radLat2 = Rad(lat2);
  248. let a = radLat1 - radLat2;
  249. let b = Rad(lng1) - Rad(lng2);
  250. let s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) *
  251. Math.pow(
  252. Math.sin(b / 2), 2)));
  253. s = s * 6378.137;
  254. s = Math.round(s * 10000) / 10000;
  255. s = s.toFixed(2) //保留两位小数
  256. return s
  257. }
  258. const logout = () => {
  259. uni.removeStorage({
  260. key: 'userInfo'
  261. })
  262. }
  263. export default {
  264. getListByUserId,
  265. setAudit,
  266. ossUploadUrl,
  267. contactCustomerService,
  268. chooseImage,
  269. imgType,
  270. imgTypeList,
  271. makeValidityPeriod,
  272. getProvinceAbbreviation,
  273. // getAddress,
  274. formatLocation,
  275. getDistance,
  276. logout,
  277. filterUrban,
  278. filterArea
  279. }