package service import ( cm "app.yhyue.com/moapp/jybase/common" . "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/entity" "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/knowledgeclient" "bp.jydev.jianyu360.cn/SocialPlatform/knowledgeBase/rpc/knowledge/util" "time" ) type CommonPhrasesService struct{} // CommonPhrasesAdd 客服话术添加 func (c *CommonPhrasesService) CommonPhrasesAdd(param *knowledgeclient.CommonPhrasesAddReq) (ok bool, msg string) { ok = true msg = "操作成功" if param.Id > 0 { //编辑 updateData := map[string]interface{}{ "classify": param.Classify, "content": param.Content, "createPerson": param.EntUserId, "createTime": time.Now().Local().Format(util.DateFullLayout), } ok = Mysql.Update(util.COMMONPHRASES, map[string]interface{}{"id": param.Id}, updateData) if !ok { msg = "操作失败" } } else { insertData := map[string]interface{}{ "entId": param.EntId, "appId": param.AppId, "classify": param.Classify, "content": param.Content, "createPerson": param.EntUserId, "status": 0, "createTime": time.Now().Local().Format(util.DateFullLayout), } in := Mysql.Insert(util.COMMONPHRASES, insertData) if in < 0 { ok = false msg = "操作失败" } } return ok, msg } // CommonPhrasesInfo 客服话术详情 func (c *CommonPhrasesService) CommonPhrasesInfo(id int64) (data *knowledgeclient.CommonPhrases, ok bool) { info := Mysql.FindOne(util.COMMONPHRASES, map[string]interface{}{"id": id}, "", "") if info != nil && len(*info) > 0 { data = &knowledgeclient.CommonPhrases{} data.Id = cm.Int64All((*info)["id"]) data.Classify = cm.ObjToString((*info)["classify"]) data.Content = cm.ObjToString((*info)["content"]) return data, true } return nil, false } // CommonPhrasesDel 客服话术删除 func (c *CommonPhrasesService) CommonPhrasesDel(id int64) bool { ok := Mysql.Update(util.COMMONPHRASES, map[string]interface{}{"id": id}, map[string]interface{}{"status": 1}) return ok } // CommonPhrasesList 客服话术列表 func (c *CommonPhrasesService) CommonPhrasesList(param *knowledgeclient.CommonPhrasesListReq) *knowledgeclient.CommonPhrasesList { var commonPhrasesList knowledgeclient.CommonPhrasesList var data []*knowledgeclient.CommonPhrases count := Mysql.Count(util.COMMONPHRASES, map[string]interface{}{"status": 0, "appId": param.AppId, "entId": param.EntId}) if count > 0 { dataList := Mysql.Find(util.COMMONPHRASES, map[string]interface{}{"status": 0, "appId": param.AppId, "entId": param.EntId}, "", "id desc", cm.IntAll((param.PageIndex-1)*param.PageSize), cm.IntAll(param.PageSize)) if dataList != nil && len(*dataList) > 0 { for _, val := range *dataList { data = append(data, &knowledgeclient.CommonPhrases{ Id: cm.Int64All(val["id"]), Content: cm.ObjToString(val["content"]), Classify: cm.ObjToString(val["classify"]), }) } } commonPhrasesList.Data = data commonPhrasesList.Total = count } return &commonPhrasesList }