calculatorName
This commit is contained in:
parent
7b150b4436
commit
e1987917ee
|
@ -123,6 +123,7 @@ func (d *CheckinDao) QueryAdmin(page, size int, corpId int64, username, startDay
|
|||
if username != "" {
|
||||
tx = tx.Where("username = ?", username)
|
||||
}
|
||||
tx.Order("day DESC")
|
||||
var count int64
|
||||
tx.Count(&count)
|
||||
|
||||
|
|
|
@ -23,9 +23,10 @@ type StaffUser struct {
|
|||
Config string `json:"config"`
|
||||
Status string `json:"status"`
|
||||
|
||||
SalaryBase string `json:"salary_base"`
|
||||
SalaryTarget string `json:"salary_target"`
|
||||
SalaryCalculator string `json:"salary_calculator"`
|
||||
SalaryBase string `json:"salary_base"`
|
||||
SalaryTarget string `json:"salary_target"`
|
||||
SalaryCalculator string `json:"salary_calculator"`
|
||||
SalaryCalculatorName string `json:"salary_calculator_name"`
|
||||
|
||||
PayeeBankName string `json:"payee_bank_name"`
|
||||
PayeeBankCard string `json:"payee_bank_card"`
|
||||
|
|
|
@ -8,7 +8,6 @@ import (
|
|||
"enterprise/server/session"
|
||||
"enterprise/worker"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/smbrave/goutil"
|
||||
"github.com/spf13/cast"
|
||||
"net/http"
|
||||
"strings"
|
||||
|
@ -26,7 +25,7 @@ func (s *Staff) Login(ctx *gin.Context) {
|
|||
var req api.StaffLoginReq
|
||||
session.CheckParamError(ctx.ShouldBindJSON(&req))
|
||||
sess := ctx.Keys[session.ContextSession].(*session.AdminSession)
|
||||
data := new(service.StaffUser).Login(sess, &req)
|
||||
data := service.NewStaffUser().Login(sess, &req)
|
||||
ctx.JSON(http.StatusOK, session.NewRsp(data))
|
||||
}
|
||||
|
||||
|
@ -42,7 +41,6 @@ func (s *Staff) Suggest(ctx *gin.Context) {
|
|||
mp["realnae"] = cast.ToString(st.Realname)
|
||||
items = append(items, mp)
|
||||
}
|
||||
|
||||
ctx.JSON(http.StatusOK, session.NewRsp(items))
|
||||
}
|
||||
|
||||
|
@ -58,6 +56,10 @@ func (s *Staff) List(ctx *gin.Context) {
|
|||
for _, st := range staffs {
|
||||
i := new(api.StaffUser)
|
||||
i.From(st)
|
||||
calculator, _ := dao.NewSalaryCalculatorDao().Get(cast.ToInt64(i.SalaryCalculator))
|
||||
if calculator != nil {
|
||||
i.SalaryCalculatorName = calculator.Name
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
|
||||
|
@ -85,36 +87,9 @@ func (s *Staff) Create(ctx *gin.Context) {
|
|||
|
||||
func (s *Staff) Update(ctx *gin.Context) {
|
||||
var req api.StaffUpdateReq
|
||||
sess := ctx.Keys[session.ContextSession].(*session.AdminSession)
|
||||
session.CheckParamError(ctx.ShouldBindJSON(&req))
|
||||
|
||||
staffUser, err := dao.NewStaffUserDao().Get(cast.ToInt64(req.Id))
|
||||
session.CheckDBError(err)
|
||||
session.CheckNilError(staffUser, "用户不存在")
|
||||
|
||||
staffUser.Username = goutil.If(req.Username != "", req.Username, staffUser.Username)
|
||||
staffUser.Realname = goutil.If(req.Realname != "", req.Realname, staffUser.Realname)
|
||||
staffUser.Phone = goutil.If(req.Phone != "", req.Phone, staffUser.Phone)
|
||||
staffUser.Idno = goutil.If(req.Idno != "", req.Idno, staffUser.Idno)
|
||||
staffUser.EntryDate = goutil.If(req.EntryDate != "", req.EntryDate, staffUser.EntryDate)
|
||||
staffUser.OfficialDate = goutil.If(req.OfficialDate != "", req.OfficialDate, staffUser.OfficialDate)
|
||||
staffUser.LeaveDate = goutil.If(req.LeaveDate != "", req.LeaveDate, staffUser.LeaveDate)
|
||||
staffUser.Config = goutil.If(req.Config != "", req.Config, staffUser.Config)
|
||||
staffUser.Status = goutil.If(req.Status != "", cast.ToInt(req.Status), staffUser.Status)
|
||||
|
||||
staffSalary := staffUser.GetSalary()
|
||||
staffSalary.Base = goutil.If(req.SalaryBase != "", req.SalaryBase, staffSalary.Base)
|
||||
staffSalary.Target = goutil.If(req.SalaryTarget != "", req.SalaryTarget, staffSalary.Target)
|
||||
staffSalary.Calculator = goutil.If(req.SalaryCalculator != "", req.SalaryCalculator, staffSalary.Calculator)
|
||||
staffUser.Salary = goutil.EncodeJSON(staffSalary)
|
||||
|
||||
staffPayee := staffUser.GetPayee()
|
||||
staffPayee.BankName = goutil.If(req.PayeeBankName != "", req.PayeeBankName, staffPayee.BankName)
|
||||
staffPayee.BankCard = goutil.If(req.PayeeBankCard != "", req.PayeeBankCard, staffPayee.BankCard)
|
||||
staffPayee.AlipayUid = goutil.If(req.PayeeAlipayUid != "", req.PayeeAlipayUid, staffPayee.AlipayUid)
|
||||
staffUser.Payee = goutil.EncodeJSON(staffPayee)
|
||||
|
||||
err = dao.NewStaffUserDao().Update(staffUser)
|
||||
session.CheckDBError(err)
|
||||
service.NewStaffUser().Update(sess, &req)
|
||||
ctx.JSON(http.StatusOK, session.NewRspOk())
|
||||
}
|
||||
|
||||
|
|
|
@ -8,12 +8,17 @@ import (
|
|||
"github.com/google/uuid"
|
||||
log "github.com/sirupsen/logrus"
|
||||
"github.com/smbrave/goutil"
|
||||
"github.com/spf13/cast"
|
||||
"time"
|
||||
)
|
||||
|
||||
type StaffUser struct {
|
||||
}
|
||||
|
||||
func NewStaffUser() *StaffUser {
|
||||
return &StaffUser{}
|
||||
}
|
||||
|
||||
func (s *StaffUser) Login(sess *session.AdminSession, req *api.StaffLoginReq) interface{} {
|
||||
host := sess.GetHeader().Host
|
||||
log.Infof("login host[%s] req[%s]", host, goutil.EncodeJSON(req))
|
||||
|
@ -42,3 +47,44 @@ func (s *StaffUser) Login(sess *session.AdminSession, req *api.StaffLoginReq) in
|
|||
data["realname"] = user.Realname
|
||||
return data
|
||||
}
|
||||
|
||||
func (s *StaffUser) Update(sess *session.AdminSession, req *api.StaffUpdateReq) {
|
||||
|
||||
staffUser, err := dao.NewStaffUserDao().Get(cast.ToInt64(req.Id))
|
||||
session.CheckDBError(err)
|
||||
session.CheckNilError(staffUser, "用户不存在")
|
||||
|
||||
staffUser.Username = goutil.If(req.Username != "", req.Username, staffUser.Username)
|
||||
staffUser.Realname = goutil.If(req.Realname != "", req.Realname, staffUser.Realname)
|
||||
staffUser.Phone = goutil.If(req.Phone != "", req.Phone, staffUser.Phone)
|
||||
staffUser.Idno = goutil.If(req.Idno != "", req.Idno, staffUser.Idno)
|
||||
staffUser.EntryDate = goutil.If(req.EntryDate != "", req.EntryDate, staffUser.EntryDate)
|
||||
staffUser.OfficialDate = goutil.If(req.OfficialDate != "", req.OfficialDate, staffUser.OfficialDate)
|
||||
staffUser.Config = goutil.If(req.Config != "", req.Config, staffUser.Config)
|
||||
|
||||
staffSalary := staffUser.GetSalary()
|
||||
staffSalary.Base = goutil.If(req.SalaryBase != "", req.SalaryBase, staffSalary.Base)
|
||||
staffSalary.Target = goutil.If(req.SalaryTarget != "", req.SalaryTarget, staffSalary.Target)
|
||||
staffSalary.Calculator = goutil.If(req.SalaryCalculator != "", req.SalaryCalculator, staffSalary.Calculator)
|
||||
staffUser.Salary = goutil.EncodeJSON(staffSalary)
|
||||
|
||||
staffPayee := staffUser.GetPayee()
|
||||
staffPayee.BankName = goutil.If(req.PayeeBankName != "", req.PayeeBankName, staffPayee.BankName)
|
||||
staffPayee.BankCard = goutil.If(req.PayeeBankCard != "", req.PayeeBankCard, staffPayee.BankCard)
|
||||
staffPayee.AlipayUid = goutil.If(req.PayeeAlipayUid != "", req.PayeeAlipayUid, staffPayee.AlipayUid)
|
||||
staffUser.Payee = goutil.EncodeJSON(staffPayee)
|
||||
|
||||
//状态处理
|
||||
if req.Status != "" {
|
||||
status := cast.ToInt(req.Status)
|
||||
staffUser.Status = goutil.If(req.Status != "", cast.ToInt(req.Status), staffUser.Status)
|
||||
if status == model.StaffUserStatusOffline {
|
||||
staffUser.LeaveDate = goutil.If(req.LeaveDate != "", req.LeaveDate, staffUser.LeaveDate)
|
||||
} else {
|
||||
staffUser.LeaveDate = ""
|
||||
}
|
||||
}
|
||||
|
||||
err = dao.NewStaffUserDao().Update(staffUser)
|
||||
session.CheckDBError(err)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue