Beispiel #1
0
        protected void btnApproval_Click(object sender, EventArgs e)
        {
            DataClassesDataContext dc  = new DataClassesDataContext();
            List <String>          ids = GetSelectedIDs();

            foreach (String id in ids)
            {
                ScienceProject sciProject = dc.ScienceProject.SingleOrDefault(_sp => _sp.F_ID.Equals(id));
                if (sciProject != null)
                {
                    Services.SciProject.CreateAcceptProject(dc, sciProject);
                    sciProject.F_status = ProjectStatus.Approval;
                    dc.SubmitChanges();
                }
                else
                {
                    SocialProject socialProject = dc.SocialProject.SingleOrDefault(_sp => _sp.F_ID.Equals(id));
                    if (socialProject != null)
                    {
                        Services.SocialProject.CreateAcceptProject(dc, socialProject);
                        socialProject.F_status = ProjectStatus.Approval;
                        dc.SubmitChanges();
                    }
                }
            }
            GridView1.DataBind();
        }
Beispiel #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bool isVisible = false;
                if (Session[SessionMgm.PageJumtType] == null)
                {
                    return;
                }

                String jumpType = Session[SessionMgm.PageJumtType].ToString();
                if (jumpType.Equals(PageJumpType.SCI))
                {
                    String F_ID = Session[SessionMgm.SciProjectID].ToString();
                    DataClassesDataContext dc  = new DataClassesDataContext();
                    ScienceProject         sci = dc.ScienceProject.SingleOrDefault(_sp => _sp.F_ID.Equals(F_ID));
                    if (sci != null)
                    {
                        if (sci.F_status.Equals(ProjectStatus.Deny) || sci.F_status.Equals(ProjectStatus.Draft))
                        {
                            if (sci.F_leaderID.Equals(Session[SessionMgm.UserID]))
                            {
                                isVisible = true;
                            }
                        }
                    }
                }
                else if (jumpType.Equals(PageJumpType.SOCIAL))
                {
                    String F_ID = Session[SessionMgm.SocialProjectID].ToString();
                    DataClassesDataContext dc  = new DataClassesDataContext();
                    SocialProject          sci = dc.SocialProject.SingleOrDefault(_sp => _sp.F_ID.Equals(F_ID));
                    if (sci != null)
                    {
                        if (sci.F_status.Equals(ProjectStatus.Deny) || sci.F_status.Equals(ProjectStatus.Draft))
                        {
                            if (sci.F_leaderID.Equals(Session[SessionMgm.UserID]))
                            {
                                isVisible = true;
                            }
                        }
                    }
                }
                else if (jumpType.Equals(PageJumpType.ASSIGN))
                {
                    if (Session[SessionMgm.Role].Equals(RoleType.EduAdmin))
                    {
                        isVisible = true;
                    }
                    else
                    {
                        isVisible = false;
                    }
                }
                btnDel.Visible    = isVisible;
                btnAdd.Visible    = isVisible;
                btnRename.Visible = isVisible;
            }
        }
Beispiel #3
0
 protected override void OnInit(EventArgs e)
 {
     base.OnInit(e);
     if (!IsPostBack)
     {
         bool   showSave = false, showCommit = false;
         String fileName = Request.Path;
         fileName = fileName.Substring(fileName.IndexOf(Tag) + Tag.Length);
         String strPageIndex               = fileName.Substring(0, fileName.IndexOf('.'));
         int    pageIndex                  = int.Parse(strPageIndex);
         String F_ID                       = Session[SessionMgm.SocialProjectID].ToString();
         DataClassesDataContext dc         = new DataClassesDataContext();
         SocialProject          sciProject = dc.SocialProject.SingleOrDefault(c => c.F_ID.Equals(F_ID));
         if (sciProject == null)
         {
             showSave = true;
         }
         else
         {
             if (Session[SessionMgm.UserID].Equals(sciProject.F_leaderID))
             {
                 showSave = true;
                 ProjectDetail guide = dc.ProjectDetail.SingleOrDefault(pd => pd.F_ID.Equals(sciProject.F_guideProjectID));
                 if (guide != null && guide.F_startDate.Value.Date <= DateTime.Now.Date && DateTime.Now.Date <= guide.F_endDate.Value.Date)
                 {
                     showCommit = true;
                 }
             }
             if (sciProject.F_status.Equals(ProjectStatus.Deny) == false && sciProject.F_status.Equals(ProjectStatus.Draft) == false)
             {
                 showCommit = false;
                 showSave   = false;
             }
         }
         if (showSave)
         {
             litContent = "<input id='btnSave' type='button' value='保 存' onclick='savePage(" + pageIndex + ")' class='btn' /> ";
         }
         if (showCommit)
         {
             litContent += "  <input id='btnSubmit' type='button' value='提 交' onclick='commit(" + pageIndex + ")' class='btn' />";
         }
         if (litContent.Length > 0)
         {
             litContent = " <div class='systitleline'>" + litContent + "</div>";
         }
     }
 }
Beispiel #4
0
        private void fillAudit(WordHelper helper, SocialProject project)
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            var deptAudit             = dc.AuditOpinion.SingleOrDefault(ao => ao.F_projectID.Equals(project.F_ID) && ao.F_type.Equals(RoleType.DeptAdmin));

            if (deptAudit != null)
            {
                helper.Replace("F_deptComment", deptAudit.F_content);
                if (deptAudit.F_date != null)
                {
                    helper.Replace("F_deptDate", deptAudit.F_date.Value.ToLongDateString());
                }
            }
            var teamAudit = dc.AuditOpinion.SingleOrDefault(ao => ao.F_projectID.Equals(project.F_ID) && ao.F_type.Equals(RoleType.TeamAdmin));

            if (teamAudit != null)
            {
                helper.Replace("F_teamComment", teamAudit.F_content);
                if (teamAudit.F_date != null)
                {
                    helper.Replace("F_teamDate", teamAudit.F_date.Value.ToLongDateString());
                }
            }

            var schoAudit = dc.AuditOpinion.SingleOrDefault(ao => ao.F_projectID.Equals(project.F_ID) && ao.F_type.Equals(RoleType.SchoolAdmin));

            if (schoAudit != null)
            {
                helper.Replace("F_scholComment", schoAudit.F_content);
                if (schoAudit.F_date != null)
                {
                    helper.Replace("F_scholDate", schoAudit.F_date.Value.ToLongDateString());
                }
            }

            var eduAudit = dc.AuditOpinion.SingleOrDefault(ao => ao.F_projectID.Equals(project.F_ID) && ao.F_type.Equals(RoleType.EduAdmin));

            if (eduAudit != null)
            {
                helper.Replace("F_eduComment", eduAudit.F_content);
                if (eduAudit.F_date != null)
                {
                    helper.Replace("F_eduDate", eduAudit.F_date.Value.ToLongDateString());
                }
            }
        }
Beispiel #5
0
        private void fillContent(WordHelper helper, SocialProject project)
        {
            String[] manualTypes = new String[] { "F_applicantDate", "F_completeDate" };
            Type     sciType     = project.GetType();

            System.Reflection.PropertyInfo[] properties = sciType.GetProperties();
            foreach (System.Reflection.PropertyInfo property in properties)
            {
                if (property.GetValue(project, null) != null)
                {
                    String value = property.GetValue(project, null).ToString();
                    String name  = property.Name;
                    if (!manualTypes.Contains(name))
                    {
                        helper.Replace(name, value);
                    }
                }
            }
            String F_type = "A类重点项目(   )、一般项目(   )、B类项目(   )、委托项目(   )";

            switch (project.F_type)
            {
            case "A类重点项目": F_type = "A类重点项目( √  )、一般项目(   )、B类项目(   )、委托项目(   )"; break;

            case "一般项目": F_type = "A类重点项目(   )、一般项目( √  )、B类项目(   )、委托项目(   )"; break;

            case "B类项目": F_type = "A类重点项目(   )、一般项目(   )、B类项目( √  )、委托项目(   )"; break;

            case "委托项目": F_type = "A类重点项目(   )、一般项目(   )、B类项目(   )、委托项目( √  )"; break;
            }

            helper.Replace("F_type1", F_type);
            helper.Replace("F_name1", project.F_name);
            helper.Replace("F_catogary1", project.F_catogary);

            helper.Replace("F_applicantDate", project.F_applicantDate.Value.ToShortDateString());
            helper.Replace("F_leader1", project.F_leader);
            if (project.F_completeDate != null)
            {
                helper.Replace("F_completeDate", project.F_completeDate.Value.ToShortDateString());
            }
            helper.Replace("F_Fund2", project.F_Fund.ToString());
        }
Beispiel #6
0
        private void fillParticipants(WordHelper helper, SocialProject project)
        {
            DataClassesDataContext dc = new DataClassesDataContext();
            var participants          = dc.ApplicantMember.Where(am => am.F_applicantID.Equals(project.F_ID)).OrderBy(am => am.F_seq);

            if (helper.FindCell("F_firstParticipant"))
            {
                for (int i = 0; i < participants.Count() - 5; i++)
                {
                    helper.CreateNewRow();
                }
                helper.FindCell("F_firstParticipant");
                int index = 0;
                int count = participants.Count();
                foreach (ApplicantMember member in participants)
                {
                    index++;
                    helper.SetCellValue(member.F_realName);
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_sexual);
                    helper.MoveNextCell();
                    if (member.F_birthday != null)
                    {
                        helper.SetCellValue(member.F_birthday.Value.ToShortDateString());
                    }
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_title);
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_expert);
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_education);
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_degree);
                    helper.MoveNextCell();
                    helper.SetCellValue(member.F_workspace);
                    if (index < count)
                    {
                        helper.MoveNextCell();
                    }
                }
            }
        }
Beispiel #7
0
 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
 {
     if (e.CommandName == "ret")
     {
         String role = Session[SessionMgm.Role].ToString();
         String id   = e.CommandArgument.ToString();
         DataClassesDataContext dc      = new DataClassesDataContext();
         SocialProject          project = dc.SocialProject.SingleOrDefault(_sp => _sp.F_ID.Equals(id));
         if (project.F_status.Equals(ProjectStatus.UnderEducationAudit) && role.Equals(RoleType.SchoolAdmin))
         {
             project.F_status = ProjectStatus.UnderSchoolAudit;
         }
         else if (project.F_status.Equals(ProjectStatus.UnderSchoolAudit) && role.Equals(RoleType.DeptAdmin))
         {
             project.F_status = ProjectStatus.UnderDeptAudit;
         }
         else if (project.F_status.Equals(ProjectStatus.UnderDeptAudit) && role.Equals(RoleType.Expert))
         {
             project.F_status = ProjectStatus.Draft;
         }
         dc.SubmitChanges();
         Response.Redirect("frmSocialProjectList.aspx");
     }
 }
Beispiel #8
0
        protected void Unnamed_Click(object sender, EventArgs e)
        {
            WordHelper helper = new WordHelper();
            String     file   = Server.MapPath("/resource/socialProject.dot");

            helper.CreateNewWordDocument(file);
            DataClassesDataContext dc = new DataClassesDataContext();
            String        F_ID        = (sender as LinkButton).CommandArgument;
            SocialProject project     = dc.SocialProject.SingleOrDefault(sp => sp.F_ID.Equals(F_ID));

            fillContent(helper, project);
            fillParticipants(helper, project);
            fillAudit(helper, project);
            project.F_name = UtilHelper.getValidatePath(project.F_name);
            String fileName = Server.MapPath("/resource/" + project.F_name + ".doc");
            bool   result   = helper.SaveAs(fileName);

            helper.Close();
            Response.Clear();
            Response.ContentType = "Application/msword";
            Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.HtmlEncode(Path.GetFileName(fileName)));
            Response.TransmitFile(fileName);
            Response.End();
        }
Beispiel #9
0
        protected void btnDeny_Click(object sender, EventArgs e)
        {
            DataClassesDataContext dc  = new DataClassesDataContext();
            List <String>          ids = GetSelectedIDs();

            foreach (String id in ids)
            {
                ScienceProject sciProject = dc.ScienceProject.SingleOrDefault(_sp => _sp.F_ID.Equals(id));
                if (sciProject != null)
                {
                    sciProject.F_status = ProjectStatus.Deny;
                }
                else
                {
                    SocialProject socialProject = dc.SocialProject.SingleOrDefault(_sp => _sp.F_ID.Equals(id));
                    if (socialProject != null)
                    {
                        socialProject.F_status = ProjectStatus.Deny;
                    }
                }
                dc.SubmitChanges();
            }
            GridView1.DataBind();
        }
Beispiel #10
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         String projectID          = Session[SessionMgm.ProjectID].ToString();
         DataClassesDataContext dc = new DataClassesDataContext();
         String         guideID    = "";
         ScienceProject sp         = dc.ScienceProject.SingleOrDefault(_sp => _sp.F_ID.Equals(projectID));
         if (sp != null)
         {
             guideID = sp.F_guideProjectID;
         }
         else
         {
             SocialProject sop = dc.SocialProject.SingleOrDefault(_sp => _sp.F_ID.Equals(projectID));
             guideID = sop.F_guideProjectID;
         }
         IQueryable <AssignProject> assignProjects = dc.AssignProject.Where(_ap => _ap.F_authro.Value == true && _ap.F_projectID.Equals(guideID));
         ddlDelegate.DataSource     = assignProjects;
         ddlDelegate.DataValueField = "F_unitID";
         ddlDelegate.DataTextField  = "F_unitName";
         ddlDelegate.DataBind();
     }
 }
 partial void DeleteSocialProject(SocialProject instance)
 {
     ExecuteDynamicDelete(instance);
     LoggerHelper.Log("项目删除", "项目名:" + instance.F_name + ",ID:" + instance.F_ID);
 }
Beispiel #12
0
        protected void btnCommit_Click(object sender, EventArgs e)
        {
            String[] projects  = txtName.Text.Trim().Split(new char[] { '\n' });
            String[] units     = txtUnit.Text.Trim().Split(new char[] { '\n' });
            String[] leaders   = this.txtLeader.Text.Trim().Split(new char[] { '\n' });
            String[] funds     = this.txtFund.Text.Trim().Split(new char[] { '\n' });
            DateTime startDate = DateTime.Parse(txtStart.Text);
            DateTime endDate   = DateTime.Parse(txtEnd.Text);

            if (projects.Length == units.Length && units.Length == leaders.Length)
            {
                DataClassesDataContext dc = new DataClassesDataContext();
                for (int i = 0; i < projects.Length; i++)
                {
                    try
                    {
                        units[i] = units[i].Trim().Replace("\"", "");
                        units[i] = units[i].Replace("\r", "").Trim();
                        units[i] = units[i].Replace(" ", "").Trim();
                        ApplicantUnit unit = dc.ApplicantUnit.SingleOrDefault(_au => _au.F_name.Equals(units[i]));
                        if (unit == null)
                        {
                            unit          = new ApplicantUnit();
                            unit.F_ID     = Guid.NewGuid().ToString();
                            unit.F_name   = units[i];
                            unit.F_status = RoleType.Authoried;
                            dc.ApplicantUnit.InsertOnSubmit(unit);
                        }
                        leaders[i] = leaders[i].Trim().Replace("\"", "");
                        leaders[i] = leaders[i].Replace(" ", "");
                        leaders[i] = leaders[i].Replace("\r", "").Trim();
                        EducationV2.User user = dc.User.SingleOrDefault(_user => _user.F_realName.Equals(leaders[i]) && _user.F_belongUnitID.Equals(unit.F_ID));
                        if (user == null)
                        {
                            user                = new EducationV2.User();
                            user.F_ID           = Guid.NewGuid().ToString();
                            user.F_userName     = leaders[i];
                            user.F_realName     = leaders[i];
                            user.F_Role         = RoleType.Expert;
                            user.F_belongUnitID = unit.F_ID;
                            dc.User.InsertOnSubmit(user);
                            dc.SubmitChanges();
                        }
                        if (ddlType.SelectedIndex < 4)
                        {
                            projects[i] = projects[i].Trim().Replace("\"", "");
                            projects[i] = projects[i].Replace("\r", "").Trim();
                            SocialProject project = dc.SocialProject.SingleOrDefault(_sp => _sp.F_name.Equals(projects[i]));
                            if (project != null)
                            {
                                continue;
                            }
                            project                  = new SocialProject();
                            project.F_unitID         = unit.F_ID;
                            project.F_leader         = user.F_realName;
                            project.F_leaderID       = user.F_ID;
                            project.F_status         = ProjectStatus.Approval;
                            project.F_guideProjectID = ddlGuide.SelectedValue;
                            project.F_code           = EducationV2.Services.SocialProject.GetCode(ddlType.SelectedValue, txtYear.Text);
                            project.F_status         = ProjectStatus.Approval;
                            if (txtSameFund.Text.Trim().Length > 0)
                            {
                                project.F_Fund = decimal.Parse(txtSameFund.Text);
                            }
                            else
                            {
                                project.F_Fund = decimal.Parse(funds[i]);
                            }
                            project.F_applicantDate = startDate;
                            project.F_completeDate  = endDate;
                            project.F_type          = ddlType.SelectedValue;
                            project.F_name          = projects[i];
                            project.F_ID            = Guid.NewGuid().ToString();
                            CreateAcceptProject(dc, project);
                            dc.SocialProject.InsertOnSubmit(project);
                        }
                        else
                        {
                            ScienceProject project = dc.ScienceProject.SingleOrDefault(_sp => _sp.F_name.Equals(projects[i]));
                            if (project != null)
                            {
                                continue;
                            }
                            project                  = new ScienceProject();
                            project.F_unitID         = unit.F_ID;
                            project.F_leader         = user.F_realName;
                            project.F_leaderID       = user.F_ID;
                            project.F_status         = ProjectStatus.Approval;
                            project.F_guideProjectID = ddlGuide.SelectedValue;
                            project.F_code           = EducationV2.Services.SciProject.GetCode(ddlType.SelectedValue, txtYear.Text);
                            project.F_status         = ProjectStatus.Approval;
                            if (txtSameFund.Text.Trim().Length > 0)
                            {
                                project.F_totalFund = decimal.Parse(txtSameFund.Text);
                            }
                            else
                            {
                                project.F_totalFund = decimal.Parse(funds[i]);
                            }
                            project.F_beginDate     = startDate;
                            project.F_applicantDate = startDate;
                            project.F_finishDate    = endDate;
                            project.F_type          = ddlType.SelectedValue;
                            project.F_name          = projects[i];
                            project.F_ID            = Guid.NewGuid().ToString();
                            dc.ScienceProject.InsertOnSubmit(project);
                            CreateAcceptProject(dc, project);
                        }
                        dc.SubmitChanges();
                    }
                    catch (Exception exp) {
                        Console.Write(exp.ToString());
                    }
                }
            }
            else
            {
                UtilHelper.AlertMsg(Response, "name: " + projects.Length + " unit: " + units.Length + " leader: " + leaders.Length +
                                    " fund: " + funds.Length);
                UtilHelper.AlertMsg(Response, "inequal");
            }
        }
Beispiel #13
0
        private void CreateAcceptProject(DataClassesDataContext dc, SocialProject project)
        {
            var aps = dc.AcceptProject.Where(apss => apss.F_projectID.Equals(project.F_ID));

            dc.AcceptProject.DeleteAllOnSubmit(aps);
            AcceptProject acceptProject = new AcceptProject();

            EducationV2.User          user = dc.User.SingleOrDefault(us => us.F_ID.Equals(project.F_leaderID));
            EducationV2.ApplicantUnit unit = dc.ApplicantUnit.SingleOrDefault(_au => _au.F_ID.Equals(user.F_belongUnitID));
            int num = dc.AcceptProject.Count();

            acceptProject.F_ID = Guid.NewGuid().ToString();
            acceptProject.F_acceptApplicantState = ProjectStatus.Complete;
            acceptProject.F_acceptedCode         = "";
            acceptProject.F_acceptNo             = DateTime.Now.ToString("yyyyMMddhh") + num.ToString();
            acceptProject.F_applicantUnit        = unit.F_name;
            acceptProject.F_appliedDate          = project.F_applicantDate;
            acceptProject.F_appliedYear          = project.F_applicantDate.Value.Year.ToString();
            acceptProject.F_executeState         = ProjectStatus.Draft;
            acceptProject.F_leaderName           = user.F_userName;
            acceptProject.F_leaderID             = project.F_leaderID;
            acceptProject.F_projectID            = project.F_ID;
            acceptProject.F_projectName          = project.F_name;
            acceptProject.F_finishDate           = project.F_completeDate.Value;
            acceptProject.F_projectState         = ProjectStatus.Complete;
            acceptProject.F_projectType          = project.F_type;
            dc.AcceptProject.InsertOnSubmit(acceptProject);


            var ess = dc.ExecuteStatus.Where(_es => _es.F_projectID.Equals(project.F_ID));

            dc.ExecuteStatus.DeleteAllOnSubmit(ess);
            ExecuteStatus es = new ExecuteStatus();

            es.F_acceptNo         = acceptProject.F_acceptNo;
            es.F_planMoney        = Decimal.ToInt32(project.F_Fund.Value);
            es.F_applicantName    = project.F_name;
            es.F_applicantType    = project.F_type;
            es.F_applicantUnit    = unit.F_name;
            es.F_ContactPhone     = user.F_phone;
            es.F_domain           = project.F_catogary;
            es.F_ID               = Guid.NewGuid().ToString();
            es.F_leaderID         = project.F_leaderID;
            es.F_leaderName       = project.F_leader;
            es.F_leaderNo         = user.F_idNumber;
            es.F_mobile           = user.F_mobile;
            es.F_projectID        = project.F_ID;
            es.F_status           = ProjectStatus.Draft;
            es.F_startAndStopDate = project.F_applicantDate.Value.ToShortDateString() + "-" + project.F_completeDate.Value.ToShortDateString();
            dc.ExecuteStatus.InsertOnSubmit(es);


            var aas = dc.AcceptApplicant.Where(_aa => _aa.F_projectID.Equals(project.F_ID));

            dc.AcceptApplicant.DeleteAllOnSubmit(aas);
            AcceptApplicant aa = new AcceptApplicant();

            aa.F_ID     = Guid.NewGuid().ToString();
            aa.F_type   = project.F_type;
            aa.F_domain = project.F_catogary;
            if (String.IsNullOrEmpty(aa.F_domain))
            {
                aa.F_domain = "未定义";
            }
            aa.F_name          = project.F_name;
            aa.F_acceptNo      = acceptProject.F_acceptNo;
            aa.F_leaderName    = user.F_realName;
            aa.F_projectUnit   = unit.F_name;
            aa.F_appliedDate   = project.F_applicantDate;
            aa.F_startStopDate = es.F_startAndStopDate;
            aa.F_totalFund     = decimal.Parse(project.F_Fund.Value.ToString());
            aa.F_projectID     = project.F_ID;
            aa.F_projectObject = project.F_achievement + ", 成果字数 " + project.F_wordCount;
            aa.F_cooperator    = project.F_teamName;
            aa.F_status        = EducationV2.App_Code.ProjectStatus.Draft;
            aa.F_leaderID      = user.F_ID;
            dc.AcceptApplicant.InsertOnSubmit(aa);
        }