|
|
|
|
package personnelapi
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"encoding/json"
|
|
|
|
|
"fmt"
|
|
|
|
|
"hr_server/models"
|
|
|
|
|
"hr_server/overall"
|
|
|
|
|
"hr_server/overall/overallhandle"
|
|
|
|
|
"strconv"
|
|
|
|
|
"strings"
|
|
|
|
|
"time"
|
|
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
*
|
|
|
|
|
@ 作者: 秦东
|
|
|
|
|
@ 时间: 2022-11-30 14:05:01
|
|
|
|
|
@ 功能:编辑人员行政组织关系
|
|
|
|
|
@ 参数
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 返回值
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 方法原型
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
*/
|
|
|
|
|
func (s *StaffApi) EditManOrgCont(c *gin.Context) {
|
|
|
|
|
var requestData EditOrgPeople
|
|
|
|
|
err := c.ShouldBindJSON(&requestData)
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(1, err, c, "数据格式错误!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Id == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "参数错误!请检查后重新提交!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.OrgId <= 0 {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请选择归属行政组织!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Position == 0 {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请选择归属岗位!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.JobId == 0 {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请选择职务!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.TeamId == 0 {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请选择班组!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Ruleid == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请选择排班规则!!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.JobLeve == 0 {
|
|
|
|
|
requestData.JobLeve = 3
|
|
|
|
|
}
|
|
|
|
|
if requestData.PersonInCharge != 1 {
|
|
|
|
|
requestData.PersonInCharge = 2
|
|
|
|
|
}
|
|
|
|
|
// fmt.Printf("%v\n", requestData)
|
|
|
|
|
// return
|
|
|
|
|
wher := map[string]interface{}{"`id`": requestData.Id}
|
|
|
|
|
var myCont models.PersonArchives
|
|
|
|
|
err = myCont.GetCont(wher, "`id`", "`admin_org`", "`position`", "`job_id`", "`job_leve`", "`teamid`")
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(1, err, c, "没有该人员信息!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
saveData := overallhandle.MapOut()
|
|
|
|
|
if requestData.OrgId != myCont.AdminOrg {
|
|
|
|
|
_, companyId, departmentId, sunDepartId, _ := overallhandle.GetOrgStructure(requestData.OrgId)
|
|
|
|
|
if companyId != 0 {
|
|
|
|
|
saveData["company"] = companyId
|
|
|
|
|
}
|
|
|
|
|
if departmentId != 0 {
|
|
|
|
|
saveData["maindeparment"] = departmentId
|
|
|
|
|
}
|
|
|
|
|
if sunDepartId != 0 {
|
|
|
|
|
saveData["sun_main_deparment"] = sunDepartId
|
|
|
|
|
}
|
|
|
|
|
saveData["admin_org"] = requestData.OrgId
|
|
|
|
|
}
|
|
|
|
|
if requestData.Position != myCont.Position {
|
|
|
|
|
saveData["position"] = requestData.Position
|
|
|
|
|
}
|
|
|
|
|
if requestData.JobId != myCont.JobId {
|
|
|
|
|
var jobCont models.DutiesClassLeve
|
|
|
|
|
jobCont.GetCont(map[string]interface{}{"`d_id`": requestData.JobId}, "`c_id`")
|
|
|
|
|
saveData["job_class"] = jobCont.ClassId
|
|
|
|
|
saveData["job_id"] = requestData.JobId
|
|
|
|
|
}
|
|
|
|
|
if requestData.JobLeve != myCont.JobLeve {
|
|
|
|
|
saveData["job_leve"] = requestData.JobLeve
|
|
|
|
|
}
|
|
|
|
|
if requestData.TeamId != myCont.TeamId {
|
|
|
|
|
saveData["teamid"] = requestData.TeamId
|
|
|
|
|
}
|
|
|
|
|
ruleidStr := strconv.FormatInt(myCont.Ruleid, 10)
|
|
|
|
|
if requestData.Ruleid != ruleidStr {
|
|
|
|
|
saveData["ruleid"] = requestData.Ruleid
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if requestData.PersonInCharge != myCont.PersonInCharge {
|
|
|
|
|
saveData["person_in_charge"] = requestData.PersonInCharge
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if requestData.PersonInCharge == 1 {
|
|
|
|
|
if len(requestData.OrgresList) > 0 {
|
|
|
|
|
jsonCont, jsonErr := json.Marshal(requestData.OrgresList)
|
|
|
|
|
if jsonErr == nil {
|
|
|
|
|
saveData["responsible_department_json"] = string(jsonCont)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
saveData["responsible_department_json"] = ""
|
|
|
|
|
}
|
|
|
|
|
if requestData.PersonInCharge == 1 {
|
|
|
|
|
// if len(requestData.Resallorg) > 0 {
|
|
|
|
|
// var orgResList []string
|
|
|
|
|
// for i := 0; i < len(requestData.Resallorg); i++ {
|
|
|
|
|
// resAllOrgIdStr := strconv.Itoa(requestData.Resallorg[i])
|
|
|
|
|
// if overallhandle.IsInTrue[string](resAllOrgIdStr, orgResList) == false {
|
|
|
|
|
// orgResList = append(orgResList, resAllOrgIdStr)
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// orgResListStr := strings.Join(orgResList, ",")
|
|
|
|
|
// saveData["responsible_department"] = orgResListStr
|
|
|
|
|
// }
|
|
|
|
|
var orgAry []string
|
|
|
|
|
if len(requestData.OrgresList) > 0 {
|
|
|
|
|
for _, v := range requestData.OrgresList {
|
|
|
|
|
for _, ov := range v {
|
|
|
|
|
resOrgIdVStr := strconv.Itoa(ov)
|
|
|
|
|
if overallhandle.IsInTrue[string](resOrgIdVStr, orgAry) == false {
|
|
|
|
|
orgAry = append(orgAry, resOrgIdVStr)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
orgResListStr := strings.Join(orgAry, ",")
|
|
|
|
|
saveData["responsible_department"] = orgResListStr
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
saveData["responsible_department"] = ""
|
|
|
|
|
}
|
|
|
|
|
// fmt.Printf("%v\n", saveData)
|
|
|
|
|
// return
|
|
|
|
|
if len(saveData) < 1 {
|
|
|
|
|
overallhandle.Result(0, saveData, c)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
saveData["eite_time"] = time.Now().Unix()
|
|
|
|
|
err = myCont.EiteCont(wher, saveData)
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(106, err, c)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
overallhandle.Result(0, err, c)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
*
|
|
|
|
|
@ 作者: 秦东
|
|
|
|
|
@ 时间: 2022-12-01 11:14:18
|
|
|
|
|
@ 功能: 编辑人员主题信息
|
|
|
|
|
@ 参数
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 返回值
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 方法原型
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
*/
|
|
|
|
|
func (s *StaffApi) EditManMainCont(c *gin.Context) {
|
|
|
|
|
var requestData EditContData
|
|
|
|
|
c.ShouldBindJSON(&requestData)
|
|
|
|
|
if requestData.Id == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "参数错误!请检查后重新提交!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Mobilephone == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请输入电话号码!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Idcardno == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请输入身份证号!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
var entryDateInt64 int64
|
|
|
|
|
if requestData.Entrydatetime == "" {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请输入入职日期!")
|
|
|
|
|
entryDateInt64 = 0
|
|
|
|
|
return
|
|
|
|
|
} else {
|
|
|
|
|
entryDateInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Entrydatetime))
|
|
|
|
|
}
|
|
|
|
|
fmt.Printf("requestData.Entrydatetime:%v<------------>entryDateInt64:%v\n", requestData.Entrydatetime, entryDateInt64)
|
|
|
|
|
if requestData.Probationperiod == 0 {
|
|
|
|
|
overallhandle.Result(1, requestData, c, "请输入试用期!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if requestData.Gender == 0 {
|
|
|
|
|
requestData.Gender = 1
|
|
|
|
|
}
|
|
|
|
|
var birthdayInt64 int64 //生日
|
|
|
|
|
if requestData.Birthdaytime != "" {
|
|
|
|
|
birthdayInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Birthdaytime))
|
|
|
|
|
} else {
|
|
|
|
|
birthdayInt64 = 0
|
|
|
|
|
}
|
|
|
|
|
var planFormalDateInt64 int64 //转正日期
|
|
|
|
|
if requestData.Confirmationdate != "" {
|
|
|
|
|
planFormalDateInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Confirmationdate))
|
|
|
|
|
} else {
|
|
|
|
|
planFormalDateInt64 = 0
|
|
|
|
|
}
|
|
|
|
|
var idCardStartDateInt64 int64 //身份证有效期开始
|
|
|
|
|
if requestData.Idcardstarttimedata != "" {
|
|
|
|
|
idCardStartDateInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Idcardstarttimedata))
|
|
|
|
|
} else {
|
|
|
|
|
idCardStartDateInt64 = 0
|
|
|
|
|
}
|
|
|
|
|
var idCardEndDateInt64 int64 //身份证有效期结束
|
|
|
|
|
if requestData.Idcardendtimedata != "" {
|
|
|
|
|
idCardEndDateInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Idcardendtimedata))
|
|
|
|
|
} else {
|
|
|
|
|
idCardEndDateInt64 = 0
|
|
|
|
|
}
|
|
|
|
|
var jobStartDateInt64 int64 //参加工作日期
|
|
|
|
|
if requestData.Idcardendtimedata != "" {
|
|
|
|
|
jobStartDateInt64, _ = overallhandle.DateToTimeStamp(fmt.Sprintf("%v 12:00:00", requestData.Idcardendtimedata))
|
|
|
|
|
} else {
|
|
|
|
|
jobStartDateInt64 = 0
|
|
|
|
|
}
|
|
|
|
|
if requestData.Health == 0 {
|
|
|
|
|
requestData.Health = 1
|
|
|
|
|
}
|
|
|
|
|
if requestData.Maritalstatus == 0 {
|
|
|
|
|
requestData.Maritalstatus = 1
|
|
|
|
|
}
|
|
|
|
|
if requestData.Isveterans == 0 {
|
|
|
|
|
requestData.Isveterans = 2
|
|
|
|
|
}
|
|
|
|
|
/*
|
|
|
|
|
查询主信息
|
|
|
|
|
*/
|
|
|
|
|
wheAry := overallhandle.MapOut()
|
|
|
|
|
wheAry["`id`"] = requestData.Id
|
|
|
|
|
var myCont models.PersonArchives
|
|
|
|
|
err := myCont.GetCont(wheAry, "`key`", "`number`", "`wechat`", "`work_wechat`", "`hire_class`", "`emp_type`")
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(1, err, c, "该人员不存在!请核对后再提交!")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
editTime := time.Now().Unix()
|
|
|
|
|
saveMainDate := overallhandle.MapOut()
|
|
|
|
|
if requestData.Name != "" && requestData.Name != myCont.Name {
|
|
|
|
|
saveMainDate["`name`"] = requestData.Name
|
|
|
|
|
} //绑定微信
|
|
|
|
|
if requestData.Wechat != "" && requestData.Wechat != myCont.Wechat {
|
|
|
|
|
saveMainDate["`wechat`"] = requestData.Wechat
|
|
|
|
|
} //绑定微信
|
|
|
|
|
if requestData.Workwechat != "" && requestData.Workwechat != myCont.WorkWechat {
|
|
|
|
|
saveMainDate["`work_wechat`"] = requestData.Workwechat
|
|
|
|
|
} //绑定企业微信
|
|
|
|
|
if requestData.Hireclass != 0 && requestData.Hireclass != myCont.HireClass {
|
|
|
|
|
saveMainDate["`hire_class`"] = requestData.Hireclass
|
|
|
|
|
} //雇佣类型
|
|
|
|
|
if requestData.Emptype != 0 && requestData.Emptype != myCont.EmpType {
|
|
|
|
|
saveMainDate["`emp_type`"] = requestData.Emptype
|
|
|
|
|
} //用工关系
|
|
|
|
|
if len(saveMainDate) > 0 {
|
|
|
|
|
saveMainDate["`eite_time`"] = editTime
|
|
|
|
|
myCont.EiteCont(wheAry, saveMainDate)
|
|
|
|
|
}
|
|
|
|
|
wheAryEs := overallhandle.MapOut()
|
|
|
|
|
wheAryEs["`key`"] = myCont.Key
|
|
|
|
|
|
|
|
|
|
var myInfo models.PersonnelContent
|
|
|
|
|
err = myInfo.GetCont(wheAryEs)
|
|
|
|
|
if err != nil {
|
|
|
|
|
myInfo.Number = myCont.Number //员工工号;index"`
|
|
|
|
|
myInfo.Idcardno = requestData.Idcardno //身份证号"`
|
|
|
|
|
myInfo.Passportno = requestData.Passportno //护照号码"`
|
|
|
|
|
myInfo.Globalroaming = requestData.Globalroaming //国际区号"`
|
|
|
|
|
myInfo.Mobilephone = requestData.Mobilephone //手机号码"`
|
|
|
|
|
myInfo.Email = requestData.Email //电子邮件"`
|
|
|
|
|
myInfo.Gender = requestData.Gender //性别(1:男性;2:女性;3:中性)"`
|
|
|
|
|
myInfo.Birthday = birthdayInt64 //"`
|
|
|
|
|
myInfo.Myfolk = requestData.Myfolk //民族"`
|
|
|
|
|
myInfo.Nativeplace = requestData.Nativeplace //籍贯"`
|
|
|
|
|
myInfo.Idcardstartdate = idCardStartDateInt64 //身份证有效期开始"`
|
|
|
|
|
myInfo.Idcardenddate = idCardEndDateInt64 //身份证有效期结束"`
|
|
|
|
|
myInfo.Idcardaddress = requestData.Idcardaddress //身份证地址"`
|
|
|
|
|
myInfo.IdcardIssued = requestData.IdcardIssued //身份证签发机关"`
|
|
|
|
|
myInfo.Health = requestData.Health //健康状况(1:良好;2:一般;3:较弱,4:有生理缺陷;5:残废)"`
|
|
|
|
|
myInfo.Maritalstatus = requestData.Maritalstatus //婚姻状况(1:未婚;2:已婚;3:丧偶;4:离异)"`
|
|
|
|
|
myInfo.Internaltelephone = requestData.Internaltelephone //内线电话"`
|
|
|
|
|
myInfo.Currentresidence = requestData.Currentresidence //现居住地址"`
|
|
|
|
|
myInfo.Time = editTime //创建时间"`
|
|
|
|
|
myInfo.Constellation = requestData.Constellationing //星座(1:白羊座;2:金牛座;3:双子座;4:巨蟹座;5:狮子座;6:处女座;7:天枰座;8:天蝎座;9:射手座;10:摩羯座;11:水瓶座;12:双鱼座)"`
|
|
|
|
|
|
|
|
|
|
myInfo.Isveterans = requestData.Isveterans //是否为退役军人(1:是;2:否)"`
|
|
|
|
|
myInfo.Veteransnumber = requestData.Veteransnumber //退役证编号"`
|
|
|
|
|
myInfo.Jobstartdate = jobStartDateInt64 //参加工作日期"`
|
|
|
|
|
myInfo.Entrydate = entryDateInt64 //入职日期"`
|
|
|
|
|
myInfo.Probationperiod = requestData.Probationperiod //试用期"`
|
|
|
|
|
myInfo.Planformaldate = planFormalDateInt64 //预计转正日期"`
|
|
|
|
|
myInfo.PoliticalOutlook = requestData.Politicaloutlook //政治面貌(1:群众;2:无党派;3:台盟会员;4:九三社员;5:致公党员;6:农工党员;7:民进会员;8:民建会员;9:民盟盟员;10:民革会员,11:共青团员;12:预备党员;13:中共党员)"`
|
|
|
|
|
myInfo.Key = myCont.Key //"`
|
|
|
|
|
myInfo.NameUsedBefore = requestData.Nameusedbefore //曾用名"`
|
|
|
|
|
err = overall.CONSTANT_DB_HR.Create(&myInfo).Error
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(106, err, c)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
saveData := overallhandle.MapOut()
|
|
|
|
|
if requestData.Mobilephone != "" && requestData.Mobilephone != myInfo.Mobilephone {
|
|
|
|
|
saveData["`mobilephone`"] = requestData.Mobilephone
|
|
|
|
|
} //手机号码
|
|
|
|
|
if requestData.Idcardno != "" && requestData.Idcardno != myInfo.Idcardno {
|
|
|
|
|
saveData["`idcardno`"] = requestData.Mobilephone
|
|
|
|
|
} //身份证号
|
|
|
|
|
if entryDateInt64 != myInfo.Entrydate {
|
|
|
|
|
saveData["`entrydate`"] = entryDateInt64
|
|
|
|
|
} //入职日期
|
|
|
|
|
if requestData.Probationperiod != 0 && requestData.Probationperiod != myInfo.Probationperiod {
|
|
|
|
|
saveData["`probationperiod`"] = requestData.Probationperiod
|
|
|
|
|
} //试用期
|
|
|
|
|
if planFormalDateInt64 != myInfo.Planformaldate {
|
|
|
|
|
saveData["`planformaldate`"] = planFormalDateInt64
|
|
|
|
|
} // 预计转正日期
|
|
|
|
|
if jobStartDateInt64 != myInfo.Jobstartdate {
|
|
|
|
|
saveData["`jobstartdate`"] = jobStartDateInt64
|
|
|
|
|
} //参加工作日期
|
|
|
|
|
if requestData.Nameusedbefore != "" && requestData.Nameusedbefore != myInfo.NameUsedBefore {
|
|
|
|
|
saveData["`name_used_before`"] = requestData.Nameusedbefore
|
|
|
|
|
} //曾用名
|
|
|
|
|
if requestData.Gender != 0 && requestData.Gender != myInfo.Gender {
|
|
|
|
|
saveData["`gender`"] = requestData.Gender
|
|
|
|
|
} //性别
|
|
|
|
|
if requestData.Myfolk != "" && requestData.Myfolk != myInfo.Myfolk {
|
|
|
|
|
saveData["`myfolk`"] = requestData.Myfolk
|
|
|
|
|
} //民族
|
|
|
|
|
if requestData.Politicaloutlook != 0 && requestData.Politicaloutlook != myInfo.PoliticalOutlook {
|
|
|
|
|
saveData["`political_outlook`"] = requestData.Politicaloutlook
|
|
|
|
|
} //政治面貌
|
|
|
|
|
if requestData.Health != 0 && requestData.Health != myInfo.Health {
|
|
|
|
|
saveData["`health`"] = requestData.Health
|
|
|
|
|
} //健康状况
|
|
|
|
|
if birthdayInt64 != myInfo.Birthday {
|
|
|
|
|
saveData["`birthday`"] = birthdayInt64
|
|
|
|
|
} //生日
|
|
|
|
|
if idCardStartDateInt64 != myInfo.Idcardstartdate {
|
|
|
|
|
saveData["`idcardstartdate`"] = idCardStartDateInt64
|
|
|
|
|
} //身份证有效期开始
|
|
|
|
|
if idCardEndDateInt64 != myInfo.Idcardenddate {
|
|
|
|
|
saveData["`idcardenddate`"] = idCardEndDateInt64
|
|
|
|
|
} //身份证有效期结束
|
|
|
|
|
if requestData.Idcardaddress != "" && requestData.Idcardaddress != myInfo.Idcardaddress {
|
|
|
|
|
saveData["`idcardaddress`"] = requestData.Idcardaddress
|
|
|
|
|
} //身份证地址
|
|
|
|
|
if requestData.IdcardIssued != "" && requestData.IdcardIssued != myInfo.IdcardIssued {
|
|
|
|
|
saveData["`idcardIssued`"] = requestData.IdcardIssued
|
|
|
|
|
} //身份证签发机关
|
|
|
|
|
if requestData.Currentresidence != "" && requestData.Currentresidence != myInfo.Currentresidence {
|
|
|
|
|
saveData["`currentresidence`"] = requestData.Currentresidence
|
|
|
|
|
} //现居住地址
|
|
|
|
|
if requestData.Nativeplace != "" && requestData.Nativeplace != myInfo.Nativeplace {
|
|
|
|
|
saveData["`nativeplace`"] = requestData.Nativeplace
|
|
|
|
|
} //籍贯
|
|
|
|
|
if requestData.Email != "" && requestData.Email != myInfo.Email {
|
|
|
|
|
saveData["`email`"] = requestData.Email
|
|
|
|
|
} //电子邮件
|
|
|
|
|
if requestData.Internaltelephone != "" && requestData.Internaltelephone != myInfo.Internaltelephone {
|
|
|
|
|
saveData["`internaltelephone`"] = requestData.Internaltelephone
|
|
|
|
|
} //内线电话
|
|
|
|
|
|
|
|
|
|
if requestData.Isveterans != 0 && requestData.Isveterans != myInfo.Isveterans {
|
|
|
|
|
saveData["`isveterans`"] = requestData.Isveterans
|
|
|
|
|
} //是否为退役军人
|
|
|
|
|
if requestData.Veteransnumber != "" && requestData.Veteransnumber != myInfo.Veteransnumber {
|
|
|
|
|
saveData["`veteransnumber`"] = requestData.Veteransnumber
|
|
|
|
|
} //退役证编号
|
|
|
|
|
if requestData.Passportno != "" && requestData.Passportno != myInfo.Passportno {
|
|
|
|
|
saveData["`passportno`"] = requestData.Passportno
|
|
|
|
|
} //护照号码
|
|
|
|
|
if requestData.Globalroaming != "" && requestData.Globalroaming != myInfo.Globalroaming {
|
|
|
|
|
saveData["`globalroaming`"] = requestData.Globalroaming
|
|
|
|
|
} //国际区号
|
|
|
|
|
|
|
|
|
|
if requestData.Constellationing != 0 && requestData.Constellationing != myInfo.Constellation {
|
|
|
|
|
saveData["`constellationing`"] = requestData.Constellationing
|
|
|
|
|
} //星座
|
|
|
|
|
if len(saveData) > 0 {
|
|
|
|
|
saveData["`time`"] = editTime
|
|
|
|
|
err = myInfo.EiteCont(wheAryEs, saveData)
|
|
|
|
|
if err != nil {
|
|
|
|
|
overallhandle.Result(106, err, c)
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
overallhandle.Result(0, err, c)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
*
|
|
|
|
|
@ 作者: 秦东
|
|
|
|
|
@ 时间: 2024-03-28 09:03:52
|
|
|
|
|
@ 功能: 人员定位信息(简略)
|
|
|
|
|
@ 参数
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 返回值
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
@ 方法原型
|
|
|
|
|
|
|
|
|
|
#
|
|
|
|
|
*/
|
|
|
|
|
func (s *StaffApi) PersonnelPositioning(c *gin.Context) {
|
|
|
|
|
var requestData overallhandle.ConstId
|
|
|
|
|
c.ShouldBindJSON(&requestData)
|
|
|
|
|
|
|
|
|
|
peopleUrl := "http://172.20.2.156:8084/HXGK/open/information/getRealGps.do"
|
|
|
|
|
postString := overallhandle.CurlPostJosn(peopleUrl, []byte(""))
|
|
|
|
|
var postCallBack DingWeiData
|
|
|
|
|
json.Unmarshal(postString, &postCallBack)
|
|
|
|
|
postCallBack.Total = len(postCallBack.Data)
|
|
|
|
|
noSend := []string{"300010", "300043", "202471", "302535", "200001", "200005", "200009", "200003", "200010", "201542", "200008", "200019", "200012"}
|
|
|
|
|
|
|
|
|
|
var sendPeopleList []DingWeiInfo
|
|
|
|
|
|
|
|
|
|
if len(postCallBack.Data) > 0 {
|
|
|
|
|
for i, v := range postCallBack.Data {
|
|
|
|
|
if !overallhandle.IsInTrue[string](v.EmpNo, noSend) {
|
|
|
|
|
postCallBack.Data[i].UserName = v.EmpName
|
|
|
|
|
if v.EmpNo != "" && v.EmpNo != "null" {
|
|
|
|
|
var manErr error
|
|
|
|
|
var manInfo models.ManCont
|
|
|
|
|
switch requestData.Id {
|
|
|
|
|
case "224":
|
|
|
|
|
manErr = manInfo.GetCont(map[string]interface{}{"`number`": v.EmpNo, "`company`": requestData.Id}, "`name`", "`key`", "`mobilephone`")
|
|
|
|
|
postCallBack.Data[i].UserOrgName = "恒信中碳氢能源科技(山东)有限公司"
|
|
|
|
|
if manErr == nil {
|
|
|
|
|
var sendPeople DingWeiInfo
|
|
|
|
|
sendPeople.DateTime = v.DateTime //dateTime"`
|
|
|
|
|
sendPeople.Area = v.Area //area"`
|
|
|
|
|
sendPeople.FactoryId = v.FactoryId //factoryId"`
|
|
|
|
|
sendPeople.Latitude = v.Latitude //latitude"`
|
|
|
|
|
sendPeople.FactoryName = v.FactoryName //factoryName"`
|
|
|
|
|
sendPeople.DeviceNo = v.DeviceNo //deviceNo"`
|
|
|
|
|
sendPeople.EmpNo = v.EmpNo //empNo"`
|
|
|
|
|
sendPeople.IsOffLine = v.IsOffLine //isOffLine"`
|
|
|
|
|
sendPeople.Layer = v.Layer //layer"`
|
|
|
|
|
sendPeople.CrossX = v.CrossX //crossX"`
|
|
|
|
|
sendPeople.CrossY = v.CrossY //crossY"`
|
|
|
|
|
sendPeople.Specifictype = v.Specifictype //specifictype"`
|
|
|
|
|
sendPeople.EmpName = v.EmpName //empName"`
|
|
|
|
|
sendPeople.Longitude = v.Longitude //longitude"`
|
|
|
|
|
|
|
|
|
|
sendPeople.UserCode = strconv.FormatInt(manInfo.Key, 10)
|
|
|
|
|
sendPeople.UserName = manInfo.Name
|
|
|
|
|
if manInfo.Mobilephone != "" {
|
|
|
|
|
sendPeople.UserPhone = overallhandle.MaskPhone(manInfo.Mobilephone)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch v.Specifictype { //人员类型
|
|
|
|
|
case "1":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "2":
|
|
|
|
|
sendPeople.UserType = "承包商员工"
|
|
|
|
|
case "3":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "4":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "5":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
default:
|
|
|
|
|
sendPeople.UserType = "在职职工"
|
|
|
|
|
}
|
|
|
|
|
sendPeople.UserOrgCode = "91370921MA94AF5H3N" //userOrgCode"` //所属单位唯一标志
|
|
|
|
|
sendPeople.UserOrgName = "恒信中碳氢能源科技(山东)有限公司" //userOrgName"` //所属单位名称
|
|
|
|
|
sendPeople.Cardld = v.DeviceNo //cardld"` //绑定设备唯一编码
|
|
|
|
|
sendPeopleList = append(sendPeopleList, sendPeople)
|
|
|
|
|
}
|
|
|
|
|
case "309":
|
|
|
|
|
manErr = manInfo.GetCont(map[string]interface{}{"`number`": v.EmpNo, "`company`": requestData.Id}, "`name`", "`key`", "`mobilephone`")
|
|
|
|
|
postCallBack.Data[i].UserOrgName = "恒信中碳氢能源科技(山东)有限公司"
|
|
|
|
|
if manErr == nil {
|
|
|
|
|
var sendPeople DingWeiInfo
|
|
|
|
|
sendPeople.DateTime = v.DateTime //dateTime"`
|
|
|
|
|
sendPeople.Area = v.Area //area"`
|
|
|
|
|
sendPeople.FactoryId = v.FactoryId //factoryId"`
|
|
|
|
|
sendPeople.Latitude = v.Latitude //latitude"`
|
|
|
|
|
sendPeople.FactoryName = v.FactoryName //factoryName"`
|
|
|
|
|
sendPeople.DeviceNo = v.DeviceNo //deviceNo"`
|
|
|
|
|
sendPeople.EmpNo = v.EmpNo //empNo"`
|
|
|
|
|
sendPeople.IsOffLine = v.IsOffLine //isOffLine"`
|
|
|
|
|
sendPeople.Layer = v.Layer //layer"`
|
|
|
|
|
sendPeople.CrossX = v.CrossX //crossX"`
|
|
|
|
|
sendPeople.CrossY = v.CrossY //crossY"`
|
|
|
|
|
sendPeople.Specifictype = v.Specifictype //specifictype"`
|
|
|
|
|
sendPeople.EmpName = v.EmpName //empName"`
|
|
|
|
|
sendPeople.Longitude = v.Longitude //longitude"`
|
|
|
|
|
|
|
|
|
|
sendPeople.UserCode = strconv.FormatInt(manInfo.Key, 10)
|
|
|
|
|
sendPeople.UserName = manInfo.Name
|
|
|
|
|
if manInfo.Mobilephone != "" {
|
|
|
|
|
sendPeople.UserPhone = overallhandle.MaskPhone(manInfo.Mobilephone)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch v.Specifictype { //人员类型
|
|
|
|
|
case "1":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "2":
|
|
|
|
|
sendPeople.UserType = "承包商员工"
|
|
|
|
|
case "3":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "4":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "5":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
default:
|
|
|
|
|
sendPeople.UserType = "在职职工"
|
|
|
|
|
}
|
|
|
|
|
sendPeople.UserOrgCode = "91370921MA94AF5H3N" //userOrgCode"` //所属单位唯一标志
|
|
|
|
|
sendPeople.UserOrgName = "恒信中碳氢能源科技(山东)有限公司" //userOrgName"` //所属单位名称
|
|
|
|
|
sendPeople.Cardld = v.DeviceNo //cardld"` //绑定设备唯一编码
|
|
|
|
|
sendPeopleList = append(sendPeopleList, sendPeople)
|
|
|
|
|
}
|
|
|
|
|
default:
|
|
|
|
|
manErr = manInfo.GetCont(map[string]interface{}{"`number`": v.EmpNo}, "`name`", "`key`", "`mobilephone`")
|
|
|
|
|
postCallBack.Data[i].UserOrgName = "山东恒信高科能源有限公司"
|
|
|
|
|
if manErr == nil {
|
|
|
|
|
var sendPeople DingWeiInfo
|
|
|
|
|
sendPeople.DateTime = v.DateTime //dateTime"`
|
|
|
|
|
sendPeople.Area = v.Area //area"`
|
|
|
|
|
sendPeople.FactoryId = v.FactoryId //factoryId"`
|
|
|
|
|
sendPeople.Latitude = v.Latitude //latitude"`
|
|
|
|
|
sendPeople.FactoryName = v.FactoryName //factoryName"`
|
|
|
|
|
sendPeople.DeviceNo = v.DeviceNo //deviceNo"`
|
|
|
|
|
sendPeople.EmpNo = v.EmpNo //empNo"`
|
|
|
|
|
sendPeople.IsOffLine = v.IsOffLine //isOffLine"`
|
|
|
|
|
sendPeople.Layer = v.Layer //layer"`
|
|
|
|
|
sendPeople.CrossX = v.CrossX //crossX"`
|
|
|
|
|
sendPeople.CrossY = v.CrossY //crossY"`
|
|
|
|
|
sendPeople.Specifictype = v.Specifictype //specifictype"`
|
|
|
|
|
sendPeople.EmpName = v.EmpName //empName"`
|
|
|
|
|
sendPeople.Longitude = v.Longitude //longitude"`
|
|
|
|
|
|
|
|
|
|
sendPeople.UserCode = strconv.FormatInt(manInfo.Key, 10)
|
|
|
|
|
sendPeople.UserName = manInfo.Name
|
|
|
|
|
if manInfo.Mobilephone != "" {
|
|
|
|
|
sendPeople.UserPhone = overallhandle.MaskPhone(manInfo.Mobilephone)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switch v.Specifictype { //人员类型
|
|
|
|
|
case "1":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "2":
|
|
|
|
|
sendPeople.UserType = "承包商员工"
|
|
|
|
|
case "3":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "4":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
case "5":
|
|
|
|
|
sendPeople.UserType = "临时访客"
|
|
|
|
|
default:
|
|
|
|
|
sendPeople.UserType = "在职职工"
|
|
|
|
|
}
|
|
|
|
|
sendPeople.UserOrgCode = "91370921328482832M" //userOrgCode"` //所属单位唯一标志
|
|
|
|
|
sendPeople.UserOrgName = "山东恒信高科能源有限公司" //userOrgName"` //所属单位名称
|
|
|
|
|
sendPeople.Cardld = v.DeviceNo //cardld"` //绑定设备唯一编码
|
|
|
|
|
sendPeopleList = append(sendPeopleList, sendPeople)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
postCallBack.Data[i].UserCode = v.DeviceNo
|
|
|
|
|
}
|
|
|
|
|
switch v.Specifictype {
|
|
|
|
|
case "1":
|
|
|
|
|
postCallBack.Data[i].UserType = "临时访客"
|
|
|
|
|
case "2":
|
|
|
|
|
postCallBack.Data[i].UserType = "承包商员工"
|
|
|
|
|
case "3":
|
|
|
|
|
postCallBack.Data[i].UserType = "临时访客"
|
|
|
|
|
case "4":
|
|
|
|
|
postCallBack.Data[i].UserType = "临时访客"
|
|
|
|
|
case "5":
|
|
|
|
|
postCallBack.Data[i].UserType = "临时访客"
|
|
|
|
|
default:
|
|
|
|
|
postCallBack.Data[i].UserType = "在职职工"
|
|
|
|
|
}
|
|
|
|
|
postCallBack.Data[i].UserOrgCode = "91370921328482832M"
|
|
|
|
|
|
|
|
|
|
postCallBack.Data[i].Cardld = v.DeviceNo
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
overallhandle.Result(0, sendPeopleList, c)
|
|
|
|
|
// overallhandle.Result(0, postCallBack.Data, c)
|
|
|
|
|
}
|