using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
    public class ConfirmFormDetailService
    {
        /// 
        /// 增加工程签证确认单明细信息
        /// 
        /// 工程签证确认单明细实体
        public static void AddConfirmFormDetail(Model.CQMS_ConfirmFormDetail a)
        {
            Model.SGGLDB db = Funs.DB;
            Model.CQMS_ConfirmFormDetail newConfirmFormDetail = new Model.CQMS_ConfirmFormDetail();
            newConfirmFormDetail.ConfirmFormDetailId = a.ConfirmFormDetailId;
            newConfirmFormDetail.ConfirmFormId = a.ConfirmFormId;
            newConfirmFormDetail.SortIndex = a.SortIndex;
            newConfirmFormDetail.JobContent = a.JobContent;
            newConfirmFormDetail.Describe = a.Describe;
            newConfirmFormDetail.Unit = a.Unit;
            newConfirmFormDetail.Workload = a.Workload;
            newConfirmFormDetail.AuditOpinion = a.AuditOpinion;
            newConfirmFormDetail.Remark = a.Remark;
         
            db.CQMS_ConfirmFormDetail.InsertOnSubmit(newConfirmFormDetail);
            db.SubmitChanges();
        }
        /// 
        /// 修改工程签证确认单明细信息
        /// 
        /// 工程签证确认单明细实体
        public static void UpdateConfirmFormDetail(Model.CQMS_ConfirmFormDetail a)
        {
            Model.SGGLDB db = Funs.DB;
            Model.CQMS_ConfirmFormDetail newConfirmFormDetail = db.CQMS_ConfirmFormDetail.First(e => e.ConfirmFormDetailId == a.ConfirmFormDetailId);
            newConfirmFormDetail.SortIndex = a.SortIndex;
            newConfirmFormDetail.JobContent = a.JobContent;
            newConfirmFormDetail.Describe = a.Describe;
            newConfirmFormDetail.Unit = a.Unit;
            newConfirmFormDetail.Workload = a.Workload;
            newConfirmFormDetail.AuditOpinion = a.AuditOpinion;
            newConfirmFormDetail.Remark = a.Remark;
            db.SubmitChanges();
        }
        /// 
        /// 根据工程签证确认单明细编号获取工程签证确认单明细
        /// 
        /// 
        public static Model.CQMS_ConfirmFormDetail GetConfirmFormDetailByConfirmFormDetailId(string ConfirmFormDetailId)
        {
            return Funs.DB.CQMS_ConfirmFormDetail.FirstOrDefault(e => e.ConfirmFormDetailId == ConfirmFormDetailId);
        }
        /// 
        /// 下拉框选择(获取text val 参数必须有一个为空)
        /// 
        /// 
        /// 
        public static string GetValByText(string text, string val)
        {
            string str = null;
            var itemlist = checkType();
            if (!string.IsNullOrWhiteSpace(text) && !string.IsNullOrWhiteSpace(val))
            {
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(text))
                {
                    foreach (var item in itemlist)
                    {
                        if (text.Equals(item.Value))
                        {
                            str = item.Key.ToString();
                        }
                    }
                }
                if (!string.IsNullOrWhiteSpace(val))
                {
                    foreach (var item in itemlist)
                    {
                        if (val.Equals(item.Key.ToString()))
                        {
                            str = item.Value;
                        }
                    }
                }
            }
            return str;
        }
        /// 
        /// 根据工程签证确认单编号获取工程签证确认单明细集合
        /// 
        /// 
        /// 
        public static List GetLists(string confirmFormId)
        {
            return (from x in Funs.DB.CQMS_ConfirmFormDetail where x.ConfirmFormId == confirmFormId orderby x.SortIndex select x).ToList();
        }
        /// 
        /// 根据工程签证确认单编号获取工程签证确认单明细集合
        /// 
        /// 
        /// 
        public static List GetViewLists(string confirmFormId)
        {
            return (from x in Funs.DB.CQMS_ConfirmFormDetail where x.ConfirmFormId == confirmFormId orderby x.SortIndex select x).ToList();
        }
        public static Dictionary checkType()
        {
            Dictionary dic = new Dictionary();
            var list = QualityQuestionTypeService.GetQualityQuestionTypeItem();
            foreach (var item in list)
            {
                dic.Add(item.Value, item.Text);
            }
            return dic;
        }
        public static void Init(FineUIPro.DropDownList dropName, bool isShowPlease)
        {
            dropName.DataValueField = "Value";
            dropName.DataTextField = "Value";
            dropName.DataSource = checkType();
            dropName.DataBind();
            if (isShowPlease)
            {
                Funs.FineUIPleaseSelect(dropName);
            }
        }
        /// 
        /// 根据工程签证确认单明细主键删除一个工程签证确认单明细信息
        /// 
        /// 工程签证确认单明细主键
        public static void DeleteConfirmFormDetailByConfirmFormId(string ConfirmFormId)
        {
            Model.SGGLDB db = Funs.DB;
            var q = (from x in db.CQMS_ConfirmFormDetail where x.ConfirmFormId == ConfirmFormId select x).ToList();
            db.CQMS_ConfirmFormDetail.DeleteAllOnSubmit(q);
            db.SubmitChanges();
        }
        public static void DeleteConfirmFormDetailById(string id)
        {
            using (var db = new Model.SGGLDB(Funs.ConnString))
            {
                var q = (from x in db.CQMS_ConfirmFormDetail where x.ConfirmFormDetailId == id select x).ToList();
                db.CQMS_ConfirmFormDetail.DeleteAllOnSubmit(q);
                db.SubmitChanges();
            }
        }
    }
}