private void savePapers(DataClassesDataContext dc, String projectID)
        {
            var patents = dc.PublishedPaper.Where(pt => pt.F_projectID.Equals(projectID));

            dc.PublishedPaper.DeleteAllOnSubmit(patents);
            if (!String.IsNullOrWhiteSpace(paras["F_paperName"]))
            {
                String[] F_paperNames   = paras["F_paperName"].Split(new char[] { ',' });
                String[] F_paperAuthors = paras["F_paperAuthor"].Split(new char[] { ',' });
                String[] F_paperTypes   = paras["F_paperType"].Split(new char[] { ',' });
                String[] F_paperDesps   = paras["F_paperDesp"].Split(new char[] { ',' });
                String[] F_paperIndexs  = paras["F_paperIndex"].Split(new char[] { ',' });
                String[] F_paperIfs     = paras["F_paperIf"].Split(new char[] { ',' });

                for (int i = 0; i < F_paperNames.Length; i++)
                {
                    PublishedPaper paper = new PublishedPaper();
                    paper.F_ID = Guid.NewGuid().ToString();

                    paper.F_name        = F_paperNames[i];
                    paper.F_authors     = F_paperAuthors[i];
                    paper.F_publishType = F_paperTypes[i];
                    paper.F_projectID   = context.Session["projectID"].ToString();
                    paper.F_descript    = F_paperDesps[i];
                    paper.F_index       = F_paperIndexs[i];
                    paper.F_if          = F_paperIfs[i];
                    dc.PublishedPaper.InsertOnSubmit(paper);
                }
            }
        }
Exemple #2
0
        private void SavePage2()
        {
            String F_ID = context.Session[SessionMgm.VisitUserID].ToString();
            DataClassesDataContext dc = new DataClassesDataContext();
            bool insert  = false;
            User newUser = dc.User.SingleOrDefault(user => user.F_ID.Equals(F_ID));

            if (newUser == null)
            {
                newUser        = new User();
                newUser.F_ID   = F_ID;
                newUser.F_Role = RoleType.Expert;
                insert         = true;
            }
            Decimal num = 0;

            Decimal.TryParse(paras["F_appliedCivInvPatent"], out num);
            newUser.F_appliedCivInvPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_authedCivInvPatent"], out num);
            newUser.F_authedCivInvPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_appliedForeInvPatent"], out num);
            newUser.F_appliedForeInvPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_authedForeInvPatent"], out num);
            newUser.F_authedForeInvPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_appliedCivUtiPatent"], out num);
            newUser.F_appliedCivUtiPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_authedCivUtilPatent"], out num);
            newUser.F_authedCivUtilPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_appliedForUtiPatent"], out num);
            newUser.F_appliedForUtiPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_authedForUtiPatent"], out num);
            newUser.F_authedForUtiPatent = num;
            num = 0;
            Decimal.TryParse(paras["F_publishCivPaper"], out num);
            newUser.F_publishCivPaper = num;
            num = 0;
            Decimal.TryParse(paras["F_publishForPaper"], out num);
            newUser.F_publishForPaper = num;
            num = 0;
            Decimal.TryParse(paras["F_publishMonograph"], out num);
            newUser.F_publishMonograph = num;
            DateTime dt = DateTime.Now;
            var      workexperiences = dc.WorkExperience.Where(we => we.F_userID.Equals(F_ID));

            dc.WorkExperience.DeleteAllOnSubmit(workexperiences);
            if (!String.IsNullOrWhiteSpace(paras["F_workspace"]))
            {
                String[] F_workspaces = paras["F_workspace"].Split(new char[] { ',' });
                String[] F_beginDates = paras["F_beginDate"].Split(new char[] { ',' });
                String[] F_endDates   = paras["F_endDate"].Split(new char[] { ',' });
                String[] F_contents   = paras["F_content"].Split(new char[] { ',' });

                for (int i = 0; i < F_workspaces.Length; i++)
                {
                    WorkExperience eb = new WorkExperience();
                    eb.F_userID    = newUser.F_ID;
                    eb.F_workspace = F_workspaces[i];
                    eb.F_ID        = Guid.NewGuid().ToString();
                    if (F_beginDates[i].Trim().Length > 0)
                    {
                        dt = DateTime.Now;
                        DateTime.TryParse(F_beginDates[i], out dt);
                        eb.F_beginDate = dt;
                    }
                    if (F_endDates[i].Trim().Length > 0)
                    {
                        dt = DateTime.Now;
                        DateTime.TryParse(F_endDates[i], out dt);
                        eb.F_endDate = dt;
                    }
                    eb.F_content = F_contents[i];
                    dc.WorkExperience.InsertOnSubmit(eb);
                }
            }
            var patents = dc.Patent.Where(pa => pa.F_userID.Equals(F_ID));

            dc.Patent.DeleteAllOnSubmit(patents);
            if (!String.IsNullOrWhiteSpace(paras["F_patentName"]))
            {
                String[] F_patentNames        = paras["F_patentName"].Split(new char[] { ',' });
                String[] F_patentCodes        = paras["F_patentCode"].Split(new char[] { ',' });
                String[] F_patentTypes        = paras["F_patentType"].Split(new char[] { ',' });
                String[] F_patentDeclareDates = paras["F_patentDeclareDate"].Split(new char[] { ',' });

                for (int i = 0; i < F_patentNames.Length; i++)
                {
                    Patent eb = new Patent();
                    eb.F_userID = newUser.F_ID;
                    eb.F_ID     = Guid.NewGuid().ToString();
                    if (F_patentDeclareDates[i].Trim().Length > 0)
                    {
                        dt = DateTime.Now;
                        DateTime.TryParse(F_patentDeclareDates[i], out dt);
                        eb.F_declareDate = dt;
                    }
                    eb.F_name = F_patentNames[i];
                    eb.F_type = F_patentTypes[i];
                    eb.F_code = F_patentCodes[i];
                    dc.Patent.InsertOnSubmit(eb);
                }
            }

            var papers = dc.PublishedPaper.Where(pp => pp.F_USERID.Equals(F_ID));

            dc.PublishedPaper.DeleteAllOnSubmit(papers);
            if (!String.IsNullOrWhiteSpace(paras["F_paperName"]))
            {
                String[] F_paperNames   = paras["F_paperName"].Split(new char[] { ',' });
                String[] F_journalNames = paras["F_journalName"].Split(new char[] { ',' });
                String[] F_journalCodes = paras["F_journalCode"].Split(new char[] { ',' });
                String[] F_volumes      = paras["F_volume"].Split(new char[] { ',' });
                String[] F_paperRanks   = paras["F_paperRank"].Split(new char[] { ',' });

                for (int i = 0; i < F_paperNames.Length; i++)
                {
                    PublishedPaper eb = new PublishedPaper();
                    eb.F_USERID      = F_ID;
                    eb.F_ID          = Guid.NewGuid().ToString();
                    eb.F_journalCode = F_journalCodes[i];
                    eb.F_journalName = F_journalNames[i];
                    eb.F_name        = F_paperNames[i];
                    eb.F_rank        = F_paperRanks[i];
                    eb.F_volume      = F_volumes[i];
                    dc.PublishedPaper.InsertOnSubmit(eb);
                }
            }

            var awards = dc.Award.Where(pp => pp.F_userID.Equals(F_ID));

            dc.Award.DeleteAllOnSubmit(awards);
            if (!String.IsNullOrWhiteSpace(paras["F_awardName"]))
            {
                String[] F_awardDates        = paras["F_awardDate"].Split(new char[] { ',' });
                String[] F_awardNames        = paras["F_awardName"].Split(new char[] { ',' });
                String[] F_awardProjectNames = paras["F_awardProjectName"].Split(new char[] { ',' });
                String[] F_awardGrades       = paras["F_awardGrade"].Split(new char[] { ',' });
                String[] F_awardRanks        = paras["F_awardRank"].Split(new char[] { ',' });
                String[] F_issuedUnits       = paras["F_issuedUnit"].Split(new char[] { ',' });

                for (int i = 0; i < F_awardDates.Length; i++)
                {
                    Award eb = new Award();
                    eb.F_userID = F_ID;
                    eb.F_ID     = Guid.NewGuid().ToString();
                    dt          = DateTime.Now;
                    DateTime.TryParse(F_awardDates[i], out dt);
                    eb.F_grantDate   = dt;
                    eb.F_name        = F_awardNames[i];
                    eb.F_projectName = F_awardProjectNames[i];
                    eb.F_grade       = F_awardGrades[i];
                    eb.F_rank        = F_awardRanks[i];
                    eb.F_issuedUnit  = F_issuedUnits[i];
                    dc.Award.InsertOnSubmit(eb);
                }
            }


            if (insert)
            {
                dc.User.InsertOnSubmit(newUser);
            }
            dc.SubmitChanges();
        }