diff --git a/common/model/staff_salary.go b/common/model/staff_salary.go
index 4a3341e..a10a4eb 100644
--- a/common/model/staff_salary.go
+++ b/common/model/staff_salary.go
@@ -11,6 +11,7 @@ import (
 var (
 	StaffSalaryStatusWait  = 1
 	StaffSalaryStatusPayed = 2
+	StaffSalaryStatusPause = 3
 )
 
 type SalaryBillLine struct {
diff --git a/server/api/base.go b/server/api/base.go
new file mode 100644
index 0000000..c448148
--- /dev/null
+++ b/server/api/base.go
@@ -0,0 +1,6 @@
+package api
+
+type Tag struct {
+	Name string `json:"name"`
+	Type string `json:"type"`
+}
diff --git a/server/api/salary.go b/server/api/salary.go
index 47fd786..264ebe7 100644
--- a/server/api/salary.go
+++ b/server/api/salary.go
@@ -7,29 +7,29 @@ import (
 )
 
 type Salary struct {
-	Id             string `json:"id,omitempty"`
-	Month          string `json:"month,omitempty"`
-	Username       string `json:"username,omitempty"`
-	Realname       string `json:"realname,omitempty"`
-	BaseSalary     string `json:"base_salary,omitempty"`
-	TargetSalary   string `json:"target_salary,omitempty"`
-	RealSalary     string `json:"real_salary,omitempty"`
-	AttendIncome   string `json:"attend_income,omitempty"`
-	TargetIncome   string `json:"target_income,omitempty"`
-	AwardIncome    string `json:"award_income,omitempty"`
-	OtherIncome    string `json:"other_income,omitempty"`
-	ShouldDay      string `json:"should_day,omitempty"`
-	AttendDay      string `json:"attend_day,omitempty"`
-	HolidayDay     string `json:"holiday_day,omitempty"`
-	SocialDeduct   string `json:"social_deduct,omitempty"`
-	HouseDeduct    string `json:"house_deduct,omitempty"`
-	PersonalDeduct string `json:"personal_deduct,omitempty"`
-	OtherDeduct    string `json:"other_deduct,omitempty"`
-	CreateTime     string `json:"create_time,omitempty"`
-	UpdateTime     string `json:"update_time,omitempty"`
-	Extra          string `json:"extra,omitempty"`
-	Status         string `json:"status,omitempty"`
-	AttendStatus   string `json:"attend_status,omitempty"`
+	Id             string `json:"id"`
+	Month          string `json:"month"`
+	Username       string `json:"username"`
+	Realname       string `json:"realname"`
+	BaseSalary     string `json:"base_salary"`
+	TargetSalary   string `json:"target_salary"`
+	RealSalary     string `json:"real_salary"`
+	AttendIncome   string `json:"attend_income"`
+	TargetIncome   string `json:"target_income"`
+	AwardIncome    string `json:"award_income"`
+	OtherIncome    string `json:"other_income"`
+	ShouldDay      string `json:"should_day"`
+	AttendDay      string `json:"attend_day"`
+	HolidayDay     string `json:"holiday_day"`
+	LackDay        string `json:"lack_day"`
+	SocialDeduct   string `json:"social_deduct"`
+	HouseDeduct    string `json:"house_deduct"`
+	PersonalDeduct string `json:"personal_deduct"`
+	OtherDeduct    string `json:"other_deduct"`
+	CreateTime     string `json:"create_time"`
+	UpdateTime     string `json:"update_time"`
+	Extra          string `json:"extra"`
+	Status         string `json:"status"`
 }
 
 type CreateSalaryReq struct {
@@ -78,12 +78,8 @@ func (s *Salary) From(m *model.StaffSalary) {
 	s.UpdateTime = goutil.TimeToDateTime(m.UpdateTime)
 	s.Extra = m.Extra
 	s.Status = cast.ToString(m.Status)
+	s.LackDay = goutil.FormatFloat(float64(m.ShouldDay) - m.AttendDay - m.HolidayDay)
 
-	if s.AttendDay+s.HolidayDay != s.ShouldDay {
-		s.AttendStatus = "2"
-	} else {
-		s.AttendStatus = "1"
-	}
 }
 
 func (s *Salary) Add(o *Salary) {
diff --git a/server/api/staff.go b/server/api/staff.go
index 8f62529..dcb457c 100644
--- a/server/api/staff.go
+++ b/server/api/staff.go
@@ -37,6 +37,7 @@ type StaffUser struct {
 	PayeeAlipayAuthQrcode string `json:"payee_alipay_auth_qrcode"`
 
 	Config interface{} `json:"config"`
+	Tags   []*Tag      `json:"tags"`
 }
 
 type StaffListReq struct {
@@ -97,4 +98,20 @@ func (s *StaffUser) From(m *model.StaffUser) {
 	//s.PayeeAlipayAuthUrl = fmt.Sprintf("https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=2021004108682468&scope=auth_base&state=%d&redirect_uri=https://e.batiao8.com/api/payment/auth/alipay", m.Id)
 	s.PayeeAlipayAuthUrl = fmt.Sprintf("https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=2021004108682468&scope=auth_user&state=%d&redirect_uri=https://e.batiao8.com/api/payment/auth/alipay", m.Id)
 	s.PayeeAlipayAuthQrcode, _ = butil.CreateQrcodeBase64V2(s.PayeeAlipayAuthUrl, qrcode.Low, 300)
+
+	tags := make([]*Tag, 0)
+	if payee.BankName != "" && payee.BankCard != "" {
+		tags = append(tags, &Tag{Name: "银行卡", Type: "success"})
+	}
+	if payee.AlipayUid != "" {
+		tags = append(tags, &Tag{Name: "支付宝", Type: "success"})
+	}
+	if m.Phone != "" {
+		tags = append(tags, &Tag{Name: "未填手机号", Type: "warning"})
+	}
+	if m.Idno != "" {
+		tags = append(tags, &Tag{Name: "未填身份证号", Type: "warning"})
+	}
+
+	s.Tags = tags
 }
diff --git a/server/service/staff_salary.go b/server/service/staff_salary.go
index 38eedb1..3eed4d0 100644
--- a/server/service/staff_salary.go
+++ b/server/service/staff_salary.go
@@ -444,7 +444,7 @@ func (s *StaffSalary) Bill(id int64, ctx *gin.Context) {
 	baseDetail := make([]*model.SalaryBillLine, 0)
 	baseDetail = append(baseDetail, &model.SalaryBillLine{Label: "员工姓名", Value: fmt.Sprintf("%s", user.Realname)})
 	baseDetail = append(baseDetail, &model.SalaryBillLine{Label: "基本工资", Value: fmt.Sprintf("%s", user.GetSalary().Base)})
-	baseDetail = append(baseDetail, &model.SalaryBillLine{Label: "出勤工资", Value: fmt.Sprintf("%s", user.GetSalary().Target)})
+	baseDetail = append(baseDetail, &model.SalaryBillLine{Label: "绩效工资", Value: fmt.Sprintf("%s", user.GetSalary().Target)})
 	datas = append(datas, &model.SalaryBillSection{
 		Name: "基本信息",
 		Line: baseDetail,