using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BLL
{
    public static class HyperLinkSetService
    {
        /// <summary>
        /// 根据主键获取信息
        /// </summary>
        /// <param name="actTypeId"></param>
        /// <returns></returns>
        public static Model.Base_HyperLinkSet GetHyperLinkSetById(string hyperLinkSetId)
        {
            return Funs.DB.Base_HyperLinkSet.FirstOrDefault(e => e.HyperLinkId == hyperLinkSetId);
        }

        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="actType"></param>
        public static void AddHyperLinkSet(Model.Base_HyperLinkSet hyper)
        {
            Model.Base_HyperLinkSet newHyper = new Model.Base_HyperLinkSet();
            newHyper.HyperLinkId = hyper.HyperLinkId;
            newHyper.HyperLinkName = hyper.HyperLinkName;
            newHyper.HyperLinkUrl = hyper.HyperLinkUrl;
            newHyper.Remark = hyper.Remark;
            Funs.DB.Base_HyperLinkSet.InsertOnSubmit(newHyper);
            Funs.DB.SubmitChanges();
        }

        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="actType"></param>
        public static void UpdateHyperLinkSet(Model.Base_HyperLinkSet hyper)
        {
            Model.Base_HyperLinkSet newHyper = Funs.DB.Base_HyperLinkSet.FirstOrDefault(e => e.HyperLinkId == hyper.HyperLinkId);
            if (newHyper != null)
            {
                newHyper.HyperLinkName = hyper.HyperLinkName;
                newHyper.HyperLinkUrl = hyper.HyperLinkUrl;
                newHyper.Remark = hyper.Remark;
                Funs.DB.SubmitChanges();
            }
        }

        /// <summary>
        /// 根据主键删除数据
        /// </summary>
        /// <param name="actTypeId"></param>
        public static void DeleteHyperLinkSetById(string hyperLinkSetId)
        {
            Model.Base_HyperLinkSet hyper = Funs.DB.Base_HyperLinkSet.FirstOrDefault(e => e.HyperLinkId == hyperLinkSetId);
            if (hyper != null)
            {
                Funs.DB.Base_HyperLinkSet.DeleteOnSubmit(hyper);
                Funs.DB.SubmitChanges();
            }
        }

        /// <summary>
        /// 验证是否存在相同的HyperLinkName
        /// </summary>
        /// <param name="hyperLinkName"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        public static bool IsExitHyperLinkName(string hyperLinkName, string id)
        {
            var q = Funs.DB.Base_HyperLinkSet.FirstOrDefault(x => x.HyperLinkName == hyperLinkName && x.HyperLinkId != id);
            if (q != null)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        /// <summary>
        /// 获取下拉选项
        /// </summary>
        /// <param name="dropName"></param>
        /// <param name="isShowPlease"></param>
        public static void InitHyperLinkDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
        {
            dropName.DataValueField = "HyperLinkUrl";
            dropName.DataTextField = "HyperLinkName";
            dropName.DataSource = (from x in Funs.DB.Base_HyperLinkSet orderby x.HyperLinkName select x).ToList();
            dropName.DataBind();
            if (isShowPlease)
            {
                Funs.FineUIPleaseSelect(dropName);
            }
        }
    }
}