# ExpressCabinet **Repository Path**: happysheep/ExpressCabinet ## Basic Information - **Project Name**: ExpressCabinet - **Description**: 快递柜投递辅助系统 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: http://express.polarissky.com/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-06-08 - **Last Updated**: 2021-06-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #ExpressCabinet 快递柜投递系统,该系统包括快递员管理、快递投递、快递取件三个主要功能,共包含三个子工程: * cabctlserver:快递柜控制服务,由ASP.NET开发完成,主要实现柜门开启、柜门状态检测功能 * expresscabinet:快递员管理、快递投递、快递取件这三个功能的移动端Web服务,由Node.js开发完成,采用Express开发框架、Jade模板引擎、MongoDB数据库以及WeUI,画面简洁明了 * messageserver:短信通知服务,由Node.js开发完成,固定间隔检测是否有需要发送的短信通知,进行发送 该系统代码实现方面具有以下几个特点: * 整个系统中的异步回调操作采用ES6中的Generator函数+Promise的解决方案 * 系统中使用Redis+Ajax实现快递收件人信息快速录入功能 * 使用Redis来缓存所有使用中的取件码,防止新的取件码与使用中的取件码重复,同时避免重复查询数据库 * 使用配置文件Config.json加载所有页面 * 采用jade模板引擎,在WeUI的基础上将使用到的所有控件模块化,因此单个页面实现简洁明了 对于快递员或者管理员可以登录到系统中进行投递或者管理;对于收件人可以直接访问取件页面,录入取件码取件。 管理员测试账号:18888888880 密码:000000 快递员测试账号:18888888881 密码:111111 ![登录](http://express.polarissky.com/images/login.png) ![取件](http://express.polarissky.com/images/take.png)