/// <summary> /// 校验标签信息 /// </summary> /// <param name="dto"></param> /// <param name="rm"></param> /// <returns></returns> public ReturnMsg CheckTagInfo(TagMstrDto dto, ReturnMsg rm) { if (string.IsNullOrEmpty(dto.TAG_NAME)) { rm.IsSuccess = false; rm.msg = "请填写标签名称"; return(rm); } if (string.IsNullOrEmpty(dto.TAG_TYPE)) { rm.IsSuccess = false; rm.msg = "请选择标签分类"; return(rm); } var result = string.IsNullOrEmpty(dto.Id) ? _tagMstrRepository.GetAllList(c => c.TAG_NAME == dto.TAG_NAME && c.DEL_FLAG == 1 && c.CREATE_ORG_NO == AbpSession.ORG_NO) : _tagMstrRepository.GetAllList(c => c.Id != dto.Id && c.TAG_NAME == dto.TAG_NAME && c.DEL_FLAG == 1 && c.CREATE_ORG_NO == AbpSession.ORG_NO); if (result.Count > 0) { rm.IsSuccess = false; rm.msg = "该标签名称已存在"; return(rm); } rm.IsSuccess = true; return(rm); }
/// <summary> /// 更新用户标签记录 /// </summary> /// <param name="wct"></param> /// <param name="rm"></param> /// <returns></returns> public ReturnMsg UpdateTagHistInfo(SysUsrWctDto wct, ReturnMsg rm) { var histList = _tagHistRepository.GetAllList(c => c.TAG_REF_ROW_NO == wct.Id && c.DEL_FLAG == 1); var newList = wct.tagIds.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList(); var oldList = histList.Select(c => c.TAG_REF_FIELD_ID).ToList(); var result = newList.Except <string>(oldList).ToList(); if (result.Count == 0) { rm.IsSuccess = true; return(rm); } var paInfo = _wxHelper.GetPaInfo(1, c => c.PA_ID_NO == AbpSession.ORG_NO, AbpSession.BG_NO); if (paInfo == null) { rm.IsSuccess = false; rm.msg = "公众号信息不存在"; return(rm); } var requestToken = _wxHelper.GetAccessToken(paInfo, wct.BG_NO); if (!requestToken.IsSuccess) { return(rm); } var tagList = _tagMstrRepository.GetAllList(c => c.CREATE_ORG_NO == wct.BU_NO && c.DEL_FLAG == 1); foreach (var item in result) { var tagHist = new TagHist(); var tag = new TagMstr(); tag = tagList.Where(c => c.TAG_REF_FIELD_ID == item).FirstOrDefault(); var hist = histList.Where(c => c.TAG_REF_ROW_NO == item).FirstOrDefault(); if (hist == null) { rm = AddTag(wct.OPEN_ID, item, requestToken.result, rm); if (!rm.IsSuccess) { return(rm); } tagHist.Id = Guid.NewGuid().ToString(); tagHist.TAG_CODE = tag.Id; tagHist.TAG_VALUE = tag.TAG_NAME; tagHist.TAG_REF_ROW_NO = wct.Id; tagHist.TAG_REF_TABLE_ID = "SYS_USR_WCT"; tagHist.CREATE_TIME = DateTime.Now; tagHist.TAG_SDATE = DateTime.Now; tagHist.TAG_FROM = "手工"; tagHist.TAG_MSTR_ID = "0"; tagHist.TAG_VERSION = "0"; tagHist.TAG_VALUE_DESC = "0"; tagHist.TAG_REF_DB_ID = "0"; tagHist.TAG_REF_FIELD_ID = item; tagHist.TAG_RULE_ID = "0"; tagHist.TAG_EDATE = DateTime.MaxValue; _initHelper.InitAdd(tagHist, AbpSession.USR_ID, wct.BU_NO, wct.BG_NO); } else { rm = DelTag(wct.OPEN_ID, item, requestToken.result, rm); if (!rm.IsSuccess) { return(rm); } _tagHistRepository.DelTagHistInfo(wct.Id, item); } } return(rm); }