{"Message":"优化工时表表","MessageType":2,"Modules":[{"State":1,"Type":23,"Name":"TableView/View_任务工时统计"},{"State":1,"Type":1,"Name":"PCPage/工作台首页"},{"State":1,"Type":1,"Name":"PCPage/统计首页"},{"State":1,"Type":18,"Name":"RdlReport/客户工时报表"},{"State":3,"Type":18,"Name":"RdlReport/客户部门工时报表"}],"Version":"v1"}

This commit is contained in:
cuckooent
2024-11-05 17:07:07 +08:00
parent f6019b18ca
commit e3847f9a19
7 changed files with 359 additions and 64 deletions

View File

@@ -94,6 +94,13 @@
"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"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "float",
@@ -101,6 +108,13 @@
"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"
},
{
"$type": "Forguncy.SaveLoad.BindingColumnSaveData, ServerDesignerCommon",
"DatabaseColumnType": "float",
@@ -182,7 +196,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\t[任务ID],\r\n\t\t[执行内容],\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(CASE WHEN [工时类型] = '计划' THEN ISNULL([工时],0) ELSE 0 END,1) AS [计划工时],\r\n\t\tROUND(CASE WHEN [工时类型] = '实际' THEN ISNULL([工时],0) ELSE 0 END,1) AS [实际工时]\r\n\tFROM \r\n\t\t[dbo].[任务工时表] t\r\n\tLEFT JOIN [项目表] p ON t.项目ID = p.ID\r\n)\r\n\r\nSELECT\r\n cast(c1.[工时日期] as date) as 日期,\r\n\t\tc1.[执行人],\r\n c1.[项目ID],\r\n\t\txm.[项目名称],\r\n c1.[任务ID],\r\n\t\trw.[任务名称],\r\n\t\trw.[任务说明],\r\n\t\tSTRING_AGG(c1.[执行内容], CHAR(13) + CHAR(10)) AS 执行内容,\r\n\t\tFGC_Creator='Administrator',\r\n AVG(c1.[时薪单价]) AS 时薪单价,\r\n AVG(c1.[提成系数]) AS 提成系数,\r\n SUM(c1.[计划工时]) AS 计划工时,\r\n\t\tSUM(c1.[上报工时]) AS 上报工时,\r\n SUM(c1.[实际工时]) AS 核定工时,\r\n SUM(c1.[实际工时]*c1.[时薪单价] *c1.[提成系数]) as 核定收益\r\nFROM c1\r\nLEFT JOIN [项目表] xm ON c1.[项目ID] = xm.ID\r\nLEFT JOIN [任务表] rw ON c1.[任务ID] = rw.ID\r\nGROUP BY\r\ncast([工时日期] as date),\r\nc1.[执行人],\r\nc1.[项目ID],\r\nxm.[项目名称],\r\nrw.[任务说明],\r\nc1.[任务ID],\r\nrw.[任务名称]",
"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[提成系数],\r\n\t\t[请款单ID],\r\n\t\tISNULL([上报工时],0) AS 上报工时,\r\n\t\tROUND(CASE WHEN [工时类型] = '计划' THEN ISNULL([工时],0) ELSE 0 END,1) AS [计划工时],\r\n\t\tROUND(CASE WHEN [工时类型] = '实际' THEN ISNULL([工时],0) ELSE 0 END,1) AS [实际工时]\r\n\tFROM \r\n\t\t[dbo].[任务工时表] t\r\n\tLEFT JOIN [项目表] p ON t.项目ID = p.ID\r\n)\r\n\r\nSELECT\r\n cast(c1.[工时日期] as date) as 日期,\r\n\t\tc1.[执行人],\r\n c1.[项目ID],\r\n\t\txm.[项目名称],\r\n c1.[任务ID],\r\n\t\trw.[任务名称],\r\n\t\trw.[任务说明],\r\n\t\tSTRING_AGG(c1.[执行内容], CHAR(13) + CHAR(10)) AS 执行内容,\r\n\t\tFGC_Creator='Administrator',\r\n AVG(c1.[时薪单价]) AS 时薪单价,\r\n AVG(c1.[提成系数]) AS 提成系数,\r\n SUM(c1.[计划工时]) AS 计划工时,\r\n\t\tSUM(c1.[上报工时]) AS 上报工时,\r\n\t\tCEILING(SUM(c1.[上报工时])/8 * 10) / 10 AS 上报人天,\r\n SUM(c1.[实际工时]) AS 核定工时,\r\n\t\tCEILING(SUM(c1.[实际工时])/8 * 10) / 10 AS 核定人天,\r\n SUM(c1.[实际工时]*c1.[时薪单价] *c1.[提成系数]) as 核定收益\r\nFROM c1\r\nLEFT JOIN [项目表] xm ON c1.[项目ID] = xm.ID\r\nLEFT JOIN [任务表] rw ON c1.[任务ID] = rw.ID\r\nGROUP BY\r\ncast([工时日期] as date),\r\nc1.[执行人],\r\nc1.[项目ID],\r\nxm.[项目名称],\r\nrw.[任务说明],\r\nc1.[任务ID],\r\nrw.[任务名称]",
"ViewInfo": {
"ViewName": "View_任务工时统计",
"IsUpdatable": true,