51 lines
1.3 KiB
Go
51 lines
1.3 KiB
Go
package plugin
|
|
|
|
import (
|
|
"enterprise/common/dao"
|
|
"enterprise/common/global"
|
|
"enterprise/common/model"
|
|
"enterprise/common/registry"
|
|
"fmt"
|
|
log "github.com/sirupsen/logrus"
|
|
"strings"
|
|
"time"
|
|
)
|
|
|
|
type Staff1002 struct {
|
|
Staff
|
|
corp *model.Corp
|
|
}
|
|
|
|
func NewStaff1002(corp *model.Corp) registry.Staff {
|
|
return &Staff1002{
|
|
corp: corp,
|
|
}
|
|
}
|
|
|
|
func (s *Staff1002) Monitor(user *model.StaffUser) {
|
|
s.MonitorWorkAge(user)
|
|
|
|
nowDate := time.Now()
|
|
entryDate, _ := time.ParseInLocation("2006-01-02", user.EntryDate, time.Local)
|
|
entryDay := (nowDate.Unix() - entryDate.Unix()) / 86400
|
|
if entryDay != 20 && entryDay != 40 {
|
|
return
|
|
}
|
|
|
|
// 1.订单
|
|
orders, err := dao.NewExternalCorpOrder().QueryOwnerOrder(user.Username, 0, 0)
|
|
if err != nil {
|
|
log.Errorf("db error:%s", err.Error())
|
|
return
|
|
}
|
|
|
|
message := make([]string, 0)
|
|
message = append(message, fmt.Sprintf("【员工试用期提醒】[%s]", user.Realname))
|
|
message = append(message, fmt.Sprintf("入职时间:%s", user.EntryDate))
|
|
message = append(message, fmt.Sprintf("入职天数:%d", entryDay))
|
|
message = append(message, fmt.Sprintf("订单总数:%d", len(orders)))
|
|
message = append(message, fmt.Sprintf("预期订单:%d", entryDay/20*15))
|
|
|
|
global.SendCorpMessage(user.CorpId, []string{"jiangyong", "zhangping"}, strings.Join(message, "\n"))
|
|
}
|