|
|
|
@ -2,7 +2,6 @@ package model
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"errors"
|
|
|
|
|
"fmt"
|
|
|
|
|
"github.com/fonchain_enterprise/fonchain-approval/api/approval"
|
|
|
|
|
"github.com/fonchain_enterprise/fonchain-approval/pkg/common/page"
|
|
|
|
|
msg "github.com/fonchain_enterprise/fonchain-approval/pkg/m"
|
|
|
|
@ -101,7 +100,7 @@ func StoreApproval(in *approval.CreateRequest) (*Approval, error) {
|
|
|
|
|
|
|
|
|
|
setting, terr := GetApprovalSettingFromKeyWord(in.Domain, in.Type)
|
|
|
|
|
if terr != nil {
|
|
|
|
|
return terr
|
|
|
|
|
return errors.New("抄送人没有配置")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 保存基本信息
|
|
|
|
@ -356,9 +355,19 @@ func MyWorkApprovals(in *approval.ListRequest) ([]*Approval, int64) {
|
|
|
|
|
modelObj = modelObj.Where(&Approval{Type: in.Type})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 审批展示(抄送在此不表)
|
|
|
|
|
/ \
|
|
|
|
|
进行中 通过或者拒绝
|
|
|
|
|
/ \
|
|
|
|
|
当前是我审批 我参与审批的
|
|
|
|
|
*/
|
|
|
|
|
if in.UserID != 0 {
|
|
|
|
|
modelObj = modelObj.Where(DB.Where("JSON_CONTAINS(approval_users,JSON_OBJECT('ID', ?))", in.UserID).
|
|
|
|
|
Or(DB.Where("JSON_CONTAINS(copy_users,JSON_OBJECT('ID', ?))", in.UserID)).Where("status != ?", StatusDoing))
|
|
|
|
|
modelObj = modelObj.Where(
|
|
|
|
|
DB.Where("JSON_CONTAINS(approval_users,JSON_OBJECT('ID', ?))", in.UserID).
|
|
|
|
|
Where("status != ?", StatusDoing). //完成,我参与审批
|
|
|
|
|
Or(DB.Where("now_user_id", in.UserID).Where("status = ?", StatusDoing)). //进行中,当前审批人是我,
|
|
|
|
|
Or(DB.Where("JSON_CONTAINS(copy_users,JSON_OBJECT('ID', ?))", in.UserID).Where("status = ?", StatusOk))) //抄送人(完成抄送)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if in.Status != 0 {
|
|
|
|
@ -442,7 +451,6 @@ func (m *Approval) operateStatus(status uint8, reply string, workFlowId uint64)
|
|
|
|
|
} else {
|
|
|
|
|
m.NowLevel = workFlow.Level + 1
|
|
|
|
|
nextFlow, err := GetWorkFlowByLevel(m.ID, m.NowLevel)
|
|
|
|
|
fmt.Println(nextFlow)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|