/// <summary> /// 查询流程图定义的条件字符串 /// </summary> /// <param name="orderType">订单类型</param> /// <param name="approverInt">审批人</param> public string GetWorkFlowsLine_OrderQuerySQL(WorkFlowsHandleDAO.OrderType orderType, int approverInt) { string sqlStr = string.Format("Select AutoId from BS_WorkFlows where WorkFlowsType = {0} and IsNull(Enabled, 0) = 1", (int)orderType); DataTable workFlowsTable = BaseSQL.GetTableBySql(sqlStr); if (workFlowsTable.Rows.Count == 0) { return(""); } int workFlowsIdInt = DataTypeConvert.GetInt(workFlowsTable.Rows[0]["AutoId"]); sqlStr = string.Format("select AutoId, Enabled from BS_WorkFlowsLine where WorkFlowsId = {0} and LineType = {1}", workFlowsIdInt, (int)WorkFlowsHandleDAO.LineType.审批); DataTable lineTable = BaseSQL.GetTableBySql(sqlStr); if (lineTable.Rows.Count == 0) { return(""); } if (DataTypeConvert.GetInt(lineTable.Rows[0]["Enabled"]) == 1) { int lineIdInt = DataTypeConvert.GetInt(lineTable.Rows[0]["AutoId"]); string loginIdStr = ""; string roleNoStr = ""; QueryUserInfo_LoginIdAndRoleNo(approverInt, ref loginIdStr, ref roleNoStr); sqlStr = string.Format("select MultiLevelApprover, Condition from BS_WorkFlowsLineHandle as wfHandle join BS_WorkFlowsLineCondition as cond on wfHandle.ConditionId = cond.AutoId where wfHandle.LineId = {0} and ((LineHandleCate = 0 and HandleOwner = '{1}') or (LineHandleCate = 1 and HandleOwner = '{2}'))", lineIdInt, loginIdStr, roleNoStr); DataTable wfHandleTable = BaseSQL.GetTableBySql(sqlStr); WorkFlowsHandleDAO.QueryOrderViewName viewName = (WorkFlowsHandleDAO.QueryOrderViewName)orderType; WorkFlowsHandleDAO.QueryOrderPrimaryKey primaryKey = (WorkFlowsHandleDAO.QueryOrderPrimaryKey)orderType; sqlStr = ""; foreach (DataRow conditonRow in wfHandleTable.Rows) { string tempStr = DataHandler.SQLStringReplaceHandle(DataTypeConvert.GetString(conditonRow["Condition"])); if (tempStr == "") { tempStr = " 1=1"; } sqlStr += string.Format("select * from {0} where {1} and {2} in (select DataNo from BS_WorkFlowsDataCurrentNode as curNode where ISNULL(IsEnd,0)= 0 and CurrentNodeId in (select NodeId from BS_WorkFlowsLine where AutoId = {3}) and ApproverLevel ={4}) Union ", viewName, tempStr, primaryKey, lineIdInt, conditonRow["MultiLevelApprover"]); } if (sqlStr.Length > 6) { return(sqlStr.Substring(0, sqlStr.Length - 6)); } else { return(string.Format("Select * from {0} where 1=2", viewName)); } } else { return(""); } }
private void simpleButton1_Click(object sender, EventArgs e) { //FrmProjectPlanTask fomr = new FrmProjectPlanTask(); //try //{ // fomr.ShowDialog(); //} //catch(Exception ex) //{ // MessageHandler.ShowMessageBox(ex.Message); //} WorkFlowsHandleDAO.OrderType orderType = WorkFlowsHandleDAO.OrderType.请购单; string ss = ((WorkFlowsHandleDAO.QueryOrderViewName)((int)orderType)).ToString(); }