package logic import ( "context" "database/sql" "git.i2edu.net/i2/i2-bill-erp/internal/svc" "git.i2edu.net/i2/i2-bill-erp/internal/utils" "git.i2edu.net/i2/i2-bill-erp/model" "git.i2edu.net/i2/i2-bill-erp/transform" "git.i2edu.net/i2/go-zero/core/logx" "git.i2edu.net/i2/go-zero/core/stores/sqlc" ) type AddMktLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewAddMktLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AddMktLogic { return &AddMktLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } func (l *AddMktLogic) AddMkt(in *transform.MktReq) (*transform.MktRes, error) { old := model.MktResource{} err := l.svcCtx.SqlConn.QueryRowPartial(&old, "select id from mkt_resource where `stu_phone` = ? and del_flag!=1 limit 1", in.StuPhone) if err == sqlc.ErrNotFound { mkt := model.MktResource{} mkt.DelFlag = 0 mkt.CreateBy = sql.NullString{String: in.MkId} mkt.CreateTime = sql.NullTime{Time: utils.ParseTime(in.CreateTime)} mkt.LastUpdateTime = sql.NullTime{Time: utils.ParseTime(in.CreateTime)} mkt.LastUpdateBy = sql.NullString{String: in.MkId} mkt.StuName = sql.NullString{String: in.StuName} mkt.StuLinkPerson = sql.NullString{String: in.StuLinkPerson} mkt.StuPhone = sql.NullString{String: in.StuPhone} mkt.SchId = sql.NullInt64{Int64: in.SchId} mkt.StuAddress = sql.NullString{String: in.Address} mkt.AgeGroup = sql.NullInt64{Int64: in.AgeGroup} mkt.StuType = 8 mkt.NetworkDetail = sql.NullInt64{Int64: in.NetworkDetailId} mkt.CallType = sql.NullInt64{Int64: in.CallType} mkt.MaType = sql.NullInt64{Int64: in.MaType} mkt.QuaoYji = sql.NullInt64{Int64: in.QuaoYji} mkt.LoadUser = sql.NullString{String: in.MkId} _, err = l.svcCtx.MktResourceModel.Insert(mkt) if err != nil { l.Logger.Error(err) return &transform.MktRes{Status: 500}, nil } return &transform.MktRes{Status: 200}, nil } if old.Id != 0 { // 已经存在不处理 return &transform.MktRes{Status: 201}, nil } return &transform.MktRes{Status: 500}, nil }