chore: 批量完成项目多模块迭代优化

1. 废弃半成品库存表并统一库存主表
2. 修复列表排序与搜索大小写不敏感问题
3. 新增用户最近登录时间、工单BOM名称字段
4. 完善角色管理、工位选择器功能
5. 增加拧紧数据补录、成品自动回流WMS能力
6. 统一导出时间范围校验规则
7. 丰富物料/备料单筛选条件
8. 调整菜单与权限命名适配产品型号业务
This commit is contained in:
SunYF
2026-09-08 11:44:04 +08:00
parent 06689970e2
commit e852c7cd37
96 changed files with 4528 additions and 542 deletions
+15 -1
View File
@@ -31,6 +31,8 @@ type User struct {
WorkstationPassword string `json:"workstationPassword,omitempty"`
// Status holds the value of the "status" field.
Status string `json:"status,omitempty"`
// 最近登录时间(unix秒,后台登录更新;工位终端登录不计)
LastLoginAt *int64 `json:"lastLoginAt,omitempty"`
// CreatedAt holds the value of the "createdAt" field.
CreatedAt time.Time `json:"createdAt,omitempty"`
// UpdatedAt holds the value of the "updatedAt" field.
@@ -45,7 +47,7 @@ func (*User) scanValues(columns []string) ([]any, error) {
switch columns[i] {
case user.FieldCanLoginWorkstation:
values[i] = new(sql.NullBool)
case user.FieldID, user.FieldRoleId:
case user.FieldID, user.FieldRoleId, user.FieldLastLoginAt:
values[i] = new(sql.NullInt64)
case user.FieldUsername, user.FieldPassword, user.FieldName, user.FieldWorkstationPassword, user.FieldStatus:
values[i] = new(sql.NullString)
@@ -114,6 +116,13 @@ func (_m *User) assignValues(columns []string, values []any) error {
} else if value.Valid {
_m.Status = value.String
}
case user.FieldLastLoginAt:
if value, ok := values[i].(*sql.NullInt64); !ok {
return fmt.Errorf("unexpected type %T for field lastLoginAt", values[i])
} else if value.Valid {
_m.LastLoginAt = new(int64)
*_m.LastLoginAt = value.Int64
}
case user.FieldCreatedAt:
if value, ok := values[i].(*sql.NullTime); !ok {
return fmt.Errorf("unexpected type %T for field createdAt", values[i])
@@ -184,6 +193,11 @@ func (_m *User) String() string {
builder.WriteString("status=")
builder.WriteString(_m.Status)
builder.WriteString(", ")
if v := _m.LastLoginAt; v != nil {
builder.WriteString("lastLoginAt=")
builder.WriteString(fmt.Sprintf("%v", *v))
}
builder.WriteString(", ")
builder.WriteString("createdAt=")
builder.WriteString(_m.CreatedAt.Format(time.ANSIC))
builder.WriteString(", ")