| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- package plat
- import (
- "context"
- "dashoo.cn/micro/app/dao/plat"
- model "dashoo.cn/micro/app/model/plat"
- "dashoo.cn/micro/app/service"
- "dashoo.cn/opms_libary/myerrors"
- "dashoo.cn/opms_libary/request"
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/os/gtime"
- "github.com/gogf/gf/util/gvalid"
- )
- type questionnaireService struct {
- *service.ContextService
- userInfo request.UserInfo
- Dao *plat.PlatQuestionnaireDao
- }
- func NewQuestionnaireService(ctx context.Context) (svc *questionnaireService, err error) {
- svc = new(questionnaireService)
- if svc.ContextService, err = svc.Init(ctx); err != nil {
- return nil, err
- }
- svc.Dao = plat.NewPlatQuestionnaireDao(svc.Tenant)
- return svc, nil
- }
- func (s questionnaireService) GetList(req *model.SearchPlatQuestionnaireReq) (total int, PlatQuestionnaireList []*model.PlatQuestionnaireEx, err error) {
- Model := s.Dao.Where("1=1")
- if req.UnitName != "" {
- Model = Model.Where("unit_name LIKE ?", "%"+req.UnitName+"%")
- }
- if req.ObjPosition != "" {
- Model = Model.Where("obj_position LIKE ?", "%"+req.ObjPosition+"%")
- //Model = Model.Where("obj_position=?", req.ObjPosition)
- }
- if req.ObjName != "" {
- Model = Model.Where("obj_name LIKE ?", "%"+req.ObjName+"%")
- }
- if req.ObjPhone != "" {
- Model = Model.Where("obj_phone LIKE ?", "%"+req.ObjPhone+"%")
- }
- if req.ObjWechat != "" {
- Model = Model.Where("obj_wechat LIKE ?", "%"+req.ObjWechat+"%")
- }
- if req.CsnMatters != "" {
- Model = Model.Where("csn_matters LIKE ?", "%"+req.CsnMatters+"%")
- }
- if req.QstStatus != "" {
- Model = Model.Where("qst_status = ?", req.QstStatus)
- }
- if req.FollowUp != "" {
- Model = Model.Where("follow_up LIKE ?", "%"+req.FollowUp+"%")
- }
- if req.Remark != "" {
- Model = Model.Where("remark LIKE ?", "%"+req.Remark+"%")
- }
- total, err = Model.Count()
- if err != nil {
- g.Log().Error(err)
- err = myerrors.DbError("获取总行数失败。")
- return
- }
- err = Model.Page(req.GetPage()).Order("created_time DESC").Scan(&PlatQuestionnaireList)
- return
- }
- func (s questionnaireService) Create(ctx context.Context, req *model.AddPlatQuestionnaire) error {
- validErr := gvalid.CheckStruct(ctx, req, nil)
- if validErr != nil {
- return myerrors.TipsError(validErr.Current().Error())
- }
- req.QstStatus = "10"
- req.CreatedBy = s.userInfo.Id
- req.CreatedName = s.userInfo.UserName
- req.CreatedTime = gtime.Now()
- res, err := s.Dao.Insert(req)
- if err != nil {
- return err
- }
- _, err = res.LastInsertId()
- return err
- }
- func (s questionnaireService) Update(ctx context.Context, req *model.AddPlatQuestionnaire) error {
- validErr := gvalid.CheckStruct(ctx, req, nil)
- if validErr != nil {
- return myerrors.TipsError(validErr.Current().Error())
- }
- if req.Id == 0 {
- return nil
- }
- req.UpdatedBy = s.userInfo.Id
- req.UpdatedName = s.userInfo.UserName
- req.UpdatedTime = gtime.Now()
- _, err := s.Dao.Data(req).Where("id=?", req.Id).Update()
- if err != nil {
- return err
- }
- return err
- }
- func (s questionnaireService) Delete(ctx context.Context, req *model.IdsReq) error {
- validErr := gvalid.CheckStruct(ctx, req, nil)
- if validErr != nil {
- return myerrors.TipsError(validErr.Current().Error())
- }
- if len(req.Id) == 0 {
- return nil
- }
- _, err := s.Dao.Data(g.Map{"deleted_time": gtime.Now()}).Where("id=?", req.Id).Update()
- if err != nil {
- return err
- }
- return err
- }
- func (s questionnaireService) GetEntityById(ctx context.Context, id int) (entity model.PlatQuestionnaireEx, err error) {
- if id == 0 {
- return entity, err
- }
- err = s.Dao.Where("Id = ?", id).Scan(&entity)
- if err != nil {
- return entity, err
- }
- return entity, err
- }
|