helper.js 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. import * as config from '../config'
  2. const selectContractNo = {}
  3. const detailData = {}
  4. const erpWarehouse = {}
  5. let rolesList = []
  6. const now = Date.now || function() {
  7. return new Date().getTime();
  8. };
  9. const isArray = Array.isArray || function(obj) {
  10. return obj instanceof Array;
  11. };
  12. const getListByUserId = function() {
  13. let baseUrlNew = config.def().baseUrlNew
  14. var userInfo = uni.getStorageSync("userInfo")
  15. console.log("------", userInfo)
  16. if (userInfo) {
  17. uni.request({
  18. url: baseUrlNew + '/roleMenu/query/getListByUserId',
  19. data: {
  20. userId: userInfo.id ? userInfo.id : userInfo.data.id
  21. },
  22. method: 'GET',
  23. success: (res) => {
  24. if (res.statusCode === 200) {
  25. debugger
  26. rolesList = []
  27. uni.setStorageSync("jurisdiction", res.data.data)
  28. let list = getUserAllRoles(res.data.data);
  29. uni.setStorageSync("rolesList", list)
  30. }
  31. }
  32. })
  33. }
  34. }
  35. const getUserAllRoles = (item) => {
  36. console.log(item)
  37. debugger
  38. for (let i = 0; i < item.length; i++) {
  39. rolesList.push(item[i].name)
  40. // console.log('用户权限',rolesList)
  41. if (item[i].children && item[i].children.length > 0) {
  42. getUserAllRoles(item[i].children)
  43. }
  44. }
  45. return rolesList;
  46. }
  47. const setAudit = (item) => {
  48. let _list = uni.getStorageSync("copyTaskInfo")
  49. let _isShowbtn = true
  50. if (_list.length == 0) {
  51. _isShowbtn = false
  52. }
  53. for (let i = 0; i < _list.length; i++) {
  54. if (_list[i].businessId == item.id) {
  55. _list.splice(i, 1)
  56. uni.setStorageSync("copyTaskInfo", _list)
  57. }
  58. }
  59. if (_list.length > 0) {
  60. uni.navigateTo({
  61. url: _list[0].itemUrl + '&isShowbtn=' + _isShowbtn,
  62. })
  63. }
  64. console.log(item)
  65. }
  66. //获取当天日期
  67. const getNowFormatDate = () => {
  68. var date = new Date();
  69. var seperator1 = "-";
  70. var year = date.getFullYear();
  71. var month = date.getMonth() + 1;
  72. var strDate = date.getDate();
  73. if (month >= 1 && month <= 9) {
  74. month = "0" + month;
  75. }
  76. if (strDate >= 0 && strDate <= 9) {
  77. strDate = "0" + strDate;
  78. }
  79. var currentdate = year + seperator1 + month + seperator1 + strDate;
  80. return currentdate;
  81. }
  82. const convertCurrency = (money) => {
  83. //汉字的数字
  84. var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
  85. //基本单位
  86. var cnIntRadice = new Array('', '拾', '佰', '仟');
  87. //对应整数部分扩展单位
  88. var cnIntUnits = new Array('', '万', '亿', '兆');
  89. //对应小数部分单位
  90. var cnDecUnits = new Array('角', '分', '毫', '厘');
  91. //整数金额时后面跟的字符
  92. var cnInteger = '整';
  93. //整型完以后的单位
  94. var cnIntLast = '元';
  95. //最大处理的数字
  96. var maxNum = 999999999999999.9999;
  97. //金额整数部分
  98. var integerNum;
  99. //金额小数部分
  100. var decimalNum;
  101. //输出的中文金额字符串
  102. var chineseStr = '';
  103. //分离金额后用的数组,预定义
  104. var parts;
  105. if (money == '') {
  106. return '';
  107. }
  108. money = parseFloat(money);
  109. if (money >= maxNum) {
  110. //超出最大处理数字
  111. return '';
  112. }
  113. if (money == 0) {
  114. chineseStr = cnNums[0] + cnIntLast + cnInteger;
  115. return chineseStr;
  116. }
  117. //转换为字符串
  118. money = money.toString();
  119. if (money.indexOf('.') == -1) {
  120. integerNum = money;
  121. decimalNum = '';
  122. } else {
  123. parts = money.split('.');
  124. integerNum = parts[0];
  125. decimalNum = parts[1].substr(0, 4);
  126. }
  127. //获取整型部分转换
  128. if (parseInt(integerNum, 10) > 0) {
  129. var zeroCount = 0;
  130. var IntLen = integerNum.length;
  131. for (var i = 0; i < IntLen; i++) {
  132. var n = integerNum.substr(i, 1);
  133. var p = IntLen - i - 1;
  134. var q = p / 4;
  135. var m = p % 4;
  136. if (n == '0') {
  137. zeroCount++;
  138. } else {
  139. if (zeroCount > 0) {
  140. chineseStr += cnNums[0];
  141. }
  142. //归零
  143. zeroCount = 0;
  144. chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
  145. }
  146. if (m == 0 && zeroCount < 4) {
  147. chineseStr += cnIntUnits[q];
  148. }
  149. }
  150. chineseStr += cnIntLast;
  151. }
  152. //小数部分
  153. if (decimalNum != '') {
  154. var decLen = decimalNum.length;
  155. for (var i = 0; i < decLen; i++) {
  156. var n = decimalNum.substr(i, 1);
  157. if (n != '0') {
  158. chineseStr += cnNums[Number(n)] + cnDecUnits[i];
  159. }
  160. }
  161. }
  162. if (chineseStr == '') {
  163. chineseStr += cnNums[0] + cnIntLast + cnInteger;
  164. } else if (decimalNum == '') {
  165. chineseStr += cnInteger;
  166. }
  167. return chineseStr;
  168. }
  169. //获取省份简称
  170. const getProvinceAbbreviation = (province) => {
  171. if (province == "北京市" || province == "北京")
  172. return "京";
  173. else if (province == "天津市" || province == "天津")
  174. return "津";
  175. else if (province == "重庆市" || province == "重庆")
  176. return "渝";
  177. else if (province == "上海市" || province == "上海")
  178. return "沪";
  179. else if (province == "河北省" || province == "河北")
  180. return "冀";
  181. else if (province == "山西省" || province == "山西")
  182. return "晋";
  183. else if (province == "辽宁省" || province == "辽宁")
  184. return "辽";
  185. else if (province == "吉林省" || province == "吉林")
  186. return "吉";
  187. else if (province == "黑龙江省" || province == "黑龙江")
  188. return "黑";
  189. else if (province == "江苏省" || province == "江苏")
  190. return "苏";
  191. else if (province == "浙江省" || province == "浙江")
  192. return "浙";
  193. else if (province == "安徽省" || province == "安徽")
  194. return "皖";
  195. else if (province == "福建省" || province == "福建")
  196. return "闽";
  197. else if (province == "江西省" || province == "江西")
  198. return "赣";
  199. else if (province == "山东省" || province == "山东")
  200. return "鲁";
  201. else if (province == "河南省" || province == "河南")
  202. return "豫";
  203. else if (province == "湖北省" || province == "湖北")
  204. return "鄂";
  205. else if (province == "湖南省" || province == "湖南")
  206. return "湘";
  207. else if (province == "广东省" || province == "广东")
  208. return "粤";
  209. else if (province == "海南省" || province == "海南")
  210. return "琼";
  211. else if (province == "四川省" || province == "四川")
  212. return "川";
  213. else if (province == "贵州省" || province == "贵州")
  214. return "贵";
  215. else if (province == "云南省" || province == "云南")
  216. return "云";
  217. else if (province == "陕西省" || province == "陕西")
  218. return "陕";
  219. else if (province == "甘肃省" || province == "甘肃")
  220. return "甘";
  221. else if (province == "青海省" || province == "青海")
  222. return "青";
  223. else if (province == "台湾省" || province == "台湾")
  224. return "台";
  225. else if (province == "内蒙古自治区" || province == "内蒙古")
  226. return "蒙";
  227. else if (province == "广西壮族自治区" || province == "广西")
  228. return "桂";
  229. else if (province == "宁夏回族自治区" || province == "宁夏")
  230. return "宁";
  231. else if (province == "新疆维吾尔自治区" || province == "新疆")
  232. return "新";
  233. else if (province == "西藏自治区" || province == "西藏")
  234. return "藏";
  235. else if (province == "香港特别行政区" || province == "香港")
  236. return "港";
  237. else if (province == "澳门特别行政区" || province == "澳门")
  238. return "澳";
  239. }
  240. // 获取市、区简称
  241. const filterUrban = (s) => {
  242. if (s.lastIndexOf('市') != -1) {
  243. return s.substring(0, s.length - 1)
  244. }
  245. return s
  246. }
  247. const filterArea = (q) => {
  248. if (q.lastIndexOf('区') != -1) {
  249. return q.substring(0, q.length - 1)
  250. }
  251. return q
  252. }
  253. export default {
  254. detailData,
  255. selectContractNo,
  256. now,
  257. isArray,
  258. erpWarehouse,
  259. getListByUserId,
  260. setAudit,
  261. getNowFormatDate,
  262. getProvinceAbbreviation,
  263. convertCurrency,
  264. filterUrban,
  265. filterArea,
  266. }