/// <summary> /// 增加一条请假数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public static int AddHrsLeave(HrsLeaveEntity model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into HrsLeave("); strSql.Append("LeaveType,Days,FromDate,ToDate,CurrentActivityText,Status,CreatedUserID,CreatedUserName,CreatedDate"); strSql.Append(") values ("); strSql.Append("@LeaveType,@Days,@FromDate,@ToDate,@CurrentActivityText,@Status,@CreatedUserID,@CreatedUserName,@CreatedDate"); strSql.Append(") "); strSql.Append(";select @@IDENTITY"); SqlParameter[] parameters = { new SqlParameter("@LeaveType", SqlDbType.SmallInt,2) , new SqlParameter("@Days", SqlDbType.Decimal,18) , new SqlParameter("@FromDate", SqlDbType.DateTime,3) , new SqlParameter("@ToDate", SqlDbType.DateTime,3) , new SqlParameter("@CurrentActivityText", SqlDbType.NVarChar,50) , new SqlParameter("@Status", SqlDbType.Int,4) , new SqlParameter("@CreatedUserID", SqlDbType.Int,4) , new SqlParameter("@CreatedUserName", SqlDbType.NVarChar,50) , new SqlParameter("@CreatedDate", SqlDbType.DateTime,3) }; int idx = 0; parameters[idx++].Value = model.LeaveType; parameters[idx++].Value = model.Days; parameters[idx++].Value = model.FromDate; parameters[idx++].Value = model.ToDate; parameters[idx++].Value = model.CurrentActivityText; parameters[idx++].Value = model.Status; parameters[idx++].Value = model.CreatedUserID; parameters[idx++].Value = model.CreatedUserName; parameters[idx++].Value = model.CreatedDate; object obj = SQLHelper.ExecuteScalar(strSql.ToString(), parameters); if (obj == null) { return 0; } else { return Convert.ToInt32(obj); } }
/// <summary> /// 得到一个对象实体 /// </summary> private static HrsLeaveEntity GetHrsLeaveModel(DataTable dt) { if (dt != null && dt.Rows != null && dt.Rows.Count > 0) { HrsLeaveEntity model = new HrsLeaveEntity(); if (dt.Rows[0]["ID"].ToString() != "") { model.ID = int.Parse(dt.Rows[0]["ID"].ToString()); } if (dt.Rows[0]["LeaveType"].ToString() != "") { model.LeaveType = int.Parse(dt.Rows[0]["LeaveType"].ToString()); } if (dt.Rows[0]["Days"].ToString() != "") { model.Days = decimal.Parse(dt.Rows[0]["Days"].ToString()); } if (dt.Rows[0]["FromDate"].ToString() != "") { model.FromDate = DateTime.Parse(dt.Rows[0]["FromDate"].ToString()); } if (dt.Rows[0]["ToDate"].ToString() != "") { model.ToDate = DateTime.Parse(dt.Rows[0]["ToDate"].ToString()); } model.CurrentActivityText = dt.Rows[0]["CurrentActivityText"].ToString(); if (dt.Rows[0]["Status"].ToString() != "") { model.Status = int.Parse(dt.Rows[0]["Status"].ToString()); } if (dt.Rows[0]["CreatedUserID"].ToString() != "") { model.CreatedUserID = int.Parse(dt.Rows[0]["CreatedUserID"].ToString()); } model.CreatedUserName = dt.Rows[0]["CreatedUserName"].ToString(); if (dt.Rows[0]["CreatedDate"].ToString() != "") { model.CreatedDate = DateTime.Parse(dt.Rows[0]["CreatedDate"].ToString()); } model.DepManagerRemark = dt.Rows[0]["DepManagerRemark"].ToString(); model.DirectorRemark = dt.Rows[0]["DirectorRemark"].ToString(); model.DeputyGeneralRemark = dt.Rows[0]["DeputyGeneralRemark"].ToString(); model.GeneralManagerRemark = dt.Rows[0]["GeneralManagerRemark"].ToString(); return model; } else { return null; } }
/// <summary> /// 更新请假活动步骤数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public static bool UpdateHrsLeave(HrsLeaveEntity model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update HrsLeave set "); strSql.Append(" DepManagerRemark = @DepManagerRemark , "); strSql.Append(" DirectorRemark = @DirectorRemark , "); strSql.Append(" DeputyGeneralRemark = @DeputyGeneralRemark , "); strSql.Append(" GeneralManagerRemark = @GeneralManagerRemark , "); strSql.Append(" CurrentActivityText = @CurrentActivityText "); strSql.Append(" where ID=@ID "); SqlParameter[] parameters = { new SqlParameter("@ID", SqlDbType.Int,4) , new SqlParameter("@DepManagerRemark", SqlDbType.NVarChar,50), new SqlParameter("@DirectorRemark", SqlDbType.NVarChar,50), new SqlParameter("@DeputyGeneralRemark", SqlDbType.NVarChar,50), new SqlParameter("@GeneralManagerRemark", SqlDbType.NVarChar,50), new SqlParameter("@CurrentActivityText", SqlDbType.NVarChar,50) }; int idx = 0; parameters[idx++].Value = model.ID; parameters[idx++].Value = model.DepManagerRemark; parameters[idx++].Value = model.DirectorRemark; parameters[idx++].Value = model.DeputyGeneralRemark; parameters[idx++].Value = model.GeneralManagerRemark; parameters[idx++].Value = model.CurrentActivityText; int rows = SQLHelper.ExecuteNonQuery(strSql.ToString(), parameters); if (rows > 0) { return true; } else { return false; } }
//提交请假信息 protected void btnSave_Click(object sender, EventArgs e) { try { string processGUID = this.txtProcessGUID.Value.ToString(); string stepGuid = this.hiddenStepGuid.Value.ToString(); int stepUserID = Helper.ConverToInt32(this.hiddenStepUser.Value.ToString().Trim()); decimal days = Helper.ConverToDecimal(this.txtDays.Value); int leaveType = Helper.ConverToInt32(selectLeaveType.Value); int nextUserID = 0; string nextUserName = string.Empty; SysUserEntity userEntity = WorkFlows.GetSysUserModel(stepUserID); if (userEntity != null && userEntity.ID > 0) { nextUserID = userEntity.ID; nextUserName = userEntity.UserName; } DateTime now = DateTime.Now; //请假业务数据 HrsLeaveEntity hrsLeaveEntity = new HrsLeaveEntity(); hrsLeaveEntity.LeaveType = leaveType; hrsLeaveEntity.Days = days; try { hrsLeaveEntity.FromDate = Helper.ConvertToDateTime(this.txtFromDate.Value, now); } catch (Exception ex) { hrsLeaveEntity.FromDate = now; } try { hrsLeaveEntity.ToDate = Helper.ConvertToDateTime(this.txtToDate.Value, now); } catch (Exception ex) { hrsLeaveEntity.ToDate = now; } hrsLeaveEntity.CurrentActivityText = string.Empty; hrsLeaveEntity.Status = 0; hrsLeaveEntity.CreatedUserID = LoginUserID; hrsLeaveEntity.CreatedUserName = this.LoginUserName; hrsLeaveEntity.CreatedDate = now; int instanceId = WorkFlows.AddHrsLeave(hrsLeaveEntity); if (instanceId > 0) { //调用流程 IWorkflowService service = new WorkflowService(); WfAppRunner initiator = new WfAppRunner(); initiator.AppName = "请假流程"; initiator.AppInstanceID = instanceId.ToString(); initiator.ProcessGUID = processGUID; initiator.UserID = LoginUserID.ToString(); initiator.UserName = LoginUserName; initiator.Conditions = GetCondition(string.Format("days-{0}", days)); WfExecutedResult startedResult = service.StartProcess(initiator); if (startedResult.Status != WfExecutedStatus.Success) { base.RegisterStartupScript("", "<script>alert('" + startedResult.Message + "');</script>"); return; } //送往下一步 PerformerList pList = new PerformerList(); pList.Add(new Performer(nextUserID.ToString(), nextUserName)); initiator.NextActivityPerformers = new Dictionary<String, PerformerList>(); initiator.NextActivityPerformers.Add(stepGuid, pList); WfExecutedResult runAppResult = service.RunProcessApp(initiator); if (runAppResult.Status != WfExecutedStatus.Success) { base.RegisterStartupScript("", "<script>alert('" + runAppResult.Message + "');</script>"); return; } //保存业务数据 BizAppFlowEntity AppFlowEntity = new Entity.BizAppFlowEntity(); AppFlowEntity.AppName = "流程发起"; AppFlowEntity.AppInstanceID = instanceId.ToString(); AppFlowEntity.ActivityName = "流程发起"; AppFlowEntity.Remark = string.Format("申请人:{0}-{1}", LoginUserID, LoginUserName); AppFlowEntity.ChangedTime = now; AppFlowEntity.ChangedUserID = LoginUserID; AppFlowEntity.ChangedUserName = LoginUserName; WorkFlows.AddBizAppFlow(AppFlowEntity); base.RegisterStartupScript("", "<script>alert('流程发起成功');window.location.href='FlowList.aspx';</script>"); } } catch (Exception ex) { base.RegisterStartupScript("", "<script>alert('流程发起出现异常 EXCEPTION:" + ex.ToString() + "');</script>"); } }
/// <summary> /// 增加一条请假数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public static int AddHrsLeave(HrsLeaveEntity model) { return WorkFlowManager.AddHrsLeave(model); }
/// <summary> /// 更新请假活动步骤数据 /// </summary> /// <param name="model"></param> /// <returns></returns> public static bool UpdateHrsLeave(HrsLeaveEntity model) { return WorkFlowManager.UpdateHrsLeave(model); }