技术选择前端:react+antd后端:express+mysql2+log4js(日志服务,业务模块记录)部署:迅的云服务器+域名,nginx代理前端,后台服务前端(管理端))使用脚手架创建项目,然后添加antd组件库页面认证左侧导航菜单:根据当前账号角色对应的菜单权限生成路由/子路由设计项目代码目录设计后台1.路由设计,区分多个根据业务路由模块2.接口登录、认证(登录时写入cookie)3.登录时密码双层md5加密验证(内置超级管理员角色账号,超级管理员角色配置用户管理和角色管理菜单权限)4.实现文件上传5.明确业务和功能需求登录/退出菜单权限控制用户管理(超级管理员)角色管理(超级管理员)商品分类管理(等级关联选择,暂时支持2级)商品管理供应商信息管理6.数据库-表结构设计用户表(users)字段含义数据类型必填iduseridint1username用户名varchar(32)1password密码varchar(32)phone手机char(11)email邮箱varchar(32)role_id角色idINT1create_time创建时间datetime1change_timelatest修改时间datetime1角色表(roles)字段含义数据类型是否传递idroleidint1name角色名称varchar(32)1auth_idauthorizeridintauth_nameauthorizervarchar(32)auth_time授权时间datetimecreate_time创建时间datetime1menus具有权限的菜单路径Array['/a','/b']VARCHAR(200)default'/home'商品分类表(categorys)字段含义数据类型需要传递id类别idINT1name类别名称varchar(64)1parentId父类别idINTdefaultnulldescription分类介绍varchar(500)1create_time创建时间datetime1change_time最新修改时间datetime1imgs图片['/a','/b']VARCHAR(200)默认''商品信息表(products)字段含义数据类型必填idproductidint1name产品名称varchar(64)1modelspecificationmodelvarchar(64)description产品描述(details)varchar(500)create_time创建该产品的时间datetime1change_time最后修改时间datetime1imgsimage['/a','/b']VARCHAR(200)default''categoryId属于父类idint1p_categoryId属于idint1suppliers关联供应商的类目(可以有多个,做一个列表,具有多选功能)[id,id2,id3...]VARCHAR(150)unit商品单位varchar(16)purchase_price进货价double(低精度)decimal(高精度)decimal(10,3)default0.000wholesale_price批发价double(低精度)decimal(高精度)decimal(10,3)default0.000retail_price零售价double(低精度),decimal(高精度)decimal(10,3)default0.000inventory_count累计入库数量(默认0)int1show_count陈列室入库数量(默认0)intdelivery_count累计出库数量(default0)intcurrent_countinventory(当前实际库存数量)(default0)int1effectpurposevarchar(500)remarkremarkvarchar(500)status商品状态:1:上架,2:下架tinyint(1)这里1表示最小显示宽度为1个字符;tinyint(2)其中2表示最小显示宽度为2个字符供应商信息表(suppliers)字段含义数据类型需要传递idsupplieridint1name供应商名称varchar(32)1address地址varchar(64)phone手机号char(11)1email邮箱varchar(32)goodssupplyitemsvarchar(500)goods_idsupplyitemsidvarchar(150)保留字段:可能与对应的多个产品id6有关,项目代码目录设计项目基本功能演示最后希望大家动手关注?!后面项目稳定了,就可以考虑开源了。
