index.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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 code_check = await db.collection('invite').where({
  11. code: event.code
  12. }).get()
  13. if (code_check.data.length === 0) {
  14. return {
  15. errMsg: '邀请码不存在'
  16. }
  17. }
  18. if (code_check.data[0].pub_id !== '') {
  19. return {
  20. errMsg: '邀请码已被使用'
  21. }
  22. }
  23. const name_check = await db.collection('publisher').where({
  24. name: event.name
  25. }).get()
  26. if (name_check.data.length !== 0) {
  27. return {
  28. errMsg: '名称已存在'
  29. }
  30. }
  31. const publisher = await db.collection('publisher').add({
  32. data: {
  33. name: event.name,
  34. type: event.type,
  35. level: event.level,
  36. intro: event.intro,
  37. avatar: event.avatar,
  38. phone: event.phone,
  39. email: event.email,
  40. qq: event.qq,
  41. wechat: event.wechat,
  42. reside_time: new Date()
  43. }
  44. })
  45. await db.collection('invite').where({
  46. code: event.code
  47. }).update({
  48. data: {
  49. pub_id: publisher._id,
  50. use_time: new Date()
  51. }
  52. })
  53. await db.collection('manager').add({
  54. data: {
  55. pub_id: publisher._id,
  56. user_id: OPENID,
  57. title: '',
  58. role: '拥有者'
  59. }
  60. })
  61. return publisher
  62. }