公司实习的做 demo 笔记
7.23 - 7.25 \ 7.26 - 7.31 Trantor 练习记录
视图配到开发项目的同一位置去执行构建
# 记录
# Mission
7.25
一阶段 W3
-
任务建模
-
模型 + 关系 分析制作
- 内置元件生成
- 提交控制台
-
视图 CRUD 制作
- 前端页面跳转逻辑
- 前端提交表单操作
- 后端 “Controller” 逻辑方法
-
提交 MT 审阅
二阶段 W4
-
返工 Trantor 文档学习 - 前端页面和数据源
-
等待控制台恢复(阻塞)
- 上传资源后研判目前 Demo 完成情况
- 前后联调并探索任务目标 和 之前疑问
-
完成后测试测试用数据库完整联调前后端
-
余下事项
- 补充余下页面与逻辑
- 探索数据源
- 探索分页
- 探索联表操作
-
发布并查看 debug 页面
-
宣布 Demo 完毕
# QA
Q
-
前端有了, Controller 有了, Mapper(DAO 层)也有了. 但是 Service 层很难让人感知到: 那么一些通用的方法在哪里写呢? 逻辑流?
我看到有用到 “Repo” 标记的类(上面有
@Repository
注解), 并且被其他 Func 调用, 这个应该就是了吧 -
前端调用后端发起请求, 后端接收的过程还是有些模糊. 可能是个人 TS 技术栈薄弱导致的
-
什么时候使用 qModel, 什么时候使用 Model 感觉有些乱
-
由于没有立刻能看到的页面效果, 也不能在本地跑起来调试, 感觉很不直观.
-
没有测试数据库, 没法存数据
A
- 可以写 Spring 那一套的 C/S/M , 已经确认拆分
- 见数据源选择-文档, 自己没咋看前端的问题
- 这个确实文档里面建议还是不要用太多, 但是大伙还是用 QModel 比较好, 还是用 QModel, 能够自动封装前端页面数据 DTO 到后端数据源. 唯一的区别就是这, 能否自动封装, 不需要手动封.
- 等待页面修复
- 数据库后续拿一个测试的
#
修复的发布流程 : 六步走
- 本地写完代码, 打开控制台
- cd 到 srm-trade-api
- 在 api 模块 (*), [生成对应临时文件]
- cd 到 srm-implement-api
- 在 implement 模块 (*)
- 浏览器查看控制台生成内容
(*) == 用控制台执行 mvn 脚本片段, 耗时约等于 1 分钟
mvn clean deploy -U -Ddependency-check.skip=true -DretireJsAnalyzerEnabled=false -Dtrantor.deploy -Dtrantor.flowParser.skip -Dmaven.test.skip -Dtrantor.deploy.url=http://dev-metastore-management.scm-nonprd.jinkosolar.com/terminus/srm
新
uat 环境的元数据上报命令
mvn clean deploy -U -Ddependency-check.skip=true -DretireJsAnalyzerEnabled=false -Dtrantor.deploy -Dtrantor.flowParser.skip -Dmaven.test.skip -Dtrantor.deploy.url=http://staging-metastore-management.scm.jinkosolar.com/terminus/srm
- 如果遇到报错, 可以切换到 Maven 菜单的控制台执行操作(去掉开头的 mvn 后选择上下文执行), 可以看到完整的异常堆栈进行 bug 定位
# 视图 Demo
# BO 视图任务
基本采用 trade 模块的标准路线, 去除部分逻辑. TS 代码先打 T’O’D’O
- 展示 主页面
- 新增 增
- 删除 删
- 编辑 改
- 详情 查
# 结构写法
针对性.xml 编写方法
-
主界面 List 形式
一个大`Table` { `Fields` | `Field` + `Search` + `RecordActions` + `Actions` }
-
详情 Detail 形式
一个大`Detail` { `Fields` | `GroupField` | `Field` + `Actions` }
-
新增 Form 形式
一个大`Form` { `Fields` | `GroupField` | `Field` + `Actions` } `Action` 中编辑逻辑
-
删除 Form 形式
-
编辑 Form 形式
一个大`Form` { `Fields` | `GroupField` | `Field` + `Actions` } `Action` 中编辑逻辑
# 模型 Demo
后续更新
直接使用图书馆管理系统的关系进行模拟, 逐渐加码
来自本人(@SpadeKTLSG)利用若依框架制作的的开源项目: LDBMS - Link
统一定义在 ldbms 子包内
一对一(后续), 一对多, 多对多关系验证
# 图书 Book
关系
- 与书架 多对一
- 与借阅 一对一
基础字段
- id
- name 名称
- type 类型
- author 作者
- price 价格
- publish 出版商
- summary 概要
动态字段
- storage_num 存在馆内数量
- total_num 总计数量
链接字段
- shelf_id 书架 id
- borrow_id 借阅 id
# 读者 Reader
关系
- 与借阅 一对多
基础字段
- id
- name 姓名
- sex 性别
动态字段
- borrowing_num 借到的书数量
- borrowed_num 总计借到的数量
链接字段
- borrow_id 借阅 id
# 借阅 Borrow [|]
中间表
关系
- 与读者 多对一
- 与书本 一对一
基础字段
- id
- name 名称(填充)
链接字段
- book_id 书本 id
- reader_id 读者 id
# 书架 Shelf
关系
- 与书籍 一对多
基础字段
- id
- name 名称
动态字段
- storage 存储书籍数量
-
链接字段
- book_id 书本 id
# 代码
咳咳咳, 这个大概是不能碰的滑梯