package cust import ( "context" "dashoo.cn/common_definition/comm_def" "dashoo.cn/opms_libary/myerrors" "github.com/gogf/gf/frame/g" "github.com/gogf/gf/os/gtime" "github.com/gogf/gf/util/gconv" "github.com/gogf/gf/util/gvalid" model "dashoo.cn/micro/app/model/cust" server "dashoo.cn/micro/app/service/cust" ) type CustomerContantHeader struct{} const ( ContantCreate = "创建联系人" ContantUpdateById = "修改联系人" ContantDeleteById = "删除联系人" ) //Create 创建客户联系人 func (c *CustomerContantHeader) Create(ctx context.Context, req *model.CustCustomerContactSeq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return err } contactService, err := server.NewCustomerContactService(ctx) if err != nil { return err } err = contactService.Create(req) _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err) if err != nil { return err } var Ids []int64 Ids = append(Ids, gconv.Int64(req.CustId)) c.OperationLog(ctx, ContantCreate, Ids, req) return nil } //UpdateById 修改联系人 func (c *CustomerContantHeader) UpdateById(ctx context.Context, req *model.UpdateCustCustomerContactSeq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return err } customerServer, err := server.NewCustomerContactService(ctx) if err != nil { return err } err = customerServer.UpdateById(req) _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err) if err != nil { return err } var Ids []int64 Ids = append(Ids, gconv.Int64(req.CustId)) c.OperationLog(ctx, ContantUpdateById, Ids, req) return nil } //GetList 客户联系人 func (c *CustomerContantHeader) GetList(ctx context.Context, req *model.ContactSeq, rsp *comm_def.CommonMsg) error { if err := gvalid.CheckStruct(ctx, req, nil); err != nil { return err } customerServer, err := server.NewCustomerContactService(ctx) if err != nil { return err } total, list, err := customerServer.GetList(req) _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err) if err != nil { return err } rsp.Data = g.Map{"list": list, "total": total} return nil } //DeleteById 删除联系人 func (c *CustomerContantHeader) DeleteById(ctx context.Context, req *model.DelCustomerContact, rsp *comm_def.CommonMsg) error { if len(req.Ids) == 0 { return myerrors.NewMsgError(nil, "参数有误") } customerServer, err := server.NewCustomerContactService(ctx) if err != nil { return err } err = customerServer.DeleteById(req.Ids) _, err, rsp.Code, rsp.Msg = myerrors.CheckError(err) if err != nil { return err } //删除联系人 记录客户Id var Ids []int64 Ids = append(Ids, gconv.Int64(req.CustId)) c.OperationLog(ctx, ContantDeleteById, Ids, req) return nil } //OperationLog 操作日志 func (c *CustomerContantHeader) OperationLog(ctx context.Context, custType string, Id []int64, req interface{}) { CustomerService, _ := server.NewCustomerService(ctx) custDynameics := new(model.AddCustomerDynameicsReq) custDynameics.OpnType = custType custDynameics.OpnDate = gtime.Now() custDynameics.OpnContent = req CustomerService.OperationLog(ctx, Id, custDynameics) }