/// <summary> /// 科研项目:根据申报项目类型(Type)、项目来源(Source)和申报情况(Grade)返回对应的级别(JiBie)及级别分系数(LevelFactor) ——By Jianguo Fung /// </summary> /// <param name="ProjectModel"></param> /// <returns></returns> public ZQUSR.Model.sr_Evaluate GetShenBaoJiBie(ZQUSR.Model.sr_Project ProjectModel) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 JiBie,LevelFactor from sr_Evaluate "); strSql.Append(" where Sort=@Sort and Type=@Type and Source=@Source and Grade=@Grade "); SqlParameter[] parameters = { new SqlParameter("@Sort", SqlDbType.NVarChar, 10), new SqlParameter("@Type", SqlDbType.NVarChar, 10), new SqlParameter("@Source", SqlDbType.NVarChar, 30), new SqlParameter("@Grade", SqlDbType.NVarChar, 20) }; parameters[0].Value = ProjectModel.SmallSort; parameters[1].Value = ProjectModel.Type; parameters[2].Value = ProjectModel.Source; parameters[3].Value = ProjectModel.ReviewState; ZQUSR.Model.sr_Evaluate model = new ZQUSR.Model.sr_Evaluate(); DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { model.JiBie = ds.Tables[0].Rows[0]["JiBie"].ToString(); if (ds.Tables[0].Rows[0]["LevelFactor"].ToString() != "") { model.LevelFactor = decimal.Parse(ds.Tables[0].Rows[0]["LevelFactor"].ToString()); } return(model); } else { return(null); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string cmd = Request.QueryString["cmd"].ToString(); if (cmd == "add") //若为添加则自动生成编号 { TabContainer1.Tabs[0].HeaderText = "科研项目添加"; txtPID.Text = "KY" + CreateNumber.GetNumber(); } if (cmd == "modify") //若为修改则绑定数据到文本框 { TabContainer1.Tabs[0].HeaderText = "科研项目修改"; string srid = Request.QueryString["srid"].ToString(); if (srid != "") { ProModel = ProBll.GetModel(srid); if (ProModel != null) { txtPID.Text = ProModel.PK_PID; txtFinishTime.Text = string.Format("{0:yyyy-MM-dd}", ProModel.PublishTime1); } } } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string cmd = Request.QueryString["cmd"].ToString(); if (cmd == "add") //若为添加则自动生成编号 { TabContainer1.Tabs[0].HeaderText = "科研项目添加"; txtPID.Text = "SB" + CreateNumber.GetNumber(); } if (cmd == "modify") //若为修改则绑定数据到文本框 { TabContainer1.Tabs[0].HeaderText = "科研项目修改"; string srid = Request.QueryString["srid"].ToString(); if (srid != "") { ProModel = ProBll.GetModel(srid); if (ProModel != null) { } } } } }
private void BindData(string srid) { //得到对象实体 ProjectModel = ProjectBll.GetModel(srid); UserModel = UserBll.GetModel(ProjectModel.FK_UserID); //绑定数据到Label lblUserName.Text = UserModel.UserName; lblUserUnit.Text = UserModel.Unit; lblSex.Text = UserModel.Sex; lblZhiCheng.Text = UserModel.ZhiCheng; lblBigSort.Text = ProjectModel.BigSort; lblSchoolSign.Text = ProjectModel.SchoolSign; lblPopulation.Text = (ProjectModel.Population).ToString(); lblAllAuthor.Text = ProjectModel.AllAuthor; lblRemark.Text = ProjectModel.Remark; lblJiBie.Text = (ProjectModel.LevelFactor).ToString() + ProjectModel.JiBie; lblPerScore.Text = (ProjectModel.PerScore).ToString(); string state = (ProjectModel.AuditState).ToString(); lblAuditState.Text = StateInfo.GetAuditState(state); lblSRID.Text = ProjectModel.PK_PID; lblTitle.Text = ProjectModel.Title; lblTime.Text = string.Format("{0:yyyy-MM-dd}", ProjectModel.PublishTime1); lblType.Text = ProjectModel.Type; lblSource.Text = ProjectModel.Source; lblFund1.Text = ProjectModel.Funds1.ToString() + "万元"; lblAnchorperson.Text = ProjectModel.Anchorperson.ToString(); lblReason.Text = ProjectModel.Extra1; if (state == "2" || state == "4" || state == "6") { PanelReasonVisible.Visible = true; } //if (state == "1" || state == "3" || state == "5" || state == "7") //{ // Button1.Enabled = false; // Button2.Enabled = false; //} //if (state == "3" || state == "5" || state == "7") //{ // Button3.Enabled = false; // Button4.Enabled = false; //} //if (state == "5" || state == "7") //{ // Button5.Enabled = false; // Button6.Enabled = false; //} //if (state == "7") //{ // Button7.Enabled = false; // Button8.Enabled = false; //} }
/// <summary> /// 返回科研项目数据列表(教师角色) ——By Jianguo Fung /// </summary> /// <param name="model"></param> /// <returns></returns> public DataSet GetProject(ZQUSR.Model.sr_Project model) { string userID = model.FK_UserID; string smallSort = model.SmallSort; string strSql = "select * from sr_Project where FK_UserID='" + userID + "' and SmallSort='" + smallSort + "' order by PK_PID desc"; return(DbHelperSQL.Query(strSql.ToString())); }
/* * /// <summary> * /// 分页获取数据列表 * /// </summary> * public DataSet GetList(int PageSize,int PageIndex,string strWhere) * { * SqlParameter[] parameters = { * new SqlParameter("@tblName", SqlDbType.VarChar, 255), * new SqlParameter("@fldName", SqlDbType.VarChar, 255), * new SqlParameter("@PageSize", SqlDbType.Int), * new SqlParameter("@PageIndex", SqlDbType.Int), * new SqlParameter("@IsReCount", SqlDbType.Bit), * new SqlParameter("@OrderType", SqlDbType.Bit), * new SqlParameter("@strWhere", SqlDbType.VarChar,1000), * }; * parameters[0].Value = "sr_Project"; * parameters[1].Value = "ID"; * parameters[2].Value = PageSize; * parameters[3].Value = PageIndex; * parameters[4].Value = 0; * parameters[5].Value = 0; * parameters[6].Value = strWhere; * return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"ds"); * }*/ #endregion 成员方法 #region 更新一条数据的状态位 --by caiyuying 2011-01-23 /// <summary> /// 更新一条数据的状态位 --by caiyuying 2011-01-23 /// </summary> public void UpdateState(ZQUSR.Model.sr_Project model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update sr_Project set "); strSql.Append("AuditState=@AuditState "); strSql.Append(" where PK_PID=@PK_PID "); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar, 16), new SqlParameter("@AuditState", SqlDbType.NVarChar, 10) }; parameters[0].Value = model.PK_PID; parameters[1].Value = model.AuditState; DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); }
/// <summary> /// 更新级别分系数、级别、个人得分 /// </summary> /// <param name="model"></param> public void UpdateJiBie(ZQUSR.Model.sr_Project model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update sr_Project set "); strSql.Append("JiBie=@JiBie,"); strSql.Append("LevelFactor=@LevelFactor,"); strSql.Append("PerScore=@PerScore "); strSql.Append(" where PK_PID=@PK_PID "); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar, 16), new SqlParameter("@JiBie", SqlDbType.Char, 1), new SqlParameter("@LevelFactor", SqlDbType.Float, 8), new SqlParameter("@PerScore", SqlDbType.Float, 8) }; parameters[0].Value = model.PK_PID; parameters[1].Value = model.JiBie; parameters[2].Value = model.LevelFactor; parameters[3].Value = model.PerScore; DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); }
private void BindData(string srid) { //得到对象实体 ProjectModel = ProjectBll.GetModel(srid); UserModel = UserBll.GetModel(ProjectModel.FK_UserID); //绑定数据到Label lblUserName.Text = UserModel.UserName; lblUserUnit.Text = UserModel.Unit; lblSex.Text = UserModel.Sex; lblZhiCheng.Text = UserModel.ZhiCheng; lblBigSort.Text = ProjectModel.BigSort; lblSchoolSign.Text = ProjectModel.SchoolSign; lblPopulation.Text = (ProjectModel.Population).ToString(); lblAllAuthor.Text = ProjectModel.AllAuthor; lblRemark.Text = ProjectModel.Remark; lblJiBie.Text = (ProjectModel.LevelFactor).ToString() + ProjectModel.JiBie; lblPerScore.Text = (ProjectModel.PerScore).ToString(); string state = (ProjectModel.AuditState).ToString(); lblAuditState.Text = StateInfo.GetAuditState(state); lblReason.Text = ProjectModel.Extra1; if (state == "2" || state == "4" || state == "6") { PanelReasonVisible.Visible = true; } lblSRID.Text = ProjectModel.PK_PID; lblTitle.Text = ProjectModel.Title; lblTime.Text = string.Format("{0:yyyy-MM-dd}", ProjectModel.PublishTime1); lblType.Text = ProjectModel.Type; lblSource.Text = ProjectModel.Source; lblReviewState.Text = ProjectModel.ReviewState; lblAnchorperson.Text = ProjectModel.Anchorperson.ToString(); //if (state == "1" || state == "3" || state == "5" || state == "7") //{ // Button1.Enabled = false; // Button2.Enabled = false; //} //if (state == "3" || state == "5" || state == "7") //{ // Button3.Enabled = false; // Button4.Enabled = false; //} //if (state == "5" || state == "7") //{ // Button5.Enabled = false; // Button6.Enabled = false; //} //if (state == "7") //{ // Button7.Enabled = false; // Button8.Enabled = false; //} }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (Session["Role"] != null) { string srid = Request.QueryString["srid"].ToString(); //获得成果编号 if (srid != "") { BindData(srid); ProjectModel = ProjectBll.GetModel(srid); string state = (ProjectModel.AuditState).ToString(); string cmd = Request.QueryString["cmd"].ToString(); if ((cmd == "preview") && (state == "0" || state == "2" || state == "4" || state == "6")) { Panel1.Visible = true; //显示提交、修改按钮(公用) } string role = Session["Role"].ToString(); //角色 switch (role) //根据角色不同显示不同的操作按钮 { //case "教师": // if (state == "0" || state == "2" || state == "4" || state == "6") // { // Panel1.Visible = true; // } // break; case "管理员": if (state == "1") { Panel2.Visible = true; } break; case "系统管理员": if (state == "3") { Panel3.Visible = true; lbtnUpdateJiBie.Visible = true; } break; case "超级管理员": if (state == "3") { Panel3.Visible = true; lbtnUpdateJiBie.Visible = true; } if (state == "5" || state == "6" || state == "7") { CheckBox1.Visible = true; } break; default: break; } } } else { Response.Write("<script language=javascript>alert('您已经与服务器断开连接,请重新登录!');window.location.href='~/../../login.aspx';</script>"); //Response.Redirect("~/login.aspx"); } } }
protected void btnOK_Click(object sender, EventArgs e) { decimal decLevelFactor = Convert.ToDecimal(txtLevelFactor.Text); //级别分系数 string strJiBie = ddlJiBie.SelectedValue; //级别 int intScore = LevelScoresBll.GetScoreByJiBie(strJiBie); //根据级别得到对应的级别分数 decimal decJiBieScore = intScore * decLevelFactor; //级别分 string strID = lblSRID.Text.Trim(); string strResult = strID.Substring(0, 2); if (strResult == "LW") //学术论文 { decimal decPerScore = 0; LZJModel = LZJBll.GetModel(strID); int intRank = Convert.ToInt32(LZJModel.Rank); int intPopulation = Convert.ToInt32(LZJModel.Population); //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = decJiBieScore * int1 / int2; } //更新级别分系数、级别、个人得分 LZJModel.PK_LZID = strID; LZJModel.LevelFactor = decLevelFactor; LZJModel.JiBie = strJiBie; LZJModel.PerScore = decPerScore; } else if (strResult == "ZZ") //学术著作 { decimal decPerScore = 0; LZJModel = LZJBll.GetModel(strID); int intRank = Convert.ToInt32(LZJModel.Rank); int intPopulation = Convert.ToInt32(LZJModel.Population); //计算字数分 decimal decWord = Convert.ToDecimal(LZJModel.Word); WordsFundsModel = WordsFundsBll.GetModel("学术著作"); decimal decWordScore = 0; //字数分 if (decWord <= WordsFundsModel.Digit2) { decWordScore = decWord * Convert.ToDecimal(WordsFundsModel.Digit1); } else if (decWord > WordsFundsModel.Digit2) { decWordScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + Convert.ToDecimal(decWord - WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit3); } //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = (decJiBieScore + decWordScore) * int1 / int2; } //更新级别分系数、级别、个人得分 LZJModel.PK_LZID = strID; LZJModel.LevelFactor = decLevelFactor; LZJModel.JiBie = strJiBie; LZJModel.PerScore = decPerScore; } else if (strResult == "KY") //科研项目 { decimal decPerScore = 0; ProModel = ProBll.GetModel(strID); int intRank = Convert.ToInt32(ProModel.Anchorperson); int intPopulation = Convert.ToInt32(ProModel.Population); //计算经费分 decimal decFundScore = 0; string strSmallSort = ProModel.SmallSort; string strType = ProModel.Type; decimal decFunds1 = Convert.ToDecimal(ProModel.Funds1); WordsFundsModel = WordsFundsBll.GetModel(strSmallSort, strType);; if (decFunds1 <= WordsFundsModel.Digit2) { decFundScore = decFunds1 * Convert.ToDecimal(WordsFundsModel.Digit1); } else if (decFunds1 > WordsFundsModel.Digit2 && decFunds1 <= WordsFundsModel.Digit4) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3); } else if (decFunds1 > WordsFundsModel.Digit4 && decFunds1 <= WordsFundsModel.Digit6) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (Convert.ToDecimal(WordsFundsModel.Digit4) - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit4)) * Convert.ToDecimal(WordsFundsModel.Digit5); } else if (decFunds1 > 100) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (Convert.ToDecimal(WordsFundsModel.Digit4) - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3) + (Convert.ToDecimal(WordsFundsModel.Digit6) - Convert.ToDecimal(WordsFundsModel.Digit4)) * Convert.ToDecimal(WordsFundsModel.Digit5) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit6)) * Convert.ToDecimal(WordsFundsModel.Digit7); } //计算个人得分 decimal decScale = Cal3Bll.GetProjectScale("是"); int intAnchorperson = Convert.ToInt32(ProModel.Anchorperson); if (intAnchorperson == 0) //是否项目主持人 { decPerScore = (decJiBieScore + decFundScore) * decScale; } else { decPerScore = (decJiBieScore + decFundScore) * (1 - decScale) / (intPopulation - 1); } //更新级别分系数、级别、个人得分 ProModel.PK_PID = strID; ProModel.LevelFactor = decLevelFactor; ProModel.JiBie = strJiBie; ProModel.PerScore = decPerScore; } else if (strResult == "SB") //项目申报 { decimal decPerScore = 0; ProModel = ProBll.GetModel(strID); int intRank = Convert.ToInt32(ProModel.Anchorperson); int intPopulation = Convert.ToInt32(ProModel.Population); //计算个人得分 decimal decScale = Cal3Bll.GetProjectScale("是"); int intAnchorperson = Convert.ToInt32(ProModel.Anchorperson); if (intAnchorperson == 0) //是否项目主持人 { decPerScore = decJiBieScore * decScale; } else { decPerScore = decJiBieScore * (1 - decScale) / (intPopulation - 1); } //更新级别分系数、级别、个人得分 ProModel.PK_PID = strID; ProModel.LevelFactor = decLevelFactor; ProModel.JiBie = strJiBie; ProModel.PerScore = decPerScore; } else //其他类别 { decimal decPerScore = 0; AchievementModel = AchievementBll.GetModel(strID); int intRank = Convert.ToInt32(AchievementModel.Rank); int intPopulation = Convert.ToInt32(AchievementModel.Population); //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = decJiBieScore * int1 / int2; } //更新级别分系数、级别、个人得分 AchievementModel.PK_AID = strID; AchievementModel.LevelFactor = decLevelFactor; AchievementModel.JiBie = strJiBie; AchievementModel.PerScore = decPerScore; AchievementBll.UpdateJiBie(AchievementModel); } Response.Write("<script language=javascript>opener.location.reload();window.close();</script>"); }
/// <summary> /// 更新一条数据 /// </summary> public void Update(ZQUSR.Model.sr_Project model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update sr_Project set "); strSql.Append("FK_UserID=@FK_UserID,"); strSql.Append("BigSort=@BigSort,"); strSql.Append("SmallSort=@SmallSort,"); strSql.Append("Type=@Type,"); strSql.Append("Title=@Title,"); strSql.Append("AddTime=@AddTime,"); strSql.Append("Source=@Source,"); strSql.Append("PublishTime1=@PublishTime1,"); strSql.Append("PublishTime2=@PublishTime2,"); strSql.Append("Anchorperson=@Anchorperson,"); strSql.Append("ReviewState=@ReviewState,"); strSql.Append("Population=@Population,"); strSql.Append("AllAuthor=@AllAuthor,"); strSql.Append("SchoolSign=@SchoolSign,"); strSql.Append("Remark=@Remark,"); strSql.Append("AuditState=@AuditState,"); strSql.Append("JiBie=@JiBie,"); strSql.Append("LevelFactor=@LevelFactor,"); strSql.Append("PerScore=@PerScore,"); strSql.Append("Rewards=@Rewards,"); strSql.Append("Bounty=@Bounty,"); strSql.Append("ShiFa=@ShiFa,"); strSql.Append("Funds1=@Funds1,"); strSql.Append("Funds2=@Funds2,"); strSql.Append("Funds3=@Funds3,"); strSql.Append("Extra1=@Extra1,"); strSql.Append("Extra2=@Extra2,"); strSql.Append("Extra3=@Extra3,"); strSql.Append("Extra4=@Extra4,"); strSql.Append("Extra5=@Extra5"); strSql.Append(" where PK_PID=@PK_PID "); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar, 16), new SqlParameter("@FK_UserID", SqlDbType.NVarChar, 10), new SqlParameter("@BigSort", SqlDbType.NVarChar, 10), new SqlParameter("@SmallSort", SqlDbType.NVarChar, 10), new SqlParameter("@Type", SqlDbType.NVarChar, 10), new SqlParameter("@Title", SqlDbType.NVarChar, 100), new SqlParameter("@AddTime", SqlDbType.DateTime), new SqlParameter("@Source", SqlDbType.NVarChar, 30), new SqlParameter("@PublishTime1", SqlDbType.DateTime), new SqlParameter("@PublishTime2", SqlDbType.DateTime), new SqlParameter("@Anchorperson", SqlDbType.TinyInt, 1), new SqlParameter("@ReviewState", SqlDbType.NVarChar, 10), new SqlParameter("@Population", SqlDbType.Int, 4), new SqlParameter("@AllAuthor", SqlDbType.NVarChar, 60), new SqlParameter("@SchoolSign", SqlDbType.NVarChar, 10), new SqlParameter("@Remark", SqlDbType.NVarChar, 200), new SqlParameter("@AuditState", SqlDbType.NVarChar, 10), new SqlParameter("@JiBie", SqlDbType.Char, 1), new SqlParameter("@LevelFactor", SqlDbType.Float, 8), new SqlParameter("@PerScore", SqlDbType.Float, 8), new SqlParameter("@Rewards", SqlDbType.Float, 8), new SqlParameter("@Bounty", SqlDbType.Float, 8), new SqlParameter("@ShiFa", SqlDbType.Float, 8), new SqlParameter("@Funds1", SqlDbType.Float, 8), new SqlParameter("@Funds2", SqlDbType.Float, 8), new SqlParameter("@Funds3", SqlDbType.Float, 8), new SqlParameter("@Extra1", SqlDbType.NVarChar, 10), new SqlParameter("@Extra2", SqlDbType.NVarChar, 10), new SqlParameter("@Extra3", SqlDbType.NVarChar, 10), new SqlParameter("@Extra4", SqlDbType.NVarChar, 10), new SqlParameter("@Extra5", SqlDbType.NVarChar, 10) }; parameters[0].Value = model.PK_PID; parameters[1].Value = model.FK_UserID; parameters[2].Value = model.BigSort; parameters[3].Value = model.SmallSort; parameters[4].Value = model.Type; parameters[5].Value = model.Title; parameters[6].Value = model.AddTime; parameters[7].Value = model.Source; parameters[8].Value = model.PublishTime1; parameters[9].Value = model.PublishTime2; parameters[10].Value = model.Anchorperson; parameters[11].Value = model.ReviewState; parameters[12].Value = model.Population; parameters[13].Value = model.AllAuthor; parameters[14].Value = model.SchoolSign; parameters[15].Value = model.Remark; parameters[16].Value = model.AuditState; parameters[17].Value = model.JiBie; parameters[18].Value = model.LevelFactor; parameters[19].Value = model.PerScore; parameters[20].Value = model.Rewards; parameters[21].Value = model.Bounty; parameters[22].Value = model.ShiFa; parameters[23].Value = model.Funds1; parameters[24].Value = model.Funds2; parameters[25].Value = model.Funds3; parameters[26].Value = model.Extra1; parameters[27].Value = model.Extra2; parameters[28].Value = model.Extra3; parameters[29].Value = model.Extra4; parameters[30].Value = model.Extra5; DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); }
/// <summary> /// 增加一条数据 /// </summary> public void Add(ZQUSR.Model.sr_Project model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into sr_Project("); strSql.Append("PK_PID,FK_UserID,BigSort,SmallSort,Type,Title,AddTime,Source,PublishTime1,PublishTime2,Anchorperson,ReviewState,Population,AllAuthor,SchoolSign,Remark,AuditState,JiBie,LevelFactor,PerScore,Rewards,Bounty,ShiFa,Funds1,Funds2,Funds3,Extra1,Extra2,Extra3,Extra4,Extra5)"); strSql.Append(" values ("); strSql.Append("@PK_PID,@FK_UserID,@BigSort,@SmallSort,@Type,@Title,@AddTime,@Source,@PublishTime1,@PublishTime2,@Anchorperson,@ReviewState,@Population,@AllAuthor,@SchoolSign,@Remark,@AuditState,@JiBie,@LevelFactor,@PerScore,@Rewards,@Bounty,@ShiFa,@Funds1,@Funds2,@Funds3,@Extra1,@Extra2,@Extra3,@Extra4,@Extra5)"); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar, 16), new SqlParameter("@FK_UserID", SqlDbType.NVarChar, 10), new SqlParameter("@BigSort", SqlDbType.NVarChar, 10), new SqlParameter("@SmallSort", SqlDbType.NVarChar, 10), new SqlParameter("@Type", SqlDbType.NVarChar, 10), new SqlParameter("@Title", SqlDbType.NVarChar, 100), new SqlParameter("@AddTime", SqlDbType.DateTime), new SqlParameter("@Source", SqlDbType.NVarChar, 30), new SqlParameter("@PublishTime1", SqlDbType.DateTime), new SqlParameter("@PublishTime2", SqlDbType.DateTime), new SqlParameter("@Anchorperson", SqlDbType.TinyInt, 1), new SqlParameter("@ReviewState", SqlDbType.NVarChar, 10), new SqlParameter("@Population", SqlDbType.Int, 4), new SqlParameter("@AllAuthor", SqlDbType.NVarChar, 60), new SqlParameter("@SchoolSign", SqlDbType.NVarChar, 10), new SqlParameter("@Remark", SqlDbType.NVarChar, 200), new SqlParameter("@AuditState", SqlDbType.NVarChar, 10), new SqlParameter("@JiBie", SqlDbType.Char, 1), new SqlParameter("@LevelFactor", SqlDbType.Float, 8), new SqlParameter("@PerScore", SqlDbType.Float, 8), new SqlParameter("@Rewards", SqlDbType.Float, 8), new SqlParameter("@Bounty", SqlDbType.Float, 8), new SqlParameter("@ShiFa", SqlDbType.Float, 8), new SqlParameter("@Funds1", SqlDbType.Float, 8), new SqlParameter("@Funds2", SqlDbType.Float, 8), new SqlParameter("@Funds3", SqlDbType.Float, 8), new SqlParameter("@Extra1", SqlDbType.NVarChar, 10), new SqlParameter("@Extra2", SqlDbType.NVarChar, 10), new SqlParameter("@Extra3", SqlDbType.NVarChar, 10), new SqlParameter("@Extra4", SqlDbType.NVarChar, 10), new SqlParameter("@Extra5", SqlDbType.NVarChar, 10) }; parameters[0].Value = model.PK_PID; parameters[1].Value = model.FK_UserID; parameters[2].Value = model.BigSort; parameters[3].Value = model.SmallSort; parameters[4].Value = model.Type; parameters[5].Value = model.Title; parameters[6].Value = model.AddTime; parameters[7].Value = model.Source; parameters[8].Value = model.PublishTime1; parameters[9].Value = model.PublishTime2; parameters[10].Value = model.Anchorperson; parameters[11].Value = model.ReviewState; parameters[12].Value = model.Population; parameters[13].Value = model.AllAuthor; parameters[14].Value = model.SchoolSign; parameters[15].Value = model.Remark; parameters[16].Value = model.AuditState; parameters[17].Value = model.JiBie; parameters[18].Value = model.LevelFactor; parameters[19].Value = model.PerScore; parameters[20].Value = model.Rewards; parameters[21].Value = model.Bounty; parameters[22].Value = model.ShiFa; parameters[23].Value = model.Funds1; parameters[24].Value = model.Funds2; parameters[25].Value = model.Funds3; parameters[26].Value = model.Extra1; parameters[27].Value = model.Extra2; parameters[28].Value = model.Extra3; parameters[29].Value = model.Extra4; parameters[30].Value = model.Extra5; DbHelperSQL.ExecuteSql(strSql.ToString(), parameters); }
/// <summary> /// 得到一个对象实体 /// </summary> public ZQUSR.Model.sr_Project GetModel(string PK_PID) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 PK_PID,FK_UserID,BigSort,SmallSort,Type,Title,AddTime,Source,PublishTime1,PublishTime2,Anchorperson,ReviewState,Population,AllAuthor,SchoolSign,Remark,AuditState,JiBie,LevelFactor,PerScore,Rewards,Bounty,ShiFa,Funds1,Funds2,Funds3,Extra1,Extra2,Extra3,Extra4,Extra5 from sr_Project "); strSql.Append(" where PK_PID=@PK_PID "); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar, 50) }; parameters[0].Value = PK_PID; ZQUSR.Model.sr_Project model = new ZQUSR.Model.sr_Project(); DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { model.PK_PID = ds.Tables[0].Rows[0]["PK_PID"].ToString(); model.FK_UserID = ds.Tables[0].Rows[0]["FK_UserID"].ToString(); model.BigSort = ds.Tables[0].Rows[0]["BigSort"].ToString(); model.SmallSort = ds.Tables[0].Rows[0]["SmallSort"].ToString(); model.Type = ds.Tables[0].Rows[0]["Type"].ToString(); model.Title = ds.Tables[0].Rows[0]["Title"].ToString(); if (ds.Tables[0].Rows[0]["AddTime"].ToString() != "") { model.AddTime = DateTime.Parse(ds.Tables[0].Rows[0]["AddTime"].ToString()); } model.Source = ds.Tables[0].Rows[0]["Source"].ToString(); if (ds.Tables[0].Rows[0]["PublishTime1"].ToString() != "") { model.PublishTime1 = DateTime.Parse(ds.Tables[0].Rows[0]["PublishTime1"].ToString()); } if (ds.Tables[0].Rows[0]["PublishTime2"].ToString() != "") { model.PublishTime2 = DateTime.Parse(ds.Tables[0].Rows[0]["PublishTime2"].ToString()); } if (ds.Tables[0].Rows[0]["Anchorperson"].ToString() != "") { model.Anchorperson = int.Parse(ds.Tables[0].Rows[0]["Anchorperson"].ToString()); } model.ReviewState = ds.Tables[0].Rows[0]["ReviewState"].ToString(); if (ds.Tables[0].Rows[0]["Population"].ToString() != "") { model.Population = int.Parse(ds.Tables[0].Rows[0]["Population"].ToString()); } model.AllAuthor = ds.Tables[0].Rows[0]["AllAuthor"].ToString(); model.SchoolSign = ds.Tables[0].Rows[0]["SchoolSign"].ToString(); model.Remark = ds.Tables[0].Rows[0]["Remark"].ToString(); model.AuditState = ds.Tables[0].Rows[0]["AuditState"].ToString(); model.JiBie = ds.Tables[0].Rows[0]["JiBie"].ToString(); if (ds.Tables[0].Rows[0]["LevelFactor"].ToString() != "") { model.LevelFactor = decimal.Parse(ds.Tables[0].Rows[0]["LevelFactor"].ToString()); } if (ds.Tables[0].Rows[0]["PerScore"].ToString() != "") { model.PerScore = decimal.Parse(ds.Tables[0].Rows[0]["PerScore"].ToString()); } if (ds.Tables[0].Rows[0]["Rewards"].ToString() != "") { model.Rewards = decimal.Parse(ds.Tables[0].Rows[0]["Rewards"].ToString()); } if (ds.Tables[0].Rows[0]["Bounty"].ToString() != "") { model.Bounty = decimal.Parse(ds.Tables[0].Rows[0]["Bounty"].ToString()); } if (ds.Tables[0].Rows[0]["ShiFa"].ToString() != "") { model.ShiFa = decimal.Parse(ds.Tables[0].Rows[0]["ShiFa"].ToString()); } if (ds.Tables[0].Rows[0]["Funds1"].ToString() != "") { model.Funds1 = decimal.Parse(ds.Tables[0].Rows[0]["Funds1"].ToString()); } if (ds.Tables[0].Rows[0]["Funds2"].ToString() != "") { model.Funds2 = decimal.Parse(ds.Tables[0].Rows[0]["Funds2"].ToString()); } if (ds.Tables[0].Rows[0]["Funds3"].ToString() != "") { model.Funds3 = decimal.Parse(ds.Tables[0].Rows[0]["Funds3"].ToString()); } model.Extra1 = ds.Tables[0].Rows[0]["Extra1"].ToString(); model.Extra2 = ds.Tables[0].Rows[0]["Extra2"].ToString(); model.Extra3 = ds.Tables[0].Rows[0]["Extra3"].ToString(); model.Extra4 = ds.Tables[0].Rows[0]["Extra4"].ToString(); model.Extra5 = ds.Tables[0].Rows[0]["Extra5"].ToString(); return(model); } else { return(null); } }
/// <summary> /// �õ�һ������ʵ�� /// </summary> public ZQUSR.Model.sr_Project GetModel(string PK_PID) { StringBuilder strSql=new StringBuilder(); strSql.Append("select top 1 PK_PID,FK_UserID,BigSort,SmallSort,Type,Title,AddTime,Source,PublishTime1,PublishTime2,Anchorperson,ReviewState,Population,AllAuthor,SchoolSign,Remark,AuditState,JiBie,LevelFactor,PerScore,Rewards,Bounty,ShiFa,Funds1,Funds2,Funds3,Extra1,Extra2,Extra3,Extra4,Extra5 from sr_Project "); strSql.Append(" where PK_PID=@PK_PID "); SqlParameter[] parameters = { new SqlParameter("@PK_PID", SqlDbType.NVarChar,50)}; parameters[0].Value = PK_PID; ZQUSR.Model.sr_Project model=new ZQUSR.Model.sr_Project(); DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters); if(ds.Tables[0].Rows.Count>0) { model.PK_PID=ds.Tables[0].Rows[0]["PK_PID"].ToString(); model.FK_UserID=ds.Tables[0].Rows[0]["FK_UserID"].ToString(); model.BigSort=ds.Tables[0].Rows[0]["BigSort"].ToString(); model.SmallSort=ds.Tables[0].Rows[0]["SmallSort"].ToString(); model.Type=ds.Tables[0].Rows[0]["Type"].ToString(); model.Title=ds.Tables[0].Rows[0]["Title"].ToString(); if(ds.Tables[0].Rows[0]["AddTime"].ToString()!="") { model.AddTime=DateTime.Parse(ds.Tables[0].Rows[0]["AddTime"].ToString()); } model.Source=ds.Tables[0].Rows[0]["Source"].ToString(); if(ds.Tables[0].Rows[0]["PublishTime1"].ToString()!="") { model.PublishTime1=DateTime.Parse(ds.Tables[0].Rows[0]["PublishTime1"].ToString()); } if(ds.Tables[0].Rows[0]["PublishTime2"].ToString()!="") { model.PublishTime2=DateTime.Parse(ds.Tables[0].Rows[0]["PublishTime2"].ToString()); } if(ds.Tables[0].Rows[0]["Anchorperson"].ToString()!="") { model.Anchorperson=int.Parse(ds.Tables[0].Rows[0]["Anchorperson"].ToString()); } model.ReviewState=ds.Tables[0].Rows[0]["ReviewState"].ToString(); if(ds.Tables[0].Rows[0]["Population"].ToString()!="") { model.Population=int.Parse(ds.Tables[0].Rows[0]["Population"].ToString()); } model.AllAuthor=ds.Tables[0].Rows[0]["AllAuthor"].ToString(); model.SchoolSign=ds.Tables[0].Rows[0]["SchoolSign"].ToString(); model.Remark=ds.Tables[0].Rows[0]["Remark"].ToString(); model.AuditState=ds.Tables[0].Rows[0]["AuditState"].ToString(); model.JiBie=ds.Tables[0].Rows[0]["JiBie"].ToString(); if(ds.Tables[0].Rows[0]["LevelFactor"].ToString()!="") { model.LevelFactor=decimal.Parse(ds.Tables[0].Rows[0]["LevelFactor"].ToString()); } if(ds.Tables[0].Rows[0]["PerScore"].ToString()!="") { model.PerScore=decimal.Parse(ds.Tables[0].Rows[0]["PerScore"].ToString()); } if(ds.Tables[0].Rows[0]["Rewards"].ToString()!="") { model.Rewards=decimal.Parse(ds.Tables[0].Rows[0]["Rewards"].ToString()); } if(ds.Tables[0].Rows[0]["Bounty"].ToString()!="") { model.Bounty=decimal.Parse(ds.Tables[0].Rows[0]["Bounty"].ToString()); } if(ds.Tables[0].Rows[0]["ShiFa"].ToString()!="") { model.ShiFa=decimal.Parse(ds.Tables[0].Rows[0]["ShiFa"].ToString()); } if(ds.Tables[0].Rows[0]["Funds1"].ToString()!="") { model.Funds1=decimal.Parse(ds.Tables[0].Rows[0]["Funds1"].ToString()); } if(ds.Tables[0].Rows[0]["Funds2"].ToString()!="") { model.Funds2=decimal.Parse(ds.Tables[0].Rows[0]["Funds2"].ToString()); } if(ds.Tables[0].Rows[0]["Funds3"].ToString()!="") { model.Funds3=decimal.Parse(ds.Tables[0].Rows[0]["Funds3"].ToString()); } model.Extra1=ds.Tables[0].Rows[0]["Extra1"].ToString(); model.Extra2=ds.Tables[0].Rows[0]["Extra2"].ToString(); model.Extra3=ds.Tables[0].Rows[0]["Extra3"].ToString(); model.Extra4=ds.Tables[0].Rows[0]["Extra4"].ToString(); model.Extra5=ds.Tables[0].Rows[0]["Extra5"].ToString(); return model; } else { return null; } }
protected void btnOK_Click(object sender, EventArgs e) { decimal decLevelFactor = Convert.ToDecimal(txtLevelFactor.Text); //级别分系数 string strJiBie = ddlJiBie.SelectedValue; //级别 int intScore = LevelScoresBll.GetScoreByJiBie(strJiBie); //根据级别得到对应的级别分数 decimal decJiBieScore = intScore * decLevelFactor; //级别分 string strID = lblSRID.Text.Trim(); string strResult = strID.Substring(0, 2); if (strResult == "LW") //学术论文 { decimal decPerScore = 0; LZJModel = LZJBll.GetModel(strID); int intRank = Convert.ToInt32(LZJModel.Rank); int intPopulation = Convert.ToInt32(LZJModel.Population); //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = decJiBieScore * int1 / int2; } //更新级别分系数、级别、个人得分 LZJModel.PK_LZID = strID; LZJModel.LevelFactor = decLevelFactor; LZJModel.JiBie = strJiBie; LZJModel.PerScore = decPerScore; } else if (strResult == "ZZ") //学术著作 { decimal decPerScore = 0; LZJModel = LZJBll.GetModel(strID); int intRank = Convert.ToInt32(LZJModel.Rank); int intPopulation = Convert.ToInt32(LZJModel.Population); //计算字数分 decimal decWord = Convert.ToDecimal(LZJModel.Word); WordsFundsModel = WordsFundsBll.GetModel("学术著作"); decimal decWordScore = 0; //字数分 if (decWord <= WordsFundsModel.Digit2) { decWordScore = decWord * Convert.ToDecimal(WordsFundsModel.Digit1); } else if (decWord > WordsFundsModel.Digit2) { decWordScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + Convert.ToDecimal(decWord - WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit3); } //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = (decJiBieScore+decWordScore) * int1 / int2; } //更新级别分系数、级别、个人得分 LZJModel.PK_LZID = strID; LZJModel.LevelFactor = decLevelFactor; LZJModel.JiBie = strJiBie; LZJModel.PerScore = decPerScore; } else if (strResult == "KY") //科研项目 { decimal decPerScore = 0; ProModel = ProBll.GetModel(strID); int intRank = Convert.ToInt32(ProModel.Anchorperson); int intPopulation = Convert.ToInt32(ProModel.Population); //计算经费分 decimal decFundScore = 0; string strSmallSort = ProModel.SmallSort; string strType = ProModel.Type; decimal decFunds1 = Convert.ToDecimal(ProModel.Funds1); WordsFundsModel = WordsFundsBll.GetModel(strSmallSort, strType); ; if (decFunds1 <= WordsFundsModel.Digit2) { decFundScore = decFunds1 * Convert.ToDecimal(WordsFundsModel.Digit1); } else if (decFunds1 > WordsFundsModel.Digit2 && decFunds1 <= WordsFundsModel.Digit4) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3); } else if (decFunds1 > WordsFundsModel.Digit4 && decFunds1 <= WordsFundsModel.Digit6) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (Convert.ToDecimal(WordsFundsModel.Digit4) - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit4)) * Convert.ToDecimal(WordsFundsModel.Digit5); } else if (decFunds1 > 100) { decFundScore = Convert.ToDecimal(WordsFundsModel.Digit2) * Convert.ToDecimal(WordsFundsModel.Digit1) + (Convert.ToDecimal(WordsFundsModel.Digit4) - Convert.ToDecimal(WordsFundsModel.Digit2)) * Convert.ToDecimal(WordsFundsModel.Digit3) + (Convert.ToDecimal(WordsFundsModel.Digit6) - Convert.ToDecimal(WordsFundsModel.Digit4)) * Convert.ToDecimal(WordsFundsModel.Digit5) + (decFunds1 - Convert.ToDecimal(WordsFundsModel.Digit6)) * Convert.ToDecimal(WordsFundsModel.Digit7); } //计算个人得分 decimal decScale = Cal3Bll.GetProjectScale("是"); int intAnchorperson = Convert.ToInt32(ProModel.Anchorperson); if (intAnchorperson == 0) //是否项目主持人 { decPerScore = (decJiBieScore + decFundScore) * decScale; } else { decPerScore = (decJiBieScore + decFundScore) * (1 - decScale) / (intPopulation - 1); } //更新级别分系数、级别、个人得分 ProModel.PK_PID = strID; ProModel.LevelFactor = decLevelFactor; ProModel.JiBie = strJiBie; ProModel.PerScore = decPerScore; } else if (strResult == "SB") //项目申报 { decimal decPerScore = 0; ProModel = ProBll.GetModel(strID); int intRank = Convert.ToInt32(ProModel.Anchorperson); int intPopulation = Convert.ToInt32(ProModel.Population); //计算个人得分 decimal decScale = Cal3Bll.GetProjectScale("是"); int intAnchorperson = Convert.ToInt32(ProModel.Anchorperson); if (intAnchorperson == 0) //是否项目主持人 { decPerScore = decJiBieScore * decScale; } else { decPerScore = decJiBieScore * (1 - decScale) / (intPopulation - 1); } //更新级别分系数、级别、个人得分 ProModel.PK_PID = strID; ProModel.LevelFactor = decLevelFactor; ProModel.JiBie = strJiBie; ProModel.PerScore = decPerScore; } else //其他类别 { decimal decPerScore = 0; AchievementModel = AchievementBll.GetModel(strID); int intRank = Convert.ToInt32(AchievementModel.Rank); int intPopulation = Convert.ToInt32(AchievementModel.Population); //根据完成人数和完成成果排名返回对应的得分比例 Cal2Model = Cal2Bll.GetScoreScale(intPopulation, intRank); if (Cal2Model != null) { string strScale = Cal2Model.ScoreScale; string[] str = strScale.Split('/'); int int1 = int.Parse(str[0]); int int2 = int.Parse(str[1]); decPerScore = decJiBieScore * int1 / int2; } //更新级别分系数、级别、个人得分 AchievementModel.PK_AID = strID; AchievementModel.LevelFactor = decLevelFactor; AchievementModel.JiBie = strJiBie; AchievementModel.PerScore = decPerScore; AchievementBll.UpdateJiBie(AchievementModel); } Response.Write("<script language=javascript>opener.location.reload();window.close();</script>"); }