using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using YLErp.DBModels;
using YLErp.Enums;
using YLErp.Modules.TagModule;
using YLErp.Modules.TagModule.Dto;
namespace YLErp.Web.Controllers
{
public class TagController : BaseController
{
[MyAuthorize("系统管理-标签管理")]
public ActionResult Index()
{
return View();
}
[MyAuthorize("系统管理-标签编辑权限")]
public ActionResult Edit(int id)
{
sys_tag model = null;
if (id == 0)
{
model = new sys_tag() { TagType = (int)TagTypeEnum.Trade };
}
else
{
using (var service = new TagService(CurUser))
{
model = service.GetById(id);
}
}
return View(model);
}
[HttpPost]
public JsonResult SearchTag(SearchTagRequest req)
{
using (var service=new TagService(CurUser))
{
var list = service.SearchTag(req);
return Json(list);
}
}
[HttpPost]
[MyAuthorize("系统管理-标签编辑权限")]
public JsonResult DeleteTag(DeleteTagRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.DeleteTag(req);
return Json(res);
}
}
[HttpPost]
[MyAuthorize("系统管理-标签编辑权限")]
public JsonResult SaveTag(SaveTagRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.SaveTag(req);
return Json(res);
}
}
#region 交易标签相关接口
[HttpPost]
public JsonResult SetTradeTagForTradeForView(SetTradeTagForTradeForViewRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.SetTradeTagForTradeForView(req);
return Json(res);
}
}
[HttpPost]
public JsonResult DeleteTradeTagByTagId(DeleteTradeTagByTagIdRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.DeleteTradeTagByTagId(req);
return Json(res);
}
}
public ActionResult BatchSetTradeTag(string ids)
{
ViewBag.Ids = ids;
using (var tagService = new TagService(CurUser))
{
ViewBag.TagList = tagService.GetTagListByType(TagTypeEnum.Trade);
}
return View();
}
///
/// 批量设置标签
///
///
///
[HttpPost]
public JsonResult SaveBatchSetTradeTag(SaveBatchSetTradeTagRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.SaveBatchSetTradeTag(req);
return Json(res);
}
}
///
/// 获取交易标签集合
///
///
public static List GetTradeTagList(UserInfo user, TagTypeEnum tagType=TagTypeEnum.Trade)
{
List tagList;
using (var service = new TagService(user))
{
tagList = service.GetTagListByType(tagType);
}
if (tagList != null && tagList.Any())
{
return tagList.Select(p => new SelectListItem
{
Text = p.Name + "",
Value = p.id + ""
}).ToList();
}
return new List();
}
#endregion
#region 客户标签相关接口
[HttpPost]
public JsonResult SetClientTagForClientView(SetClientTagForClientViewRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.SetClientTagForClientView(req);
return Json(res);
}
}
[HttpPost]
public JsonResult DeleteClientTagByTagId(DeleteClientTagByTagIdRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.DeleteClientTagByTagId(req);
return Json(res);
}
}
public ActionResult BatchSetClientTag(string ids)
{
ViewBag.Ids = ids;
using (var tagService = new TagService(CurUser))
{
ViewBag.TagList = tagService.GetTagListByType(TagTypeEnum.Customer);
}
return View();
}
///
/// 批量设置标签
///
///
///
[HttpPost]
public JsonResult SaveBatchSetClientTag(SaveBatchSetClientTagRequest req)
{
using (var service = new TagService(CurUser))
{
var res = service.SaveBatchSetClientTag(req);
return Json(res);
}
}
///
/// 获取客户标签集合
///
///
public static List GetClientTagList(UserInfo user)
{
List tagList;
using (var service = new TagService(user))
{
tagList = service.GetTagListByType(Enums.TagTypeEnum.Customer);
}
if (tagList != null && tagList.Any())
{
return tagList.Select(p => new SelectListItem
{
Text = p.Name + "",
Value = p.id + ""
}).ToList();
}
return new List();
}
#endregion
}
}