正在显示
5 个修改的文件
包含
55 行增加
和
23 行删除
| @@ -7,11 +7,12 @@ import ( | @@ -7,11 +7,12 @@ import ( | ||
| 7 | ) | 7 | ) |
| 8 | 8 | ||
| 9 | type ChanceReviseLog struct { | 9 | type ChanceReviseLog struct { |
| 10 | - Id int64 `orm:"column(id);pk" description:"id 主键"` | ||
| 11 | - ChanceId int64 `orm:"column(chance_id)" description:"机会编号"` | ||
| 12 | - UserCompanyId int64 `orm:"column(user_company_id);null" description:"用户编号 编辑机会的人"` | ||
| 13 | - Data string `orm:"column(data);null" description:"机会数据"` | ||
| 14 | - CreateAt time.Time `orm:"column(create_at);type(timestamp);null" description:"创建时间"` | 10 | + Id int64 `orm:"column(id);pk" description:"id 主键"` |
| 11 | + ChanceId int64 `orm:"column(chance_id)" description:"机会编号"` | ||
| 12 | + UserCompanyId int64 `orm:"column(user_company_id);null" description:"用户编号 编辑机会的人"` | ||
| 13 | + Data string `orm:"column(data);null" description:"机会数据"` | ||
| 14 | + CreateAt time.Time `orm:"column(create_at);type(timestamp);null" description:"创建时间"` | ||
| 15 | + AuditFlowLogId int64 `orm:"column(audit_flow_log_id)" description:"审核流日志表"` | ||
| 15 | } | 16 | } |
| 16 | 17 | ||
| 17 | func (t *ChanceReviseLog) TableName() string { | 18 | func (t *ChanceReviseLog) TableName() string { |
| @@ -59,15 +59,16 @@ func init() { | @@ -59,15 +59,16 @@ func init() { | ||
| 59 | } | 59 | } |
| 60 | 60 | ||
| 61 | var ApproveLog = map[int]string{ | 61 | var ApproveLog = map[int]string{ |
| 62 | - 1: "提交了机会", //提交人提交机会 | ||
| 63 | - 2: "删除了机会", //提交人删除机会 | ||
| 64 | - 3: "退回了机会", //审批人退回机会 | ||
| 65 | - 4: "通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:公司公开", //审批人通过机会(公司公开) | ||
| 66 | - 5: "通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:%v", //审批人通过机会(部门公开) 测试部、销售部 | ||
| 67 | - 6: "系统 自动通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:公司公开", //审批人通过了机会(系统自动通过) | ||
| 68 | - 7: "修改了公开状态:公司公开", //审批通过后修改公开状态(公司公开) | ||
| 69 | - 8: "修改了公开状态:%v", //审批通过后修改公开状态(部门公开) | ||
| 70 | - 9: "修改了基础评分:“修改后的基础评分%v分,修改后的附加评分%v分,修改后的价值评分%v分“", //审批通过后修改评分 | 62 | + 1: "提交了机会", //提交人提交机会 |
| 63 | + 2: "删除了机会", //提交人删除机会 | ||
| 64 | + 3: "退回了机会", //审批人退回机会 | ||
| 65 | + 4: "通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:公司公开", //审批人通过机会(公司公开) | ||
| 66 | + 5: "通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:%v", //审批人通过机会(部门公开) 测试部、销售部 | ||
| 67 | + 6: "系统 自动通过了机会;基础评分:%v分,附加评分:%v分,价值评分:%v分,公开状态:公司公开", //审批人通过了机会(系统自动通过) | ||
| 68 | + 7: "修改了公开状态:公司公开", //审批通过后修改公开状态(公司公开) | ||
| 69 | + 8: "修改了公开状态:%v", //审批通过后修改公开状态(部门公开) | ||
| 70 | + 9: "修改了基础评分:“修改后的基础评分%v分,修改后的附加评分%v分,修改后的价值评分%v分“", //审批通过后修改评分 | ||
| 71 | + 10: "补充了机会信息", //审批通过后补充机会 | ||
| 71 | } | 72 | } |
| 72 | 73 | ||
| 73 | //用户项 | 74 | //用户项 |
| @@ -278,6 +278,12 @@ func logMsgWithHeaer(header *protocol.RequestHeader, msg *models.UserMsg, name s | @@ -278,6 +278,12 @@ func logMsgWithHeaer(header *protocol.RequestHeader, msg *models.UserMsg, name s | ||
| 278 | 278 | ||
| 279 | //保查审核日志 | 279 | //保查审核日志 |
| 280 | func SaveApproveLog(orm orm.Ormer, code int, userId int64, chanceId int64, param ...interface{}) (err error) { | 280 | func SaveApproveLog(orm orm.Ormer, code int, userId int64, chanceId int64, param ...interface{}) (err error) { |
| 281 | + _, err = SaveApproveLogResult(orm, code, userId, chanceId, param...) | ||
| 282 | + return | ||
| 283 | +} | ||
| 284 | + | ||
| 285 | +//保查审核日志 | ||
| 286 | +func SaveApproveLogResult(orm orm.Ormer, code int, userId int64, chanceId int64, param ...interface{}) (id int64, err error) { | ||
| 281 | var ( | 287 | var ( |
| 282 | message string | 288 | message string |
| 283 | ok bool | 289 | ok bool |
| @@ -287,7 +293,7 @@ func SaveApproveLog(orm orm.Ormer, code int, userId int64, chanceId int64, param | @@ -287,7 +293,7 @@ func SaveApproveLog(orm orm.Ormer, code int, userId int64, chanceId int64, param | ||
| 287 | return | 293 | return |
| 288 | } | 294 | } |
| 289 | message = fmt.Sprintf(message, param...) | 295 | message = fmt.Sprintf(message, param...) |
| 290 | - if _, err = orm.Insert(&models.AuditFlowLog{ | 296 | + if id, err = orm.Insert(&models.AuditFlowLog{ |
| 291 | ChanceId: chanceId, | 297 | ChanceId: chanceId, |
| 292 | Content: message, | 298 | Content: message, |
| 293 | ApproveUserId: userId, | 299 | ApproveUserId: userId, |
| @@ -578,7 +578,7 @@ func ChanceUpdate(header *protocol.RequestHeader, request *protocol.ChanceUpdate | @@ -578,7 +578,7 @@ func ChanceUpdate(header *protocol.RequestHeader, request *protocol.ChanceUpdate | ||
| 578 | } | 578 | } |
| 579 | auditConfig = &protocol.AuditConfig{NoApprover: template.NoApprover} | 579 | auditConfig = &protocol.AuditConfig{NoApprover: template.NoApprover} |
| 580 | 580 | ||
| 581 | - CheckChanceDifferent(header, chance, request) | 581 | + go CheckChanceDifferent(header, chance, request) |
| 582 | 582 | ||
| 583 | orm := orm.NewOrm() | 583 | orm := orm.NewOrm() |
| 584 | orm.Begin() | 584 | orm.Begin() |
| @@ -727,6 +727,9 @@ func CheckChanceDifferent(header *protocol.RequestHeader, chance *models.Chance, | @@ -727,6 +727,9 @@ func CheckChanceDifferent(header *protocol.RequestHeader, chance *models.Chance, | ||
| 727 | if header.UserId == chance.UserId { | 727 | if header.UserId == chance.UserId { |
| 728 | return | 728 | return |
| 729 | } | 729 | } |
| 730 | + if chance.ReviewStatus != protocol.ReviewStatusPass { | ||
| 731 | + return | ||
| 732 | + } | ||
| 730 | var modifyLog = protocol.ChanceReviseLog{} | 733 | var modifyLog = protocol.ChanceReviseLog{} |
| 731 | checkIsSaveLog := func() { | 734 | checkIsSaveLog := func() { |
| 732 | if !isSaveLog { | 735 | if !isSaveLog { |
| @@ -799,13 +802,23 @@ func CheckChanceDifferent(header *protocol.RequestHeader, chance *models.Chance, | @@ -799,13 +802,23 @@ func CheckChanceDifferent(header *protocol.RequestHeader, chance *models.Chance, | ||
| 799 | if isSaveLog { | 802 | if isSaveLog { |
| 800 | orm := orm.NewOrm() | 803 | orm := orm.NewOrm() |
| 801 | orm.Begin() | 804 | orm.Begin() |
| 805 | + var logId int64 | ||
| 806 | + //发送日志 | ||
| 807 | + if id, err := agg.SaveApproveLogResult(orm, 10, header.UserId, chance.Id); err != nil { | ||
| 808 | + log.Error(err) | ||
| 809 | + orm.Rollback() | ||
| 810 | + return | ||
| 811 | + } else { | ||
| 812 | + logId = id | ||
| 813 | + } | ||
| 802 | //保存修改详情 | 814 | //保存修改详情 |
| 803 | chanceReviseLog = &models.ChanceReviseLog{ | 815 | chanceReviseLog = &models.ChanceReviseLog{ |
| 804 | - Id: idgen.Next(), | ||
| 805 | - ChanceId: chance.Id, | ||
| 806 | - UserCompanyId: header.UserId, | ||
| 807 | - Data: common.AssertJson(modifyLog), | ||
| 808 | - CreateAt: time.Now(), | 816 | + Id: idgen.Next(), |
| 817 | + ChanceId: chance.Id, | ||
| 818 | + UserCompanyId: header.UserId, | ||
| 819 | + Data: common.AssertJson(modifyLog), | ||
| 820 | + CreateAt: time.Now(), | ||
| 821 | + AuditFlowLogId: logId, | ||
| 809 | } | 822 | } |
| 810 | if _, e := orm.Insert(chanceReviseLog); e != nil { | 823 | if _, e := orm.Insert(chanceReviseLog); e != nil { |
| 811 | log.Error(e) | 824 | log.Error(e) |
| @@ -14,6 +14,10 @@ import ( | @@ -14,6 +14,10 @@ import ( | ||
| 14 | "time" | 14 | "time" |
| 15 | ) | 15 | ) |
| 16 | 16 | ||
| 17 | +const ( | ||
| 18 | + RankGoroutineNum = 1 | ||
| 19 | +) | ||
| 20 | + | ||
| 17 | var ComputeRankScoreFlag int32 | 21 | var ComputeRankScoreFlag int32 |
| 18 | var rankList = initRankList() | 22 | var rankList = initRankList() |
| 19 | 23 | ||
| @@ -44,7 +48,7 @@ type RankOption struct { | @@ -44,7 +48,7 @@ type RankOption struct { | ||
| 44 | type RankResult struct{} | 48 | type RankResult struct{} |
| 45 | 49 | ||
| 46 | //计算排行分 | 50 | //计算排行分 |
| 47 | -func ComputeRankScore() error { | 51 | +func ComputeRankScore() (err error) { |
| 48 | defer func() { | 52 | defer func() { |
| 49 | if p := recover(); p != nil { | 53 | if p := recover(); p != nil { |
| 50 | log.Error(p) | 54 | log.Error(p) |
| @@ -60,7 +64,14 @@ func ComputeRankScore() error { | @@ -60,7 +64,14 @@ func ComputeRankScore() error { | ||
| 60 | atomic.CompareAndSwapInt32(&ComputeRankScoreFlag, 1, 0) | 64 | atomic.CompareAndSwapInt32(&ComputeRankScoreFlag, 1, 0) |
| 61 | }() | 65 | }() |
| 62 | //TODO:启用多个协程执行 | 66 | //TODO:启用多个协程执行 |
| 63 | - return computeRankScore() | 67 | + if err = computeRankScore(); err != nil { |
| 68 | + log.Error(err) | ||
| 69 | + } | ||
| 70 | + | ||
| 71 | + //更新状态 | ||
| 72 | + //结束过期的到期的榜单 | ||
| 73 | + //开始等待的榜单 | ||
| 74 | + return | ||
| 64 | } | 75 | } |
| 65 | func computeRankScore() (err error) { | 76 | func computeRankScore() (err error) { |
| 66 | var ( | 77 | var ( |
-
请 注册 或 登录 后发表评论