ericwang1902 / exproj

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

开发步骤:
1.表单:登录 √
2.表单:注册 √
3.管理员:
 3.0 连接数据库; √
 3.1 sysuser数据结构; √
 3.2 后台接口路由;
 3.4 创建管理员账号的seed.js;√
     3.4.0 只存储一次;√
     3.4.1 密码加密存储;√
 3.5 管理员账号登录;
     3.5.0 passport登陆控制;
           3.5.0.0 login的passport验证;√
                   3.5.0.0.1 passport结合connect-falsh、express-message使用。√ 备注:这里主要一个大坑就是要注意在设置session的时候不要启用cookie的secure属性。
           3.5.0.1 登陆授权页面验证;√ 通过编写isLogin中间件来进行相关页面的授权登录。
           3.5.0.2 登出操作;
           3.5.0.3 flash使用;√
     3.5.1 bcryptjs解密登陆验证;√
 3.6 快递员(快递点)管理:
     3.6.1 用户注册功能编写;√
            说明:注册的时候,不管是快递员还是快递代理点,均只进行用户名和密码的注册,注册完成之后,再进行详细的数据设置。
     3.6.2 管理员后台用户管理编写;
           3.6.2.1 快递员列表、用户详细资料;
                   3.6.2.1.1 快递员列表,分页显示:
                            a. 页面显示分页控件;√
                            b. 页面控件向后台传递点击的页数、每页的数量作为查询条件;√
                            c. 后台传递数据到前台,前台显示数据并显示选择的页面。√
           3.6.2.2 用户设置:类型、组织id、电子免单账号和密码等;
                   3.6.2.2.1 做用户数据修改提交表单
                            a. 快递公司枚举类型、提交验证;通过handlebars的helper来实现选中显示√
                            b. 用户状态枚举类型、提交验证;
                            c. 所属快递点的下拉列表显示和表单提交;
                                1)知识点1:jquery的chosen插件;√
                                2)ref的objectid的插入。(详见router.post('/usermodify')√
           3.6.2.3 在userdetail页面。√
           3.6.2.3 用户充值;
           3.6.2.4 增加enumerableConstants,来表示用户类型。√
     3.6.3 快递员之后的管理中心页面
           3.6.3.1 显示一个公众号的关注二维码。(考虑到菜单需要留给客户设置,那么就不做粉丝事件的托管了,只做网页授权,通过网页授权来获取用户信息,在页面上绑定)
           3.6.3.2 扫码后,记录改快递员的openid。(同上)
           
4.0 手机页面:地点管理、下单管理;

5.0 微信开发:粉丝数据的获取
    5.0.1 jssdk获取粉丝数据;√
    5.0.2 创造粉丝数据结构;√
    5.0.3 实现网页授权机制的逻辑。√
    5.0.4 通过页面来绑定微信号,来获取快递员的openid。√待完善
    5.0.5 增加粉丝与快递点的连接;
    5.0.6 增加快递组织对快递员的控制。
           5.0.6.1 做快递组织管理员的登陆之后显示页面:控制面板、快递员列表、快递员信息。
           5.0.6.2 做location的维护.√
           5.0.6.3 做location的页面样式修改.√
           5.0.6.4 fan增加字段,用来表示默认寄件地址√
           5.0.6.5 location增加字段,用来表示location的状态√
           5.0.6.6 增加location列表,使用Jquery weui来做√

6.0 订单模块开发
    6.0.1 模板消息发送给快递员,快递员处理(针对状态进行处理)
    6.0.2 做订单页面(订单详情、状态、物流信息)
    6.0.3 用主动查询接口(需要修改订单数据结构,每次查询的时候,就将traces存放在订单的info字段)

7.0 打印
    7.0.1 快递员后台管理中心(订单列表,订单详情,打印)
    

v2.0
1. 将pc端列表做成动态刷新的,或者按钮刷新;
2. pc端增加接单并打印,最好做成一个步骤。
3. openid获取失败的情况处理



解决问题的记录:
1. objectID为空的情况下,存储出错的解决办法。
答案:赋值为null就可以了。
2. 使用express-validator的自定义验证器。

3.微信配置项:
3.1 枚举类型中的微信开发项;★
3.2 jssdk的配置项,参考官方文档;(这是在微信的网页里调用微信原生功能,暂时没有用到)
3.3 网页授权的域名配置设置:接口权限→网页授权获取用户基本信息(通过oauth2.0机制获取,跟jssdk是两回事)★
3.4 模板消息功能申请开启,添加:新订单提醒(OPENTM207719853)、订单状态提醒(OPENTM202045454)★
3.5 在枚举类型中添加模板id;★
3.6 快递员绑定自动回复的设置<a href="http://exproj.robustudio.com/courier/userbind">快递员绑定链接</a>★
4.微信坑:
4.1 接口的内容凡事都要先打印出来;
4.2 上线之后,bower npm install不能忘记



//圆通测试帐号:MonthCode:testyto,CustomName:testyto
//圆通正式账号:MonthCode:6Bzy2tkh,CustomName:K270113766


寄快递(在线快递):http://exproj.robustudio.com/customer/sendpage
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7a633de91613786a&redirect_uri=http%3a%2f%2fexproj.robustudio.com%2fcustomer%2fsend&response_type=code&scope=snsapi_userinfo&state=exproj#wechat_redirect

绑定快递员(在线快递):http://exproj.robustudio.com/courier/userbind
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7a633de91613786a&redirect_uri=http%3a%2f%2fexproj.robustudio.com%2fcourier%2fuserbind&response_type=code&scope=snsapi_userinfo&state=exproj#wechat_redirect

寄件:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx7a633de91613786a&redirect_uri=http%3a%2f%2fexproj.robustudio.com%2fcustomer%2fsend&response_type=code&scope=snsapi_userinfo&state=exproj#wechat_redirect

测试账号寄件:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx838604caabf1e7fe&redirect_uri=http%3a%2f%2fexproj.robustudio.com%2fcustomer%2fsend&response_type=code&scope=snsapi_userinfo&state=exproj#wechat_redirect

测试绑定快递员:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx838604caabf1e7fe&redirect_uri=http%3a%2f%2fexproj.robustudio.com%2fcourier%2fuserbind&response_type=code&scope=snsapi_userinfo&state=exproj#wechat_redirect


http://exproj.robustudio.com/courier/userbind

About


Languages

Language:JavaScript 44.9%Language:HTML 27.9%Language:CSS 27.2%