{"Message":"修改工时的逻辑,支持工时分配模式\r\n修改工时中心页面","MessageType":2,"Modules":[{"State":1,"Type":23,"Name":"TableView/子任务视图"},{"State":1,"Type":23,"Name":"TableView/View_任务工时统计"},{"State":1,"Type":23,"Name":"TableView/人员工时统计视图"},{"State":1,"Type":7,"Name":"Table/任务工时表"},{"State":1,"Type":23,"Name":"TableView/View_项目统计信息"},{"State":1,"Type":7,"Name":"Table/项目表"},{"State":1,"Type":1,"Name":"PCPage/修改报工"},{"State":1,"Type":1,"Name":"PCPage/新增报工"},{"State":1,"Type":1,"Name":"PCPage/工时详情"},{"State":1,"Type":1,"Name":"PCPage/FGC_维护中"},{"State":1,"Type":1,"Name":"PCPage/预算申请"},{"State":1,"Type":1,"Name":"PCPage/项目信息"},{"State":1,"Type":3,"Name":"MasterPCPage/FGC_母版页"},{"State":1,"Type":15,"Name":"ServerCommand/修改工时"},{"State":2,"Type":15,"Name":"ServerCommand/新增工时"},{"State":1,"Type":40,"Name":"Plugin"},{"State":1,"Type":15,"Name":"ServerCommand/同步项目参与人字段"},{"State":1,"Type":15,"Name":"ServerCommand/新增或修改项目"},{"State":1,"Type":1,"Name":"PCPage/反馈与建议"},{"State":1,"Type":23,"Name":"TableView/项目匿名视图"},{"State":2,"Type":1,"Name":"PCPage/工时报表"},{"State":1,"Type":18,"Name":"RdlReport/工时报表"},{"State":1,"Type":7,"Name":"Table/工时分配方式"},{"State":3,"Type":1,"Name":"PCPage/分配计划工时"},{"State":3,"Type":15,"Name":"ServerCommand/分配任务工时"},{"State":3,"Type":15,"Name":"ServerCommand/上报实际工时"},{"State":3,"Type":1,"Name":"PCPage/任务工时统计"},{"State":3,"Type":1,"Name":"PCPage/人员工时统计"},{"State":3,"Type":1,"Name":"PCPage/工时中心"}],"Version":"v1"}

This commit is contained in:
SHAMUSPC\NINGMEI
2024-03-30 23:27:01 +08:00
parent 0b94563e41
commit e404fba4a7
36 changed files with 5182 additions and 1400 deletions

View File

@@ -17,11 +17,12 @@
"ColumnType": "System.DateTime, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"$type": "Forguncy.SaveLoad.UserBindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "nvarchar",
"MaxLength": -1,
"Name": "执行人",
"ColumnType": "System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
"ColumnType": "System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e",
"HasChangeColumnType": true
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
@@ -37,13 +38,6 @@
"Name": "任务ID",
"ColumnType": "System.Int64, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "varchar",
"MaxLength": -1,
"Name": "工时核定方式",
"ColumnType": "System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "float",
@@ -74,9 +68,17 @@
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"Required": true,
"DatabaseColumnType": "float",
"MaxLength": -1,
"Name": "核定工时",
"Name": "上报工时",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "float",
"MaxLength": -1,
"Name": "剩余工时",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
@@ -113,6 +115,48 @@
"DataColumnName": "实际工时",
"Name": "总实际工时",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.StatisticColumnSaveData, ServerDesignerCommon",
"BindingInfo": {
"TableName": "View_任务工时统计",
"ColumnName": "剩余工时",
"GUID": "c347ddb5-2b7d-48c8-a908-d219274fe3a1"
},
"AggregateFunction": 4,
"DataColumnName": "剩余工时",
"Name": "总剩余工时",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.FormulaColumnSaveData, ServerDesignerCommon",
"Formula": "IF([实际工时]=0,0,IF([计划工时]=0,100,ROUND([实际工时]/[计划工时]*100,0)))",
"Name": "工时完成比例",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.StatisticColumnSaveData, ServerDesignerCommon",
"BindingInfo": {
"TableName": "View_任务工时统计",
"ColumnName": "上报工时",
"GUID": "e01ff216-bd5f-4aa2-b8fa-0498890790d1"
},
"AggregateFunction": 4,
"DataColumnName": "上报工时",
"Name": "总上报工时",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
},
{
"$type": "Forguncy.SaveLoad.StatisticColumnSaveData, ServerDesignerCommon",
"BindingInfo": {
"TableName": "View_任务工时统计",
"ColumnName": "计算提成",
"GUID": "635d4f7b-c81f-4609-91fb-6ba1156ab317"
},
"AggregateFunction": 4,
"DataColumnName": "计算提成",
"Name": "总计算提成",
"ColumnType": "System.Double, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e"
}
],
"ExternalDatabaseInfo": {
@@ -120,7 +164,7 @@
"ConnectionId": "业务表",
"SourceTableName": "View_任务工时统计",
"SourceTableSchema": "dbo",
"CreateViewSql": "WITH c1 as (\r\n\tSELECT\r\n\t t.[ID],\r\n\t\t[项目ID],\r\n\t\tp.[工时核定方式],\r\n\t\t[任务ID],\r\n\t\t[执行人],\r\n\t\t[工时日期],\r\n\t\t[时薪单价],\r\n\t\t[提成系数],\r\n\t\t[请款单ID],\r\n\t\tROUND(SUM(CASE WHEN [工时类型] = '计划' THEN ISNULL([工时],0) ELSE 0 END),1) AS [计划工时],\r\n\t\tROUND(SUM(CASE WHEN [工时类型] = '实际' THEN ISNULL([工时],0) ELSE 0 END),1) AS [实际工时],\r\n\t\t(CASE p.[工时核定方式]\r\n\t\tWHEN '计划' THEN ROUND(SUM(CASE WHEN [工时类型] = '计划' THEN ISNULL([工时],0) ELSE 0 END),1)\r\n\t\tELSE ROUND(SUM(CASE WHEN [工时类型] = '实际' THEN ISNULL([工时],0) ELSE 0 END),1) \r\n\t\tEND) as 核定工时\r\n\tFROM \r\n\t\t[dbo].[任务工时表] t\r\n\tLEFT JOIN [项目表] p ON t.项目ID = p.ID\r\n\tGROUP BY \r\n\t t.[ID],\r\n\t\t[项目ID],\r\n\t\tp.[工时核定方式],\r\n\t\t[工时核定方式],\r\n\t\t[任务ID],\r\n\t\t[执行人],\r\n\t\t[工时日期],\r\n\t\t[时薪单价],\r\n\t\t[提成系数],\r\n\t\t[请款单ID]\r\n)\r\n\r\nSELECT\r\n c1.[ID],\r\n [工时日期] as 日期,\r\n\t\t[执行人],\r\n [项目ID],\r\n [任务ID],\r\n [工时核定方式],\r\n [时薪单价],\r\n [提成系数],\r\n [计划工时],\r\n [实际工时],\r\n [核定工时],\r\n ([核定工时] * [时薪单价] * [提成系数]) as 计算提成,\r\n\t\tc1.[请款单ID],\r\n\t\tqk.[状态] as 请款状态\r\nFROM c1\r\n LEFT JOIN [收益请款单表] qk ON c1.请款单ID = qk.ID;",
"CreateViewSql": "WITH c1 as (\r\n\tSELECT\r\n\t t.[ID],\r\n\t\t[项目ID],\r\n\t\t[任务ID],\r\n\t\t[执行人],\r\n\t\t[工时日期],\r\n\t\t[时薪单价],\r\n\t\t[提成系数],\r\n\t\t[请款单ID],\r\n\t\tISNULL([上报工时],0) AS 上报工时,\r\n\t\tROUND(SUM(CASE WHEN [工时类型] = '计划' THEN ISNULL([工时],0) ELSE 0 END),1) AS [计划工时],\r\n\t\tROUND(SUM(CASE WHEN [工时类型] = '实际' THEN ISNULL([工时],0) ELSE 0 END),1) AS [实际工时]\r\n\r\n\tFROM \r\n\t\t[dbo].[任务工时表] t\r\n\tLEFT JOIN [项目表] p ON t.项目ID = p.ID\r\n\tGROUP BY \r\n\t t.[ID],\r\n\t\t[项目ID],\r\n\t\t[任务ID],\r\n\t\t[执行人],\r\n\t\t[工时日期],\r\n\t\t[时薪单价],\r\n\t\t[提成系数],\r\n\t\t[请款单ID],\r\n\t\t[上报工时]\r\n)\r\n\r\nSELECT\r\n c1.[ID],\r\n [工时日期] as 日期,\r\n\t\t[执行人],\r\n [项目ID],\r\n [任务ID],\r\n [时薪单价],\r\n [提成系数],\r\n [计划工时],\r\n [实际工时],\r\n\t\t[上报工时],\r\n\t\t[计划工时]-[实际工时] as 剩余工时,\r\n ([实际工时]*[时薪单价] * [提成系数]) as 计算提成,\r\n\t\tc1.[请款单ID],\r\n\t\tqk.[状态] as 请款状态\r\nFROM c1\r\n LEFT JOIN [收益请款单表] qk ON c1.请款单ID = qk.ID;",
"ViewInfo": {
"ViewName": "View_任务工时统计",
"IsUpdatable": true,
@@ -144,13 +188,6 @@
"ForeignColumn": "项目ID",
"IsDetailTableRelation": true
},
{
"PrimaryTable": "用户信息视图",
"PrimaryColumn": "用户名",
"ForeignTable": "View_任务工时统计",
"ForeignColumn": "执行人",
"IsDetailTableRelation": true
},
{
"PrimaryTable": "收益请款单表",
"PrimaryColumn": "ID",