用云开发快速制作客户业务需求收集小程序丨实战

简介: 用云开发快速制作客户业务需求收集小程序丨实战

一、导语

如何省去企业上门(现场)搜集客户需求的环节,节约企业人力和时间成本,将客户的业务定制需求直接上传至云数据库?云开发为我们提供了这个便利!

二、需求背景

作为一名XX公司IT萌萌新,这段时间对小程序开发一直有非常浓厚的兴趣,并且感慨于“云开发·不止于快”的境界。近期工作中,刚好碰见业务部门的一个需求,目的是节约上门跟客户收集业务定制资料的时间,以往是每变更一次,就需要上门一次,碰见地域较远的,费时费力,且往往要求几天内完成上线,时间非常紧迫。因此,结合一直以来对云开发的各种优势的了解,我说服公司领导通过小程序·云开发来实现。

下面是其中一项业务定制界面的展示:

(1)业务对业务流程有简单说明;

(2)相关业务介绍;

(3)不同客户输入个性化需求;

(4)云存储后台实现需求表单的收集。

得力于云开发提供的API和WeUI库的便利,本项目在我在极短的时间内就实现了比较理想的效果 。接下来,我就从本项目入手,讲讲我是如何依靠小程序·云开发将想法快速实现的,其实我也是刚入门没多久,只是想分享一下自身在学习小程序开发项目中的一些知识点和体会,代码可能略为粗糙,逻辑也有待优化,欢迎大家在评论区多多交流。

三、开发过程

1、组件

主要使用了官方WeUI扩展能力的一些组件库来实现主要功能。

核心的WeUI库主要有 Msg、Picker、图片的Upload等(以快为目的,节省自己写CSS样式的时间,也方便0基础的同学上手,这里又体会到了小程序开发的便捷)。

2、实现代码

本次云开发包括云数据库云存储两大功能:

(1)云数据库

云数据库的主要就是搜集客户提交上来的表单信息,包括客户的联系方式和选择的业务类型等,并存储在云数据库中,方便业务经理搜集需求。

我们来看简单的实现过程:

首先是表单,用到了 form 表单组件以及它的 bindsubmit 方法,在 wxml 中放置 form 表单:

<form bindsubmit="formSubmit">
    <view class="form">
      <view class="section">
        <picker bindchange="bindPickerGsd" mode="selector" value="{{indexGsd}}" range="{{arrayGsd}}">
          <view class="picker">归属县市</view>
          <view class="picker-content" >{{arrayGsd[indexGsd]?arrayGsd[indexGsd]:"(必填项) 请下拉选择归属地"}}</view> 
        </picker>
      </view>    
      <!---中间部分详见代码--->
    </view>
 
    <view class="footer">
      <button class="dz-btn" formType="submit" loading="{{formStatus.submitting}}" disabled="{{formStatus.submitting}}" bindtap="openSuccess">提交</button>
    </view>
  </form>

表单中除了普通的文本输入,增加有下拉列表的实现(毕竟客户有时候是比较懒的)。

来看一下具体代码:

bindPickerGsd: function (e) {    
  console.log('归属地已选择,携带值为', e.detail.value)
  console.log('归属地选择:', this.data.arrayGsd[e.detail.value])    
  this.setData({
     indexGsd: e.detail.value     
   })   
   this.data.formData.home_county = this.data.arrayGsd[e.detail.value]
},

最后表单上传到云数据库:

  // 表单提交
  formSubmit: function (e) {
    var minlength = '';
    var maxlength = '';
    console.log("表单内容",e)
    var that = this;
    var formData = e.detail.value;
    var result = this.wxValidate.formCheckAll(formData);
    
    console.log("表单提交formData", formData);
    console.log("表单提交result", result)
    wx.showLoading({
      title: '发布中...',
    })
    const db = wx.cloud.database()
    db.collection('groupdata').add({
      data: {
        time: getApp().getNowFormatDate(),
        home_county: this.data.formData.home_county,
        group_name: formData.group_name,
        contact_name: formData.contact_name,
        msisdn: formData.msisdn,
        product_name: this.data.formData.product_name,
        word: formData.word,
      },
      success: res => {
        wx.hideLoading()
        console.log('发布成功', res)
 
      },
      fail: err => {
        wx.hideLoading()
        wx.showToast({
          icon: 'none',
          title: '网络不给力....'
        })
        console.error('发布失败', err)
      }
    })
  },
(2)云存储

因为业务的定制需要填单客户所在单位的授权证明材料,因此需要提单人(使用人)上传证明文件,因此增加了使用云存储的功能。

核心代码:

    promiseArr.push(new Promise((reslove,reject)=>{
        wx.cloud.uploadFile({
            cloudPath: "groupdata/" + group_name + "/" + app.getNowFormatDate() +suffix,
            filePath:filePath
        }).then(res=>{
            console.log("授权文件上传成功")          
            })
            reslove()
            }).catch(err=>{
            console.log("授权文件上传失败",err)
    })
 
    因为涉及到不同页面的数据传递,即将表单页面的group_name作为云存储的文件夹用于存储该客户在表单中上传的图片,因此还需要用到getCurrentPages()来进行页面间的数据传递 
 
    var pages = getCurrentPages();
    var prePage = pages[pages.length - 2];//pages.length就是该集合长度 -2就是上一个活动的页面,也即是跳过来的页面
    var group_name = prePage.data.formData.group_name.value//取上页data里的group_name数据用于标识授权文件所存储文件夹的名称
3、待进一步优化

基于时间关系,本次版本仅对需求进行了简单实现,作为公司一个可靠的项目,还需要关注"客户隐私”、“数据安全”,以及更人性化的服务。比如:

(1)提单人确认和认证过程

可靠性:增加验证码验证(防止他人冒名登记),以及公司受理业务有个客户本人提交凭证。

(2)订阅消息

受理成功后,可以给客户进行处理结果的反馈,增强感知。

(3)人工客服

进行在线咨询等。

四、总结

在本次项目开发中,我深刻体会到了云开发的“快”,特别是云数据库的增删查改功能非常方便。云开发提供的种种便利,让我在有新创意的时候,可以迅速采用小程序云开发快速实现,省时省力,还能免费使用腾讯云服务器,推荐大家尝试!

源码地址

https://github.com/TencentCloudBase/Good-practice-tutorial-recommended

相关文章
|
4天前
|
小程序 前端开发 物联网
无人桌球室小程序平台系统定制开发方案
【项目摘要】随着社会进步和科技发展,无人桌球室小程序应运而生,解决传统桌球室管理难题。提供在线预订、自动计分、赛事查询及会员管理功能,采用微信小程序前端、微服务后端及物联网智能设备技术实现。市场推广结合社交媒体、线下活动及口碑营销。需开发支持,请联系小编。
|
5天前
|
小程序 BI 定位技术
广州跑腿小程序功能开发让生活更方便
跑腿小程序整合生活服务,提供快捷的跑腿任务解决方案。用户通过手机号或微信注册登录,发布如取快递、买饭等需求;跑腿员接单并利用导航高效完成。支持订单管理、多种支付方式及评价反馈系统,确保服务质量。小程序还发送订单状态通知,进行数据统计分析以促进平台发展。
|
4天前
|
小程序 安全 数据安全/隐私保护
理发店预约小程序开发:随时随地,省时省力
理发店预约小程序开发要点:集成预约系统,用户填写信息并自动匹配时间及理发师;包含充值功能,支持安全支付及多种折扣;用户评价系统确保服务质量透明;发型展示帮助用户选择,支持模拟试戴;重视用户体验,界面友好,加载速度快;确保数据安全,兼容多平台,定期更新以优化性能和响应用户需求。寻求开发合作可联系相关人员。
|
4天前
|
人工智能 小程序 搜索推荐
餐饮类小程序开发定制需要多少钱,费用是怎样的
餐饮小程序开发费用因需求、规模和复杂性而异。基础版约几千到万元,含菜品展示、在线点餐等功能;界面设计费几千到几万;服务器租赁年费几千到几万;维护更新费同水平。总成本通常在几万到几十万之间。选择开发商时要考虑实际需求、合同条款及付款方式。
|
5天前
|
小程序 定位技术
货拉拉货运小程序开发:构建便捷可靠的货运平台
货拉拉货运小程序整合物流服务,用户可录入货物详情、使用地图定位跟踪运输状态;订单管理功能便于查看进度和费用;支持多种支付方式及支付记录查询;评价系统提升服务质量;客服支持确保用户疑问得到解答,打造移动物流新时代。
|
10天前
|
小程序 开发者
uniapp实战 —— 开发微信小程序的调试技巧
uniapp实战 —— 开发微信小程序的调试技巧
14 1
|
4天前
|
小程序
美团买菜小程序平台开发:搭建便捷的线上买菜渠道
随着时代的发展和人们生活水平的提高,网上购物已经成为更多人的首选。在此背景下,类似美团买菜小程序平台开发应运而生,为消费者提供方便快捷的网上购物体验。下面我们将详细讲解美团买菜小程序平台开发的功能特点和优势。
|
4天前
|
小程序 安全 UED
百果园社区电商小程序开发:打造私域精准营销发展趋势
百果园借助社区电商小程序转型,拓展线上渠道,增强品牌形象,降低运营成本,适应市场变化。小程序提供实时购物、社群互动、商家入驻及优惠活动,强调用户体验、功能丰富性和安全性,成为品牌与消费者连接的新桥梁。
|
5天前
|
小程序 安全 搜索推荐
陪玩交友互动小程序开发:打造有趣的社交互动平台
【陪玩交友小程序】融合趣味与实用,打造安全社交新平台。用户经实名认证后,可享在线匹配、语音聊天、游戏组队等多元互动。智能推荐系统助你高效找到玩伴,共享游戏攻略与娱乐资讯。个性化推荐服务,让每一次交流都充满乐趣,邀请好友共赴精彩社交之旅。
|
10天前
|
小程序 定位技术 API
uniapp 开发微信小程序 --【地图】打开地图选择位置,打开地图显示位置(可开启导航)
uniapp 开发微信小程序 --【地图】打开地图选择位置,打开地图显示位置(可开启导航)
37 0