@ -1,6 +1,7 @@
package personnelapi
import (
"fmt"
"hr_server/models"
"hr_server/overall"
"hr_server/overall/overallhandle"
@ -447,3 +448,711 @@ func (s *StaffApi) EidtDoubleWorkerState(c *gin.Context) {
}
}
}
//添加紧急联系人
func ( s * StaffApi ) AddEmercyCall ( c * gin . Context ) {
var requestData addEmergencyContact
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" || len ( requestData . List ) <= 0 {
overallhandle . Result ( 101 , requestData , c )
return
}
keyInt , keyErr := strconv . ParseInt ( requestData . Id , 10 , 64 )
if keyErr != nil {
overallhandle . Result ( 100 , keyErr , c )
return
}
var manCont models . PersonArchives
manErr := manCont . GetCont ( map [ string ] interface { } { "`key`" : keyInt } , "`number`" )
if manErr != nil {
overallhandle . Result ( 107 , manErr , c )
return
}
var emerContList [ ] models . EmergencyContact
isWrite := 1
for _ , v := range requestData . List {
if v . Name != "" && v . Mobilephone != "" {
var emerContCont models . EmergencyContact
emerContCont . Number = manCont . Number //员工工号;index"`
emerContCont . Name = v . Name //紧急联系人姓名"`
emerContCont . Relationship = v . Relationship //与紧急联系人关系"`
emerContCont . Tel = v . Mobilephone //紧急联系人电话"`
emerContCont . Time = time . Now ( ) . Unix ( ) //创建时间"`
emerContCont . State = 1 //状态(1:启用;2:禁用;3:删除)"`
emerContCont . Key = keyInt //
emerContList = append ( emerContList , emerContCont )
} else {
isWrite = 2
}
}
if isWrite != 1 {
overallhandle . Result ( 100 , requestData . List , c )
return
}
if len ( emerContList ) <= 0 {
overallhandle . Result ( 1 , emerContList , c , "没有要添加的数据!" )
return
}
addErr := overall . CONSTANT_DB_HR . Create ( & emerContList ) . Error
if addErr != nil {
overallhandle . Result ( 104 , requestData . List , c )
} else {
overallhandle . Result ( 0 , addErr , c )
}
}
//编辑紧急联系人
func ( s * StaffApi ) EditEmercyCall ( c * gin . Context ) {
var requestData emergencyContact
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData , c )
return
}
var enerCont models . EmergencyContact
err := enerCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } , "`id`" , "`name`" , "`relationship`" , "`tel`" )
if err != nil {
overallhandle . Result ( 105 , err , c )
return
}
saveData := overallhandle . MapOut ( )
if requestData . Name != "" && requestData . Name != enerCont . Name {
saveData [ "name" ] = requestData . Name
}
if requestData . Relationship != "" && requestData . Relationship != enerCont . Relationship {
saveData [ "relationship" ] = requestData . Relationship
}
if requestData . Mobilephone != "" && requestData . Mobilephone != enerCont . Tel {
saveData [ "tel" ] = requestData . Mobilephone
}
if len ( saveData ) > 0 {
saveData [ "time" ] = time . Now ( ) . Unix ( )
eidtErr := enerCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr != nil {
overallhandle . Result ( 106 , eidtErr , c )
} else {
overallhandle . Result ( 0 , eidtErr , c )
}
} else {
overallhandle . Result ( 0 , saveData , c )
}
}
//编辑紧急联系人
func ( s * StaffApi ) EditEmercyCallState ( c * gin . Context ) {
var requestData eidtWorkState
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData . Id , c )
return
}
var doubleWorkCont models . EmergencyContact
wErr := doubleWorkCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if wErr != nil {
overallhandle . Result ( 107 , requestData . Id , c )
return
}
if requestData . State == 0 {
requestData . State = 1
}
if requestData . IsDel <= 1 {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . EmergencyContact
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
} else {
if requestData . State == 3 {
delErr := overall . CONSTANT_DB_HR . Where ( map [ string ] interface { } { "`id`" : requestData . Id } ) . Delete ( & models . EmergencyContact { } ) . Error
if delErr == nil {
overallhandle . Result ( 0 , delErr , c )
} else {
overallhandle . Result ( 108 , delErr , c )
}
} else {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . EmergencyContact
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
}
}
}
//添加家庭成员
func ( s * StaffApi ) AddFamilyMembers ( c * gin . Context ) {
var requestData addFamilyPeople
err := c . ShouldBindJSON ( & requestData )
if err != nil {
overallhandle . Result ( 101 , err , c )
return
}
if requestData . Id == "" || len ( requestData . List ) <= 0 {
overallhandle . Result ( 101 , requestData , c )
return
}
keyInt , keyErr := strconv . ParseInt ( requestData . Id , 10 , 64 )
if keyErr != nil {
overallhandle . Result ( 100 , keyErr , c )
return
}
var manCont models . PersonArchives
manErr := manCont . GetCont ( map [ string ] interface { } { "`key`" : keyInt } , "`number`" )
if manErr != nil {
overallhandle . Result ( 107 , manErr , c )
return
}
var emerContList [ ] models . FamilyMembers
isWrite := 1
for _ , v := range requestData . List {
if v . Name != "" && v . Mobilephone != "" {
var emerContCont models . FamilyMembers
emerContCont . Number = manCont . Number
emerContCont . Relationship = v . Relationship //与家属关系"`
emerContCont . Name = v . Name //家属姓名"`
emerContCont . Company = v . Company
emerContCont . Deparment = v . Department
emerContCont . Postnme = v . Position
emerContCont . Tel = v . Mobilephone //家属电话"`
poloutlook := v . PoliticalOutlook
if poloutlook == 0 {
poloutlook = 1
}
emerContCont . PoliticalOutlook = poloutlook
emerContCont . Time = time . Now ( ) . Unix ( ) //创建时间"`
emerContCont . State = 1 //状态(1:启用;2:禁用;3:删除)"`
emerContCont . Key = keyInt //
emerContList = append ( emerContList , emerContCont )
} else {
isWrite = 2
}
}
if isWrite != 1 {
overallhandle . Result ( 100 , requestData . List , c )
return
}
if len ( emerContList ) <= 0 {
overallhandle . Result ( 1 , emerContList , c , "没有要添加的数据!" )
return
}
addErr := overall . CONSTANT_DB_HR . Create ( & emerContList ) . Error
if addErr != nil {
overallhandle . Result ( 104 , requestData . List , c )
} else {
overallhandle . Result ( 0 , addErr , c )
}
}
//编辑家属信息
func ( s * StaffApi ) EditFamilyMembers ( c * gin . Context ) {
var requestData memberOfFamily
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData , c )
return
}
var enerCont models . FamilyMembers
err := enerCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if err != nil {
overallhandle . Result ( 105 , err , c )
return
}
saveData := overallhandle . MapOut ( )
if requestData . Name != "" && requestData . Name != enerCont . Name {
saveData [ "name" ] = requestData . Name
}
if requestData . Relationship != "" && requestData . Relationship != enerCont . Relationship {
saveData [ "relation" ] = requestData . Relationship
}
if requestData . Mobilephone != "" && requestData . Mobilephone != enerCont . Tel {
saveData [ "tel" ] = requestData . Mobilephone
}
if requestData . Company != "" && requestData . Company != enerCont . Company {
saveData [ "company" ] = requestData . Company
}
if requestData . Department != "" && requestData . Department != enerCont . Deparment {
saveData [ "deparment" ] = requestData . Department
}
if requestData . Position != "" && requestData . Position != enerCont . Postnme {
saveData [ "postnme" ] = requestData . Position
}
if requestData . PoliticalOutlook != 0 && requestData . PoliticalOutlook != enerCont . PoliticalOutlook {
saveData [ "political_outlook" ] = requestData . PoliticalOutlook
}
if len ( saveData ) > 0 {
saveData [ "time" ] = time . Now ( ) . Unix ( )
eidtErr := enerCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr != nil {
overallhandle . Result ( 106 , eidtErr , c )
} else {
overallhandle . Result ( 0 , eidtErr , c )
}
} else {
overallhandle . Result ( 0 , saveData , c )
}
}
//编辑家属状态
func ( s * StaffApi ) EditFamilyMembersSatte ( c * gin . Context ) {
var requestData eidtWorkState
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData . Id , c )
return
}
var doubleWorkCont models . FamilyMembers
wErr := doubleWorkCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if wErr != nil {
overallhandle . Result ( 107 , requestData . Id , c )
return
}
if requestData . State == 0 {
requestData . State = 1
}
if requestData . IsDel <= 1 {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . FamilyMembers
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
} else {
if requestData . State == 3 {
delErr := overall . CONSTANT_DB_HR . Where ( map [ string ] interface { } { "`id`" : requestData . Id } ) . Delete ( & models . FamilyMembers { } ) . Error
if delErr == nil {
overallhandle . Result ( 0 , delErr , c )
} else {
overallhandle . Result ( 108 , delErr , c )
}
} else {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . FamilyMembers
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
}
}
}
//添加教育经历
func ( s * StaffApi ) AddEducationalExperience ( c * gin . Context ) {
var requestData addExpToSchool
c . ShouldBindJSON ( & requestData )
// err := c.ShouldBindJSON(&requestData)
// if err != nil {
// overallhandle.Result(101, err, c)
// return
// }
if requestData . Id == "" || len ( requestData . List ) <= 0 {
overallhandle . Result ( 101 , requestData , c )
return
}
keyInt , keyErr := strconv . ParseInt ( requestData . Id , 10 , 64 )
if keyErr != nil {
overallhandle . Result ( 100 , keyErr , c )
return
}
var manCont models . PersonArchives
manErr := manCont . GetCont ( map [ string ] interface { } { "`key`" : keyInt } , "`number`" )
if manErr != nil {
overallhandle . Result ( 107 , manErr , c )
return
}
var emerContList [ ] models . PersonnelEducation
isWrite := 1
for _ , v := range requestData . List {
if v . GraduationSchool != "" && v . Subject != "" {
var emerContCont models . PersonnelEducation
emerContCont . Number = manCont . Number
eduCation := v . Education
if eduCation == 0 {
eduCation = 1
}
emerContCont . Education = eduCation
emerContCont . GraduationSchool = v . GraduationSchool
emerContCont . Subject = v . Subject
entranceTimeFirst := time . Now ( ) . Unix ( )
if v . AdmissionTime != "" {
entranceTimeFirst , _ = overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , v . AdmissionTime ) )
}
emerContCont . AdmissionTime = entranceTimeFirst // 入学时间"`
graduationTimef := time . Now ( ) . Unix ( )
if v . GraduationTime != "" {
graduationTimef , _ = overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , v . GraduationTime ) )
}
emerContCont . GraduationTime = graduationTimef // 毕业时间"`
emerContCont . Time = time . Now ( ) . Unix ( ) // 写入时间"`
acaLeve , _ := strconv . Atoi ( v . AcademicDegree )
if acaLeve == 0 {
acaLeve = 1
}
emerContCont . AcademicDegree = acaLeve
emerContCont . Time = time . Now ( ) . Unix ( ) //创建时间"`
emerContCont . State = 1 //状态(1:启用;2:禁用;3:删除)"`
emerContCont . Key = keyInt //
switch v . Level {
case "2" :
var editPerCont models . PersonnelEducation
editPerCont . EiteCont ( map [ string ] interface { } { "`key`" : keyInt , "`level`" : 2 } , map [ string ] interface { } { "`level`" : 1 } )
emerContCont . Level = 2
case "3" :
var editPerCont models . PersonnelEducation
editPerCont . EiteCont ( map [ string ] interface { } { "`key`" : keyInt , "`level`" : 3 } , map [ string ] interface { } { "`level`" : 1 } )
emerContCont . Level = 3
default :
emerContCont . Level = 1
}
emerContList = append ( emerContList , emerContCont )
} else {
isWrite = 2
}
}
if isWrite != 1 {
overallhandle . Result ( 100 , requestData . List , c )
return
}
if len ( emerContList ) <= 0 {
overallhandle . Result ( 1 , emerContList , c , "没有要添加的数据!" )
return
}
addErr := overall . CONSTANT_DB_HR . Create ( & emerContList ) . Error
if addErr != nil {
overallhandle . Result ( 104 , requestData . List , c )
} else {
overallhandle . Result ( 0 , addErr , c )
}
}
//编辑教育经历
func ( s * StaffApi ) EditEducationalExperience ( c * gin . Context ) {
var requestData editExpToSchool
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData , c )
return
}
var enerCont models . PersonnelEducation
err := enerCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if err != nil {
overallhandle . Result ( 105 , err , c )
return
}
saveData := overallhandle . MapOut ( )
if requestData . GraduationSchool != "" && requestData . GraduationSchool != enerCont . GraduationSchool {
saveData [ "graduation_school" ] = requestData . GraduationSchool
}
if requestData . Subject != "" && requestData . Subject != enerCont . Subject {
saveData [ "subject" ] = requestData . Subject
}
if requestData . Education != 0 && requestData . Education != enerCont . Education {
saveData [ "education" ] = requestData . Education
}
if requestData . AdmissionTime != "" {
admissionTimeInt , _ := overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , requestData . AdmissionTime ) )
if admissionTimeInt != enerCont . AdmissionTime {
saveData [ "admission_time" ] = admissionTimeInt
}
}
if requestData . GraduationTime != "" {
graduationTimeInt , _ := overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , requestData . GraduationTime ) )
if graduationTimeInt != enerCont . GraduationTime {
saveData [ "graduation_time" ] = graduationTimeInt
}
}
if requestData . AcademicDegree != "" {
acaLeve , _ := strconv . Atoi ( requestData . AcademicDegree )
if acaLeve != enerCont . AcademicDegree {
saveData [ "academic_degree" ] = acaLeve
}
}
if requestData . Level != "" {
levelInt , _ := strconv . Atoi ( requestData . Level )
if levelInt != enerCont . Level {
switch levelInt {
case 2 :
var editPerCont models . PersonnelEducation
editPerCont . EiteCont ( map [ string ] interface { } { "`key`" : enerCont . Key , "`level`" : 2 } , map [ string ] interface { } { "`level`" : 1 } )
saveData [ "academic_degree" ] = 2
case 3 :
var editPerCont models . PersonnelEducation
editPerCont . EiteCont ( map [ string ] interface { } { "`key`" : enerCont . Key , "`level`" : 3 } , map [ string ] interface { } { "`level`" : 1 } )
saveData [ "academic_degree" ] = 3
default :
saveData [ "academic_degree" ] = 1
}
}
}
if len ( saveData ) > 0 {
saveData [ "time" ] = time . Now ( ) . Unix ( )
eidtErr := enerCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr != nil {
overallhandle . Result ( 106 , eidtErr , c )
} else {
overallhandle . Result ( 0 , eidtErr , c )
}
} else {
overallhandle . Result ( 0 , saveData , c )
}
}
//编辑教育经历状态
func ( s * StaffApi ) EditEduExpState ( c * gin . Context ) {
var requestData eidtWorkState
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData . Id , c )
return
}
var doubleWorkCont models . PersonnelEducation
wErr := doubleWorkCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if wErr != nil {
overallhandle . Result ( 107 , requestData . Id , c )
return
}
if requestData . State == 0 {
requestData . State = 1
}
if requestData . IsDel <= 1 {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . PersonnelEducation
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
} else {
if requestData . State == 3 {
delErr := overall . CONSTANT_DB_HR . Where ( map [ string ] interface { } { "`id`" : requestData . Id } ) . Delete ( & models . PersonnelEducation { } ) . Error
if delErr == nil {
overallhandle . Result ( 0 , delErr , c )
} else {
overallhandle . Result ( 108 , delErr , c )
}
} else {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . PersonnelEducation
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
}
}
}
//添加工作履历
func ( s * StaffApi ) AddWorkHistoryCont ( c * gin . Context ) {
var requestData addWorkHistory
c . ShouldBindJSON ( & requestData )
// err := c.ShouldBindJSON(&requestData)
// if err != nil {
// overallhandle.Result(101, err, c)
// return
// }
if requestData . Id == "" || len ( requestData . List ) <= 0 {
overallhandle . Result ( 101 , requestData , c )
return
}
keyInt , keyErr := strconv . ParseInt ( requestData . Id , 10 , 64 )
if keyErr != nil {
overallhandle . Result ( 100 , keyErr , c )
return
}
var manCont models . PersonArchives
manErr := manCont . GetCont ( map [ string ] interface { } { "`key`" : keyInt } , "`number`" )
if manErr != nil {
overallhandle . Result ( 107 , manErr , c )
return
}
var emerContList [ ] models . WorkHistory
isWrite := 1
for _ , v := range requestData . List {
if v . Company != "" && v . Department != "" {
var emerContCont models . WorkHistory
emerContCont . Number = manCont . Number
emerContCont . Key = keyInt
emerContCont . Company = v . Company //公司"`
emerContCont . Deparment = v . Department //部门"`
emerContCont . Job = v . Position //职务"`
joinTime := time . Now ( ) . Unix ( )
if v . EntryTime != "" {
joinTime , _ = overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , v . EntryTime ) )
}
emerContCont . EntryTime = joinTime //入职时间"`
outTime := time . Now ( ) . Unix ( )
if v . LeaveDate != "" {
outTime , _ = overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , v . LeaveDate ) )
}
emerContCont . Leavedate = outTime //离职日期"`
emerContCont . Witness = v . Witness //证明人"`
emerContCont . WitnessTel = v . WitnessTel //证明人电话"`
emerContCont . Remarks = v . Remarks //备注"`
emerContCont . Time = time . Now ( ) . Unix ( ) //创建时间"`
emerContCont . State = 1 //状态(1:启用;2:禁用;3:删除)"`
emerContList = append ( emerContList , emerContCont )
} else {
isWrite = 2
}
}
if isWrite != 1 {
overallhandle . Result ( 100 , requestData . List , c )
return
}
if len ( emerContList ) <= 0 {
overallhandle . Result ( 1 , emerContList , c , "没有要添加的数据!" )
return
}
addErr := overall . CONSTANT_DB_HR . Create ( & emerContList ) . Error
if addErr != nil {
overallhandle . Result ( 104 , requestData . List , c )
} else {
overallhandle . Result ( 0 , addErr , c )
}
}
//编辑工作履历
func ( s * StaffApi ) EditWorkHistoryCont ( c * gin . Context ) {
var requestData editWorkHistory
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData , c )
return
}
var enerCont models . WorkHistory
err := enerCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if err != nil {
overallhandle . Result ( 105 , err , c )
return
}
saveData := overallhandle . MapOut ( )
if requestData . Company != "" && requestData . Company != enerCont . Company {
saveData [ "company" ] = requestData . Company
}
if requestData . Department != "" && requestData . Department != enerCont . Deparment {
saveData [ "deparment" ] = requestData . Department
}
if requestData . Position != "" && requestData . Position != enerCont . Job {
saveData [ "job" ] = requestData . Position
}
if requestData . EntryTime != "" {
EntryTimeInt , _ := overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , requestData . EntryTime ) )
if EntryTimeInt != enerCont . EntryTime {
saveData [ "entry_time" ] = EntryTimeInt
}
}
if requestData . LeaveDate != "" {
LeaveDateInt , _ := overallhandle . DateToTimeStamp ( fmt . Sprintf ( "%v 00:00:00" , requestData . LeaveDate ) )
if LeaveDateInt != enerCont . Leavedate {
saveData [ "leavedate" ] = LeaveDateInt
}
}
if requestData . Witness != "" && requestData . Witness != enerCont . Witness {
saveData [ "witness" ] = requestData . Witness
}
if requestData . WitnessTel != "" && requestData . WitnessTel != enerCont . WitnessTel {
saveData [ "witness_tel" ] = requestData . WitnessTel
}
if requestData . Remarks != "" && requestData . Remarks != enerCont . Remarks {
saveData [ "remarks" ] = requestData . Remarks
}
if len ( saveData ) > 0 {
saveData [ "time" ] = time . Now ( ) . Unix ( )
eidtErr := enerCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr != nil {
overallhandle . Result ( 106 , eidtErr , c )
} else {
overallhandle . Result ( 0 , eidtErr , c )
}
} else {
overallhandle . Result ( 0 , saveData , c )
}
}
//编辑工作履历状态
func ( s * StaffApi ) EditWorkHistoryState ( c * gin . Context ) {
var requestData eidtWorkState
c . ShouldBindJSON ( & requestData )
if requestData . Id == "" {
overallhandle . Result ( 101 , requestData . Id , c )
return
}
var doubleWorkCont models . WorkHistory
wErr := doubleWorkCont . GetCont ( map [ string ] interface { } { "`id`" : requestData . Id } )
if wErr != nil {
overallhandle . Result ( 107 , requestData . Id , c )
return
}
if requestData . State == 0 {
requestData . State = 1
}
if requestData . IsDel <= 1 {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . WorkHistory
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
} else {
if requestData . State == 3 {
delErr := overall . CONSTANT_DB_HR . Where ( map [ string ] interface { } { "`id`" : requestData . Id } ) . Delete ( & models . WorkHistory { } ) . Error
if delErr == nil {
overallhandle . Result ( 0 , delErr , c )
} else {
overallhandle . Result ( 108 , delErr , c )
}
} else {
saveData := overallhandle . MapOut ( )
saveData [ "time" ] = time . Now ( ) . Unix ( )
saveData [ "state" ] = requestData . State
var eidtCont models . WorkHistory
eidtErr := eidtCont . EiteCont ( map [ string ] interface { } { "`id`" : requestData . Id } , saveData )
if eidtErr == nil {
overallhandle . Result ( 0 , saveData , c )
} else {
overallhandle . Result ( 106 , eidtErr , c )
}
}
}
}