using System.Collections.Generic;
using System.Linq;
namespace BLL
{
    /// 
    /// 作业票-安全措施
    /// 
    public static class APILicenseItemService
    {
        #region 根据主键ID获取作业票安全措施详细
        /// 
        ///  根据主键ID获取安全措施详细
        /// 
        /// 主键
        /// 
        public static Model.LicenseItem getLicenseItemById(string licenseItemId)
        {
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
            {
                var getInfo = from x in db.License_LicenseItem
                              where x.LicenseItemId == licenseItemId
                              select new Model.LicenseItem
                              {
                                  LicenseItemId = x.LicenseItemId,
                                  DataId = x.DataId,
                                  SortIndex = x.SortIndex ?? 1,
                                  SafetyMeasures = x.SafetyMeasures,
                                  IsUsed = x.IsUsed ?? true,
                                  ConfirmManId = x.ConfirmManId,
                                  ConfirmManName = db.Sys_User.First(u => u.UserId == x.ConfirmManId).UserName,
                              };
                return getInfo.FirstOrDefault();
            }
        }
        #endregion        
        #region 获取作业票安全措施列表信息
        /// 
        /// 获取作业票安全措施列表信息
        /// 
        /// 单据ID
        /// 
        public static List getLicenseItemList(string dataId)
        {
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
            {
                var getDataList = from x in db.License_LicenseItem
                                  where x.DataId == dataId
                                  orderby x.SortIndex
                                  select new Model.LicenseItem
                                  {
                                      LicenseItemId = x.LicenseItemId,
                                      DataId = x.DataId,
                                      SortIndex = x.SortIndex ?? 1,
                                      SafetyMeasures = x.SafetyMeasures,
                                      IsUsed = x.IsUsed ?? true,
                                      ConfirmManId = x.ConfirmManId,
                                      ConfirmManName = db.Sys_User.First(u => u.UserId == x.ConfirmManId).UserName,
                                  };
                return getDataList.ToList();
            }
        }
        #endregion
        #region 保存作业票-安全措施
        /// 
        /// 保存作业票-安全措施
        /// 
        /// 安全措施集合
        /// 
        public static void SaveLicenseItemList(List< Model.LicenseItem> licenseItemList)
        {
            foreach (var item in licenseItemList)
            {
                Model.License_LicenseItem newLicenseItem = new Model.License_LicenseItem
                {                   
                    DataId = item.DataId,
                    SortIndex = item.SortIndex,
                    SafetyMeasures = item.SafetyMeasures,
                    IsUsed = item.IsUsed,
                    ConfirmManId = item.ConfirmManId,
                };
                LicensePublicService.AddLicenseItem(newLicenseItem);
            }
        }
        #endregion
    }
}