12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- package cases
-
- import (
- "errors"
- "spaceofcheng/services/models/cases"
- "spaceofcheng/services/models/model"
- "spaceofcheng/services/service"
- "spaceofcheng/services/utils"
- )
-
- // GetTagList 获取tag列表
- func (s *CaseServ) GetTagList(caseid, caseids string, page, pageSize int) (map[string]interface{}, error) {
- if pageSize == 0 {
- pageSize = service.PAGENUM
- }
- if page == 0 {
- page = 1
- }
- tags, err := s.dao.GetTagList(caseid, caseids, page, pageSize)
- if err != nil {
- utils.LogError("获取案场标签信息失败: " + err.Error())
- return nil, errors.New("获取案场标签信息失败")
- }
- total, err := s.dao.GetTagCount(caseid, caseids)
- if err != nil {
- utils.LogError("获取案场标签信息失败: " + err.Error())
- return nil, errors.New("获取案场标签信息失败")
- }
-
- return map[string]interface{}{
- "list": tags,
- "pagesize": pageSize,
- "pagenum": total,
- "page": page,
- }, err
- }
-
- // GetTagByID 根据ID获取标签
- func (s *CaseServ) GetTagByID(tagid string) (*cases.Tag, error) {
- tag, err := s.dao.GetTagByID(tagid)
- if err != nil {
- utils.LogError("获取案场标签信息失败: " + err.Error())
- return nil, errors.New("获取案场标签信息失败")
- }
- if tag != nil {
- tagcases, err := s.dao.GetTagCaseByTagID(tagid)
- if err != nil {
- utils.LogError("获取案场标签信息失败: " + err.Error())
- return nil, errors.New("获取案场标签信息失败")
- }
- tag.TagCases = tagcases
- }
- return tag, err
- }
-
- // SaveTag 保存标签
- func (s *CaseServ) SaveTag(tag model.SysTag, caseids string) (*model.SysTag, error) {
- var newInfo *model.SysTag
- var err error
- if tag.TagName == "" {
- return nil, utils.LogError("标签名称不能为空!")
- }
- if caseids == "" {
- return nil, utils.LogError("案场不能为空!")
- }
- if tag.TagId == "" {
- newInfo, err = s.dao.AddTag(tag)
- } else {
- err = s.dao.UpdateTag(tag)
- newInfo = &tag
- }
- if err != nil {
- utils.LogError("保存标签信息失败: " + err.Error())
- return nil, errors.New("保存标签信息失败")
- }
- err = s.dao.DelTagCase(newInfo.TagId)
- if err != nil {
- utils.LogError("保存标签信息失败: " + err.Error())
- return nil, errors.New("保存标签信息失败")
- }
- err = s.dao.SaveTagCase(newInfo.TagId, caseids)
- if err != nil {
- utils.LogError("保存标签信息失败: " + err.Error())
- return nil, errors.New("保存标签信息失败")
- }
- return newInfo, err
- }
-
- // DelTag 删除标签
- func (s *CaseServ) DelTag(tagid string) error {
- err := s.dao.DeleteTag(tagid)
- if err != nil {
- utils.LogError("删除标签失败: " + err.Error())
- return errors.New("删除标签失败")
- }
- return err
- }
|