(window.webpackJsonp=window.webpackJsonp||[]).push([[11],{284:function(t,s,n){"use strict";n.r(s);var e=n(13),a=Object(e.a)({},(function(){var t=this,s=t._self._c;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"智能运动鞋客服系统"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#智能运动鞋客服系统"}},[t._v("#")]),t._v(" 智能运动鞋客服系统")]),t._v(" "),s("blockquote",[s("p",[t._v("请编辑过的人员留下你的姓名")])]),t._v(" "),s("ul",[s("li",[t._v("文档编辑人员 冯垣玮(2022/10/28)")])]),t._v(" "),s("h2",{attrs:{id:"说明"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#说明"}},[t._v("#")]),t._v(" 说明")]),t._v(" "),s("p",[t._v("范肆智能鞋提供售前,售后服务的平台")]),t._v(" "),s("h2",{attrs:{id:"项目地址"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#项目地址"}},[t._v("#")]),t._v(" 项目地址")]),t._v(" "),s("ul",[s("li",[t._v("svn://svn.webdev.ouj.com/biz/shoes/trunk/funlive2.0/frontend")])]),t._v(" "),s("h2",{attrs:{id:"项目域名"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#项目域名"}},[t._v("#")]),t._v(" 项目域名")]),t._v(" "),s("table",[s("thead",[s("tr",[s("th",[t._v("环境")]),t._v(" "),s("th",[t._v("域名")])])]),t._v(" "),s("tbody",[s("tr",[s("td",[t._v("正式环境")]),t._v(" "),s("td",[s("a",{attrs:{href:"https://admin-funlive.funfet.com/login",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://admin-funlive.funfet.com/login"),s("OutboundLink")],1)])])])]),t._v(" "),s("h2",{attrs:{id:"技术选型"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#技术选型"}},[t._v("#")]),t._v(" 技术选型")]),t._v(" "),s("blockquote",[s("p",[t._v("目标:pc端")])]),t._v(" "),s("p",[t._v("可选择的方案,(1)Vue (2)react")]),t._v(" "),s("p",[t._v("最终由于技术人员对Vue更熟悉,即开发效率更高,最终选择了Vue")]),t._v(" "),s("h2",{attrs:{id:"最终的技术栈"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#最终的技术栈"}},[t._v("#")]),t._v(" 最终的技术栈")]),t._v(" "),s("blockquote",[s("p",[t._v("vite(2.6.14) + Vue3(3.2.24) + TypeScript + sass(1.43.4) + element-plus(2.0.1)")])]),t._v(" "),s("h2",{attrs:{id:"node版本"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#node版本"}},[t._v("#")]),t._v(" node版本")]),t._v(" "),s("blockquote",[s("p",[t._v('"node": "16.13.0"')])]),t._v(" "),s("h2",{attrs:{id:"项目架构"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#项目架构"}},[t._v("#")]),t._v(" 项目架构")]),t._v(" "),s("div",{staticClass:"language-Bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("- build\n- mock\n- public \n- src\t\t "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 项目源代码")]),t._v("\n - api "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 请求 api")]),t._v("\n - assets "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 字体、图片等静态资源")]),t._v("\n - components "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局自定义公用组件")]),t._v("\n - config "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 项目源代码全局配置")]),t._v("\n - directives "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局自定义指令")]),t._v("\n - layout "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 主要页面布局")]),t._v("\n - plugins "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 处理一些主要库或者插件,导出更方便的api")]),t._v("\n - router "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 路由配置")]),t._v("\n - store "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局状态管理")]),t._v("\n - style "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局样式")]),t._v("\n - utils "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局工具方法")]),t._v("\n - views "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局单页面组件")]),t._v("\n - Basic "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 基础设置")]),t._v("\n - Chats "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 客服咨询")]),t._v("\n - Custom "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 客户管理")]),t._v("\n - Dashboard "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 首页")]),t._v("\n - Eval "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 评价管理")]),t._v("\n - Personal "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 个人管理")]),t._v("\n - Record "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 历史记录")]),t._v("\n - Shoes "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 用户鞋库")]),t._v("\n - Suggest "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 投诉管理")]),t._v("\n - System "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 系统管理")]),t._v("\n - Viewprot "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 窗口管理")]),t._v("\n - "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("401")]),t._v(".vue "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 401页面")]),t._v("\n - "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("404")]),t._v(".vue "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 404页面")]),t._v("\n - login.vue "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 登录页面")]),t._v("\n - redirect.vue "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 重定向")]),t._v("\n - App.vue "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 入口页面")]),t._v("\n - main.ts "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 入口文件")]),t._v("\n- types "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局 TS 类型配置")]),t._v("\n- .editorconfig "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 编辑器读取文件格式及样式定义配置")]),t._v("\n- .env "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 全局环境变量配置")]),t._v("\n- .env.development "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 开发环境变量配置")]),t._v("\n- .env.production "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 生产环境变量配置")]),t._v("\n- .eslintignore "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# eslint 语法检查忽略文件")]),t._v("\n- .eslintrc.js "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# eslint 语法检查配置")]),t._v("\n- .gitignore "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# git 提交忽略文件")]),t._v("\n- .gitpod.yml(可选)\n- .markdownlint.json "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# markdown 格式检查配置")]),t._v("\n- .prettierrc.js "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# prettier 插件配置")]),t._v("\n- .stylelintignore "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# stylelint 插件检查忽略文件")]),t._v("\n- CHANGELOG.en_US.md(可选)\n- CHANGELOG.md(可选)\n- CHANGELOG.zh_CN.md "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 改动日志记录")]),t._v("\n- commitlint.config.js "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# git 提交前检查配置")]),t._v("\n- index.html "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# html 主入口")]),t._v("\n- LICENSE "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 证书")]),t._v("\n- package.json "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 依赖包管理 JSON 文件")]),t._v("\n- pnpm-lock.yaml "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# 依赖包版本内容锁定文件(不要改动!)")]),t._v("\n- postcss.config.js "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# postcss 插件配置")]),t._v("\n- README.en-US.md(可选)\n- README.md "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# README")]),t._v("\n- stylelint.config.js "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# stylelint 插件配置")]),t._v("\n- tsconfig.json "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ts 配置")]),t._v("\n- vite.config.ts "),s("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# vite 配置")]),t._v("\n")])])]),s("h2",{attrs:{id:"命令"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#命令"}},[t._v("#")]),t._v(" 命令")]),t._v(" "),s("blockquote",[s("p",[t._v("打包与开发需使用pnpm,版本pnpm >= 6")])]),t._v(" "),s("blockquote",[s("p",[t._v("开发:pnpm dev")])]),t._v(" "),s("blockquote",[s("p",[t._v("打包:pnpm build")])]),t._v(" "),s("h2",{attrs:{id:"备注"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#备注"}},[t._v("#")]),t._v(" 备注")]),t._v(" "),s("h3",{attrs:{id:"开发架子"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#开发架子"}},[t._v("#")]),t._v(" 开发架子")]),t._v(" "),s("ul",[s("li",[t._v("找的开源架子vue-pure-admin,具体可参考 "),s("a",{attrs:{href:"http://yiming_chang.gitee.io/pure-admin-doc/",target:"_blank",rel:"noopener noreferrer"}},[t._v("vue-pure-admin"),s("OutboundLink")],1)])]),t._v(" "),s("h3",{attrs:{id:"关于客服"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#关于客服"}},[t._v("#")]),t._v(" 关于客服")]),t._v(" "),s("ol",[s("li",[s("p",[t._v("根据需求,客服使用的是微信提供的客服sdk,客户可通过微信直接找到客服进行咨询。")])]),t._v(" "),s("li",[s("p",[t._v("客服与窗口")])])]),t._v(" "),s("ul",[s("li",[s("p",[t._v("问题:根据微信sdk,发现每创建一个客服,微信端都会生成一个聊天窗口,不符合需求。")])]),t._v(" "),s("li",[s("p",[t._v("解决:发现客服下可绑定多个接待人员,而接待人员才是我们真正的聊天服务人员,即原来的客服=聊天窗口,接待人员=聊天人员,聊天人员=后台登陆账号")])])]),t._v(" "),s("ol",{attrs:{start:"3"}},[s("li",[t._v("客服即是窗口,窗口是绑定到范肆商城小程序里的,"),s("font",{attrs:{color:"#FF0000"}},[t._v("误删!!!")])],1)])])}),[],!1,null,null,null);s.default=a.exports}}]);