using Model;
using System.Collections.Generic;
using System.Linq;
namespace BLL
{
    /// 
    /// 自主管理加分项
    /// 
    public static class BonusScoreSelfManagementService
    {
        /// 
        /// 根据主键获取自主管理加分项信息
        /// 
        /// 
        /// 
        public static Model.Examine_BonusScoreSelfManagement GetBonusScoreSelfManagementById(string Id)
        {
            return Funs.DB.Examine_BonusScoreSelfManagement.FirstOrDefault(e => e.Id == Id);
        }
        /// 
        /// 添加自主管理加分项
        /// 
        /// 
        public static void AddBonusScoreSelfManagement(Model.Examine_BonusScoreSelfManagement model)
        {
            Model.Examine_BonusScoreSelfManagement newModel = new Model.Examine_BonusScoreSelfManagement
            {
                Id = model.Id,
                ProjectId = model.ProjectId,
                Code = model.Code,
                Name = model.Name,
                BonusScoreTypeId = model.BonusScoreTypeId,
                BonusScoreTypeName = model.BonusScoreTypeName,
                Score = model.Score,
                PersonId = model.PersonId,
                //DateTime = model.DateTime,
                CompileDate = model.CompileDate,
                CompileMan = model.CompileMan,
                Remark = model.Remark,
                Content = model.Content
            };
            Funs.DB.Examine_BonusScoreSelfManagement.InsertOnSubmit(newModel);
            Funs.DB.SubmitChanges();
        }
        /// 
        /// 修改
        /// 
        /// 
        public static void UpdateBonusScoreSelfManagement(Model.Examine_BonusScoreSelfManagement model)
        {
            Model.Examine_BonusScoreSelfManagement newModel = Funs.DB.Examine_BonusScoreSelfManagement.FirstOrDefault(e => e.Id == model.Id);
            if (newModel != null)
            {
                //newModel.Code = model.Code;
                newModel.Name = model.Name;
                newModel.BonusScoreTypeId = model.BonusScoreTypeId;
                newModel.BonusScoreTypeName = model.BonusScoreTypeName;
                newModel.Score = model.Score;
                newModel.PersonId = model.PersonId;
                //newModel.DateTime = model.DateTime;
                newModel.Content = model.Content;
                newModel.Remark = model.Remark;
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 删除
        /// 
        /// 
        public static void DeleteBonusScoreSelfManagementById(string Id)
        {
            Model.Examine_BonusScoreSelfManagement model = Funs.DB.Examine_BonusScoreSelfManagement.FirstOrDefault(e => e.Id == Id);
            if (model != null)
            {
                CommonService.DeleteAttachFileById(Id);
                Funs.DB.Examine_BonusScoreSelfManagement.DeleteOnSubmit(model);
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 获取所有List
        /// 
        /// 
        public static List GetBonusScoreSelfManagementList(string projectId, string personId, string typeId)
        {
            var list = (from x in Funs.DB.Examine_BonusScoreSelfManagement orderby x.Code descending select x).ToList();
            if (!string.IsNullOrWhiteSpace(projectId))
            {
                list = list.Where(x => x.ProjectId == projectId).ToList();
            }
            if (!string.IsNullOrWhiteSpace(personId))
            {
                list = list.Where(x => x.PersonId == personId).ToList();
            }
            if (!string.IsNullOrWhiteSpace(typeId))
            {
                list = list.Where(x => x.BonusScoreTypeId == typeId).ToList();
            }
            return list;
        }
    }
}