Merge branch 'oa' into dev

main
jhc 1 year ago
commit d0c37c9587

@ -4141,7 +4141,7 @@ type OutWorkApply struct {
unknownFields protoimpl.UnknownFields
UUID string `protobuf:"bytes,1,opt,name=UUID,proto3" json:"UUID,omitempty"`
StaffUID string `protobuf:"bytes,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffUID uint64 `protobuf:"varint,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffNum string `protobuf:"bytes,3,opt,name=StaffNum,json=staffNum,proto3" json:"StaffNum,omitempty"`
StaffName string `protobuf:"bytes,4,opt,name=StaffName,json=staffName,proto3" json:"StaffName,omitempty"`
DepartmentUID string `protobuf:"bytes,5,opt,name=DepartmentUID,json=departmentUID,proto3" json:"DepartmentUID,omitempty"`
@ -4197,11 +4197,11 @@ func (x *OutWorkApply) GetUUID() string {
return ""
}
func (x *OutWorkApply) GetStaffUID() string {
func (x *OutWorkApply) GetStaffUID() uint64 {
if x != nil {
return x.StaffUID
}
return ""
return 0
}
func (x *OutWorkApply) GetStaffNum() string {
@ -4308,7 +4308,7 @@ type MakeUpApply struct {
unknownFields protoimpl.UnknownFields
UUID string `protobuf:"bytes,1,opt,name=UUID,proto3" json:"UUID,omitempty"`
StaffUID string `protobuf:"bytes,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffUID uint64 `protobuf:"varint,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffNum string `protobuf:"bytes,3,opt,name=StaffNum,json=staffNum,proto3" json:"StaffNum,omitempty"`
StaffName string `protobuf:"bytes,4,opt,name=StaffName,json=staffName,proto3" json:"StaffName,omitempty"`
DepartmentUID string `protobuf:"bytes,5,opt,name=DepartmentUID,json=departmentUID,proto3" json:"DepartmentUID,omitempty"`
@ -4361,11 +4361,11 @@ func (x *MakeUpApply) GetUUID() string {
return ""
}
func (x *MakeUpApply) GetStaffUID() string {
func (x *MakeUpApply) GetStaffUID() uint64 {
if x != nil {
return x.StaffUID
}
return ""
return 0
}
func (x *MakeUpApply) GetStaffNum() string {
@ -4451,7 +4451,7 @@ type TurnoverApply struct {
unknownFields protoimpl.UnknownFields
UUID string `protobuf:"bytes,1,opt,name=UUID,proto3" json:"UUID,omitempty"`
StaffUID string `protobuf:"bytes,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffUID uint64 `protobuf:"varint,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffNum string `protobuf:"bytes,3,opt,name=StaffNum,json=staffNum,proto3" json:"StaffNum,omitempty"`
StaffName string `protobuf:"bytes,4,opt,name=StaffName,json=staffName,proto3" json:"StaffName,omitempty"`
DepartmentUID string `protobuf:"bytes,5,opt,name=DepartmentUID,json=departmentUID,proto3" json:"DepartmentUID,omitempty"`
@ -4459,7 +4459,7 @@ type TurnoverApply struct {
ActionTime string `protobuf:"bytes,7,opt,name=ActionTime,json=actionTime,proto3" json:"ActionTime,omitempty"`
ApprovalID string `protobuf:"bytes,8,opt,name=ApprovalID,json=approvalID,proto3" json:"ApprovalID,omitempty"`
Status int32 `protobuf:"varint,9,opt,name=Status,json=status,proto3" json:"Status,omitempty"`
HandoverUID string `protobuf:"bytes,10,opt,name=HandoverUID,json=handoverUID,proto3" json:"HandoverUID,omitempty"`
HandoverUID uint64 `protobuf:"varint,10,opt,name=HandoverUID,json=handoverUID,proto3" json:"HandoverUID,omitempty"`
HandoverName string `protobuf:"bytes,11,opt,name=HandoverName,json=handoverName,proto3" json:"HandoverName,omitempty"`
ApplyTimes []*ApplyTime `protobuf:"bytes,12,rep,name=ApplyTimes,json=applyTimes,proto3" json:"ApplyTimes,omitempty"`
Reason string `protobuf:"bytes,13,opt,name=Reason,json=reason,proto3" json:"Reason,omitempty"`
@ -4506,11 +4506,11 @@ func (x *TurnoverApply) GetUUID() string {
return ""
}
func (x *TurnoverApply) GetStaffUID() string {
func (x *TurnoverApply) GetStaffUID() uint64 {
if x != nil {
return x.StaffUID
}
return ""
return 0
}
func (x *TurnoverApply) GetStaffNum() string {
@ -4562,11 +4562,11 @@ func (x *TurnoverApply) GetStatus() int32 {
return 0
}
func (x *TurnoverApply) GetHandoverUID() string {
func (x *TurnoverApply) GetHandoverUID() uint64 {
if x != nil {
return x.HandoverUID
}
return ""
return 0
}
func (x *TurnoverApply) GetHandoverName() string {
@ -4610,7 +4610,7 @@ type OverTimeApply struct {
unknownFields protoimpl.UnknownFields
UUID string `protobuf:"bytes,1,opt,name=UUID,proto3" json:"UUID,omitempty"`
StaffUID string `protobuf:"bytes,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffUID uint64 `protobuf:"varint,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffNum string `protobuf:"bytes,3,opt,name=StaffNum,json=staffNum,proto3" json:"StaffNum,omitempty"`
StaffName string `protobuf:"bytes,4,opt,name=StaffName,json=staffName,proto3" json:"StaffName,omitempty"`
DepartmentUID string `protobuf:"bytes,5,opt,name=DepartmentUID,json=departmentUID,proto3" json:"DepartmentUID,omitempty"`
@ -4664,11 +4664,11 @@ func (x *OverTimeApply) GetUUID() string {
return ""
}
func (x *OverTimeApply) GetStaffUID() string {
func (x *OverTimeApply) GetStaffUID() uint64 {
if x != nil {
return x.StaffUID
}
return ""
return 0
}
func (x *OverTimeApply) GetStaffNum() string {
@ -4761,7 +4761,7 @@ type Leave struct {
unknownFields protoimpl.UnknownFields
UUID string `protobuf:"bytes,1,opt,name=UUID,proto3" json:"UUID,omitempty"`
StaffUID string `protobuf:"bytes,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffUID uint64 `protobuf:"varint,2,opt,name=StaffUID,json=staffUID,proto3" json:"StaffUID,omitempty"`
StaffNum string `protobuf:"bytes,3,opt,name=StaffNum,json=staffNum,proto3" json:"StaffNum,omitempty"`
StaffName string `protobuf:"bytes,4,opt,name=StaffName,json=staffName,proto3" json:"StaffName,omitempty"`
DepartmentUID string `protobuf:"bytes,5,opt,name=DepartmentUID,json=departmentUID,proto3" json:"DepartmentUID,omitempty"`
@ -4816,11 +4816,11 @@ func (x *Leave) GetUUID() string {
return ""
}
func (x *Leave) GetStaffUID() string {
func (x *Leave) GetStaffUID() uint64 {
if x != nil {
return x.StaffUID
}
return ""
return 0
}
func (x *Leave) GetStaffNum() string {
@ -6046,7 +6046,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x75, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x55,
0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12,
0x1a, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53,
0x04, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53,
0x74, 0x61, 0x66, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73,
0x74, 0x61, 0x66, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x66, 0x66,
0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x66,
@ -6080,7 +6080,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x22, 0xd0, 0x03, 0x0a, 0x0b, 0x4d, 0x61, 0x6b, 0x65, 0x55,
0x70, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x4e,
0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x4e,
0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x66, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x18,
@ -6110,7 +6110,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x72, 0x6e, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x55,
0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12,
0x1a, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53,
0x04, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53,
0x74, 0x61, 0x66, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73,
0x74, 0x61, 0x66, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x66, 0x66,
0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x66,
@ -6125,7 +6125,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61,
0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
0x73, 0x12, 0x20, 0x0a, 0x0b, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x49, 0x44,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x76, 0x65, 0x72,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x76, 0x65, 0x72,
0x55, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x76, 0x65, 0x72, 0x4e,
0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x61, 0x6e, 0x64, 0x6f,
0x76, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x41, 0x70, 0x70, 0x6c, 0x79,
@ -6143,7 +6143,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x73, 0x65, 0x72, 0x73, 0x22, 0xe8, 0x03, 0x0a, 0x0d, 0x4f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d,
0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x74,
0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x4e,
0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x4e,
0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x66, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x18,
@ -6173,7 +6173,7 @@ var file_api_approval_approval_proto_rawDesc = []byte{
0x52, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x73, 0x22,
0xf4, 0x03, 0x0a, 0x05, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x55, 0x49,
0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a,
0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
0x08, 0x53, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x55, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x74, 0x61,
0x66, 0x66, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x61,
0x66, 0x66, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x66, 0x66, 0x4e, 0x61,

@ -468,7 +468,7 @@ message LeaveApply {
message OutWorkApply {
string UUID = 1 [json_name = "UUID"];
string StaffUID = 2 [json_name = "staffUID"];
uint64 StaffUID = 2 [json_name = "staffUID"];
string StaffNum = 3 [json_name = "staffNum"];
string StaffName = 4 [json_name = "staffName"];
string DepartmentUID = 5 [json_name = "departmentUID"];
@ -487,7 +487,7 @@ message OutWorkApply {
message MakeUpApply {
string UUID = 1 [json_name = "UUID"];
string StaffUID = 2 [json_name = "staffUID"];
uint64 StaffUID = 2 [json_name = "staffUID"];
string StaffNum = 3 [json_name = "staffNum"];
string StaffName = 4 [json_name = "staffName"];
string DepartmentUID = 5 [json_name = "departmentUID"];
@ -503,7 +503,7 @@ message MakeUpApply {
message TurnoverApply {
string UUID = 1 [json_name = "UUID"];
string StaffUID = 2 [json_name = "staffUID"];
uint64 StaffUID = 2 [json_name = "staffUID"];
string StaffNum = 3 [json_name = "staffNum"];
string StaffName = 4 [json_name = "staffName"];
string DepartmentUID = 5 [json_name = "departmentUID"];
@ -511,7 +511,7 @@ message TurnoverApply {
string ActionTime = 7 [json_name = "actionTime"];
string ApprovalID = 8 [json_name = "approvalID"];
int32 Status = 9 [json_name = "status"];
string HandoverUID = 10 [json_name = "handoverUID"];
uint64 HandoverUID = 10 [json_name = "handoverUID"];
string HandoverName = 11 [json_name = "handoverName"];
repeated ApplyTime ApplyTimes = 12 [json_name = "applyTimes"];
string Reason = 13 [json_name = "reason"];
@ -521,7 +521,7 @@ message TurnoverApply {
message OverTimeApply {
string UUID = 1 [json_name = "UUID"];
string StaffUID = 2 [json_name = "staffUID"];
uint64 StaffUID = 2 [json_name = "staffUID"];
string StaffNum = 3 [json_name = "staffNum"];
string StaffName = 4 [json_name = "staffName"];
string DepartmentUID = 5 [json_name = "departmentUID"];
@ -538,7 +538,7 @@ message OverTimeApply {
message Leave {
string UUID = 1 [json_name = "UUID"];
string StaffUID = 2 [json_name = "staffUID"];
uint64 StaffUID = 2 [json_name = "staffUID"];
string StaffNum = 3 [json_name = "staffNum"];
string StaffName = 4 [json_name = "staffName"];
string DepartmentUID = 5 [json_name = "departmentUID"];

@ -77,6 +77,8 @@ const (
TypeOa = "oa" // oa 父类
TypeMakeUp = "makeUp"
TypeFinancialForm = "financialFormApply"
)
const (
@ -208,6 +210,26 @@ func ExistLeaveApplyApproval(in *approval.CreateRequest) bool {
return false
}
func CheckMakeUpApplyApproval(in *approval.CreateRequest) bool {
var count int64
// 校验 规则
// 一年一次 多次 一次
subQuery1 := DB.Model(&Approval{}).Where(&Approval{SubmitterID: in.SubmitterID, Type: in.Type}).
Where("status in (?)", []uint64{StatusDoing, StatusOk})
subQuery1.Where(" `type` = ? ", in.Type)
subQuery1.Select("id")
DB.Model(&ApprovalOA{}).Where("approval_id in (?)", subQuery1).Count(&count)
if count >= 2 {
return true
}
return false
}
func StoreApproval(in *approval.CreateRequest) (*Approval, error) {
var entity *Approval

@ -31,7 +31,7 @@ type ApprovalOA struct {
// 假期额度申请
type LeaveApply struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
@ -61,7 +61,7 @@ func (la LeaveApply) Value() (driver.Value, error) {
// 外勤申请
type OutWorkApply struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
@ -93,7 +93,7 @@ func (owa OutWorkApply) Value() (driver.Value, error) {
// 补卡申请
type MakeUpApply struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
@ -122,14 +122,14 @@ func (mua MakeUpApply) Value() (driver.Value, error) {
// 离职申请
type TurnoverApply struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
ApplyType string `json:"applyType" gorm:"column:apply_type;type:varchar(255);comment:审批|请假类型"`
ActionTime string `json:"actionTime" gorm:"column:action_time;type:varchar(255);comment:操作|申请时间"`
Reason string `json:"reason" gorm:"column:reason;type:varchar(255);comment:理由"`
HandoverUID string `json:"handoverUID" gorm:"column:handover_uid;type:varchar(255);comment:交接人"`
HandoverUID uint64 `json:"handoverUID" gorm:"column:handover_uid;type:int;comment:交接人"`
HandoverName string `json:"handoverName" gorm:"column:handover_name;type:varchar(255);comment:交接人姓名"`
ApplyTimes ApplyTimes `json:"applyTimes" gorm:"column:apply_times;type:json;comment:时间"`
ApprovalID string `json:"approvalID" gorm:"column:approval_id;type:varchar(255);comment:审批系统中的approvalID"`
@ -153,7 +153,7 @@ func (ta TurnoverApply) Value() (driver.Value, error) {
// 加班申请
type OverTimeApply struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
@ -183,7 +183,7 @@ func (ota OverTimeApply) Value() (driver.Value, error) {
// 请假
type Leave struct {
UUID string `json:"UUID" gorm:"column:uuid,type:varchar(255),primaryKey"`
StaffUID string `json:"staffUID" gorm:"column:staff_uid;type:varchar(255);comment:员工UID"` // 员工UID
StaffUID uint64 `json:"staffUID" gorm:"column:staff_uid;type:int;comment:员工UID"` // 员工UID
StaffNum string `json:"staffNum" gorm:"column:staff_num;type:varchar(255);comment:员工编号"` // 员工编号
StaffName string `json:"staffName" gorm:"column:staff_name;type:varchar(255);comment:员工姓名"` // 员工姓名
DepartmentUID string `json:"departmentUID" gorm:"column:department_uid;type:text;comment:部门UID"` // 部门UID
@ -353,6 +353,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
}
approvalOA.Leave.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.Leave.Status = int32(a.Status)
approvalOA.Leave.StaffUID = a.SubmitterID
approvalOA.Leave.StaffName = a.SubmitterName
case "makeUp":
copier.CopyWithOption(&approvalOA.MakeUp.ApprovalUsers, a.ApprovalUsers, copier.Option{DeepCopy: true})
@ -361,6 +363,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
approvalOA.MakeUp.ApplyType = a.Type
approvalOA.MakeUp.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.MakeUp.Status = int32(a.Status)
approvalOA.MakeUp.StaffUID = a.SubmitterID
approvalOA.MakeUp.StaffName = a.SubmitterName
case "overTime":
copier.CopyWithOption(&approvalOA.OverTime.ApprovalUsers, a.ApprovalUsers, copier.Option{DeepCopy: true})
@ -369,6 +373,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
approvalOA.OverTime.ApplyType = a.Type
approvalOA.OverTime.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.OverTime.Status = int32(a.Status)
approvalOA.OverTime.StaffUID = a.SubmitterID
approvalOA.OverTime.StaffName = a.SubmitterName
case "outWork":
copier.CopyWithOption(&approvalOA.OutWork.ApprovalUsers, a.ApprovalUsers, copier.Option{DeepCopy: true})
@ -377,6 +383,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
approvalOA.OutWork.ApplyType = a.Type
approvalOA.OutWork.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.OutWork.Status = int32(a.Status)
approvalOA.OutWork.StaffUID = a.SubmitterID
approvalOA.OutWork.StaffName = a.SubmitterName
case "turnover":
copier.CopyWithOption(&approvalOA.Turnover.ApprovalUsers, a.ApprovalUsers, copier.Option{DeepCopy: true})
@ -385,6 +393,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
approvalOA.Turnover.ApplyType = a.Type
approvalOA.Turnover.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.Turnover.Status = int32(a.Status)
approvalOA.Turnover.StaffUID = a.SubmitterID
approvalOA.Turnover.StaffName = a.SubmitterName
case "leaveApply":
copier.CopyWithOption(&approvalOA.LeaveApply.ApprovalUsers, a.ApprovalUsers, copier.Option{DeepCopy: true})
@ -393,6 +403,8 @@ func addOtherInfoToModel(a *Approval, approvalOA *ApprovalOA) error {
approvalOA.LeaveApply.ApplyType = a.Type
approvalOA.LeaveApply.ApprovalID = strconv.FormatUint(a.ID, 10)
approvalOA.LeaveApply.Status = int32(a.Status)
approvalOA.LeaveApply.StaffUID = a.SubmitterID
approvalOA.LeaveApply.StaffName = a.SubmitterName
default:
return errors.New("未找到相关审批类型")

@ -36,6 +36,12 @@ func (a *ApprovalProvider) Create(ctx context.Context, in *approval.CreateReques
}
}
if in.Type == model.TypeMakeUp {
if model.CheckMakeUpApplyApproval(in) == true {
return response, errors.New(m.ErrorOnce)
}
}
entity, err := model.StoreApproval(in)
if err != nil {
return response, err

Loading…
Cancel
Save