📜  司机简易钥匙 (1)

📅  最后修改于: 2023-12-03 15:07:27.601000             🧑  作者: Mango

司机简易钥匙

司机简易钥匙是一款方便快捷的钥匙管理工具,主要针对司机群体,可以存储和管理司机的钥匙信息。

功能特点
  • 支持新增、编辑、删除钥匙信息
  • 支持钥匙分类管理,如车钥匙、住宅钥匙等
  • 支持搜索查找钥匙,快速定位所需钥匙
  • 支持导出和导入钥匙信息,便于备份和恢复
技术实现
  • 采用前后端分离的架构,前端使用Vue.js,后端使用Node.js和MongoDB
  • 前端UI框架使用Ant Design Vue,提供良好的用户体验和交互效果
  • 后端采用RESTful API设计,路由使用Express.js管理,数据库采用MongoDB存储
  • 服务端使用jsonwebtoken进行用户身份验证,并采用bcrypt对用户密码进行加密存储
  • 项目代码托管在GitHub上,使用Travis CI进行自动化测试和部署
快速开始

克隆代码库:

git clone https://github.com/username/repo.git

安装依赖包:

npm install

启动开发服务器:

npm run serve

编译打包:

npm run build
代码片段

以下是用到的代码片段示例:

// 定义钥匙信息数据模型
const keySchema = new mongoose.Schema({
  name: { type: String, required: true },
  category: { type: String, required: true },
  description: { type: String },
  createdAt: { type: Date, default: Date.now },
});

// 定义钥匙信息API
const keyRouter = express.Router();
keyRouter.route("/")
  .get((req, res) => {
    // 获取所有钥匙信息
    Key.find((err, keys) => {
      if (err) return res.status(500).send(err);
      return res.json(keys);
    });
  })
  .post((req, res) => {
    // 新增钥匙信息
    const key = new Key(req.body);
    key.save((err, key) => {
      if (err) return res.status(500).send(err);
      return res.json(key);
    });
  });

// 定义管理员API
const adminRouter = express.Router();
adminRouter.post("/login", (req, res) => {
  // 验证管理员身份
  const { username, password } = req.body;
  Admin.findOne({ username }, (err, admin) => {
    if (err) return res.status(500).send(err);
    if (!admin) return res.status(401).send("Invalid username");
    bcrypt.compare(password, admin.password, (err, isMatch) => {
      if (err) return res.status(500).send(err);
      if (!isMatch) return res.status(401).send("Invalid password");
      const token = jwt.sign({ adminId: admin._id }, process.env.JWT_SECRET);
      return res.json({ token });
    });
  });
});
开发团队
  • 郑州某XX科技有限公司前端开发团队
  • 郑州某YY软件有限公司后端开发团队

感谢您的关注和使用!