index.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. // 云函数入口文件
  2. const cloud = require('wx-server-sdk')
  3. cloud.init()
  4. const db = cloud.database()
  5. // 云函数入口函数
  6. exports.main = async (event, context) => {
  7. let {
  8. OPENID
  9. } = cloud.getWXContext()
  10. const manage_check = await db.collection('manager')
  11. .where({
  12. pub_id: event.pub_id,
  13. user_id: OPENID
  14. }).get()
  15. if (manage_check.data.length === 0) {
  16. return {
  17. errMsg: '只有管理员可以发布'
  18. }
  19. }
  20. if (manage_check.data[0].role !== '拥有者' && manage_check.data[0].role !== '发布者') {
  21. return {
  22. errMsg: '没有发布权限'
  23. }
  24. }
  25. if (event.type === '纳新') {
  26. const publisher = await db.collection('publisher')
  27. .doc(event.pub_id)
  28. .get()
  29. event.type = publisher.data.type + '纳新'
  30. }
  31. const message = await db.collection('message')
  32. .add({
  33. data: {
  34. pub_id: event.pub_id || '',
  35. user_id: OPENID,
  36. name: event.name || '',
  37. type: event.type || '',
  38. brief: event.brief || '',
  39. poster: event.poster || '',
  40. photo: event.photo || '',
  41. tag: event.tag || '',
  42. orient: event.orient || '',
  43. time: event.time || '',
  44. place: event.place || '',
  45. contact: event.contact || '',
  46. detail: event.detail || '',
  47. publish_time: new Date()
  48. }
  49. })
  50. return message
  51. }