追加功能 #441
Updated by Junyi Zhang about 1 year ago
*Background*
# New requirement for v4.0 OTS
See: OneDrive\赤蓝商贸(上海)有限公司\Shanghai Group - IT\开发相关\OTS V4\开发需求
*Task Details*
# *Order list* : mobile/desktop
# *Permission Policy* :
## order list - row:
- Admin: 没有限制
- Retailer: 只看到自己的order (创建订单时可以选择Retailer,或者默认自己如果是Retailer)
- Agent: 允许看到被分配的retailer的order + 允许看到被分配的product的order
- Operator: 同Agent
## order list - column:
- Admin: 允许看到 SE date, SE Service
- Retailer: 允许看到 SE date, SE Service (if has_se_info == 1)
- Agent: 同Retailer
- Operator: 同Retailer
*Questions:*
# 新的8种订单状态:(Page 20) delivered, arrived in Se-Warehouse, Arrived in SE-Office 这几种订单状态不在这八种之内,在order list如何表示这几种状态(颜色 or 文字)。
*Van*:可以暂时跳过
# 这8种是否应作用于desktop和mobile版,不只是mobile版本。
*Van*:应该是7种, *labelled* (建议 status = false),因为v3没有这个状态。是的,理论上所有平台都适用。
# 子订单折叠时的状态提示:
- 当子订单折叠时,默认显示第一条子订单,并显示对应的背景颜色。我在查看v3的订单数据时,发现存在一个订单的多个子订单的状态不同。
则此时,对于浏览的人员,可能会错过某些子订单的状态,建议当折叠时,做些适当的提示信息(子订单含不同的状态)
# 超时未发货的提示:
- delivery date 小于 今天 --> 当前订单行红色背景提示:mobile是否需要此功能?
# 新order status(labelled),回写时如何体现在V3 order status列:
## 我们目前使用v3的订单数据,当涉及更新时(比如更新状态),这个新状态如何体现在OTS V3订单上.
- 方案1:v3同样添加新状态(labelled), 不推荐这样做,因为需要花费额外的时间去维护V3, 且这个状态在v3没有实际的应用场景
- 方案2(推荐):V4 将labelled暂时不可见(增加开关,当物流模块开发完成,再启用这个labelled)
# ‘特别关注’的订单:
- 当在V4对订单设定了‘特别关注’,是否需要体现到v3上,或者这个功能是mobile独有的功能,无需体现到desktop(v3+v4)版。
- 建议:无需体现到v3, 仅v4(mobile+desktop)支持‘特别关注’功能。 (Extra: 个人感觉,‘’特别关注” 和 ’UGC‘ 都使用’星型‘图标有些重复)
# order detail: 上传产品图片的功能:上传之后的图片是否需要查看,也许我们需要某个位置来管理这些图片。
# order list涉及常规/非常规订单相关的问题等开发产品模块时在做考虑
*v4 coding standard:*
# Git提交
#xxx(redmine number): xxx(redmine title) - xxx(任意:补充内容)
# 代码规范
2.1: 结构:Public -> Protected -> Private
2.2: 其他代码规范同SBX
# 数据层规范(Model)
3.1: 数据库操作只应出现在model或者system中。
3.2: v3/v4的model分为两个文件,比如: order.php, order_v3.php
# 前台代码
twig, js, css (js, css尽量写在单独的css文件中)
# 后台代码
MVCL (L:en,cn)
# 注释
## 类名:
<pre>
/**
* xxx
*
* @copyright RedBlue-OTS 2024
* @version v4
*
*/
</pre>
## 函数名:参数类型 + 返回值类型
<pre>
/**
* xxx
*
* @param xxx $xxx
* @param xxx $xxx
* @return xxx
*/
</pre>
*Output*
* Report and Solution
*Others*