コード例 #1
0
        /// <summary>
        /// �õ�һ������ʵ��
        /// </summary>
        public LabMS.Model.PersonalProjConsume GetModel(int ID)
        {
            StringBuilder strSql=new StringBuilder();
            strSql.Append("select  top 1 ID,PersonalProjID,EquipName,EquipType,EquipNum,Introduction from PersonalProjConsume ");
            strSql.Append(" where ID=@ID ");
            SqlParameter[] parameters = {
                    new SqlParameter("@ID", SqlDbType.Int,4)};
            parameters[0].Value = ID;

            LabMS.Model.PersonalProjConsume model=new LabMS.Model.PersonalProjConsume();
            DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters);
            if(ds.Tables[0].Rows.Count>0)
            {
                if(ds.Tables[0].Rows[0]["ID"].ToString()!="")
                {
                    model.ID=int.Parse(ds.Tables[0].Rows[0]["ID"].ToString());
                }
                if(ds.Tables[0].Rows[0]["PersonalProjID"].ToString()!="")
                {
                    model.PersonalProjID=int.Parse(ds.Tables[0].Rows[0]["PersonalProjID"].ToString());
                }
                model.EquipName=ds.Tables[0].Rows[0]["EquipName"].ToString();
                if(ds.Tables[0].Rows[0]["EquipType"].ToString()!="")
                {
                    model.EquipType=int.Parse(ds.Tables[0].Rows[0]["EquipType"].ToString());
                }
                if(ds.Tables[0].Rows[0]["EquipNum"].ToString()!="")
                {
                    model.EquipNum=int.Parse(ds.Tables[0].Rows[0]["EquipNum"].ToString());
                }
                model.Introduction=ds.Tables[0].Rows[0]["Introduction"].ToString();
                return model;
            }
            else
            {
                return null;
            }
        }
コード例 #2
0
        //保存
        protected void btnSave_Click(object sender, EventArgs e)
        {
            #region 验证
            if (string.IsNullOrEmpty(ProjectName.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "项目名称不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(PlanHours.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "计划学时不能为空!");
                return;
            }
            int hour = 0;
            if (!int.TryParse(PlanHours.Text.Trim(), out hour))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "计划学时只能输入数字!");
                return;
            }
            if (ddlApplyLab.SelectedValue.ToString().Equals("0"))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "申请实验室不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(ApplyTimeMin.Text.Trim()) || string.IsNullOrEmpty(ApplyTimeMax.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "申请时间不能为空!");
                return;
            }
            else
            {
                if (Convert.ToDateTime(ApplyTimeMin.Text.Trim()) > Convert.ToDateTime(ApplyTimeMax.Text.Trim()))
                {
                    LabMS.Common.JShelper.JSAlert(Page, "err", "申请开始时间大于结束时间!");
                    return;
                }
            }
            if (string.IsNullOrEmpty(tb_StudentIDs.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "申请人不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(Contactor.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "联系人不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(ContactPhone.Text.Trim()))
            {
                LabMS.Common.JShelper.JSAlert(Page, "err", "联系人的联系电话不能为空!");
                return;
            }

            string strRegex = @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
            Regex re = new Regex(strRegex);
            if (!string.IsNullOrEmpty(ContactEmail.Text.Trim()))
            {
                if (!re.IsMatch(ContactEmail.Text.Trim()))
                {
                    LabMS.Common.JShelper.JSAlert(Page, "err", "联系人的EMail地址格式不正确!");
                    return;
                }
            }
            if (!string.IsNullOrEmpty(TeacherEmail.Text.Trim()))
            {
                if (!re.IsMatch(TeacherEmail.Text.Trim()))
                {
                    LabMS.Common.JShelper.JSAlert(Page, "err", "指导老师的EMail地址格式不正确!");
                    return;
                }
            }

            int temp = 0;
            int Index = int.Parse(tb_EIndex.Value);
            for (int i = 0; i < Index; i++)
            {
                if (!string.IsNullOrEmpty(Request.Form["name" + i + ""]))
                {
                    if (string.IsNullOrEmpty(Request.Form["num" + i + ""]))
                    {
                        LabMS.Common.JShelper.JSAlert(Page, "err", "所需仪器数量不能为空!");
                        return;
                    }
                    else
                    {
                        if (!int.TryParse(Request.Form["num" + i + ""], out temp))
                        {
                            LabMS.Common.JShelper.JSAlert(Page, "err", "所需仪器数量必须为数字!");
                            return;
                        }
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(Request.Form["num" + i + ""]))
                    {
                        LabMS.Common.JShelper.JSAlert(Page, "err", "所需仪器名称不能为空!");
                        return;
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(Request.Form["intro" + i + ""]))
                        {
                            LabMS.Common.JShelper.JSAlert(Page, "err", "所需仪器名称不能为空!");
                            return;
                        }
                    }
                }
            }
            Index = int.Parse(tb_ConsumpIndex.Value);
            for (int i = 0; i < Index; i++)
            {
                if (!string.IsNullOrEmpty(Request.Form["consumpname" + i + ""]))
                {
                    if (string.IsNullOrEmpty(Request.Form["consumpnum" + i + ""]))
                    {
                        LabMS.Common.JShelper.JSAlert(Page, "err", "所需低耗品数量不能为空!");
                        return;
                    }
                    else
                    {
                        if (!int.TryParse(Request.Form["consumpnum" + i + ""], out temp))
                        {
                            LabMS.Common.JShelper.JSAlert(Page, "err", "所需低耗品数量必须为数字!");
                            return;
                        }
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(Request.Form["consumpnum" + i + ""]))
                    {
                        LabMS.Common.JShelper.JSAlert(Page, "err", "所需低耗品名称不能为空!");
                        return;
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(Request.Form["consumpintro" + i + ""]))
                        {
                            LabMS.Common.JShelper.JSAlert(Page, "err", "所需低耗品名称不能为空!");
                            return;
                        }
                    }
                }
            }
            #endregion
            LabMS.BLL.PersonalProject projectinfo = new LabMS.BLL.PersonalProject();
            LabMS.Model.PersonalProject project = new LabMS.Model.PersonalProject();

            int ProjectID = int.Parse(Request.QueryString["ProjectID"]);
            project.ProjectID = ProjectID;
            project.ProjectName = ProjectName.Text.Trim();
            project.PlanHours = int.Parse(PlanHours.Text.Trim());
            project.AppcationLabID = int.Parse(ddlApplyLab.SelectedValue.Trim());

            DateTime tempTime = new DateTime();
            if (DateTime.TryParse(ApplyTimeMin.Text.Trim(), out tempTime))
            {
                project.ApplicationStartTime = tempTime;
            }
            if (DateTime.TryParse(ApplyTimeMax.Text.Trim(), out tempTime))
            {
                project.ApplicationEndTime = tempTime;
            }

            LabMS.Model.SysSetting msys = new LabMS.Model.SysSetting();
            ExtendBLL.SysSetting extendsys = new ExtendBLL.SysSetting();
            msys = extendsys.GetCurrentSetting();
            project.SYear = msys.CurrentYear;
            project.Semester = msys.CurrentSemester;

            project.Contactor = Contactor.Text.Trim();
            project.ContactorClass = ContactorClass.Text.Trim();
            project.ContactorEmail = ContactEmail.Text.Trim();
            project.ContactorPhone = ContactPhone.Text.Trim();

            project.Teacher = Teacher.Text.Trim();
            project.TeacherTitle = TeacherTitle.Text.Trim();
            project.TeacherEmail = TeacherEmail.Text.Trim();
            project.TeacherPhone = TeacherPhone.Text.Trim();

            project.ApplicationReason = ApplyReason.Text.Trim();
            project.ProjectStatus = "1";//状态为未申请(status=1)
            string strAlertContent = "保存成功!";
            if (((Button)sender).ID == "btnApply")
            {
                strAlertContent = "申请成功!";
                project.ProjectStatus = "2";
            }

            //添加申请人
            string[] array = tb_StudentIDs.Text.Split(',');
            List<string> lsIDs = new List<string>();

            lsIDs.Add(array[0]);

            foreach (string item in array)
            {
                int Count = 0;
                foreach (string Pr in lsIDs)
                {
                    if (item != Pr)
                    {
                        Count++;
                    }
                }
                if (Count == lsIDs.Count)
                {
                    lsIDs.Add(item);
                }
            }

            try
            {
                projectinfo.Update(project);
            }
            catch (Exception ex)
            {
                lbErr.Visible = true;
                lbErr.Text = ex.Message;
                return;
            }

            if (!array[0].Equals(""))
            {
                LabMS.BLL.PersonalProjApp applicantinfo = new LabMS.BLL.PersonalProjApp();
                LabMS.Model.PersonalProjApp applicant = new LabMS.Model.PersonalProjApp();
                List<LabMS.Model.PersonalProjApp> applicantList = new List<LabMS.Model.PersonalProjApp>();

                string str = " PersonalProjID=" + ProjectID;
                applicantList = applicantinfo.GetModelList(str);
                try
                {
                    foreach (LabMS.Model.PersonalProjApp a in applicantList)
                    {
                        applicantinfo.Delete(a.ID);
                    }

                    for (int i = 0; i < lsIDs.Count; i++)
                    {
                        applicant.ApplicantID = int.Parse(lsIDs[i]);
                        applicant.PersonalProjID = ProjectID;
                        applicantinfo.Add(applicant);
                    }
                }
                catch (Exception ex)
                {
                    lbErr.Visible = true;
                    lbErr.Text = ex.Message;
                    return;
                }
            }

            //删除对应的仪器和低耗品
            LabMS.BLL.PersonalProjConsume consumeinfo = new PersonalProjConsume();
            LabMS.Model.PersonalProjConsume consume = new LabMS.Model.PersonalProjConsume();
            List<LabMS.Model.PersonalProjConsume> consumeList = new List<LabMS.Model.PersonalProjConsume>();
            string strSql = " PersonalProjID=" + ProjectID;
            consumeList = consumeinfo.GetModelList(strSql);
            try
            {
                foreach (LabMS.Model.PersonalProjConsume c in consumeList)
                {
                    consumeinfo.Delete(c.ID);
                }
            }
            catch(Exception ex)
            {
                lbErr.Visible = true;
                lbErr.Text = ex.Message;
                return;
            }
            //添加仪器
            int EquipIndex = int.Parse(tb_EIndex.Value);

            for (int i = 0; i < EquipIndex; i++)
            {
                string EquipName = "";
                int EquipNum = 0;
                string Introduction = "";
                try
                {
                    EquipName = Request.Form["name" + i + ""];
                    EquipNum = int.Parse(Request.Form["num" + i + ""]);
                    Introduction = Request.Form["intro" + i + ""];

                    consume.EquipName = EquipName;
                    consume.EquipNum = EquipNum;
                    consume.EquipType = 1;
                    consume.Introduction = Introduction;
                    consume.PersonalProjID = ProjectID;

                    consumeinfo.Add(consume);
                }
                catch { }
            }

            //添加低耗品
            int ConsumpIndex = int.Parse(tb_ConsumpIndex.Value);
            for (int i = 0; i < ConsumpIndex; i++)
            {
                string ConsumpName = "";
                int ConsumpNum = 0;
                string ConsumpIntro = "";
                try
                {
                    ConsumpName = Request.Form["consumpname" + i + ""];
                    ConsumpNum = int.Parse(Request.Form["consumpnum" + i + ""]);
                    ConsumpIntro = Request.Form["consumpintro" + i + ""];

                    consume.EquipName = ConsumpName;
                    consume.EquipNum = ConsumpNum;
                    consume.EquipType = 2;
                    consume.Introduction = ConsumpIntro;
                    consume.PersonalProjID = ProjectID;

                    consumeinfo.Add(consume);
                }
                catch { }
            }
            LabMS.Common.JShelper.JSAlertAndRedirect(Page, "AddSuccess", strAlertContent, "ListPersonalProject.aspx");
        }