feat&refactor: 完成多模块功能迭代与配置优化

本次提交覆盖多个业务模块的功能完善与体验优化:
1.  **鉴权与配置调整**:
    - 统一JWT滑动续签逻辑,简化Token存储,移除RefreshToken相关冗余代码
    - 调整多项目配置文件中JWT过期时间为3600秒,统一会话闲置窗口
    - 工位配置放开1~12限制,改为仅校验大于0
2.  **术语统一替换**:全链路将"精密件"替换为"电气件",修正物料管理描述
3.  **功能新增**:
    - 新增工位类型、工艺路线与产线点位台账模块
    - 添加工艺PDF预览面板、工位终端代理转发接口
    - 新增操作日志按操作人列表筛选、工位登出日志记录
    - 新增PLC移料指令与产线点位状态管理
4.  **业务流程优化**:
    - 调整BOM物料删除校验逻辑,优化工单备料计算
    - 补充物料图号、检测单号等追溯字段
    - 完善工艺流程图与工位绑定关系说明
    - 优化前端页面文案与交互细节
5.  **代码规范与维护**:
    - 新增通用工具函数与前端静态资源
    - 整理路由权限与中间件逻辑
    - 修复部分接口与配置的不兼容问题
This commit is contained in:
SunYF
2026-09-10 16:59:15 +08:00
parent 6d8bb75696
commit 0ab21b1234
202 changed files with 21397 additions and 3172 deletions
+80
View File
@@ -108,6 +108,11 @@ func TemplateCode(v string) predicate.Material {
return predicate.Material(sql.FieldEQ(FieldTemplateCode, v))
}
// DrawingNo applies equality check predicate on the "drawing_no" field. It's identical to DrawingNoEQ.
func DrawingNo(v string) predicate.Material {
return predicate.Material(sql.FieldEQ(FieldDrawingNo, v))
}
// IsActive applies equality check predicate on the "is_active" field. It's identical to IsActiveEQ.
func IsActive(v bool) predicate.Material {
return predicate.Material(sql.FieldEQ(FieldIsActive, v))
@@ -728,6 +733,81 @@ func TemplateCodeContainsFold(v string) predicate.Material {
return predicate.Material(sql.FieldContainsFold(FieldTemplateCode, v))
}
// DrawingNoEQ applies the EQ predicate on the "drawing_no" field.
func DrawingNoEQ(v string) predicate.Material {
return predicate.Material(sql.FieldEQ(FieldDrawingNo, v))
}
// DrawingNoNEQ applies the NEQ predicate on the "drawing_no" field.
func DrawingNoNEQ(v string) predicate.Material {
return predicate.Material(sql.FieldNEQ(FieldDrawingNo, v))
}
// DrawingNoIn applies the In predicate on the "drawing_no" field.
func DrawingNoIn(vs ...string) predicate.Material {
return predicate.Material(sql.FieldIn(FieldDrawingNo, vs...))
}
// DrawingNoNotIn applies the NotIn predicate on the "drawing_no" field.
func DrawingNoNotIn(vs ...string) predicate.Material {
return predicate.Material(sql.FieldNotIn(FieldDrawingNo, vs...))
}
// DrawingNoGT applies the GT predicate on the "drawing_no" field.
func DrawingNoGT(v string) predicate.Material {
return predicate.Material(sql.FieldGT(FieldDrawingNo, v))
}
// DrawingNoGTE applies the GTE predicate on the "drawing_no" field.
func DrawingNoGTE(v string) predicate.Material {
return predicate.Material(sql.FieldGTE(FieldDrawingNo, v))
}
// DrawingNoLT applies the LT predicate on the "drawing_no" field.
func DrawingNoLT(v string) predicate.Material {
return predicate.Material(sql.FieldLT(FieldDrawingNo, v))
}
// DrawingNoLTE applies the LTE predicate on the "drawing_no" field.
func DrawingNoLTE(v string) predicate.Material {
return predicate.Material(sql.FieldLTE(FieldDrawingNo, v))
}
// DrawingNoContains applies the Contains predicate on the "drawing_no" field.
func DrawingNoContains(v string) predicate.Material {
return predicate.Material(sql.FieldContains(FieldDrawingNo, v))
}
// DrawingNoHasPrefix applies the HasPrefix predicate on the "drawing_no" field.
func DrawingNoHasPrefix(v string) predicate.Material {
return predicate.Material(sql.FieldHasPrefix(FieldDrawingNo, v))
}
// DrawingNoHasSuffix applies the HasSuffix predicate on the "drawing_no" field.
func DrawingNoHasSuffix(v string) predicate.Material {
return predicate.Material(sql.FieldHasSuffix(FieldDrawingNo, v))
}
// DrawingNoIsNil applies the IsNil predicate on the "drawing_no" field.
func DrawingNoIsNil() predicate.Material {
return predicate.Material(sql.FieldIsNull(FieldDrawingNo))
}
// DrawingNoNotNil applies the NotNil predicate on the "drawing_no" field.
func DrawingNoNotNil() predicate.Material {
return predicate.Material(sql.FieldNotNull(FieldDrawingNo))
}
// DrawingNoEqualFold applies the EqualFold predicate on the "drawing_no" field.
func DrawingNoEqualFold(v string) predicate.Material {
return predicate.Material(sql.FieldEqualFold(FieldDrawingNo, v))
}
// DrawingNoContainsFold applies the ContainsFold predicate on the "drawing_no" field.
func DrawingNoContainsFold(v string) predicate.Material {
return predicate.Material(sql.FieldContainsFold(FieldDrawingNo, v))
}
// IsActiveEQ applies the EQ predicate on the "is_active" field.
func IsActiveEQ(v bool) predicate.Material {
return predicate.Material(sql.FieldEQ(FieldIsActive, v))