private void RptBind() { String _strWhere = " Period_id=" + period_id; String _order = " order by Fl_Province asc"; var bll = new BLL.CCOM.Fractional_line(); this.rptList.DataSource = bll.GetList(_strWhere + _order); this.rptList.DataBind(); }
protected bool DoUpdate(Model.CCOM.Fractional_line Fl) { try { BLL.CCOM.Fractional_line Bfl = new BLL.CCOM.Fractional_line(); Bfl.Update(Fl); } catch (Exception ex) { return(false); } return(true); }
protected bool DoUpdate(Model.CCOM.Fractional_line Fl) { try { BLL.CCOM.Fractional_line Bfl = new BLL.CCOM.Fractional_line(); Bfl.Update(Fl); } catch (Exception ex) { JscriptMsg("添加出错,请重新提交", "", "Error"); return(false); } return(true); }
private void RptBind1(int fi_id) { var Fra_model = new BLL.CCOM.Fractional_line().GetModel(fi_id); this.txtYiBenWen.Text = Fra_model.WenKeYiBen == 0 ? "" : Fra_model.WenKeYiBen.ToString(); this.txtYiBenLi.Text = Fra_model.LiKeYiBen == 0 ? "" : Fra_model.LiKeYiBen.ToString(); this.txtErBenWen.Text = Fra_model.WenKeErBen == 0 ? "" : Fra_model.WenKeErBen.ToString(); this.txtErBenLi.Text = Fra_model.LiKeErBen == 0 ? "" : Fra_model.LiKeErBen.ToString(); this.txtSanBenWen.Text = Fra_model.WenKeSanBen == 0 ? "" : Fra_model.WenKeSanBen.ToString(); this.txtSanBenLi.Text = Fra_model.LiKeSanBen == 0 ? "" : Fra_model.LiKeSanBen.ToString(); this.txtYiShuWen.Text = Fra_model.WenKeYiShuXian == 0 ? "" : Fra_model.WenKeYiShuXian.ToString(); this.txtYiShuLi.Text = Fra_model.LiKeYiShuXian == 0 ? "" : Fra_model.LiKeYiShuXian.ToString(); this.txtManWen.Text = Fra_model.WenKeZongFen == 0 ? "" : Fra_model.WenKeZongFen.ToString(); this.txtManLi.Text = Fra_model.LiKeZongFen == 0 ? "" : Fra_model.LiKeZongFen.ToString(); this.ddlPro_ID.Items.FindByValue(Fra_model.Fl_Province.ToString()).Selected = true; this.ddlPro_ID.Enabled = false; }
protected void btnUpload_Click(object sender, EventArgs e) { string result = ""; if (this.txtFraUpload.PostedFile.FileName == "") { JscriptMsg("请选择上传文件", "", "Error"); return; } DataSet ds = new DataSet(); string path = "/upload/excel/"; #region 解决360获取绝对路径导致出错的问题 string AbsolutePath = this.txtFraUpload.PostedFile.FileName; string[] pathList = new string[] { }; pathList = AbsolutePath.Split('\\'); AbsolutePath = pathList[pathList.Length - 1]; #endregion string fileName = DateTime.Now.ToFileTime() + "_" + AbsolutePath; string FexName = fileName.Substring(fileName.LastIndexOf(".") + 1); if (FexName != "xls" && FexName != "xlsx") { JscriptMsg("请上传Excel文件", "", "Error"); return; } string filePath = Server.MapPath(path + fileName); this.txtFraUpload.SaveAs(filePath); int success = 0, error = 0; try { BLL.CCOM.Province PBll = new BLL.CCOM.Province(); var excel = new Common.ExcelToData(); ds = excel.GetExcelData(filePath); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { string _ProName = ds.Tables[0].Rows[i]["省份"].ToString().Trim(); var p_model = PBll.GetModel("Province_name='" + _ProName + "'"); if (p_model == null) { result += "×第" + (i + 1).ToString() + "行添加失败,该省份‘" + ds.Tables[0].Rows[i]["省份"].ToString().Trim() + "’不存在,请按照模板格式下拉选择;<br/>"; error++; continue; } var model = new Model.CCOM.Fractional_line(); var _model = new Model.CCOM.Fractional_line(); int Pro_id = p_model.Province_id; model = new BLL.CCOM.Fractional_line().GetModel(" Period_id = " + period_id + " and Fl_Province=" + Pro_id); _model.WenKeYiBen = ((ds.Tables[0].Rows[i]["文科一本线"].ToString().Trim() == "") ? 0 : (Convert.ToDecimal(ds.Tables[0].Rows[i]["文科一本线"].ToString().Trim()))); _model.LiKeYiBen = (ds.Tables[0].Rows[i]["理科一本线"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["理科一本线"].ToString().Trim())); _model.WenKeErBen = (ds.Tables[0].Rows[i]["文科二本线"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["文科二本线"].ToString().Trim())); _model.LiKeErBen = (ds.Tables[0].Rows[i]["理科二本线"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["理科二本线"].ToString().Trim())); _model.WenKeSanBen = (ds.Tables[0].Rows[i]["文科三本线"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["文科三本线"].ToString().Trim())); _model.LiKeSanBen = (ds.Tables[0].Rows[i]["理科三本线"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["理科三本线"].ToString().Trim())); _model.WenKeYiShuXian = (ds.Tables[0].Rows[i]["艺术类最低控制线(文科)"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["艺术类最低控制线(文科)"].ToString().Trim())); _model.LiKeYiShuXian = (ds.Tables[0].Rows[i]["艺术类最低控制线(理科)"].ToString().Trim() == "" ? 0 : Convert.ToDecimal(ds.Tables[0].Rows[i]["艺术类最低控制线(理科)"].ToString().Trim())); if (ds.Tables[0].Rows[i]["文科满分"].ToString().Trim() == "") { result += "×第" + (i + 1).ToString() + "行添加失败,文科满分不能为空;<br/>"; error++; continue; } _model.WenKeZongFen = Convert.ToDecimal(ds.Tables[0].Rows[i]["文科满分"].ToString().Trim()); if (ds.Tables[0].Rows[i]["理科满分"].ToString().Trim() == "") { result += "×第" + (i + 1).ToString() + "行添加失败,理科满分不能为空;<br/>"; error++; continue; } _model.LiKeZongFen = Convert.ToDecimal(ds.Tables[0].Rows[i]["理科满分"].ToString().Trim()); bool isOK = false; if (model != null) { _model.Fl_id = model.Fl_id; _model.Period_id = model.Period_id; _model.Fl_Province = model.Fl_Province; _model.Fl_addtime = model.Fl_addtime; isOK = DoUpdate(_model); } else { _model.Fl_Province = Pro_id; _model.Period_id = period_id; _model.Fl_addtime = DateTime.Now; isOK = DoAdd(_model); } if (isOK) { success++; } else { result += "×第" + (i + 1).ToString() + "行‘" + ds.Tables[0].Rows[i]["省份"].ToString().Trim() + "’信息异常,导入失败。<br/>"; error++; } } new Calculation().calculateFenShuXian(); } catch (Exception ex) { ILog LOGGER = LogManager.GetLogger("quanquan"); LOGGER.Debug("导入分数线异常" + ex.Message, ex); result = "导入分数线异常,请联系客服"; } string divinfo = "<div class=\"alert alert-block alert-info fade in\">"; divinfo += "<button data-dismiss=\"alert\" class=\"close\" type=\"button\">×</button>"; divinfo += "<h4 class=\"alert-heading\">导入结果</h4>"; divinfo += "<p>"; if (success != ds.Tables[0].DefaultView.Count) { divinfo += "部分导入成功,您可以按照提示修改Excel并重新提交<br>"; } else { divinfo += "全部导入成功,请您进入下一步确认导入信息<br>"; } divinfo += "*共有" + ds.Tables[0].DefaultView.Count + "条数据,成功" + success + "条,失败" + error + "条;<br/>"; if (result != "") { divinfo += "详细信息如下:<br><font color='red'>" + result; } divinfo += "</font></p>"; divinfo += "</div>"; this.lblError.Text = divinfo; //显示下一步 if (success > 0) { this.btnSubmit.Visible = true; } //删除上传的文件 File.Delete(filePath); }
/// <summary> /// 如果某省市没有设定分数线,那么用北京的分数线进行折算 /// </summary> /// <returns>成功返回true</returns> public bool calculateFenShuXian() { var bll = new BLL.CCOM.Fractional_line(); var modelBJ = bll.GetModelList("Fl_Province in (select Province_id from Province where Province_name = '北京市') and Period_id = " + period_id); if (modelBJ != null && modelBJ.Count > 0) { var BeiJingXian = modelBJ[0]; var provinceList = new BLL.CCOM.Province().GetModelList(""); foreach (var province in provinceList) { var model = bll.GetModelList("Fl_Province = " + province.Province_id + " and Period_id = " + period_id); if (model != null && model.Count > 0) { ///先算三本线 //理科 if (model[0].LiKeSanBen.ToString() == "0") { if (model[0].LiKeErBen.ToString() != "0") { model[0].LiKeSanBen = BeiJingXian.LiKeSanBen * model[0].LiKeErBen / BeiJingXian.LiKeErBen; } else if (model[0].LiKeYiBen.ToString() != "0") { model[0].LiKeSanBen = BeiJingXian.LiKeSanBen * model[0].LiKeYiBen / BeiJingXian.LiKeYiBen; } } //文科 if (model[0].WenKeSanBen.ToString() == "0") { if (model[0].WenKeErBen.ToString() != "0") { model[0].WenKeSanBen = BeiJingXian.WenKeSanBen * model[0].WenKeErBen / BeiJingXian.WenKeErBen; } else if (model[0].WenKeYiBen.ToString() != "0") { model[0].WenKeSanBen = BeiJingXian.WenKeSanBen * model[0].WenKeYiBen / BeiJingXian.WenKeYiBen; } } ///再算艺术线 //理科 if (model[0].LiKeYiShuXian.ToString() == "0") { if (model[0].LiKeSanBen.ToString() != "0") { model[0].LiKeYiShuXian = BeiJingXian.LiKeYiShuXian * model[0].LiKeSanBen / BeiJingXian.LiKeSanBen; } } //文科 if (model[0].WenKeYiShuXian.ToString() == "0") { if (model[0].WenKeSanBen.ToString() != "0") { model[0].WenKeYiShuXian = BeiJingXian.WenKeYiShuXian * model[0].WenKeSanBen / BeiJingXian.WenKeSanBen; } } bll.Update(model[0]); } } } return(true); }
/// <summary> /// 计算成绩,计算这个App_CCOM_TestScores表中 ShiJian是当前年份的记录 /// 要求该表中以下字段不为空:UserID、SchoolUserID、WenLi、ZongFen、ZhuanYeMingCheng、ZhuanYeFenShu、ShiJian,SchoolUser_HomeProvince /// 最终计算的出WenKaoGuoXian、WenKeFenShu、以及ZuiZhongFenShu /// 计算规则:先判断其文考成绩是否过线(根据各省分数线以及不同专业的那个要求);而后将理科考生的成绩按照公式转化为文科成绩,文科考生不做处理; /// 紧接着将文科成绩按照公式转化为百分制;最后文科成绩和艺术专业成绩按照各50%计算出最终成绩。 /// </summary> /// <returns></returns> public bool Calculate(string major_id) { //calculateFenShuXian(); try { BLL.CCOM.View_TotalScore bll = new BLL.CCOM.View_TotalScore(); var userList = bll.GetModelList(" Period_id=" + period_id + " AND Agency_id=" + major_id); //本年度的学生 foreach (var user in userList) { var userInfo = new BLL.CCOM.User_property().GetModel(" User_id=" + user.User_id); var userCEE = new BLL.CCOM.Examination_CEE_score().GetModel(" User_id=" + user.User_id + " AND Period_id=" + period_id); var model = new BLL.CCOM.Transcript().GetModel(" User_id=" + user.User_id + " AND Period_id=" + period_id); if (userInfo != null) { var fenshuxian = new BLL.CCOM.Fractional_line().GetModelList("Fl_Province = " + userInfo.UP_province + " and Period_id = " + period_id); if (fenshuxian == null || fenshuxian.Count == 0) { continue; } int WenLi = (int)(userCEE.CEE_type); ///判断是否过线 string zhuanye = new BLL.CCOM.Agency().GetModel("Agency_id=" + major_id).Agency_name; var guoxianfen = guoxianFen(zhuanye, WenLi, fenshuxian[0]); if (guoxianfen == 0) { continue; } bool passline = false; if (guoxianfen <= Convert.ToDecimal(userCEE.CEE_score)) { passline = true; } else { passline = false; } decimal wenkaofenshu = (decimal)userCEE.CEE_score; if (WenLi == 2) //理科 { wenkaofenshu = wenkaofenshu / (decimal)fenshuxian[0].LiKeSanBen * (decimal)fenshuxian[0].WenKeSanBen; } wenkaofenshu = wenkaofenshu / (decimal)fenshuxian[0].WenKeZongFen * 100; //转换为百分制 user.Transcript_CEE_convert_score = wenkaofenshu; user.Transcript_CEE_score = userCEE.CEE_score; decimal score = 0; if (zhuanye == "音乐学" || zhuanye == "音乐艺术管理" || zhuanye == "音乐治疗" || zhuanye == "音乐教育" || zhuanye == "音乐教育(协作计划)") { score = wenkaofenshu * (decimal)0.5 + (decimal)user.Transcript_AEE_score * (decimal)0.5; } else { score = (decimal)user.Transcript_AEE_score; } model.Transcript_CEE_score = userCEE.CEE_score; model.Transcript_CEE_convert_score = wenkaofenshu; model.Transcript_passline = passline; model.Transcript_score = score; } new BLL.CCOM.Transcript().Update(model); } } catch { } return(true); }
/* * protected void btnCalculation_Click(object sender, EventArgs e) * { * try * { * new Calculation().calculateFenShuXian(); * JscriptMsg("计算分数线成功", "FractionallineList.aspx?fun_id=" + MyRequest.GetString("fun_id"), "Success"); * } * catch * { * JscriptMsg("计算分数线失败,请重新尝试", "FractionallineList.aspx?fun_id=" + MyRequest.GetString("fun_id"), "Error"); * } * } * */ protected void exportexcel_ServerClick(object sender, EventArgs e) { String _strWhere = " Period_id=" + period_id; String _order = " order by Fl_Province asc"; try { BLL.CCOM.Fractional_line bll = new BLL.CCOM.Fractional_line(); List <Model.CCOM.Fractional_line> modelList = bll.GetModelList(_strWhere + _order); DataSet ds = new DataSet(); ds.Tables.Clear(); DataTable dt = ds.Tables.Add("Sheet1"); DataRow dr; DataColumn column; column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "序号"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "省份"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "文科一本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "理科一本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "文科二本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "理科二本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "文科三本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "理科三本线"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "艺术类最低控制线(文科)"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "艺术类最低控制线(理科)"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "文科满分"; ds.Tables["Sheet1"].Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "理科满分"; ds.Tables["Sheet1"].Columns.Add(column); int count = modelList.Count; for (int i = 0, num = 1; i < count; i++, num++) { dr = ds.Tables["Sheet1"].NewRow(); dr["序号"] = num.ToString(); dr["省份"] = GetProvinceName(modelList[i].Fl_Province); dr["文科一本线"] = ((decimal)modelList[i].WenKeYiBen).ToString("F2"); dr["理科一本线"] = ((decimal)modelList[i].LiKeYiBen).ToString("F2"); dr["文科二本线"] = ((decimal)modelList[i].WenKeErBen).ToString("F2"); dr["理科二本线"] = ((decimal)modelList[i].LiKeErBen).ToString("F2"); dr["文科三本线"] = ((decimal)modelList[i].WenKeSanBen).ToString("F2"); dr["理科三本线"] = ((decimal)modelList[i].LiKeSanBen).ToString("F2"); dr["艺术类最低控制线(文科)"] = ((decimal)modelList[i].WenKeYiShuXian).ToString("F2"); dr["艺术类最低控制线(理科)"] = ((decimal)modelList[i].LiKeYiShuXian).ToString("F2"); dr["文科满分"] = ((decimal)modelList[i].WenKeZongFen).ToString("F2"); dr["理科满分"] = ((decimal)modelList[i].LiKeZongFen).ToString("F2"); ds.Tables["Sheet1"].Rows.Add(dr); } DataToExcel.ExportToExcel(ds, Server.MapPath("/upload/excel/"), "高考分数线_" + DateTime.Now.ToFileTime().ToString() + ".xlsx", this.Page); } catch { JscriptMsg("获取高考分数线出错", "", "Error"); } }
protected void btnSubmit_Click(object sender, EventArgs e) { if (this.ddlPro_ID.SelectedItem.Value == "#") { JscriptMsg("请选择省份!", "", "Error"); return; } if (this.txtManWen.Text.ToString().Trim() == "" || this.txtManLi.Text.ToString().Trim() == "") { JscriptMsg("文理科满分不能为空!", "", "Error"); return; } var model = new Model.CCOM.Fractional_line(); var _model = new Model.CCOM.Fractional_line(); int Pro_id = Convert.ToInt32(this.ddlPro_ID.SelectedItem.Value); model = new BLL.CCOM.Fractional_line().GetModel(" Period_id = " + period_id + " and Fl_Province=" + Pro_id); _model.WenKeYiBen = ((this.txtYiBenWen.Text.ToString() == "") ? 0 : (Convert.ToDecimal(this.txtYiBenWen.Text.ToString().Trim()))); _model.LiKeYiBen = (this.txtYiBenLi.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtYiBenLi.Text.ToString().Trim())); _model.WenKeErBen = (this.txtErBenWen.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtErBenWen.Text.ToString().Trim())); _model.LiKeErBen = (this.txtErBenLi.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtErBenLi.Text.ToString().Trim())); _model.WenKeSanBen = (this.txtSanBenWen.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtSanBenWen.Text.ToString().Trim())); _model.LiKeSanBen = (this.txtSanBenLi.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtSanBenLi.Text.ToString().Trim())); _model.WenKeYiShuXian = (this.txtYiShuWen.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtYiShuWen.Text.ToString().Trim())); _model.LiKeYiShuXian = (this.txtYiShuLi.Text.ToString() == "" ? 0 : Convert.ToDecimal(this.txtYiShuLi.Text.ToString().Trim())); _model.WenKeZongFen = Convert.ToDecimal(this.txtManWen.Text.ToString().Trim()); _model.LiKeZongFen = Convert.ToDecimal(this.txtManLi.Text.ToString().Trim()); bool isOK = false; if (model != null) { _model.Fl_id = model.Fl_id; _model.Period_id = model.Period_id; _model.Fl_Province = model.Fl_Province; _model.Fl_addtime = model.Fl_addtime; isOK = DoUpdate(_model); } else { _model.Fl_Province = Pro_id; _model.Period_id = period_id; _model.Fl_addtime = DateTime.Now; isOK = DoAdd(_model); } if (isOK) { try { new Calculation().calculateFenShuXian(); JscriptMsg("分数线添加成功", "FractionallineList.aspx?fun_id=" + get_fun_id("CCOM/CEEManege/FractionallineList.aspx"), "Success"); } catch { JscriptMsg("分数线添加失败,请重新尝试", "", "Error"); } } }