{ "Name": "上报实际工时", "Enabled": true, "Triggers": [ { "$type": "Forguncy.SaveLoad.PostRequestTriggerSaveData, ServerDesignerCommon", "Permission": { "PermissionData": { "$type": "Forguncy.RbacPermission.Core.Impl.ServerCommand.ServerCommandPermissionData, Forguncy.RbacPermission.Core", "permissionResource": { "$type": "Forguncy.RbacPermission.Core.Impl.ServerCommand.ServerCommandPermissionResource, Forguncy.RbacPermission.Core" }, "permissionBindings": [ { "$type": "Forguncy.RbacPermission.Core.Impl.ServerCommand.ServerCommandPermissionBinding, Forguncy.RbacPermission.Core", "roleNames": [ "FGC_LoginUser" ] } ] } }, "Parameters": [ { "Name": "任务ID", "DataValidationInfo": { "IgnoreBlank": false }, "TestData": "2" }, { "Name": "开始日期", "DataValidationInfo": { "IgnoreBlank": false }, "TestData": "2024-03-01" }, { "Name": "结束日期", "DataValidationInfo": { "IgnoreBlank": false }, "TestData": "2024-03-10" }, { "Name": "执行人", "DataValidationInfo": { "IgnoreBlank": false }, "TestData": "administrator" }, { "Name": "工时数", "DataValidationInfo": { "IgnoreBlank": false }, "TestData": "40" }, { "Name": "进展内容", "DataValidationInfo": {}, "TestData": "测试" }, { "Name": "指定时薪单价", "DataValidationInfo": {} } ], "InvokeTriggerTestData": { "UserName": "Administrator" } } ], "Commands": [ { "$type": "Forguncy.Model.CatchExceptionCommand, ServerDesignerCommon", "TryCommandPart": { "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "任务成员", "TableValue": { "TableName": "任务成员表", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "参与人", "GUID": "20d5971e-0ac3-4236-9e5f-0e67e2034b35" }, "ColumnName": "参与人" }, { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "参与人", "GUID": "671ec8a8-ebc7-42d3-8fda-f2686d841ead", "AttachType": { "$type": "ForguncyDataAccess.UserColumnAttachObj, ForguncyDataAccess", "UserColumnAttachType": 1 } }, "ColumnName": "参与人_全名" }, { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "参与人", "GUID": "b0fb9e47-ca43-45d0-bb54-cf7ac8edce15", "AttachType": { "$type": "ForguncyDataAccess.UserColumnAttachObj, ForguncyDataAccess", "UserColumnAttachType": 5, "AttachTypeTag": "负荷" } }, "ColumnName": "参与人负荷" }, { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "任务时薪", "GUID": "93b2f1d8-fd53-468a-9211-87f51b6a5494" }, "ColumnName": "任务成员时薪" }, { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "岗位ID", "GUID": "299a3d18-2733-483d-bcd6-09e057c343ef", "RelationBinding": { "RelatedTable": "项目岗位", "RelatedColumn": "ID", "DisplayColumn": "默认时薪" } }, "ColumnName": "任务岗位时薪" }, { "BindingInfo": { "TableName": "任务成员表", "ColumnName": "参与人", "GUID": "599afbfc-245b-40b1-b078-adb9ca71abef", "AttachType": { "$type": "ForguncyDataAccess.UserColumnAttachObj, ForguncyDataAccess", "UserColumnAttachType": 5, "AttachTypeTag": "默认时薪" } }, "ColumnName": "参与人默认时薪" } ], "SqlCondition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "任务成员表", "ColumnName": "任务ID", "GUID": "7d139430-ab2a-40df-98d0-38bc039435e2" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } }, { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "任务成员表", "ColumnName": "参与人", "GUID": "2b46a973-8db3-40e7-b10b-93ddb666b812" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=执行人" } } ] }, "NullFormulaValueQueryPolicy": 0, "TopCount": "1" }, "ID": "9a67d1972a8741d2af5edb5a82988945" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "项目成员", "TableValue": { "TableName": "项目成员表", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "项目成员表", "ColumnName": "岗位ID", "GUID": "e72fecb8-c4b6-4ef0-a802-f18cb6d6ba24", "RelationBinding": { "RelatedTable": "项目岗位", "RelatedColumn": "ID", "DisplayColumn": "默认时薪" } }, "ColumnName": "项目岗位时薪" }, { "BindingInfo": { "TableName": "项目成员表", "ColumnName": "默认时薪", "GUID": "90991267-4d34-4537-8be3-0ef990118f3e" }, "ColumnName": "项目成员时薪" } ], "SqlCondition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "项目成员表", "ColumnName": "项目ID", "GUID": "25c7933c-8b27-4163-ad03-a22d7efe88fb" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.项目ID" } }, { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "项目成员表", "ColumnName": "项目成员", "GUID": "02b01205-9bbb-4e4f-8534-f52ea963c907" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=执行人" } } ] }, "NullFormulaValueQueryPolicy": 0, "TopCount": "1" }, "ID": "1d2f8e887f994e8582168d092f010ec9" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员" } }, "value": "%Null%", "compareType": 1 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "任务信息", "TableValue": { "TableName": "任务表", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "任务表", "ColumnName": "项目ID", "GUID": "1b1dfe53-8569-419b-9ac7-4bb4e54e5cb3" }, "ColumnName": "项目ID" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "任务名称", "GUID": "2f0ff2cf-b0cf-49ba-99c2-9b8636152c54" }, "ColumnName": "任务名称" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "任务预算工时", "GUID": "503e9dd2-fc8c-4426-a37f-c7d582c9577a" }, "ColumnName": "任务预算工时" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "任务状态", "GUID": "93ff9848-29c1-4cf6-a3cd-d33eb1d033c4" }, "ColumnName": "任务状态" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "任务状态", "GUID": "da675aa2-3619-422b-817f-eed8c7c118c7", "RelationBinding": { "RelatedTable": "任务状态", "RelatedColumn": "状态码", "DisplayColumn": "任务状态" } }, "ColumnName": "任务状态文本" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "项目ID", "GUID": "038a41fb-93fa-46f8-b259-87eb94cc28ad", "RelationBinding": { "RelatedTable": "项目表", "RelatedColumn": "ID", "DisplayColumn": "严格模式" } }, "ColumnName": "严格模式" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "项目ID", "GUID": "f4212e88-f2aa-4d8f-8ba8-b7c518505bb7", "RelationBinding": { "RelatedTable": "项目表", "RelatedColumn": "ID", "DisplayColumn": "项目预算工时" } }, "ColumnName": "项目预算工时" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "项目ID", "GUID": "31040160-fc88-459c-b67b-8621acbc0920", "RelationBinding": { "RelatedTable": "项目表", "RelatedColumn": "ID", "DisplayColumn": "项目预算费用" } }, "ColumnName": "项目预算费用" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "任务类型", "GUID": "f6fb60c7-0ba6-450b-9cda-28eb2412e296", "RelationBinding": { "RelatedTable": "任务类型", "RelatedColumn": "ID", "DisplayColumn": "提成系数" } }, "ColumnName": "提成系数" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "总计划工时", "GUID": "4bdf7858-40b1-495e-be0d-109aaaf4f69f" }, "ColumnName": "总计划工时" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "总实际工时", "GUID": "8505a216-3aee-4056-affe-6c760e35c844" }, "ColumnName": "总实际工时" }, { "BindingInfo": { "TableName": "任务表", "ColumnName": "项目ID", "GUID": "b5020b4b-8e2e-4b31-a2ac-53ca31b14b8e", "RelationBinding": { "RelatedTable": "项目表", "RelatedColumn": "ID", "DisplayColumn": "工时分配方式" } }, "ColumnName": "工时分配方式" } ], "SqlCondition": { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "任务表", "ColumnName": "ID", "GUID": "6ffb7caa-1cd8-4373-b2bf-8a03556c1866" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } }, "NullFormulaValueQueryPolicy": 0, "TopCount": "1" }, "ID": "a5c0934784614060ab0287e29ae7729e" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "提成系数", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.提成系数" }, "ID": "cb367be8fb7748938fbb70bd84ece17b" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "核定工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=工时数" }, "ID": "082f169b38f44fdda8b19e98912a9d4e" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "分配天数", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=DATEDIF(开始日期,结束日期,\"d\")+1" }, "ID": "3116169271594431b3b1c7d31a006d8b" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.任务状态" } }, "value": "1" }, "CommandList": [ { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=指定时薪单价" } }, "value": "%Null%" }, "CommandList": [ { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.任务成员时薪" } }, "value": "%Null%", "compareType": 1 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.任务默认时薪" }, "ID": "068f4611d05f4d0f8c97425c44bea1f0" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "任务成员时薪", "ID": "59b966a6d5e042b79fba6d9e1f659758" } ], "ID": "33922062-2222-4bb8-bc56-b3311e1684fb" }, { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.任务岗位时薪" } }, "value": "%Null%", "compareType": 1 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.岗位默认时薪" }, "ID": "9cae0ca147fd4f36bf12d59e368f2c57" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "任务岗位时薪", "ID": "05df8d3ef9fa454b8ec03882ddda515f" } ], "ID": "3329df8e-ba90-49ed-b89e-81dce2e2325e" }, { "Condition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员" } }, "value": "%Null%", "compareType": 1 }, { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员.项目成员时薪" } }, "value": "%Null%", "compareType": 1 } ] }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员.项目成员时薪" }, "ID": "8cf0a96476814aa489e3e46860a6e39d" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "项目成员时薪", "ID": "25ff3a82fd57430b94e16b296b77c513" } ], "ID": "7cc24a11-00c9-4f00-9ef5-08a538b0ab09" }, { "Condition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员" } }, "value": "%Null%", "compareType": 1 }, { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员.项目岗位时薪" } }, "value": "%Null%", "compareType": 1 } ] }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目成员.项目岗位时薪" }, "ID": "7656d9a836d942e092139516a992880e" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "项目岗位时薪", "ID": "22bb1104b90b4467b078e638f3f4aa51" } ], "ID": "e03de4f0-8247-4d54-bb3b-76e7cc342f96" }, { "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.参与人默认时薪" }, "ID": "b5dd3212338449fc8f5aed3c3b6b3993" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "用户默认时薪", "ID": "fd64e93a07ae4ca2820422202ad6e7a4" } ], "ID": "e000eea3-dd3e-475a-98d8-584cc7fe28ef" } ] } ], "Comments": "优先使用手动指定的提成金额", "ID": "c857b763-899d-46d1-915b-e03337449e75" }, { "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算时薪", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=指定时薪单价" }, "ID": "ca05817f6d1e4396b90dbdf80186e656" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "时薪计算来源", "ParameterValue": "特殊指定", "ID": "3045dcff1e074a13b95874e71352f376" } ], "ID": "495820ba-24f0-4a76-ae63-53cff1d1f918" } ], "Comments": "计算成员的时薪" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "预测本次产生成本", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目统计信息.总成本+(计算时薪*工时数*任务信息.提成系数)" }, "ID": "289edaf29203403ea65bf88c15bca148" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.严格模式" } }, "value": "1" }, "CommandList": [ { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.工时分配方式" } }, "value": "1" }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "个人工时情况", "TableValue": { "TableName": "View_任务工时统计", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "任务ID", "GUID": "976cf4f1-2ec3-4537-8ca8-aac1d965131e" }, "ColumnName": "任务ID" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总计划工时", "GUID": "37b1cd46-749c-4870-9e65-639974e237b4" }, "ColumnName": "总计划工时" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总实际工时", "GUID": "58613864-7f3d-4ab2-9b2e-f1e1b7a86879" }, "ColumnName": "总实际工时" } ], "SqlCondition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "任务ID", "GUID": "b732175b-c55c-4a15-b703-223f45ab07a1" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } }, { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "执行人", "GUID": "4bd4f915-e792-4219-ad86-6602ef9080bd" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=执行人" } } ] } }, "ID": "aa235f64d4ec4cd582472f40f84747c9", "Comments": "从视图统计项目的信息" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=个人工时情况.总计划工时-个人工时情况.总实际工时" } }, "value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=工时数" }, "compareType": 4 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "提成系数", "ParameterValue": "0", "ID": "e18f1034f12e41a7b90d2a1f58090f54" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "核定工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=个人工时情况.总计划工时-个人工时情况.总实际工时" }, "ID": "8d0e13be1d7c417b85a401d7241d5a80" } ], "Comments": "先检查个人工时余额够不够,如果不够,直接提成为0", "ID": "e7649a19-59b0-45b6-a7e3-2617fb38cbd5" } ] } ], "Comments": "如果分配到人头,则判断该人总计划工时还够不够", "ID": "b42842cc-c9b3-4ca4-b6ba-e238c3d326b3" }, { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.工时分配方式" } }, "value": "3" }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "任务工时情况", "TableValue": { "TableName": "View_任务工时统计", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "任务ID", "GUID": "976cf4f1-2ec3-4537-8ca8-aac1d965131e" }, "ColumnName": "任务ID" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总计划工时", "GUID": "37b1cd46-749c-4870-9e65-639974e237b4" }, "ColumnName": "总计划工时" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总实际工时", "GUID": "58613864-7f3d-4ab2-9b2e-f1e1b7a86879" }, "ColumnName": "总实际工时" } ], "SqlCondition": { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "任务ID", "GUID": "b732175b-c55c-4a15-b703-223f45ab07a1" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } } }, "ID": "7ed3dcc708d241e7a556334560d7e374", "Comments": "从视图统计项目的信息" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.总实际工时+工时数" } }, "value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务工时情况.总计划工时" }, "compareType": 2 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "提成系数", "ParameterValue": "1", "ID": "5ce8a30a1b1f468cb65341bd59a033e0" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "核定工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务工时情况.总计划工时-任务工时情况.总实际工时" }, "ID": "b03b8286df21427fbb48123ef003f896" } ], "Comments": "先检查个人工时余额够不够,如果不够,直接提成为0", "ID": "874cf8c6-2cfa-4b0f-b0bb-6d4437a54e6d" } ] } ], "Comments": "如果是共用任务工时,则查看任务计划工时够不够", "ID": "ecbba21c-f4e9-462d-b721-fca7e3d3ae5f" } ] }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "项目统计信息", "TableValue": { "TableName": "View_项目统计信息", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "View_项目统计信息", "ColumnName": "项目预算费用", "GUID": "1f23c586-e318-41f8-9e2c-f9fc47949199" }, "ColumnName": "项目预算费用" }, { "BindingInfo": { "TableName": "View_项目统计信息", "ColumnName": "总成本", "GUID": "7c3a493f-d2ac-49b3-957f-7a772d5138bf" }, "ColumnName": "总成本" } ], "SqlCondition": { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_项目统计信息", "ColumnName": "项目ID", "GUID": "0aa2d908-82fb-4233-a1e8-eb5a36cecaa2" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.项目ID" } }, "TopCount": "1" }, "ID": "7cde1a8047784dc9baf46af0faf267e4", "Comments": "从视图统计项目的信息" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=预测本次产生成本+项目统计信息.总成本" } }, "value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=项目统计信息.项目预算费用" }, "compareType": 2 }, "CommandList": [ { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": "400", "Message": "该项目预算费用不足,为确保项目成本可控,请联系项目经理增加项目预算后再提交。" } ], "ID": "b8647c55-1034-4992-8851-e5d0875dfc31" } ] } ], "Comments": "如果提交的工时类型等于项目工时的核定方式且开启严格模式就校验本次有没有超标", "ID": "8e4fdac6-37e1-4511-b350-f44390f36534" } ] }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "待分配工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=核定工时" }, "ID": "fe5f3d119ffd464f899933b9abacf133" }, { "$type": "Forguncy.Model.ServerTransactionCommand, ServerDesignerCommon", "CommandList": [ { "$type": "Forguncy.Model.LoopCommand, ServerDesignerCommon", "LoopInfo": { "$type": "Forguncy.Model.CountLoopInfo, ServerDesignerCommon", "LoopCount": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=分配天数" }, "LoopIndexParamName": "index", "LoopItemParamName": "Item" }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "当前日期", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=开始日期+(index-1)" }, "ID": "172a3023cda9475a8a67528b152807c3" }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "统计工时", "TableValue": { "TableName": "View_任务工时统计", "TableValueType": 1, "BindingInfos": [ { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总计划工时", "GUID": "5a63c0a3-e5dd-4851-b197-856a144a9466" }, "ColumnName": "总计划工时" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总实际工时", "GUID": "21ea4bc4-f68e-446b-9760-413f048a32ea" }, "ColumnName": "总实际工时" }, { "BindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "总剩余工时", "GUID": "93c3c2b9-a863-42a1-9eab-7159aaa0f7a7" }, "ColumnName": "总剩余工时" } ], "SqlCondition": { "$type": "ForguncyDataAccess.RelationSqlCondition, ForguncyDataAccess", "SubConditions": [ { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "任务ID", "GUID": "8d915019-2cfd-4c95-b3b3-158f9b202f35" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } }, { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "执行人", "GUID": "14c58079-0d75-42a0-a3ba-8f35c3a578a1" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=执行人" } }, { "$type": "ForguncyDataAccess.GeneralCESqlCondition, ForguncyDataAccess", "ColumnBindingInfo": { "TableName": "View_任务工时统计", "ColumnName": "日期", "GUID": "abf612b1-a865-4aa4-afae-e47acfc79220" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=当前日期" } } ] } }, "ID": "fd2415ab5b7e452b9424170a55e03291" }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=index" } }, "value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=分配天数" }, "compareType": 4 }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算本次分配工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=ROUNDUP(核定工时/分配天数,1)" }, "ID": "0a6bb6880fa44256b05d2356d87df007" } ], "ID": "5653b954-d9f9-4e59-aae6-b442f7e54b35" }, { "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "计算本次分配工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=ROUNDUP(待分配工时,1)" }, "ID": "d298d7ee2bed4e108a7671a1a6475966" } ], "ID": "7cb6e2dd-b69a-4921-9c0f-797f15533567" } ] }, { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=统计工时.总实际工时+计算本次分配工时" } }, "value": "24", "compareType": 5 }, "CommandList": [ { "$type": "Forguncy.Model.ConditionCommand, ServerDesignerCommon", "ConditionAndCommandPairList": [ { "Condition": { "$type": "Forguncy.Model.IfCondition, ServerDesignerCommon", "param": { "$type": "Forguncy.Model.IfConditionServerSiteParam, ServerDesignerCommon", "ParamObject": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.工时分配方式" } }, "value": "2" }, "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "本次核定工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=IF(计算本次分配工时>统计工时.总剩余工时,统计工时.总剩余工时,计算本次分配工时)" }, "ID": "cfba414b12c9457984f4451f7b08a1eb" } ], "Comments": "如果是按天分配,则需要检测这一天的实际工时是否超出,", "ID": "ef6cc10d-3032-437a-87ea-daf34dd21b6c" }, { "CommandList": [ { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "本次核定工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=计算本次分配工时" }, "ID": "b54545f6b13d4b8697add0630e495a6b" } ], "ID": "288a8caa-f2ce-451f-8385-4fb93db5e57b" } ] }, { "$type": "Forguncy.Model.UpdateDataTableCommand, ServerDesignerCommon", "TableName": "任务工时表", "UpdateType": "add", "ShowConfirm": false, "UpdateBindingValues": [ { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "项目ID", "GUID": "fda79c92-f467-4574-9c32-f0b801a012ac" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.项目ID" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "任务ID", "GUID": "770c4415-4e21-4f8c-a597-abd7f04a0bfd" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务ID" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "工时日期", "GUID": "2bc8dc66-9ca8-4604-8b97-08dbbc9a626a" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=当前日期" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "工时类型", "GUID": "9789ce12-dd35-4498-9b72-76c43e4e2144" }, "Value": "实际" }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "执行人", "GUID": "ec1c5767-50ba-447b-837b-d4666cdd9f2d" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.参与人" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "执行内容", "GUID": "4e77c9cd-5d2d-4d0e-8332-038313abf74f" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=进展内容" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "工时", "GUID": "f72ee1ba-2be6-42d8-aef7-ffd0bc436f3e" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=本次核定工时" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "上报工时", "GUID": "34a6d798-74c3-4ceb-a2df-8ad4cd476b42" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=计算本次分配工时" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "时薪单价", "GUID": "c2270dad-808a-4a8b-8489-95d218b811f3" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=计算时薪" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "提成系数", "GUID": "bd688763-4c3e-4486-8153-d908dfc3dd6b" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=提成系数" } }, { "BindingInfo": { "TableName": "任务工时表", "ColumnName": "时薪来源", "GUID": "f5922f75-cb51-4a11-bc6e-52b1e145d543" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=时薪计算来源" } } ] }, { "$type": "Forguncy.Model.Commands.SetParameterCommand, ServerDesignerCommon", "ParameterName": "待分配工时", "ParameterValue": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=ROUNDUP(待分配工时-计算本次分配工时,1)" }, "ID": "5d5c7f7462d24dc2aac507bf580830d5" } ], "ID": "e1ae1fbe-aae8-4949-9726-4162029c9686" }, { "CommandList": [ { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": "400", "Message": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=\"数据不合理:报工后\"&任务成员.参与人_全名&\"在\"&TEXT(当前日期,\"yyyy年mm月dd\")&\"的实际工时会超过24小时,请修改后重新提交!\"" } } ], "ID": "484f14c6-c349-45b7-9f0d-6f68e070abe4" } ] } ] }, { "$type": "Forguncy.Model.UpdateDataTableCommand, ServerDesignerCommon", "TableName": "项目动态", "UpdateType": "add", "ShowConfirm": false, "UpdateBindingValues": [ { "BindingInfo": { "TableName": "项目动态", "ColumnName": "项目ID", "GUID": "657294a7-01c3-4e27-9a65-1e840457d870" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务信息.项目ID" } }, { "BindingInfo": { "TableName": "项目动态", "ColumnName": "项目动态", "GUID": "5dcbe3d4-7544-4e8a-bacd-fbc771aed2cc" }, "Value": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=任务成员.参与人_全名&\"在任务[\"&任务信息.任务名称&\"]中报工\"&工时数&\"小时\"" } }, { "BindingInfo": { "TableName": "项目动态", "ColumnName": "执行人", "GUID": "e7eba9e1-edcf-4a25-a4fb-371d2eaaa4c4" }, "Value": "%CurrentUser%" } ] } ] }, { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": "0", "Message": "报工成功" } ], "ID": "d97ed517-835c-4902-8d7b-92065a8eb0ec" }, { "CommandList": [ { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": "400", "Message": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=\"当前任务状态为[\"&任务信息.任务状态文本&\"],无法提交工时!\"" } } ], "ID": "b59393e2-49c6-4ec1-a5fc-cb89e9961a5d" } ] } ], "ID": "ac684dec-1eaa-4e07-8135-5d5661522404" }, { "CommandList": [ { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": "400", "Message": "成员不在任务内,无法报工!" } ], "ID": "a9a59bb7-4339-4d9e-80c3-575c23dc3429" } ] } ] }, "CatchCommandPart": { "CommandList": [ { "$type": "Forguncy.Model.ReturnCommand, ServerDesignerCommon", "ErrorCode": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=ExceptionCode" }, "Message": { "$type": "Forguncy.Model.FormulaReferObject, ServerDesignerCommon", "SerializeProperty": "=ExceptionMessage" } } ] } } ] }