实战篇笔记 扫码点餐小程序云开发(九)


商家信息校验

  • 商家信息表单字段:

    • 店铺名称
    • 店铺地址
    • 店铺logo
  • 需校验:

    • 所有字段不得为空
    • 不能有空格符

    在不满足条件的情况点击提交给用户相应的提醒

Arrfun (list, num) {
    if (JSON.parse(this.obj[num]).length === 0) {
        throw new result(list, 202)
    }
}
Parameter (list) {
    let bvc = this.obj.indexOf('')
    if (bvc != -1) {
        throw new result(list[bvc],202)
    }
}
Blank (list) {
    let vbn = this.obj.filter(item => {
        return item.split(' ').join('').length === 0
    })
    console.log(vbn)
    let bvc = this.obj.indexOf(vbn[0])
    if (bvc !== -1) {
        throw new result(list[bvc], 202)
    }
}

上传商家信息数据到数据库

使用实战篇笔记 扫码点餐小程序云开发(四)封装的 getToken().posteve(dataUrl, query) API接口

router.post('/uploadshop', new Auth().m, async ctx => {
  const {id, name, address, logo} = ctx.request.body
  new shopinfor(ctx, name, address, logo).start()
  let query = `db.collection('shop-infor').add({data:{name:'${name}',address:'${address}',logo:${logo}}})`
  try {
    await new getToken().posteve(AddUrl, query)
    new result(ctx, '提交成功').answer()
  } catch (e) {
    new result(ctx, '提交失败,服务器发生错误', 500).answer()
  }
})

从数据库拉取商家信息数据

使用实战篇笔记 扫码点餐小程序云开发(四)封装的 getToken().posteve(dataUrl, query) API接口

router.get('/obtainshop', new Auth().m, async ctx => {
  const query = `db.collection('shop-infor').get()`
  try {
    let res = await new getToken().posteve(Tripurl, query)
    const data = res.data.map(item => {return JSON.parse(item)})
    new result(ctx, 'SUCCESS', 200, data).answer()
  } catch (e) {
    new result(ctx, '提交失败,服务器发生错误', 500).answer()
  }
})

修改店铺信息

使用实战篇笔记 扫码点餐小程序云开发(四)封装的 getToken().posteve(dataUrl, query) API接口

和初次设置共用同一页面,通过 Collection.doc(id: string): Document 获取集合中指定记录的引用

router.post('/modifyshop', new Auth().m, async ctx => {
  const {id, name, address, logo} = ctx.request.body
  new shopinfor(ctx, name, address, logo).start()
  let query = `db.collection('shop-infor').doc('${id}').update({data:{name:'${name}',address:'${address}',logo:${logo}}})`
  try {
    await new getToken().posteve(UpdateUrl, query)
    new result(ctx, '修改成功').answer()
  } catch (e) {
    new result(ctx, '修改失败,服务器发生错误', 500).answer()
  }
})

文章作者: April-cl
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 April-cl !
  目录