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

导语

业务场景下,如何快速优化业务流程、及时落地创意idea?看云开发如何助力业务效率的快速提升!

 
▌一、导语
如何省去企业上门(现场)搜集客户需求的环节,节约企业人力和时间成本,将客户的业务定制需求直接上传至云数据库?云开发为我们提供了这个便利! 二、需求背景 作为一名XX公司IT萌萌新,这段时间对小程序开发一直有非常浓厚的兴趣,并且感慨于“云开发·不止于快”的境界。近期工作中,刚好碰见业务部门的一个需求,目的是节约上门跟客户收集业务定制资料的时间,以往是每变更一次,就需要上门一次,碰见地域较远的,费时费力,且往往要求几天内完成上线,时间非常紧迫。因此,结合一直以来对云开发的各种优势的了解,我说服公司领导通过小程序·云开发来实现。 下面是其中一项业务定制界面的展示: (1)业务对业务流程有简单说明; (2)相关业务介绍; (3)不同客户输入个性化需求; (4)云存储后台实现需求表单的收集。

9e278c5d32b7a594ba1be0c17b735d30.png

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

三、开发过程
1、组件
主要使用了官方WeUI扩展能力的一些组件库来实现主要功能。

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

a04ddf1d40942201cf1a2585964328d0.png

2、实现代码

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

(1)云数据库

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

4d1e1ac783490d15896756b370aa9839.png

我们来看简单的实现过程: 首先是表单,用到了 form 表单组件以及它的 bindsubmit 方法,在 wxml 中放置 form 表单:

bindsubmit="formSubmit">

class="form">

class="section">

bindchange="bindPickerGsd" mode="selector" value="{{indexGsd}}" range="{{arrayGsd}}">

class="picker">归属县市

class="picker-content" >{{arrayGsd[indexGsd]?arrayGsd[indexGsd]:"(必填项) 请下拉选择归属地"}}

class="footer">

class="dz-btn" formType="submit" loading="{{formStatus.submitting}}" disabled="{{formStatus.submitting}}" bindtap="openSuccess">提交

表单中除了普通的文本输入,增加有下拉列表的实现(毕竟客户有时候是比较懒的)。 5f2167b610a43f85a4260e250f34e706.png 来看一下具体代码:

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]

},

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

de4d952e4ec70e6837c0a92b6aebc63e.png

// 表单提交

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数据用于标识授权文件所存储文件夹的名称

557538eeec58c6abdc2d60447ecb20dc.png

43b8f66506f40be289f5ccc205007a89.png

3、进一步优化
基于时间关系,本次版本仅对需求进行了简单实现,作为公司一个可靠的项目,还需要关注"客户隐私”、“数据安全”,以及更人性化的服务。 比如: (1)提单人确认和认证过程 可靠性: 增加验证码验证(防止他人冒名登记),以及公司受理业务有个客户本人提交凭证。 (2)订阅消息 受理成功后,可以给客户进行处理结果的反馈,增强感知。 (3)人工客服 进行在线咨询等。

四、总结

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

▌五、获取源码

 更多精彩 

点击下方图片即可阅读

307a681542badedd83a79d3f69c98ace.png

4064cbe9ec56330e84dc67d0f201a4eb.png

956c99e52159e1c58676f864fbb6d715.png

9741575df904bb374036cf7fbec37bd1.png

云开发,不止于「快」

95fcfa8e9923d2304ee23d1775cd659d.png

云开发

Tencent CloudBase

      点击在看让更多人发现精彩c07bdc02bc3382f33883c7516db78b01.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt5快速开发实战》是一本关于使用PyQt5进行快速应用开发和实践的PDF电子书。该书以Python的GUI库PyQt5为基础,通过实际项目案例来介绍如何使用PyQt5创建各种图形界面应用程序。 在本书中,作者从基本的PyQt5安装和设置开始,向读者介绍PyQt5的主要组件和特性,包括窗口、按钮、文本框、下拉菜单等常见的界面元素的创建和使用。此外,该书还深入探讨了PyQt5的布局管理、事件处理、信号与槽机制等重要的开发概念和技术。 除了基础知识,本书还介绍了一系列的实际项目案例,涵盖了不同领域和行业,例如图书管理系统、音乐播放器、在线聊天应用等。每个案例都会从需求分析开始,逐步引导读者使用PyQt5进行应用程序的设计、开发和测试。通过这些实例,读者可以学到如何灵活运用PyQt5的各种功能,开发出符合自己需求的应用程序。 《PyQt5快速开发实战》不仅提供了详细的代码示例和注释,还介绍了常见问题和解决方案,帮助读者克服开发过程中可能遇到的一些挑战和难题。此外,该书还提供了一些实用的技巧和建议,使读者能够更加高效地使用PyQt5进行开发。 总之,《PyQt5快速开发实战》是一本适合PyQt5初学者和有一定开发经验的读者使用的实用指南。通过学习该书,读者可以快速掌握PyQt5开发技巧和应用实践,为自己的项目开发提供有力的支持和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值