目的:
初步掌握数据库应用系统分析设计的基本方法;进一步提高分析与解决问题的综合能力;初步掌握数据库建模工具的使用方法;熟悉掌握C/S或B/S结构的数据库应用系统开发的整个过程。
环境:
计算机硬件配置: Apache / PHP / MySQL / 微信小程序
操作系统: Linux / Windows 10 64位 / 微信小程序
数据库管理系统: Mysql数据库服务器
系统设计与开发用到的工具:Sublime Text 2 / 微信web开发者工具 / Dreamweaver / Mysql
内容:
运用数据库基础知识,在数据库应用环境下,完成一个具体的数据库应用系统的分析、设计与实现。
针对设计任务利用建模工具(Rose、PowerDesigner 等)进行数据库建模,在使用SQLserver 基础上,利用一种应用开发工具(PHP、VC、java 等)设计实现一个数据库应用系统。
要求能实现对数据库中数据的插入、删除、修改、查询、统计等功能,做到界面友好、使用方便。所建的数据库表至少满足第三范式,掌握应用系统与数据库相连方法,掌握程序访问数据库中数据的技术方法,进一步提高分析与解决问题的综合能力。
需求说明:
第一,有时候我们会碰到急需别人帮助的紧急情况,所以平台上提供人们发布实时求助的信息,相应的,别人可以接下求助,并收到一定的佣金,最后对该任务订单互相评价。
第二,服务的发布,就是针对有一技之长的人可以在线发布服务,替别人排忧解难,同样也有佣金和评价。
第三,平台也容纳了一个树洞,是一个给用户们交流和互动的平台。用户在茶闲饭后在树洞内可以有更进一步的接触,为小程序吸引用户留下用户。
第四,每一个用户可以在个人页,方便快捷地查看收发的求助/服务/评价/树洞。
发布服务模块:
//service.jsvar util = require('../../utils/util.js');var app=getApp();Page({ data:{ service_location:'未知位置', unit_type:['次','小时','分钟','单','幅','天','周','月','份','课时','个','面议'], unit_index:0, servive_type:['维修','打印','摄像','代办跑腿','顺风车'], openid: null, pic: '/img/upload.png', servive_index:0, date: util.formatTime(new Date), }, chooseImageTap: function () { let _this = this; wx.showActionSheet({ itemList: ['从相册中选择', '拍照'], itemColor: "#E24E42", success: function (res) { if (!res.cancel) { if (res.tapIndex == 0) { _this.chooseWxImage('album') } else if (res.tapIndex == 1) { _this.chooseWxImage('camera') } } } }) }, chooseWxImage: function (type) { let _this = this; wx.chooseImage({ sizeType: ['original', 'compressed'], sourceType: [type], success: function (res) { console.log(res); _this.setData({ pic: res.tempFilePaths[0], }) } }) }, totask:function(){ wx.switchTab({ url: '../task/task' }) }, bindPickerChange_unit: function(e) { this.setData({ unit_index: e.detail.value }) }, bindPickerChange_servive: function(e) { this.setData({ servive_index: e.detail.value }) }, submit_service:function(e){ wx.request({ url: 'https://www.cc.com/submit_service.php', data: { service_name:e.detail.value.service_name, service_description:e.detail.value.service_description, service_price:e.detail.value.service_price, service_location:this.data.service_location, unit_index:this.data.unit_index, servive_index:this.data.servive_index, service_area:e.detail.value.service_area, openid:this.data.openid, service_time: this.data.date }, method: 'POST', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT header: { 'content-type': 'application/x-www-form-urlencoded; charset=UTF-8' }, // 设置请求的 header success: function(res){ // success var err=res.data.error if(err){ console.log('error submit_service ') } else{ wx.switchTab({ url: '../serviceshow/serviceshow', success: function(res){ // success }, fail: function(res) { // fail }, complete: function(res) { // complete } }) } }, fail: function(res) { // fail }, complete: function(res) { // complete } }) wx.uploadFile({ url: 'https://www.cc.com/upload_pic.php', filePath: this.data.pic, name: 'file', header: { 'content-type': 'application/x-www-form-urlencoded; charset=UTF-8' }, // 设置请求的 header formData: { openid: e.detail.value.service_name, time: this.data.date,flag:'service', }, // HTTP 请求中其他额外的 form data success: function (res) { console.log(res); if (res.statusCode == 200 && !res.data.result_code) { typeof success == "function" && success(res.data); } else { typeof fail == "function" && fail(res); } }, fail: function (res) { console.log(res); typeof fail == "function" && fail(res); } }) }, onLoad:function(options){ // 生命周期函数--监听页面加载 var that =this; app.getUserOpenid(function(openid){ that.setData({ openid:openid }) }) wx.getLocation({ success: function (res) { wx.request({ url: 'https://apis.map.qq.com/ws/geocoder/v1/?key=XD7BZ-LWCWG-EKWQY-IRKJU-Y66X7-3MFPO&location=' + res.latitude + ',' + res.longitude, success: function (res) { that.setData({ service_location: res.data.result.address }) } }) } }) }, onReady:function(){ // 生命周期函数--监听页面初次渲染完成 }, onShow:function(){ // 生命周期函数--监听页面显示 }, onHide:function(){ // 生命周期函数--监听页面隐藏 }, onUnload:function(){ // 生命周期函数--监听页面卸载 }, onPullDownRefresh: function() { // 页面相关事件处理函数--监听用户下拉动作 }, onReachBottom: function() { // 页面上拉触底事件的处理函数 }, onShareAppMessage: function() { // 用户点击右上角分享 return { title: 'title', // 分享标题 desc: 'desc', // 分享描述 path: 'path' // 分享路径 } }})













