更新若干功能
This commit is contained in:
1 parent
892ba5886d
commit
79d5ae6b66
45 files changed
+6755
-38
No files matched your search
@@ -192,6 +192,9 @@ func Init(_ string) {
|
||||
new(OaSchedule),
|
||||
new(OaHoliday),
|
||||
new(OaNotice),
|
||||
// 工作日报(docs/sql/create_oa_dailyreport.sql)
|
||||
new(OaDailyReport),
|
||||
new(OaDailyReportComment),
|
||||
new(OaDocCategory),
|
||||
new(OaDoc),
|
||||
new(OaDocLink),
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
package models
|
||||
|
||||
import "time"
|
||||
|
||||
// OaDailyReport OA工作日报 yz_backend_oa_daily_report
|
||||
//
|
||||
// 一人一天一条:user_id 存 yz_system_tenant_user.uid(不是 JWT 的 identity_id),
|
||||
// 由 (tid, user_id, report_date, is_deleted) 唯一键保证。
|
||||
// 草稿 status=0,提交后 status=1;删除为软删除。
|
||||
//
|
||||
// IsDeleted 同时承担两个职责:0=未删除;删除时写入记录 ID 作为删除批次标记,
|
||||
// 这样唯一键在「删掉后同一天重新填写」时不会与历史软删记录冲突。
|
||||
type OaDailyReport struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
Tid uint64 `orm:"column(tid)" json:"tid"`
|
||||
UserID uint64 `orm:"column(user_id)" json:"user_id"`
|
||||
UserName string `orm:"column(user_name);size(50);default()" json:"user_name"`
|
||||
OrgID uint64 `orm:"column(org_id);default(0)" json:"org_id"`
|
||||
OrgName string `orm:"column(org_name);size(100);default()" json:"org_name"`
|
||||
ReportDate string `orm:"column(report_date);type(date)" json:"report_date"`
|
||||
TodayDone string `orm:"column(today_done);type(text);null" json:"today_done"`
|
||||
TomorrowPlan string `orm:"column(tomorrow_plan);type(text);null" json:"tomorrow_plan"`
|
||||
Issues string `orm:"column(issues);type(text);null" json:"issues"`
|
||||
// Attachments 附件JSON数组:[{"id":1,"url":"","name":"","size":0}]
|
||||
Attachments string `orm:"column(attachments);type(text);null" json:"attachments"`
|
||||
Status int8 `orm:"column(status);default(1)" json:"status"` // 0草稿 1已提交
|
||||
SubmitTime *time.Time `orm:"column(submit_time);type(datetime);null" json:"submit_time"`
|
||||
IsDeleted uint64 `orm:"column(is_deleted);default(0)" json:"is_deleted"`
|
||||
CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"`
|
||||
UpdateTime *time.Time `orm:"column(update_time);auto_now;type(datetime);null" json:"update_time"`
|
||||
DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"`
|
||||
}
|
||||
|
||||
func (m *OaDailyReport) TableName() string {
|
||||
return "yz_backend_oa_daily_report"
|
||||
}
|
||||
|
||||
// OaDailyReportComment OA工作日报评论 yz_backend_oa_daily_report_comment
|
||||
//
|
||||
// ReplyToID 指向同表评论ID,实现两级回复;0 表示直接评论日报。
|
||||
// 删除为软删除(is_deleted=1)。
|
||||
type OaDailyReportComment struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
Tid uint64 `orm:"column(tid)" json:"tid"`
|
||||
ReportID uint64 `orm:"column(report_id)" json:"report_id"`
|
||||
UserID uint64 `orm:"column(user_id)" json:"user_id"`
|
||||
UserName string `orm:"column(user_name);size(50);default()" json:"user_name"`
|
||||
Content string `orm:"column(content);size(1000)" json:"content"`
|
||||
ReplyToID uint64 `orm:"column(reply_to_id);default(0)" json:"reply_to_id"`
|
||||
ReplyToName string `orm:"column(reply_to_name);size(50);default()" json:"reply_to_name"`
|
||||
IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"`
|
||||
CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"`
|
||||
UpdateTime *time.Time `orm:"column(update_time);auto_now;type(datetime);null" json:"update_time"`
|
||||
DeleteTime *time.Time `orm:"column(delete_time);type(datetime);null" json:"delete_time"`
|
||||
}
|
||||
|
||||
func (m *OaDailyReportComment) TableName() string {
|
||||
return "yz_backend_oa_daily_report_comment"
|
||||
}
|
||||
@@ -26,7 +26,7 @@ type TenantCrmBusiness struct {
|
||||
ContactWechat string `orm:"column(contact_wechat);size(64)" json:"contact_wechat"`
|
||||
ContactQQ string `orm:"column(contact_qq);size(20)" json:"contact_qq"`
|
||||
Address string `orm:"column(address);size(255)" json:"address"`
|
||||
Status int8 `orm:"column(status);default(1)" json:"status"` // 1跟进中/2已转化项目/3已关闭
|
||||
Status int8 `orm:"column(status);default(1)" json:"status"` // 1跟进中/2已转化项目/3已废弃
|
||||
Locked int8 `orm:"column(locked);default(0)" json:"locked"` // 转化项目后锁定
|
||||
ProjectID *uint64 `orm:"column(project_id);null" json:"project_id"` // 转化后的项目ID
|
||||
ConvertTime *time.Time `orm:"column(convert_time);type(datetime);null" json:"convert_time"`
|
||||
|
||||
@@ -30,7 +30,8 @@ type WechatMiniApp struct {
|
||||
ID uint64 `orm:"column(id);pk;auto" json:"id"`
|
||||
Name string `orm:"column(name);size(128);default('')" json:"name"`
|
||||
AppID string `orm:"column(app_id);size(64)" json:"app_id"`
|
||||
AppSecret string `orm:"column(app_secret);size(512)" json:"-"` // 加密存储,不回显
|
||||
AppSecret string `orm:"column(app_secret);size(512)" json:"-"` // 加密存储,不回显
|
||||
QrcodeURL string `orm:"column(qrcode_url);size(512);default('')" json:"qrcode_url"` // 小程序码图片地址,供官网 / H5 等其他端调取
|
||||
Enabled int8 `orm:"column(enabled);default(0)" json:"enabled"`
|
||||
AutoBind int8 `orm:"column(auto_bind);default(1)" json:"auto_bind"` // 1:手机号命中身份后自动绑定
|
||||
Remark string `orm:"column(remark);size(255)" json:"remark"`
|
||||
|
||||
Reference in new issue
Block a user