util.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. const idGen = (kind) => {
  2. return kind + '_' + Date.now() + '_' + Math.random().toString().slice(-8);
  3. };
  4. const graphqlURL = 'https://order.szu.im/graphql';
  5. // const graphqlURL = 'http://orderfcdb.ioobot.cn/graphql';
  6. const fetchGraphql = (query, variables, dataName, dataBack, that) => {
  7. // 如果给了 databack,则返回对应的数据,没有则返回全部
  8. // 如果给了 dataName,则 setData
  9. return new Promise((resolve, reject) => {
  10. let _this = that;
  11. wx.request({
  12. url: graphqlURL,
  13. method: 'POST',
  14. data: JSON.stringify({
  15. query,
  16. variables
  17. }),
  18. success: function (res) {
  19. let data;
  20. if (dataBack) {
  21. data = res.data.data[dataBack];
  22. } else {
  23. data = res.data.data;
  24. }
  25. if (dataName) {
  26. _this.setData({
  27. [dataName]: data
  28. })
  29. }
  30. resolve(data);
  31. }
  32. })
  33. })
  34. };
  35. const dateTime = (data, format) => {
  36. if (format) {
  37. let date = new Date(data);
  38. return {
  39. date: date.getFullYear() + '-' + (date.getMonth() < 10 ? '0' + (date.getMonth()+1) : (date.getMonth()+1)) + '-' + (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()),
  40. time: (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) +':'+ (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes())
  41. }
  42. } else {
  43. return new Date((data.date + ' ' + data.time + ':00').replace(/-/g, '/')).getTime();
  44. }
  45. };
  46. module.exports = {
  47. idGen: idGen,
  48. fetchGraphql: fetchGraphql,
  49. dateTime: dateTime
  50. };