Example #1
0
        public static System.Data.DataTable TransDTOToTable(Dictionary<string, Model.DTO.UKHandleNumDetail> ukNumList)
        {
            Model.DTO.UKHandleNumDetail ukNum = new Model.DTO.UKHandleNumDetail();
            System.Data.DataTable dt = new System.Data.DataTable();
            //初始化列
            //ID
            System.Data.DataColumn col = new System.Data.DataColumn();
            col.Caption = "ID";
            col.ColumnName = "ID";
            dt.Columns.Add(col);
            //合同编号
            col = new System.Data.DataColumn();
            col.Caption = "合同编号";
            col.ColumnName = "ContractNum";
            dt.Columns.Add(col);
            //学生姓名
            col = new System.Data.DataColumn();
            col.Caption = "学生姓名";
            col.ColumnName = "StudentName";
            dt.Columns.Add(col);
            //申请学历
            col = new System.Data.DataColumn();
            col.Caption = "申请学历";
            col.ColumnName = "Education";
            dt.Columns.Add(col);
            //前四
            col = new System.Data.DataColumn();
            col.Caption = "前四";
            col.ColumnName = "FirstFour";
            dt.Columns.Add(col);
            //博士
            col = new System.Data.DataColumn();
            col.Caption = "博士";
            col.ColumnName = "Doctor";
            dt.Columns.Add(col);
            //合作
            col = new System.Data.DataColumn();
            col.Caption = "合作";
            col.ColumnName = "Cooperation";
            dt.Columns.Add(col);
            //申请个数
            col = new System.Data.DataColumn();
            col.Caption = "申个";
            col.ColumnName = "ApplyNum";
            dt.Columns.Add(col);
            //网申个数
            col = new System.Data.DataColumn();
            col.Caption = "网个";
            col.ColumnName = "OnlineNum";
            dt.Columns.Add(col);
            //文书个数
            col = new System.Data.DataColumn();
            col.Caption = "文个";
            col.ColumnName = "PSNum";
            dt.Columns.Add(col);
            //资深文案
            col = new System.Data.DataColumn();
            col.Caption = "资深文案";
            col.ColumnName = "Senior";
            dt.Columns.Add(col);
            //制作文案
            col = new System.Data.DataColumn();
            col.Caption = "制作文案";
            col.ColumnName = "Author";
            dt.Columns.Add(col);
            //高级文书文案
            col = new System.Data.DataColumn();
            col.Caption = "高级文案";
            col.ColumnName = "OldSenior";
            dt.Columns.Add(col);
            //文书文案
            col = new System.Data.DataColumn();
            col.Caption = "文书文案";
            col.ColumnName = "OldAuthor";
            dt.Columns.Add(col);
            //转案区间
            col = new System.Data.DataColumn();
            col.Caption = "转案区间";
            col.ColumnName = "GetPeriod";
            dt.Columns.Add(col);
            //备注
            col = new System.Data.DataColumn();
            col.Caption = "备注";
            col.ColumnName = "Note";
            dt.Columns.Add(col);

            foreach (Model.DTO.UKHandleNumDetail item in ukNumList.Values)
            {
                System.Data.DataRow row = dt.NewRow();
                row["ID"] = item.ID;
                row["ContractNum"] = item.ContractNum;
                row["StudentName"] = item.StudentName;
                row["Education"] = item.Education;
                row["FirstFour"] = item.UK.FirstFour;
                row["Doctor"] = item.UK.Doctor;
                row["Cooperation"] = item.UK.Cooperation;
                row["ApplyNum"] = item.QuanType.ApplyNum;
                row["OnlineNum"] = item.QuanType.OnlineNum;
                row["PSNum"] = item.QuanType.PSNum;
                row["Author"] = item.CopyWriting.Author;
                row["Senior"] = item.CopyWriting.Senior;
                row["OldSenior"] = item.CopyWriting.OldSenior;
                row["OldAuthor"] = item.CopyWriting.OldAuthor;
                row["GetPeriod"] = item.GetPeriod;
                row["Note"] = item.Note;
                dt.Rows.Add(row);
            }
            return dt;
        }
        private bool CollectData(bool isInsert)
        {
            if (string.IsNullOrEmpty(this.mruContractNum.Text))
            {
                XtraMessageBox.Show("合同编号不能为空。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return false;
            }
            if (string.IsNullOrEmpty(this.mruStudentName.Text))
            {
                XtraMessageBox.Show("学生姓名不能为空。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return false;
            }
            if (string.IsNullOrEmpty(this.cbEducation.Text))
            {
                XtraMessageBox.Show("申请学历不能为空。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return false;
            }
            if (this.dtSendDate.EditValue == null)
            {
                XtraMessageBox.Show("寄出日期不能为空。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return false;
            }
            if (string.IsNullOrEmpty(this.mruSenior.Text))
            {
                XtraMessageBox.Show("资深文案不能为空。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return false;
            }
            if (!Controller.SQLiteController.BizContract.CheckNumSendDate(this.mruContractNum.Text))
            {
                if (XtraMessageBox.Show("当前合同信息还没有转交外联日期,\r\n是否仍要新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No)
                {
                    return false;
                }
            }
            if (!Controller.SQLiteController.BizContract.CheckNumSubmit(this.mruContractNum.Text))
            {
                if (XtraMessageBox.Show("当前合同信息可能已经报过个数,\r\n是否仍要新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.No)
                {
                    return false;
                }
            }

            if (this.country == Model.MotivationEnum.CountryEnum.UK)//英国
            {
                if (isInsert)
                {
                    if (Controller.MainWin.MotivationData.Instanse.HandleNum.UKDetails.Keys.Contains(this.mruContractNum.Text))
                    {
                        XtraMessageBox.Show("已存在合同号为“" + this.mruContractNum.Text + "”的寄出个数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return false;
                    }
                }

                Model.DTO.UKHandleNumDetail ukHandleNumDetail = new Model.DTO.UKHandleNumDetail();
                ukHandleNumDetail.ContractNum = this.mruContractNum.Text;
                ukHandleNumDetail.StudentName = this.mruStudentName.Text;
                ukHandleNumDetail.Education = this.cbEducation.Text;
                ukHandleNumDetail.SendDate = this.dtSendDate.DateTime;
                ukHandleNumDetail.CopyWriting.Senior = this.mruSenior.Text;
                ukHandleNumDetail.CopyWriting.Author = this.tbAuthor.Text;
                ukHandleNumDetail.CopyWriting.OldAuthor = this.tbOldAuthor.Text;
                ukHandleNumDetail.CopyWriting.OldSenior = this.tbOldSenior.Text;
                ukHandleNumDetail.UK.FirstFour = this.cbFirstFour.Text;
                ukHandleNumDetail.UK.Doctor = this.cbDoctor.Text;
                ukHandleNumDetail.UK.Cooperation = this.cbCooperation.Text;
                ukHandleNumDetail.QuanType.ApplyNum = this.cbApplyNum.Text;
                ukHandleNumDetail.QuanType.OnlineNum = this.cbOnlineNum.Text;
                ukHandleNumDetail.QuanType.PSNum = this.cbPSNum.Text;
                ukHandleNumDetail.GetPeriod = this.cbGetPeriod.Text;
                ukHandleNumDetail.Note = this.tbNote.Text;
                this.HandleNumDetail = ukHandleNumDetail;
                return true;
            }
            else
            {
                if (isInsert)
                {
                    if (Controller.MainWin.MotivationData.Instanse.HandleNum.HKDetails.Keys.Contains(this.mruContractNum.Text))
                    {
                        XtraMessageBox.Show("已存在合同号为“" + this.mruContractNum.Text + "”的寄出个数", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return false;
                    }
                }
                Model.DTO.HKHandleNumDetail hkHandleNumDetail = new Model.DTO.HKHandleNumDetail();
                hkHandleNumDetail.ContractNum = this.mruContractNum.Text;
                hkHandleNumDetail.StudentName = this.mruStudentName.Text;
                hkHandleNumDetail.Education = this.cbEducation.Text;
                hkHandleNumDetail.SendDate = this.dtSendDate.DateTime;
                hkHandleNumDetail.CopyWriting.Senior = this.mruSenior.Text;
                hkHandleNumDetail.CopyWriting.Author = this.tbAuthor.Text;
                hkHandleNumDetail.HK.Doctor = this.cbDoctor.Text;
                hkHandleNumDetail.Application = this.cbApplication.Text;
                hkHandleNumDetail.Visa = this.cbVisa.Text;
                hkHandleNumDetail.Note = this.tbNote.Text;
                this.HandleNumDetail = hkHandleNumDetail;
                return true;
            }
        }
 public static Model.DTO.HandleNum LoadNumXml(string filePath)
 {
     if (string.IsNullOrEmpty(filePath))
     {
         return null;
     }
     XmlDocument xmlDoc = new XmlDocument();
     xmlDoc.Load(filePath);
     if (xmlDoc == null)
     {
         return null;
     }
     Model.DTO.HandleNum handleNum = new Model.DTO.HandleNum();
     //首先加载UKDetails
     Dictionary<string, Model.DTO.UKHandleNumDetail> ukDetails = new Dictionary<string, Model.DTO.UKHandleNumDetail>();
     XmlNodeList nodelList = xmlDoc.SelectNodes("Performance/HandleNum/UKDetails/Detail");
     if (nodelList != null && nodelList.Count > 0)
     {
         foreach (XmlNode node in nodelList)
         {
             Model.DTO.UKHandleNumDetail detail = new Model.DTO.UKHandleNumDetail();
             detail.ID = node.Attributes["ID"].Value;
             detail.ContractNum = node.Attributes["ContractNum"].Value;
             detail.StudentName = node.Attributes["StudentName"].Value;
             detail.Education = node.Attributes["Education"].Value;
             detail.CopyWriting.Senior = node.SelectSingleNode("Copywriting").Attributes["Senior"].Value;
             detail.CopyWriting.Author = node.SelectSingleNode("Copywriting").Attributes["Author"].Value;
             detail.CopyWriting.OldSenior = node.SelectSingleNode("Copywriting").Attributes["OldSenior"] == null ? "" : node.SelectSingleNode("Copywriting").Attributes["OldSenior"].Value;
             detail.CopyWriting.OldAuthor = node.SelectSingleNode("Copywriting").Attributes["OldAuthor"] == null ? "" : node.SelectSingleNode("Copywriting").Attributes["OldAuthor"].Value;
             detail.SendDate = DateTime.Parse(node.Attributes["SendDate"].Value);
             detail.Note = node.Attributes["Note"].Value;
             detail.UK.Cooperation = node.SelectSingleNode("UK").Attributes["Cooperation"].Value;
             detail.UK.Doctor = node.SelectSingleNode("UK").Attributes["Doctor"].Value;
             detail.UK.FirstFour = node.SelectSingleNode("UK").Attributes["FirstFour"].Value;
             detail.QuanType.ApplyNum = node.SelectSingleNode("QuanType") == null ? "" : node.SelectSingleNode("QuanType").Attributes["ApplyNum"].Value;
             detail.QuanType.OnlineNum = node.SelectSingleNode("QuanType") == null ? "" : node.SelectSingleNode("QuanType").Attributes["OnlineNum"].Value;
             detail.QuanType.PSNum = node.SelectSingleNode("QuanType") == null ? "" : node.SelectSingleNode("QuanType").Attributes["PSNum"].Value;
             detail.GetPeriod = node.Attributes["GetPeriod"] == null ? "" : node.Attributes["GetPeriod"].Value;
             ukDetails.Add(detail.ContractNum, detail);
         }
     }
     handleNum.UKDetails = ukDetails;
     //然后加载HKDetails
     Dictionary<string, Model.DTO.HKHandleNumDetail> hkDetails = new Dictionary<string, Model.DTO.HKHandleNumDetail>();
     nodelList = xmlDoc.SelectNodes("Performance/HandleNum/HKDetails/Detail");
     if (nodelList != null && nodelList.Count > 0)
     {
         foreach (XmlNode node in nodelList)
         {
             Model.DTO.HKHandleNumDetail detail = new Model.DTO.HKHandleNumDetail();
             detail.ID = node.Attributes["ID"].Value;
             detail.ContractNum = node.Attributes["ContractNum"].Value;
             detail.StudentName = node.Attributes["StudentName"].Value;
             detail.Education = node.Attributes["Education"].Value;
             detail.CopyWriting.Senior = node.SelectSingleNode("Copywriting").Attributes["Senior"].Value;
             detail.CopyWriting.Author = node.SelectSingleNode("Copywriting").Attributes["Author"].Value;
             detail.SendDate = DateTime.Parse(node.Attributes["SendDate"].Value);
             detail.Application = node.Attributes["Application"].Value;
             detail.HK.Doctor = node.SelectSingleNode("HK").Attributes["Doctor"].Value;
             detail.Note = node.Attributes["Note"].Value;
             detail.Visa = node.Attributes["Visa"].Value;
             hkDetails.Add(detail.ContractNum, detail);
         }
     }
     handleNum.HKDetails = hkDetails;
     handleNum.HandleDate = DateTime.Now;
     return handleNum;
 }