protected void btnEdit_Click(object sender, EventArgs e) { #region 设置自己要判断的信息 if (txtName.Text.Trim() == "") { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请填写姓名!');</script>"); txtName.Focus(); return; } if (txtCreateTime.Text.Trim() == "") { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请填写领用日期!');</script>"); txtCreateTime.Focus(); return; } try { Convert.ToDateTime(txtCreateTime.Text); } catch (Exception) { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('你填写的时间格式有误!');</script>"); txtCreateTime.Focus(); return; } #endregion Tb_ExpInv model = new Tb_ExpInv(); model.ExpTime = Convert.ToDateTime(txtCreateTime.Text); List <Tb_ExpInvs> projectList = Session["ProInvs"] as List <Tb_ExpInvs>; model.Id = Convert.ToInt32(Request["allE_id"]); string IDS = ViewState["ProInvsIds"].ToString(); Tb_ExpInvService proMainSer = new Tb_ExpInvService(); if (proMainSer.updateTran(model, projectList, IDS)) { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交成功!');</script>"); } else { btnSub.Enabled = false; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交失败!');</script>"); } }
protected void Button1_Click(object sender, EventArgs e) { if (FormCheck()) { if (ddlPers.Visible == false && lblOutState.Text != "已发货") { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('必须先确认发货才能通过!');</script>"); return; } btnSub.Enabled = false; if (base.Request["ProId"] != null) { List <Tb_ExpInvs> projectList_1 = Session["ProInvs"] as List <Tb_ExpInvs>; if (Request["allE_id"] == null)//单据增加 { if (projectList_1.Count <= 0) { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('请填写领料信息!');</script>"); btnSub.Enabled = true; return; } Tb_ExpInvsService mainSer = new Tb_ExpInvsService(); string ids = ""; foreach (var model1 in projectList_1) { ids += model1.InvId + ","; } if (ids.Length > 0) { ids = ids.Substring(0, ids.Length - 1); List <Tb_ExpInvs> sumRep = mainSer.GroupByListArray(string.Format(" 1=1 and Tb_Inventory.Id in({0})", ids)); foreach (var model1 in sumRep) { var currentModel = projectList_1.Find(p => p.InvId == model1.InvId); if (model1.ExpNum - currentModel.ExpNum < 0) { List <Model.ReportForms.Tb_ExpInvsSumRep> detailInv = mainSer.GetListArray_NoReurnInvs(" Tb_Inventory.Id=" + model1.InvId); string mess = string.Format("货品[{0}]剩余数量不足\\n", currentModel.InvName); foreach (var detailModel in detailInv) { if (detailModel.InvName == "小计" || detailModel.LoginName == null || detailModel.LoginName == "") { continue; } mess += string.Format("借出人:{0},数量{1}\\n", detailModel.LoginName, detailModel.ExpNum); } mess += model1.InvName + " 你预计借出数量 " + currentModel.ExpNum; btnSub.Enabled = true; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('" + mess + "!');</script>"); return; } } } } if (ddlPers.Visible == false) { int count = projectList_1.FindAll(p => p.ReturnTime == null).Count; if (count > 0) { btnSub.Enabled = true; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('单据存在尚未归还的货品信息,无法提交!');</script>"); return; } } #region 获取单据基本信息 Tb_ExpInv model = new Tb_ExpInv(); model.CreateUserId = Convert.ToInt32(DBHelp.ExeScalar(string.Format("select ID from tb_User where loginName='{0}'", txtName.Text))); model.ExpTime = Convert.ToDateTime(txtCreateTime.Text); List <Tb_ExpInvs> projectList = Session["ProInvs"] as List <Tb_ExpInvs>; #endregion if (Request["allE_id"] == null)//单据增加 { VAN_OA.Model.EFrom.tb_EForm eform = new tb_EForm(); int userId = Convert.ToInt32(DBHelp.ExeScalar(string.Format("select ID from tb_User where loginName='{0}'", txtName.Text))); eform.appPer = userId; eform.appTime = DateTime.Now; eform.createPer = Convert.ToInt32(Session["currentUserId"].ToString()); eform.createTime = DateTime.Now; eform.proId = Convert.ToInt32(Request["ProId"]); if (ddlPers.Visible == false) { eform.state = "通过"; eform.toPer = 0; eform.toProsId = 0; } else { eform.state = "执行中"; eform.toPer = Convert.ToInt32(ddlPers.SelectedItem.Value); eform.toProsId = Convert.ToInt32(ViewState["ids"]); } Tb_ExpInvService proMainSer = new Tb_ExpInvService(); if (proMainSer.addTran(model, eform, projectList) > 0) { base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交成功!');</script>"); if (Session["backurl"] != null) { base.Response.Redirect("~" + Session["backurl"]); } else { base.Response.Redirect("~/EFrom/MyRequestEForms.aspx"); } } else { btnSub.Enabled = false; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交失败!');</script>"); } } else//审核 { #region 本单据的ID model.Id = Convert.ToInt32(Request["allE_id"]); #endregion tb_EForm eform = new tb_EForm(); tb_EForms forms = new tb_EForms(); eform.id = Convert.ToInt32(Request["EForm_Id"]); eform.proId = Convert.ToInt32(Request["ProId"]); eform.allE_id = Convert.ToInt32(Request["allE_id"]); int userId = Convert.ToInt32(DBHelp.ExeScalar(string.Format("select ID from tb_User where loginName='{0}'", txtName.Text))); eform.appPer = userId; tb_EFormService fromSer = new tb_EFormService(); if (ViewState["ifConsignor"] != null && Convert.ToBoolean(ViewState["ifConsignor"]) == true) { forms.audPer = fromSer.getCurrentAuPer(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"])); forms.consignor = Convert.ToInt32(Session["currentUserId"]); } else { forms.audPer = Convert.ToInt32(Session["currentUserId"]); forms.consignor = 0; } forms.doTime = DateTime.Now; forms.e_Id = Convert.ToInt32(Request["EForm_Id"]); //fromSer.getCurrentid(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"])); forms.idea = txtResultRemark.Text; forms.prosIds = fromSer.getCurrenttoProsId(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"])); forms.resultState = ddlResult.Text; forms.RoleName = fromSer.getCurrenttoRoleName(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"])); if (ddlPers.Visible == false)//说明为最后一次审核 { eform.state = ddlResult.Text; eform.toPer = 0; eform.toProsId = 0; } else { if (ddlResult.Text == "不通过") { eform.state = ddlResult.Text; eform.toPer = 0; eform.toProsId = 0; } else { eform.state = "执行中"; eform.toPer = Convert.ToInt32(ddlPers.SelectedItem.Value); eform.toProsId = Convert.ToInt32(ViewState["ids"]); } } string IDS = ViewState["ProInvsIds"].ToString(); Tb_ExpInvService proMainSer = new Tb_ExpInvService(); if (proMainSer.updateTran(model, eform, forms, projectList, IDS)) { // btnSub.Enabled = true; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交成功!');</script>"); if (Session["backurl"] != null) { base.Response.Redirect("~" + Session["backurl"]); } else { base.Response.Redirect("~/EFrom/MyRequestEForms.aspx"); } } else { btnSub.Enabled = false; base.ClientScript.RegisterStartupScript(base.GetType(), null, "<script>alert('提交失败!');</script>"); } } } } }
protected void Page_Load(object sender, EventArgs e) { if (!base.IsPostBack) { btnOk.Visible = false; VAN_OA.Dal.BaseInfo.Tb_InventoryService invSer = new VAN_OA.Dal.BaseInfo.Tb_InventoryService(); List <VAN_OA.Model.BaseInfo.Tb_Inventory> InventoryList = invSer.GetListArrayToDdl(""); ddlInvs.DataSource = InventoryList; ddlInvs.DataBind(); ddlInvs.DataTextField = "InvName"; ddlInvs.DataValueField = "ID"; Session["ProInvs"] = null; gvList.Columns[0].Visible = false; gvList.Columns[1].Visible = false; btnSave.Enabled = false; btnCancel.Enabled = false; plProInvs.Visible = false; btnEdit.Visible = false; if (base.Request["ProId"] != null) { //加载基本数据 VAN_OA.Model.User use = Session["userInfo"] as VAN_OA.Model.User; txtName.Text = use.LoginName; txtDepartMent.Text = use.LoginIPosition; tb_EFormService eformSer = new tb_EFormService(); if (Request["allE_id"] == null)//单据增加 { gvList.Columns[0].Visible = true; gvList.Columns[1].Visible = true; plProInvs.Visible = true; lblReturnTime.Visible = false; txtReturnTime.Visible = false; imgReturnTime.Visible = false; //检查自己是否在请假单中流程设置中,来确定自己下一个审批人 lblResult.Visible = false; lblYiJian.Visible = false; ddlResult.Visible = false; txtResultRemark.Visible = false; //加载初始数据 List <Tb_ExpInvs> proInvsList = new List <Tb_ExpInvs>(); Session["ProInvs"] = proInvsList; ViewState["ProInvsCount"] = proInvsList.Count; gvList.DataSource = proInvsList; gvList.DataBind(); if (eformSer.ifHasNodes(Convert.ToInt32(Request["ProId"]))) { //获取审批人 int ids = 0; List <A_Role_User> roleUserList = eformSer.getUsers(Convert.ToInt32(Session["currentUserId"].ToString()), Convert.ToInt32(Request["ProId"]), out ids); ViewState["ids"] = ids; if (roleUserList != null) { ddlPers.DataSource = roleUserList; ddlPers.DataBind(); ddlPers.DataTextField = "UserName"; ddlPers.DataValueField = "UserId"; } else { lblPer.Visible = false; ddlPers.Visible = false; } } else { lblPer.Visible = false; ddlPers.Visible = false; } } else//单据审批 { ViewState["ProInvsIds"] = ""; //加载已经审批的数据 tb_EFormsService eformsSer = new tb_EFormsService(); List <VAN_OA.Model.EFrom.tb_EForms> eforms = eformsSer.GetListArray(string.Format(" e_Id in (select id from tb_EForm where proId={0} and allE_id={1})", Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))); if (eforms.Count > 0) { string mess = @"<table cellpadding='0' cellspacing='0' width='100%' bordercolorlight='#999999' bordercolordark='#FFFFFF' border='1' ><tr><td colspan='6' style=' height:20px; background-color:#336699; color:White;'>流程图</td></tr>"; for (int i = 0; i < eforms.Count; i++) { string per = ""; if (eforms[i].consignor != null && eforms[i].consignor != 0) { per = eforms[i].Consignor_Name + "(委托人:" + eforms[i].Audper_Name + ")"; } else { per = eforms[i].Audper_Name; } mess += string.Format("<tr><td align='center'>第{0}步</td><td>序号{0}:{1}</td><td><span style='color:red;'>{2}</span>[<span style='color:blue;'>{3} {4}</span>]<br/>意见:{5}</td></tr>", i + 1, eforms[i].RoleName , per, eforms[i].resultState, eforms[i].doTime, eforms[i].idea); } mess += "</table>"; lblMess.Text = mess; } #region 加载 请假单数据 Tb_ExpInvService paProInvSer = new Tb_ExpInvService(); Tb_ExpInvsService sonProInvSer = new Tb_ExpInvsService(); Tb_ExpInv pProModel = paProInvSer.GetModel(Convert.ToInt32(Request["allE_id"])); txtName.Text = pProModel.LoginName; txtCreateTime.Text = pProModel.ExpTime.ToString("yyyy-MM-dd"); txtDepartMent.Text = pProModel.DepartMent; lblProNo.Text = pProModel.ProNo; if (pProModel.IfOutGoods) { lblOutState.Text = "已发货"; } else { lblOutState.Text = "尚未发货"; } if (pProModel.OutTime != null) { lblOutTime.Text = pProModel.OutTime.ToString(); } lblEventNo.Text = pProModel.EventNo; List <Tb_ExpInvs> proInvsList = sonProInvSer.GetListArray(" 1=1 and PId=" + Request["allE_id"]); Session["ProInvs"] = proInvsList; ViewState["ProInvsCount"] = proInvsList.Count; gvList.DataSource = proInvsList; gvList.DataBind(); #endregion //判断单据是否已经结束 if (eformSer.ifFinish(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))) { btnSub.Visible = false; lblPer.Visible = false; ddlPers.Visible = false; lblResult.Visible = false; lblYiJian.Visible = false; ddlResult.Visible = false; txtResultRemark.Visible = false; setEnable(false); } else { //是否为审核人 if (eformSer.ifAudiPer(Convert.ToInt32(Session["currentUserId"]), Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))) { if (eformSer.ifLastNode(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))) { if (pProModel.IfOutGoods == false) { btnOk.Visible = true; } setEnable(eformSer.ifEdit(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))); lblPer.Visible = false; ddlPers.Visible = false; } else { int ids = 0; List <A_Role_User> roleUserList = eformSer.getUserToAdu(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]), out ids); ViewState["ids"] = ids; if (roleUserList != null) { ddlPers.DataSource = roleUserList; ddlPers.DataBind(); ddlPers.DataTextField = "UserName"; ddlPers.DataValueField = "UserId"; } setEnable(eformSer.ifEdit(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))); } } else { //是否为代理人 if (eformSer.ifAudiPerByUserName(Convert.ToInt32(Session["currentUserId"]), Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))) { ViewState["ifConsignor"] = true; if (eformSer.ifLastNode(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))) { if (pProModel.IfOutGoods == false) { btnOk.Visible = true; } lblPer.Visible = false; ddlPers.Visible = false; setEnable(eformSer.ifEdit(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))); } else { int ids = 0; List <A_Role_User> roleUserList = eformSer.getUserToAdu(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]), out ids); ViewState["ids"] = ids; if (roleUserList != null) { ddlPers.DataSource = roleUserList; ddlPers.DataBind(); ddlPers.DataTextField = "UserName"; ddlPers.DataValueField = "UserId"; } setEnable(eformSer.ifEdit(Convert.ToInt32(Request["ProId"]), Convert.ToInt32(Request["allE_id"]))); } } else { btnSub.Visible = false; lblPer.Visible = false; ddlPers.Visible = false; lblResult.Visible = false; lblYiJian.Visible = false; ddlResult.Visible = false; txtResultRemark.Visible = false; setEnable(false); } } //判断是不是自己填写的单子 //if (pProModel.CreateUserId.ToString() == base.Session["currentUserId"].ToString()) //{ // //gvList.Columns[0].Visible = true; // //gvList.Columns[1].Visible = true; // btnEdit.Visible = true; // plProInvs.Visible = true; // //setEnable(true); //} } } } } }