94 lines
2.2 KiB
Go
94 lines
2.2 KiB
Go
|
package factory
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"git.kumo.work/shama/service/client"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
type contact struct {
|
||
|
}
|
||
|
|
||
|
type ContactItem struct {
|
||
|
Id int64 `json:"id"`
|
||
|
Name string `json:"name"`
|
||
|
Sex string `json:"sex"`
|
||
|
Dept string `json:"dept"`
|
||
|
Job string `json:"job"`
|
||
|
Phone string `json:"phone"`
|
||
|
Fax string `json:"fax"`
|
||
|
Email string `json:"email"`
|
||
|
Tel string `json:"tel"`
|
||
|
Info string `json:"info"`
|
||
|
MainFlag int64 `json:"mainFlag"`
|
||
|
Qq string `json:"qq"`
|
||
|
WeChat string `json:"weChat"`
|
||
|
CreatedAt *time.Time `json:"createdAt"`
|
||
|
UpdatedAt *time.Time `json:"updatedAt"`
|
||
|
}
|
||
|
|
||
|
// All @TITLE 获取联系人
|
||
|
func (c *contact) All(ctx context.Context, factoryId int64) (reply []ContactItem, err error) {
|
||
|
xClient, err := client.GetClient(c)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
err = xClient.Call(ctx, "All", factoryId, &reply)
|
||
|
return
|
||
|
}
|
||
|
|
||
|
type ArgsContactAdd struct {
|
||
|
FactoryId int64 // 工厂ID
|
||
|
ContactAdd
|
||
|
}
|
||
|
|
||
|
type ContactAdd struct {
|
||
|
Name string // 联系人姓名
|
||
|
Sex string // 性别
|
||
|
Dept string // 部门
|
||
|
Job string // 职位
|
||
|
Phone string // 电话
|
||
|
Fax string // 传真
|
||
|
Email string // 邮箱
|
||
|
Tel string // 移动电话
|
||
|
Info string // 联系人备注
|
||
|
MainFlag int64 // 主联系人 1=主联系人
|
||
|
Qq string // QQ
|
||
|
WeChat string // 微信
|
||
|
}
|
||
|
|
||
|
// Add @TITLE 添加联系人
|
||
|
func (c *contact) Add(ctx context.Context, args ArgsContactAdd) (err error) {
|
||
|
xClient, err := client.GetClient(c)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
reply := 0
|
||
|
return xClient.Call(ctx, "Add", args, &reply)
|
||
|
}
|
||
|
|
||
|
type ArgsContactEdit struct {
|
||
|
ContactId int64 // 联系人ID
|
||
|
ContactAdd
|
||
|
}
|
||
|
|
||
|
// Edit @TITLE 编辑联系人
|
||
|
func (c *contact) Edit(ctx context.Context, args ArgsContactEdit) (err error) {
|
||
|
xClient, err := client.GetClient(c)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
reply := 0
|
||
|
return xClient.Call(ctx, "Edit", args, &reply)
|
||
|
}
|
||
|
|
||
|
// Delete @TITLE 删除联系人
|
||
|
func (c *contact) Delete(ctx context.Context, contactIds []int64) (err error) {
|
||
|
xClient, err := client.GetClient(c)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
reply := 0
|
||
|
return xClient.Call(ctx, "Delete", contactIds, &reply)
|
||
|
}
|