/// <summary> /// /// </summary> /// <param name="ID"></param> protected void ShowInitInfor(string ID) { try { cashorder_model = cashorder_bll.GetModel(int.Parse(ID)); //预算报告名称 TB_Name.Text = cashorder_model.NAMES; //报告审批人 DDL_AssignChecker.SelectedValue = cashorder_model.Checker; //所属项目 if (null != cashorder_model.ProjectID && !cashorder_model.ProjectID.ToString().Equals("9999")) { RBL_project.SelectedValue = "1"; DDL_Project.Visible = true; DDL_Project.SelectedValue = cashorder_model.ProjectID.ToString(); } else { RBL_project.SelectedValue = "0"; DDL_Project.Visible = false; } //预算金额 TB_BudgetAmount.Text = cashorder_model.BudgetAmount.ToString(); //预算金额单位 RB_BudgetAmount.SelectedValue = cashorder_model.BAUNIT.ToString().Equals("万元") ? "1" : "0"; } catch { } }
/// <summary> /// 显示详情 /// </summary> /// <param name="ID"></param> protected void ShowInfor(string ID) { try { order_model = order_bll.GetModel(int.Parse(ID)); if (null != order_model.Note && !order_model.Note.ToString().Equals("")) { LB_Notes.Text = order_model.Note.ToString(); } else { LB_Notes.Text = " 暂无预算报告!"; } } catch { } }
/// <summary> /// 确定事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button_sumbit_click(object sender, EventArgs e) { try { Model.USER_Users user_model = (Model.USER_Users)Session["USER_Users"]; if (null != Request["ID"] && !Request["ID"].ToString().Equals(""))//表示是修改 { cashorder_model = cashorder_bll.GetModel(int.Parse(Request["ID"].ToString())); //预算报告的名称 cashorder_model.NAMES = TB_Name.Text.Trim().ToString(); //所属项目 if (RBL_project.SelectedValue.ToString().Equals("1"))//表示有所属项目 { cashorder_model.ProjectID = int.Parse(DDL_Project.SelectedValue.ToString()); } else { cashorder_model.ProjectID = 9999;//表示暂无所属项目 } //申请时间 cashorder_model.ADDTIME = DateTime.Now; //预算金额 cashorder_model.BudgetAmount = decimal.Parse(TB_BudgetAmount.Text.Trim().ToString()); //预算金额单位 cashorder_model.BAUNIT = RB_BudgetAmount.SelectedItem.Text.ToString(); //审核状态 cashorder_model.Status = 0; //预算报告的文件路径 if (FileUpload_list.FileName.Length > 2) { string[] content = fileup.UpFile_COMMONS(FileUpload_list, "/AllFileUp/fileup", ""); //1-成功;0-失败;2-类型不支持;3-大小不符合;文件的路径;文件名称;文件类型;图标;大小;操作结果 if (content[0] == "0") { tag.Text = "文件上传失败,请重新上传!"; return; } else if (content[0] == "2") { tag.Text = "系统不允许此类文件上传,文件上传失败,请重新上传!"; return; } else if (content[0] == "3") { tag.Text = "文件上传大小不符合,文件上传失败,请重新上传!"; return; } //备注信息 cashorder_model.Note = cashorder_model.Note + "<br>" + user_model.REALNAME + " " + DateTime.Now + "上传预算报告:<a href='" + content[1].ToString() + "' target='_blank'>" + FileUpload_list.FileName.ToString() + "</a><br>"; cashorder_model.BudgetList = content[1]; } //指定审批人 cashorder_model.Checker = DDL_AssignChecker.SelectedValue.ToString(); //添加操作 cashorder_bll.Update(cashorder_model); ////如果操作者和审批人是同一个人就不需要再发送了。 //if (((Model.USER_Users)Session["USER_Users"]).ID.Equals(cashorder_model.Checker.ToString())) //{ //} /*给业务申请者发信息*/ Model.FaceShowMessage mFaceShowMessage = new Dianda.Model.FaceShowMessage(); BLL.FaceShowMessage bFaceShowMessage = new Dianda.BLL.FaceShowMessage(); mFaceShowMessage.DATETIME = DateTime.Now; mFaceShowMessage.FromTable = "预算申请"; mFaceShowMessage.IsRead = 0; mFaceShowMessage.NewsID = null; mFaceShowMessage.NewsType = "预算申请"; mFaceShowMessage.ReadTime = null; mFaceShowMessage.DELFLAG = 0; mFaceShowMessage.ProjectID = cashorder_model.ProjectID; mFaceShowMessage.Receive = cashorder_model.Checker.ToString(); mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")编辑预算申请<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + cashorder_model.Status.ToString() + "&role=manager' target='_self' title='编辑时间:" + DateTime.Now + "'> 点击处理</a>"; bFaceShowMessage.Add(mFaceShowMessage); /*给业务申请者发信息*/ } else//新建 { //ID cashorder_model.ID = cashorder_bll.GetMaxId(); //预算报告的名称 cashorder_model.NAMES = TB_Name.Text.Trim().ToString(); //所属项目 if (RBL_project.SelectedValue.ToString().Equals("1"))//表示有所属项目 { cashorder_model.ProjectID = int.Parse(DDL_Project.SelectedValue.ToString()); } else { cashorder_model.ProjectID = 9999; } //申请时间 cashorder_model.ADDTIME = DateTime.Now; //预算金额 cashorder_model.BudgetAmount = decimal.Parse(TB_BudgetAmount.Text.Trim().ToString()); //预算金额单位 cashorder_model.BAUNIT = RB_BudgetAmount.SelectedItem.Text.ToString(); //申请人 cashorder_model.Applyuser = user_model.ID; //审核状态 cashorder_model.Status = 0; //删除标记 cashorder_model.Delflag = 0; //预算报告的文件路径 if (TB_Name.Text.Trim().ToString().Equals("")) { tag.Text = "预算报告名称不能为空!"; return; } else if (TB_BudgetAmount.Text.Trim().ToString().Equals("")) { tag.Text = "预算金额不能为空!"; return; } else if (FileUpload_list.FileName.Length <= 0) { tag.Text = "上传预算报告项不能为空!"; return; } if (FileUpload_list.FileName.Length > 2) { string[] content = fileup.UpFile_COMMONS(FileUpload_list, "/AllFileUp/fileup", ""); //1-成功;0-失败;2-类型不支持;3-大小不符合;文件的路径;文件名称;文件类型;图标;大小;操作结果 if (content[0] == "0") { tag.Text = "文件上传失败,请重新上传!"; return; } else if (content[0] == "2") { tag.Text = "系统不允许此类文件上传,文件上传失败,请重新上传!"; return; } else if (content[0] == "3") { tag.Text = "文件上传大小不符合,文件上传失败,请重新上传!"; return; } cashorder_model.BudgetList = content[1]; } //资金卡数目 cashorder_model.CarNums = 0; //指定审批人 cashorder_model.Checker = DDL_AssignChecker.SelectedValue.ToString(); //备注信息 cashorder_model.Note = user_model.REALNAME + " " + DateTime.Now + "上传预算报告:<a href='" + cashorder_model.BudgetList.ToString() + "' target='_blank'>" + FileUpload_list.FileName.ToString() + "</a><br>"; //添加操作 cashorder_bll.Add(cashorder_model); /*给业务申请者发信息*/ Model.FaceShowMessage mFaceShowMessage = new Dianda.Model.FaceShowMessage(); BLL.FaceShowMessage bFaceShowMessage = new Dianda.BLL.FaceShowMessage(); mFaceShowMessage.DATETIME = DateTime.Now; mFaceShowMessage.FromTable = "预算申请"; mFaceShowMessage.IsRead = 0; mFaceShowMessage.NewsID = null; mFaceShowMessage.NewsType = "预算申请"; mFaceShowMessage.ReadTime = null; mFaceShowMessage.DELFLAG = 0; mFaceShowMessage.ProjectID = cashorder_model.ProjectID; mFaceShowMessage.Receive = cashorder_model.Checker.ToString(); mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")提交预算申请<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + cashorder_model.Status.ToString() + "&role=manager' target='_self' title='提交时间:" + DateTime.Now + "'> 点击处理</a>"; bFaceShowMessage.Add(mFaceShowMessage); /*给业务申请者发信息*/ } string coutws = "<script language=\"javascript\" type=\"text/javascript\">alert(\"操作成功!现在进入列表页面\"); location.href = \"budgetmanage.aspx?pageindex=" + Request["pageindex"] + "\";</script>"; Response.Write(coutws); } catch { } }
/// <summary> /// 确定事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button_sumbit_click(object sender, EventArgs e) { try { Model.USER_Users user_model = (Model.USER_Users)Session["USER_Users"]; string ID = Request["ID"].ToString(); DataTable UserIDdt = new DataTable(); bool TnF = false; tag.Text = ""; if (RBL_check.SelectedValue == "") { tag.Text = "请选择审批权限!"; return; } order_model = order_bll.GetModel(int.Parse(ID)); //审核状态,如果审核状态是1,表示当前预算报告是审核通过后,由“预算管理”人员进来重新修改的 //此时修改需要向(财务、秘书、审批过的分管领导(给于同意的)、申请人)发送信息 if (order_model.Status == 1) { TnF = true; string UserIDStr = ""; //用户id字符串 string UserNameStr = ""; //用户名字符串 UserIDStr = order_model.Applyuser; //申请人id if (!string.IsNullOrEmpty(order_model.TEMP1)) { UserIDStr += "," + order_model.TEMP1; //上一审批人id } string CheckerHistory = order_model.CheckerHistory.TrimStart(';'); //审核的历史记录 string[] CHarr = CheckerHistory.Split(';'); //找出所有审核过的人员 for (int i = 0; i < CHarr.Length; i++) { string[] s = CHarr[i].Split(':'); UserNameStr += s[0] + ","; } UserNameStr = UserNameStr.TrimEnd(','); UserIDStr = UserIDStr.Replace(",", "','"); UserNameStr = UserNameStr.Replace(",", "','"); string sql = "select distinct a.id from USER_Users a " + " left outer join USER_Groups b on a.groups like '%'+b.id+'%' " + " where (b.tags='普通组' and b.name in ('财务','秘书'))" + " or a.id in ('" + UserIDStr + "') or a.username in ('" + UserNameStr + "')"; UserIDdt = pageControl.doSql(sql).Tables[0]; } //室主任审批 if (RBL_check.SelectedValue.Equals("1")) { //专项资金 int special; if (int.TryParse(DDL_SpecialFundsID.SelectedValue.ToString(), out special)) { order_model.SpecialFundsID = special; } //order_model.SpecialFundsID = int.Parse(DDL_SpecialFundsID.SelectedValue.ToString()); //指定经费审批人 order_model.AssignChecker = DDL_AssignChecker.SelectedValue.ToString(); } //实际确认预算金额 if (tr_BudgetAmount.Visible == true) { order_model.ActualAmount = decimal.Parse(TB_ActualAmount.Text.Trim().ToString()); } //实际确认预算金额单位 order_model.AAUNIT = RB_AAUNIT.SelectedValue.ToString(); if (FileUpload_list.FileName.Length > 2) { string[] content = fileup.UpFile_COMMONS(FileUpload_list, "/AllFileUp/fileup", ""); //1-成功;0-失败;2-类型不支持;3-大小不符合;文件的路径;文件名称;文件类型;图标;大小;操作结果 if (content[0] == "0") { tag.Text = "文件上传失败,请重新上传!"; return; } else if (content[0] == "2") { tag.Text = "系统不允许此类文件上传,文件上传失败,请重新上传!"; return; } else if (content[0] == "3") { tag.Text = "文件上传大小不符合,文件上传失败,请重新上传!"; return; } //备注信息 order_model.Note = order_model.Note + "<br>" + user_model.REALNAME + " " + DateTime.Now + "上传预算报告:<a href='" + content[1].ToString() + "' target='_blank'>" + FileUpload_list.FileName.ToString() + "</a><br>"; order_model.BudgetList = content[1]; } string check = ""; //审核结果 if (RBL_check.SelectedIndex == 0) { if (RBL_Checker.SelectedValue == "0") { check = "3"; //如果是分管领导审核通过 那么把状态 status改为 3 (分管领导审核通过) 陈雨 2012年7月20日12:31:34 } else if (RBL_Checker.SelectedValue == "2") { check = "23"; } } else { check = RBL_Checker.SelectedValue.ToString(); } order_model.Status = int.Parse(check); string checkvalue = RBL_Checker.SelectedItem.Text.ToString(); if (check.Equals("3"))//表示需要继续审核 { //如果有一下审批人,那么则要将原来的审批人变成上一审批人存储起来,因为需要发送信息 order_model.TEMP1 = order_model.Checker; //下一审核人 order_model.Checker = DDL_Checker.SelectedValue.ToString(); //如果是继续审核则显示指定的下一审批人 checkvalue = checkvalue + "(" + DDL_Checker.SelectedItem.ToString() + ")"; } else { //预算审批人 order_model.Checker = user_model.ID; if (check.Equals("1"))//如果是审核通过,需要发送新建资金卡的通知 { Dianda.Model.Cash_Message cashmessage_model = new Dianda.Model.Cash_Message(); Dianda.BLL.Cash_Message cashmessage_bll = new Dianda.BLL.Cash_Message(); //资金卡名称,加入的就是预算报告 cashmessage_model.CardName = "《" + order_model.NAMES.ToString() + "》的新建资金卡通知!"; //持卡人 cashmessage_model.CardholderID = ""; //项目的ID cashmessage_model.ProjectID = order_model.ProjectID; //初始金额 cashmessage_model.LimitNums = (order_model.ActualAmount) * (order_model.AAUNIT.Equals("元") ? 1 : 10000); //填写的时间 cashmessage_model.DATETIME = Convert.ToDateTime(DateTime.Now.ToString()); //发出这个消息的用户的ID cashmessage_model.SendUserID = user_model.ID; //备注说明 cashmessage_model.Notes = "预算报告:‘" + order_model.NAMES.ToString() + "’的新建资金卡通知!发送人:" + user_model.REALNAME; //是否已经阅读 cashmessage_model.IsRead = 0; //消息的状态 cashmessage_model.Status = 1; //所属预算报告 cashmessage_model.SFOrderID = order_model.ID; Session["Cash_Message_temps"] = cashmessage_model; //向信息表中添加一条新建资金卡的记录 cashmessage_bll.Add(cashmessage_model); } else//如果是不通过并且有上一审批人,就要把审批人改回成上一审批人 { if (null != order_model.TEMP1 && !order_model.TEMP1.Equals(""))//说明有上一审批人,则退回到上一审批人 { order_model.Checker = order_model.TEMP1; } } } //历史审核结果 order_model.CheckerHistory = order_model.CheckerHistory + ";" + user_model.USERNAME.ToString() + ":" + checkvalue; //审核时间 order_model.CheckTime = DateTime.Now; //备注信息 order_model.TEMP2 = Overviews.Value.ToString(); //执行审批操作 order_bll.Update(order_model); /************************给业务申请者发信息***********************/ // 1).首先给预算申请者发送信息 Model.FaceShowMessage mFaceShowMessage = new Dianda.Model.FaceShowMessage(); BLL.FaceShowMessage bFaceShowMessage = new Dianda.BLL.FaceShowMessage(); mFaceShowMessage.DATETIME = DateTime.Now; mFaceShowMessage.FromTable = "预算审批"; mFaceShowMessage.IsRead = 0; mFaceShowMessage.NewsID = null; mFaceShowMessage.NewsType = "预算审批"; mFaceShowMessage.ReadTime = null; mFaceShowMessage.DELFLAG = 0; mFaceShowMessage.ProjectID = order_model.ProjectID; if (TnF) { mFaceShowMessage.URLS = user_model.REALNAME + "(" + user_model.USERNAME.ToString() + ")修改了已通过审核的预算申请<a href='/Admin/budgetManage/budgetmanage.aspx?role=lister' target='_self' title='编辑时间:" + DateTime.Now + "'> 点击查看</a>"; if (UserIDdt.Rows.Count > 0) { foreach (DataRow dr in UserIDdt.Rows) { mFaceShowMessage.Receive = dr["id"].ToString(); bFaceShowMessage.Add(mFaceShowMessage); } } } else { //这里接受者应该是这个预算的申请者 mFaceShowMessage.Receive = order_model.Applyuser;//(区别在这里: 接收人不一样) //这里的URL要带上审批的状态,以便查看时直接进入该状态下的列表中 mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")审批了您的预算申请<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + order_model.Status.ToString() + "' target='_self' title='审批时间:" + DateTime.Now + "'> 点击查看</a>"; bFaceShowMessage.Add(mFaceShowMessage); // 2).如果有下一审核人则要给下一审核人发送信息 if (check.Equals("0"))//表示需要继续审核 { //这里接受者应该是选择的下一审批人 mFaceShowMessage.Receive = order_model.Checker;//(区别在这里: 接收人不一样) //这里的URL要带上审批的状态,以便查看时直接进入该状态下的列表中,并且指定的下一审核人肯定是领导权限的,也就是有审核权限的,所以需要带上role mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")给您发送预算审批<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + order_model.Status.ToString() + "&role=manager' target='_self' title='发送时间:" + DateTime.Now + "'> 点击处理</a>"; bFaceShowMessage.Add(mFaceShowMessage); // 3).如果有下一审核人则要给上一审核人发送信息 //这里接受者应该是选择的上一审批人 mFaceShowMessage.Receive = order_model.TEMP1;//(区别在这里: 接收人不一样,TEMP1暂存了上一审批人) //这里的URL要带上审批的状态,以便查看时直接进入该状态下的列表中,并且指定的下一审核人肯定是领导权限的,也就是有审核权限的,所以需要带上role mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")审批了您发送的预算报告<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + order_model.Status.ToString() + "&role=manager' target='_self' title='审批时间:" + DateTime.Now + "'> 点击查看</a>"; bFaceShowMessage.Add(mFaceShowMessage); } // 4).如果有没有下一审核人并且审核通过,需要给指定经费审核人发送信息 if (check.Equals("1"))//表示需要审核通过 { //这里接受者应该是选择的下一审批人 mFaceShowMessage.Receive = order_model.AssignChecker;//(区别在这里: 接收人不一样) //这里的URL要带上审批的状态,以便查看时直接进入该状态下的列表中 mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")将您指定为 " + order_model.NAMES + " 的经费审批人<a href='/Admin/budgetManage/budgetmanage.aspx?Status=" + order_model.Status.ToString() + "&role=lister' target='_self' title='指定时间:" + DateTime.Now + "'> 点击查看</a>"; bFaceShowMessage.Add(mFaceShowMessage); } // 5).如果审核不通过,需要给指定经费审核人发送信息 if (check.Equals("2"))//表示需要审核不通过 { //这里返回给创建人 mFaceShowMessage.Receive = order_model.Applyuser; //这里的URL要带上审批的状态,以便查看时直接进入该状态下的列表中 mFaceShowMessage.URLS = ((Model.USER_Users)Session["USER_Users"]).REALNAME + "(" + ((Model.USER_Users)Session["USER_Users"]).USERNAME.ToString() + ")将您的申请预算 " + order_model.NAMES + " 审核不通过<a href='/Admin/budgetManage/budgetmanage.aspx?Status=2' target='_self' title='退回时间:" + DateTime.Now + "'> 点击查看</a>"; bFaceShowMessage.Add(mFaceShowMessage); } /************************给业务申请者发信息************************/ } string coutws = "<script language=\"javascript\" type=\"text/javascript\">alert(\"操作成功!现在进入列表页面\"); location.href = \"budgetmanage.aspx?pageindex=" + Request["pageindex"] + "&Status=" + Request["Status"].ToString() + "&role=" + Request["role"].ToString() + "\";</script>"; Response.Write(coutws); } catch { } }