public override string BuildSingleStrategyString(Strategy strategy) { WorkFlowProcedureStrategyName name = (WorkFlowProcedureStrategyName)strategy.Name; if (strategy.Type == StrategyType.Other) { //switch (name) //{ // case WorkFlowProcedureStrategyName.AccessRange: // return ""; //} return(AccessRanggeQuery.BuildAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("WorkFlowProcedure"), SystemClassDescription.GetItemKeyColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemTypeColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemCreateUserColumnName("WorkFlowProcedure"))); } return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); }
public override string BuildSingleStrategyString(Strategy strategy) { string text2; WorkFlowActStrategyName name = (WorkFlowActStrategyName)strategy.Name; string text = ""; if (strategy.Type != StrategyType.Other) { return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); } switch (name) { case WorkFlowActStrategyName.ProcedureCodeIn: return(string.Format(" ProcedureCode in ({0})", strategy.GetParameter(0))); case WorkFlowActStrategyName.Status: case WorkFlowActStrategyName.CaseStatus: case WorkFlowActStrategyName.CopyState: case WorkFlowActStrategyName.FromUserCode: case WorkFlowActStrategyName.CurrentTaskCode: return(text); case WorkFlowActStrategyName.ActUserCode: return(string.Format(" ActCode in (select a.actcode from workflowact a,workflowactuser b where a.actcode=b.actcode and (a.actusercode='{0}' or b.usercode='{0}'))", strategy.GetParameter(0))); case WorkFlowActStrategyName.InActUser: return(string.Format(" exists ( select 1 from WorkFlowActUser where WorkFlowActUser.ActCode=V_WorkFlowAct.ActCode and WorkFlowActUser.UserCode='{0}' ) ", strategy.GetParameter(0))); case WorkFlowActStrategyName.IsCaseActUser: return(string.Format(" CaseCode in (select CaseCode from V_WorkFlowAct where ActUserCode='{0}') and Copy=0 ", strategy.GetParameter(0))); case WorkFlowActStrategyName.SendActUser: return(string.Format(" FromUserCode ='{0}' and Status='Begin'", strategy.GetParameter(0))); case WorkFlowActStrategyName.StatusBegin: return(string.Format(" (Status='{0}' or (CopyFromActCode!='' and Status!='End'))", strategy.GetParameter(0))); case WorkFlowActStrategyName.IsNotActUser: return(string.Format(" CaseCode not in (select CaseCode from V_WorkFlowAct where ActUserCode='{0}') and Copy=0 ", strategy.GetParameter(0))); case WorkFlowActStrategyName.ActMeetOrder: return(string.Format(" ActCode not in (select ActCode from V_WorkFlowAct where copy='0' and TaskActorID != '' and substring(ActUnitCode,1,2) = 'no')", new object[0])); case WorkFlowActStrategyName.ProjectCode: return(string.Format(" CaseCode in (select workflowcasecode from workflowprocedureproperty a, workflowcaseproperty b where a.workflowprocedurepropertycode=b.workflowprocedurepropertycode and procedurepropertyname='项目代码' and workflowprocedurepropertyvalue='{0}')", strategy.GetParameter(0))); case WorkFlowActStrategyName.Title: return(string.Format(" CaseCode in (select workflowcasecode from workflowprocedureproperty a, workflowcaseproperty b where a.workflowprocedurepropertycode=b.workflowprocedurepropertycode and procedurepropertyname='主题' and workflowprocedurepropertyvalue like '%{0}%')", strategy.GetParameter(0))); case WorkFlowActStrategyName.CurrentTaskName: return(string.Format(" ToTaskName like '%{0}%'", strategy.GetParameter(0))); case WorkFlowActStrategyName.SignDate: return(string.Format(" (SignDate>'{0}' and SignDate<'{1}')", strategy.GetParameter(0), strategy.GetParameter(1))); case WorkFlowActStrategyName.FinishDate: return(string.Format(" (FinishDate>'{0}' and FinishDate<'{1}')", strategy.GetParameter(0), strategy.GetParameter(1))); case WorkFlowActStrategyName.FromDate: return(string.Format(" (FromDate>'{0}' and FromDate<'{1}')", strategy.GetParameter(0), strategy.GetParameter(1))); case WorkFlowActStrategyName.StatusBeginAndDealWith: return(string.Format(" (Status='Begin' or (CopyFromActCode!='' and Status!='End') or Status='DealWith') ", new object[0])); case WorkFlowActStrategyName.FlowNumber: return(string.Format(" ( CaseCode like '%{0}%' or CaseCode in (select workflowcasecode from workflowprocedureproperty a, workflowcaseproperty b where a.workflowprocedurepropertycode=b.workflowprocedurepropertycode and procedurepropertyname='流水号' and workflowprocedurepropertyvalue like '%{0}%'))", strategy.GetParameter(0))); case WorkFlowActStrategyName.AccessRange: text2 = ConfigurationSettings.AppSettings["FlowProjectGroup"]; if (text2 != "1") { text = " (( ProcedureCode in (select ProcedureCode from workflowprocedure where " + AccessRanggeQuery.BuildAccessRangeStringNoGroupCode(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("WorkFlowProcedure"), SystemClassDescription.GetItemKeyColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemTypeColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemCreateUserColumnName("WorkFlowProcedure")) + "))"; break; } text = " (( ProcedureCode in (select ProcedureCode from workflowprocedure where " + AccessRanggeQuery.BuildAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("WorkFlowProcedure"), SystemClassDescription.GetItemKeyColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemTypeColumnName("WorkFlowProcedure"), SystemClassDescription.GetItemCreateUserColumnName("WorkFlowProcedure")) + "))"; break; default: return(text); } if (strategy.GetParameter(3) != "") { text = text + string.Format(" or (CaseCode in (select CaseCode from V_WorkFlowAct where ActUserCode='{0}') and Copy=0 )", strategy.GetParameter(3)); } if (text2 == "1") { string codes = AccessRanggeQuery.BuildStationCodeString(strategy.GetParameter(2)); text = text + this.BuildAccessTypeString(strategy.GetParameter(0), strategy.GetParameter(1), codes, SystemClassDescription.GetItemCreateUserColumnName("WorkFlowProcedure")); } return(text + ") "); }
public override string BuildSingleStrategyString(Strategy strategy) { SupplierStrategyName name = (SupplierStrategyName)strategy.Name; string text = ""; string text2 = ""; if (strategy.Type != StrategyType.Other) { return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); } switch (name) { case SupplierStrategyName.SupplierTypeCodeEx: { string systemGroupCode = strategy.GetParameter(0); switch (strategy.GetParameter(1)) { case "0": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNodeIncludeSelf, SystemClassDescription.GetItemTypeColumnName("Supplier"))); case "1": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubLeafNode, SystemClassDescription.GetItemTypeColumnName("Supplier"))); case "2": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNotLeafNode, SystemClassDescription.GetItemTypeColumnName("Supplier"))); } return(text); } case SupplierStrategyName.AccessRange: return(AccessRanggeQuery.BuildAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("Supplier"), SystemClassDescription.GetItemKeyColumnName("Supplier"), SystemClassDescription.GetItemTypeColumnName("Supplier"), SystemClassDescription.GetItemCreateUserColumnName("Supplier"))); case SupplierStrategyName.CheckName: { string parameter = strategy.GetParameter(0); string text4 = strategy.GetParameter(1); string text5 = strategy.GetParameter(2); if (parameter == "") { if (text5 != "") { return(string.Format(" ( SupplierName='{0}' or Abbreviation = '{1}' ) ", text4, text5, parameter)); } return(string.Format(" ( SupplierName='{0}' ) ", text4, text5, parameter)); } if (text5 == "") { return(string.Format(" ( SupplierCode<>'{2}' ) and ( SupplierName='{0}' ) ", text4, text5, parameter)); } return(string.Format(" ( SupplierCode<>'{2}' ) and ( SupplierName='{0}' or Abbreviation = '{1}' ) ", text4, text5, parameter)); } case SupplierStrategyName.False: return("1=2"); case SupplierStrategyName.IsExistsContract: if (strategy.GetParameter(0) != "1") { return(" not exists (select * from Contract where Contract.SupplierCode = Supplier.SupplierCode)"); } return(" exists (select * from Contract where Contract.SupplierCode = Supplier.SupplierCode)"); case SupplierStrategyName.Grade: text2 = strategy.GetParameter(0); return(string.Format("exists (select * from SupplierSurveyOpinion o where o.SupplierCode = Supplier.SupplierCode and o.SupplierSurveyOpinionCode = (select min(SupplierSurveyOpinionCode) from SupplierSurveyOpinion o2 where o2.SupplierCode = o.SupplierCode) and o.Grade like '{0}')", text2)); } return(text); }
public static string BuildAccessRangeString(string UserCode, string StationCodes) { return(AccessRanggeQuery.BuildAccessRangeString("141101", UserCode, StationCodes, SystemClassDescription.GetItemTableName("MaterialCost"), SystemClassDescription.GetItemKeyColumnName("MaterialCost"), SystemClassDescription.GetItemTypeColumnName("MaterialCost"), SystemClassDescription.GetItemCreateUserColumnName("MaterialCost"))); }
public override string BuildSingleStrategyString(Strategy strategy) { PayoutStrategyName name = (PayoutStrategyName)strategy.Name; string format = ""; if (strategy.Type != StrategyType.Other) { return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); } switch (name) { case PayoutStrategyName.ContractCode: format = "exists (select 1 from V_PayoutItem i where i.PayoutCode = {0}.PayoutCode and i.ContractCode = '{1}')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.ContractID: format = "exists (select 1 from V_PayoutItem i where i.PayoutCode = {0}.PayoutCode and i.ContractID like '%{1}%')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.ContractName: format = "exists (select 1 from V_PayoutItem i where i.PayoutCode = {0}.PayoutCode and i.ContractName like '%{1}%')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.PaymentCode: format = "exists (select 1 from V_PayoutItem i where i.PayoutCode = {0}.PayoutCode and i.PaymentCode = '{1}')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.PaymentID: format = "exists (select 1 from V_PayoutItem i where i.PayoutCode = {0}.PayoutCode and i.PaymentID = '{1}')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.VoucherCode: case PayoutStrategyName.IsApportioned: return(format); case PayoutStrategyName.VoucherID: format = "exists (select 1 from Voucher v where v.VoucherCode = {0}.VoucherCode and v.VoucherID = '{1}')"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.AccessRange: return(AccessRanggeQuery.BuildAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("Payout"), SystemClassDescription.GetItemKeyColumnName("Payout"), SystemClassDescription.GetItemTypeColumnName("Payout"), SystemClassDescription.GetItemCreateUserColumnName("Payout"))); case PayoutStrategyName.GroupCodeEx: { string systemGroupCode = strategy.GetParameter(0); switch (strategy.GetParameter(1)) { case "0": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNodeIncludeSelf, SystemClassDescription.GetItemTypeColumnName("Payout"))); case "1": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubLeafNode, SystemClassDescription.GetItemTypeColumnName("Payout"))); case "2": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNotLeafNode, SystemClassDescription.GetItemTypeColumnName("Payout"))); } return(format); } case PayoutStrategyName.AlloType: { string parameter = strategy.GetParameter(0); string text5 = strategy.GetParameter(1); switch (parameter) { case "P": return(" payoutCode in ( select payoutCode from payoutItem where alloType='P' ) "); case "U": return(string.Format(" payoutCode in ( select payoutItem.payoutCode from payoutItem,payoutItemBuilding where payoutItem.PayoutItemCode=PayoutItemBuilding.PayoutItemCode and alloType='U' and PBSUnitCode='{0}' ) ", text5)); } return(string.Format(" payoutCode in ( select payoutItem.payoutCode from payoutItem,payoutItemBuilding where payoutItem.PayoutItemCode=PayoutItemBuilding.PayoutItemCode and alloType='B' and BuildingCode='{0}' ) ", text5)); } case PayoutStrategyName.PayoutCodeIN: return(string.Format(" payoutcode in ({0}) ", strategy.GetParameter(0))); case PayoutStrategyName.IsContract: format = "exists (select 1 from PayoutItem i, PaymentItem mi, Payment m where i.PaymentItemCode = mi.PaymentItemCode and mi.PaymentCode = m.PaymentCode and i.PayoutCode = {0}.PayoutCode and m.IsContract = {1})"; return(string.Format(format, "Payout", strategy.GetParameter(0))); case PayoutStrategyName.SubjectCodeStart: return(string.Format(" SubjectCode >= '{0}'", strategy.GetParameter(0))); case PayoutStrategyName.GreatRootCash: return(string.Format("rootCash>={0}", strategy.GetParameter(0))); case PayoutStrategyName.SmallRootCash: return(string.Format("rootCash<={0}", strategy.GetParameter(0))); case PayoutStrategyName.SubjectCodeEnd: return(string.Format(" SubjectCode <= '{0}'", strategy.GetParameter(0))); case PayoutStrategyName.BatchPayment: return("Payer = '成本批量请款'"); case PayoutStrategyName.NotBatchPayment: return("isnull(Payer, '') <> '成本批量请款'"); } return(format); }
public override string BuildSingleStrategyString(Strategy strategy) { DocumentStrategyName name = (DocumentStrategyName)strategy.Name; string text = ""; string parameter = ""; string text3 = ""; if (strategy.Type != StrategyType.Other) { return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); } switch (name) { case DocumentStrategyName.DocumentTypeCode: return(string.Format(" exists ( select * from DocumentConfig where DocumentTypeCode='{0}' and DocumentCode = Document.DocumentCode ) ", strategy.GetParameter(0))); case DocumentStrategyName.DocumentTypeCodeFull: return(string.Format(" exists ( select * from DocumentConfig c, DocumentType t where c.DocumentTypeCode = t.DocumentTypeCode and t.FullCode like (select FullCode + '%' from DocumentType where DocumentTypeCode = '{0}') and c.DocumentCode = Document.DocumentCode ) ", strategy.GetParameter(0))); case DocumentStrategyName.Code: switch (strategy.GetParameterCount()) { case 1: return(string.Format(" exists ( select * from DocumentConfig where Code='{0}' and DocumentCode = Document.DocumentCode ) ", strategy.GetParameter(0))); case 2: return(string.Format(" exists ( select * from DocumentConfig where DocumentTypeCode='{0}' and Code='{1}' and DocumentCode = Document.DocumentCode ) ", strategy.GetParameter(0), strategy.GetParameter(1))); } return(text); case DocumentStrategyName.RelationKey: parameter = strategy.GetParameter(0); text3 = strategy.GetParameter(1); switch (parameter) { case "000001": return(string.Format(" exists ( select * from DocumentConfig where DocumentTypeCode='{0}' and Code in (select ContractCode from Contract where ContractID = '{1}' or ContractName like '%{1}%') and DocumentCode = Document.DocumentCode ) ", parameter, text3)); case "000006": return(string.Format(" exists ( select * from DocumentConfig where DocumentTypeCode='{0}' and Code in (select DocumentCode from Document where DocumentCode = '{1}' or Title like '%{1}%') and DocumentCode = Document.DocumentCode ) ", parameter, text3)); } return(string.Format(" exists ( select * from DocumentConfig where DocumentTypeCode='{0}' and Code='{1}' and DocumentCode = Document.DocumentCode ) ", parameter, text3)); case DocumentStrategyName.GroupCode: return(text); case DocumentStrategyName.GroupFullID: return(string.Format(" (GroupFullID = '{0}' or GroupFullID like '{0}-%')", strategy.GetParameter(0))); case DocumentStrategyName.GroupFullIDs: { text = ""; text = text + " ("; string[] textArray = strategy.GetParameter(0).Split(new char[] { ","[0] }); int num = 0; foreach (string text4 in textArray) { if (text4 != "") { num++; if (num > 1) { text = text + " or"; } text = text + string.Format(" (GroupFullID = '{0}' or GroupFullID like '{0}-%')", text4); } } return(text + ")"); } case DocumentStrategyName.AccessRange: return("(isnull(GroupCode, '') = '' or " + AccessRanggeQuery.BuildAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("Document"), SystemClassDescription.GetItemKeyColumnName("Document"), SystemClassDescription.GetItemTypeColumnName("Document"), SystemClassDescription.GetItemCreateUserColumnName("Document")) + ")"); } return(text); }
public override string BuildSingleStrategyString(Strategy strategy) { ContractStrategyName name = (ContractStrategyName)strategy.Name; string text = ""; if (strategy.Type == StrategyType.Other) { switch (name) { case ContractStrategyName.TypeEx: { string systemGroupCode = strategy.GetParameter(0); switch (strategy.GetParameter(1)) { case "0": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNodeIncludeSelf, SystemClassDescription.GetItemTypeColumnName("Contract"))); case "1": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubLeafNode, SystemClassDescription.GetItemTypeColumnName("Contract"))); case "2": return(SystemGroupStrategyBuilder.BuildTreeNodeSearchString(systemGroupCode, TreeNodeSearchType.AllSubNotLeafNode, SystemClassDescription.GetItemTypeColumnName("Contract"))); } return(text); } case ContractStrategyName.Status: case ContractStrategyName.TotalMoney: case ContractStrategyName.SupplierCode: case ContractStrategyName.ContractPerson: case ContractStrategyName.ContractDate: case ContractStrategyName.CheckDate: case ContractStrategyName.ContractLabel: case ContractStrategyName.UnitCode: return(text); case ContractStrategyName.OriginalContract: return("ContractLabel = ContractCode"); case ContractStrategyName.NotOriginalContract: return("ContractLabel <> ContractCode"); case ContractStrategyName.WBSCode: return(string.Format(" ContractCode in ( select ContractCode from TaskContract where WBSCode='{0}' ) ", strategy.GetParameter(0))); case ContractStrategyName.AccessRange: return(AccessRanggeQuery.BuildContractAccessRangeString(strategy.GetParameter(0), strategy.GetParameter(1), strategy.GetParameter(2), SystemClassDescription.GetItemTableName("Contract"), SystemClassDescription.GetItemKeyColumnName("Contract"), SystemClassDescription.GetItemTypeColumnName("Contract"), SystemClassDescription.GetItemCreateUserColumnName("Contract"))); case ContractStrategyName.CostBudgetSetCode: return(string.Format("exists(select 1 from ContractCost left join CBS on CBS.FullCode like '%'+ContractCost.CostCode+'%' where ContractCost.CostBudgetSetCode = '{0}'and ContractCost.ContractCode = Contract.ContractCode)", strategy.GetParameter(0).Trim())); case ContractStrategyName.CostCode: return(string.Format("exists(select 1 from ContractCost left join CBS on CBS.FullCode like '%'+ContractCost.CostCode+'%' where ContractCost.CostCode = '{0}'and ContractCost.ContractCode = Contract.ContractCode)", strategy.GetParameter(0).Trim())); case ContractStrategyName.FullCode: return(string.Format("exists(select 1 from ContractCost left join CBS on CBS.FullCode like '%'+ContractCost.CostCode+'%' where CBS.FullCode like '{0}'and ContractCost.ContractCode = Contract.ContractCode)", strategy.GetParameter(0).Trim())); case ContractStrategyName.SupplierName: return(string.Format("SupplierCode in (select SupplierCode from Supplier where Supplier.SupplierName like '%{0}%')", strategy.GetParameter(0).Trim())); } return(text); } return(StandardStrategyStringBuilder.BuildStrategyString(strategy)); }