{"Message":"校验任务数据统计\r\n整理任务列表动态显示\r\n测试工时提交、修改工时、子任务校验","MessageType":2,"Modules":[{"State":1,"Type":7,"Name":"Table/任务成员表"},{"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/新增报工"},{"State":1,"Type":15,"Name":"ServerCommand/修改任务预算工时"},{"State":1,"Type":15,"Name":"ServerCommand/上报实际工时"},{"State":1,"Type":15,"Name":"ServerCommand/分配任务工时"},{"State":1,"Type":15,"Name":"ServerCommand/任务发起流程前校验"},{"State":1,"Type":23,"Name":"TableView/任务平行视图"},{"State":1,"Type":31,"Name":"UserControlPage/任务统计信息"}],"Version":"v1"}
This commit is contained in:
@@ -68,22 +68,22 @@
|
||||
},
|
||||
"2": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 215.0
|
||||
"DesignLengthInPixel": 121.0
|
||||
}
|
||||
},
|
||||
"3": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 50.0
|
||||
"DesignLengthInPixel": 57.0
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 121.0
|
||||
"DesignLengthInPixel": 215.0
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 15.0
|
||||
"DesignLengthInPixel": 50.0
|
||||
}
|
||||
},
|
||||
"6": {
|
||||
@@ -97,11 +97,6 @@
|
||||
}
|
||||
},
|
||||
"8": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 121.0
|
||||
}
|
||||
},
|
||||
"9": {
|
||||
"GridRowColumnDefinition": {
|
||||
"DesignLengthInPixel": 47.0,
|
||||
"Mode": 2,
|
||||
@@ -114,22 +109,18 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"Count": 10,
|
||||
"Count": 9,
|
||||
"DefaultSize": 121.0
|
||||
},
|
||||
"Values": {
|
||||
"1,4": "总分配工时",
|
||||
"1,6": "已分配工时",
|
||||
"1,8": "已分配工时",
|
||||
"2,4": 0,
|
||||
"1,2": "已分配工时",
|
||||
"1,6": "可分配工时",
|
||||
"2,2": 0,
|
||||
"2,6": 0,
|
||||
"2,8": 0,
|
||||
"4,4": "总核定工时",
|
||||
"4,2": "已核定工时",
|
||||
"4,6": "可核定工时",
|
||||
"4,8": "实际上报工时",
|
||||
"5,4": 0,
|
||||
"5,6": 0,
|
||||
"5,8": 0
|
||||
"5,2": 0,
|
||||
"5,6": 0
|
||||
},
|
||||
"AttachInfos": {
|
||||
"1,1": {
|
||||
@@ -152,7 +143,7 @@
|
||||
"Config": "{\"option\":\"option = {\\n color: [\\\"#2196f3\\\", \\\"#bdd2e2\\\"],\\n title: {\\n text: '工时核定',\\n left: '50%',\\n top: '50%',\\n textAlign: 'center',\\n textVerticalAlign: 'middle',\\n textStyle: {\\n fontSize: 14,\\n },\\n },\\n tooltip: {\\n trigger: 'item'\\n },\\n series: [\\n {\\n name: '工时',\\n type: 'pie',\\n radius: ['40%', '90%'], // 调整内外半径,确保饼图尽量填充容器\\n center: ['50%', '50%'], // 确保饼图在容器中居中\\n label: {\\n fontSize: 10,\\n position: 'inside',\\n color: '#FFFFFF',\\n lineHeight: 13,\\n // 使用 formatter 回调函数\\n formatter: getColor,\\n rich: {\\n style: {\\n fontSize: 14,\\n fontWeight:\\\"normal\\\",\\n // 这里定义一个占位符,颜色会在 formatter 回调中动态设置\\n color: '#000000'\\n }\\n }\\n },\\n data: [\\n { value: 30, name: '已核定' },\\n { value: 70, name: '未核定' },\\n ],\\n emphasis: {\\n itemStyle: {\\n shadowBlur: 10,\\n shadowOffsetX: 0,\\n shadowColor: 'rgba(0, 0, 0, 0.5)'\\n }\\n }\\n }\\n ]\\n};\\n\\nfunction getColor(params) {\\n // 获取当前部分的颜色\\n const color = params.color;\\n // 解析颜色:\\n const rgb = color.slice(1); // 去掉 # \\n const r = parseInt(rgb.slice(0, 2), 16);\\n const g = parseInt(rgb.slice(2, 4), 16);\\n const b = parseInt(rgb.slice(4, 6), 16);\\n const brightness = (r * 299 + g * 587 + b * 114) / 1000;\\n\\n // 根据亮度判断标签颜色\\n const textColor = brightness > 128 ? '#000000' : '#FFFFFF';\\n\\n // 返回格式化字符串,其中包含样式标签\\n return `{style|${params.name}\\\\n ${params.value+'h'}}`;\\n}\",\"graphTheme\":null,\"displayMode\":\"canvas\",\"jsCode\":\"\\n async ({Context,JSONContext,ImageContext,echarts,myChart,dat,Forguncy,d3,setInterval,setTimeout,ForguncyEchartsHelper,PublicResource})=>{\\n var datGUI=undefined;\\n var option={};\\n option = {\\n color: [\\\"#2196f3\\\", \\\"#bdd2e2\\\"],\\n title: {\\n text: '工时核定',\\n left: '50%',\\n top: '50%',\\n textAlign: 'center',\\n textVerticalAlign: 'middle',\\n textStyle: {\\n fontSize: 14,\\n },\\n },\\n tooltip: {\\n trigger: 'item'\\n },\\n series: [\\n {\\n name: '工时',\\n type: 'pie',\\n radius: ['40%', '90%'],\\n center: ['50%', '50%'],\\n label: {\\n fontSize: 10,\\n position: 'inside',\\n color: '#FFFFFF',\\n lineHeight: 13,\\n // 使用 formatter 回调函数\\n formatter: getColor,\\n rich: {\\n style: {\\n fontSize: 14,\\n fontWeight: \\\"normal\\\",\\n // 这里定义一个占位符,颜色会在 formatter 回调中动态设置\\n color: '#000000'\\n }\\n }\\n },\\n data: [\\n { value: 30, name: '已核定' },\\n { value: 70, name: '未核定' },\\n ],\\n emphasis: {\\n itemStyle: {\\n shadowBlur: 10,\\n shadowOffsetX: 0,\\n shadowColor: 'rgba(0, 0, 0, 0.5)'\\n }\\n }\\n }\\n ]\\n};\\nfunction getColor(params) {\\n // 获取当前部分的颜色\\n const color = params.color;\\n // 解析颜色:\\n const rgb = color.slice(1); // 去掉 # \\n const r = parseInt(rgb.slice(0, 2), 16);\\n const g = parseInt(rgb.slice(2, 4), 16);\\n const b = parseInt(rgb.slice(4, 6), 16);\\n const brightness = (r * 299 + g * 587 + b * 114) / 1000;\\n // 根据亮度判断标签颜色\\n const textColor = brightness > 128 ? '#000000' : '#FFFFFF';\\n // 返回格式化字符串,其中包含样式标签\\n return `{style|${params.name}\\\\n ${params.value + 'h'}}`;\\n}\\n\\n return {\\n option,\\n datGUI,\\n };\\n }\\n \"}"
|
||||
}
|
||||
},
|
||||
"1,2": {
|
||||
"1,4": {
|
||||
"CellType": {
|
||||
"$type": "EchartsCustomCellType.EchartsCustomCellTypeCellType, EchartsCustomCellType",
|
||||
"EChartTitle": "Echarts图表",
|
||||
@@ -172,46 +163,32 @@
|
||||
"Config": "{\"option\":\"option = {\\n color: [\\\"#2196f3\\\", \\\"#bdd2e2\\\"],\\n title: {\\n text: '工时分配',\\n left: '50%',\\n top: '50%',\\n textAlign: 'center',\\n textVerticalAlign: 'middle',\\n textStyle: {\\n fontSize: 14,\\n },\\n },\\n tooltip: {\\n trigger: 'item'\\n },\\n series: [\\n {\\n name: '工时',\\n type: 'pie',\\n radius: ['40%', '90%'], // 调整内外半径,确保饼图尽量填充容器\\n center: ['50%', '50%'], // 确保饼图在容器中居中\\n label: {\\n fontSize: 10,\\n position: 'inside',\\n color: '#FFFFFF',\\n lineHeight: 13,\\n // 使用 formatter 回调函数\\n formatter: getColor,\\n rich: {\\n style: {\\n fontSize: 14,\\n fontWeight:\\\"normal\\\",\\n // 这里定义一个占位符,颜色会在 formatter 回调中动态设置\\n color: '#000000'\\n }\\n }\\n },\\n data: [\\n { value: 30, name: '已分配' },\\n { value: 70, name: '未分配' },\\n ],\\n emphasis: {\\n itemStyle: {\\n shadowBlur: 10,\\n shadowOffsetX: 0,\\n shadowColor: 'rgba(0, 0, 0, 0.5)'\\n }\\n }\\n }\\n ]\\n};\\n\\nfunction getColor(params) {\\n // 获取当前部分的颜色\\n const color = params.color;\\n // 解析颜色:\\n const rgb = color.slice(1); // 去掉 # \\n const r = parseInt(rgb.slice(0, 2), 16);\\n const g = parseInt(rgb.slice(2, 4), 16);\\n const b = parseInt(rgb.slice(4, 6), 16);\\n const brightness = (r * 299 + g * 587 + b * 114) / 1000;\\n\\n // 根据亮度判断标签颜色\\n const textColor = brightness > 128 ? '#000000' : '#FFFFFF';\\n\\n // 返回格式化字符串,其中包含样式标签\\n return `{style|${params.name}\\\\n ${params.value+'h'}}`;\\n}\",\"graphTheme\":null,\"displayMode\":\"canvas\",\"jsCode\":\"\\n async ({Context,JSONContext,ImageContext,echarts,myChart,dat,Forguncy,d3,setInterval,setTimeout,ForguncyEchartsHelper,PublicResource})=>{\\n var datGUI=undefined;\\n var option={};\\n option = {\\n color: [\\\"#2196f3\\\", \\\"#bdd2e2\\\"],\\n title: {\\n text: '工时分配',\\n left: '50%',\\n top: '50%',\\n textAlign: 'center',\\n textVerticalAlign: 'middle',\\n textStyle: {\\n fontSize: 14,\\n },\\n },\\n tooltip: {\\n trigger: 'item'\\n },\\n series: [\\n {\\n name: '工时',\\n type: 'pie',\\n radius: ['40%', '90%'],\\n center: ['50%', '50%'],\\n label: {\\n fontSize: 10,\\n position: 'inside',\\n color: '#FFFFFF',\\n lineHeight: 13,\\n // 使用 formatter 回调函数\\n formatter: getColor,\\n rich: {\\n style: {\\n fontSize: 14,\\n fontWeight: \\\"normal\\\",\\n // 这里定义一个占位符,颜色会在 formatter 回调中动态设置\\n color: '#000000'\\n }\\n }\\n },\\n data: [\\n { value: 30, name: '已分配' },\\n { value: 70, name: '未分配' },\\n ],\\n emphasis: {\\n itemStyle: {\\n shadowBlur: 10,\\n shadowOffsetX: 0,\\n shadowColor: 'rgba(0, 0, 0, 0.5)'\\n }\\n }\\n }\\n ]\\n};\\nfunction getColor(params) {\\n // 获取当前部分的颜色\\n const color = params.color;\\n // 解析颜色:\\n const rgb = color.slice(1); // 去掉 # \\n const r = parseInt(rgb.slice(0, 2), 16);\\n const g = parseInt(rgb.slice(2, 4), 16);\\n const b = parseInt(rgb.slice(4, 6), 16);\\n const brightness = (r * 299 + g * 587 + b * 114) / 1000;\\n // 根据亮度判断标签颜色\\n const textColor = brightness > 128 ? '#000000' : '#FFFFFF';\\n // 返回格式化字符串,其中包含样式标签\\n return `{style|${params.name}\\\\n ${params.value + 'h'}}`;\\n}\\n\\n return {\\n option,\\n datGUI,\\n };\\n }\\n \"}"
|
||||
}
|
||||
},
|
||||
"2,4": {
|
||||
"2,2": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "总分配工时",
|
||||
"GUID": "0f95ca94-c3d9-44e9-9b8f-662eb6133dbb"
|
||||
"ColumnName": "已分配工时",
|
||||
"GUID": "b704ed62-8098-481a-b3f9-30659e9f65ba"
|
||||
}
|
||||
},
|
||||
"2,6": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "已分配工时",
|
||||
"GUID": "ec51b865-2e7b-4950-bab7-fcd797b3f485"
|
||||
}
|
||||
},
|
||||
"2,8": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "可分配工时",
|
||||
"GUID": "f5e9bf9d-713e-4573-98a6-9c363ff8c04b"
|
||||
"GUID": "5c1528c1-bfc6-4f9f-a836-84dbd86a3cf2"
|
||||
}
|
||||
},
|
||||
"5,4": {
|
||||
"5,2": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "总核定工时",
|
||||
"GUID": "60d4b725-a65e-4d8e-adcd-d9e64ab73811"
|
||||
"GUID": "973f7d86-5349-4aee-90fc-777bb8df0534"
|
||||
}
|
||||
},
|
||||
"5,6": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "可核定工时",
|
||||
"GUID": "13df3be4-231d-401d-b4fc-179a5dd7422e"
|
||||
}
|
||||
},
|
||||
"5,8": {
|
||||
"BindingInfo": {
|
||||
"TableName": "任务平行视图",
|
||||
"ColumnName": "实际工时",
|
||||
"GUID": "e3c4608b-0fe1-4be9-88ff-956e08fe3cc4"
|
||||
"GUID": "ccf17015-40dc-4d64-b7ad-7042e4b9afb0"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -220,29 +197,15 @@
|
||||
{
|
||||
"FontFamily": 0
|
||||
},
|
||||
{
|
||||
"FontSize": 12.0,
|
||||
"Foreground": 1
|
||||
},
|
||||
{
|
||||
"FontFamily": 0,
|
||||
"FontSize": 12.0,
|
||||
"Foreground": 1
|
||||
},
|
||||
{
|
||||
"FontFamily": 0,
|
||||
"FontSize": 12.0,
|
||||
"Foreground": 1,
|
||||
"Formatter": 2
|
||||
},
|
||||
{
|
||||
"FontSize": 32.0,
|
||||
"Formatter": 3,
|
||||
"HorizontalAlignment": 4
|
||||
},
|
||||
{
|
||||
"FontFamily": 0,
|
||||
"FontSize": 32.0,
|
||||
"FontSize": 24.0,
|
||||
"Formatter": 3,
|
||||
"HorizontalAlignment": 4
|
||||
}
|
||||
@@ -258,40 +221,43 @@
|
||||
},
|
||||
"CellStyles": {
|
||||
"0,2": 0,
|
||||
"0,3": 0,
|
||||
"0,4": 0,
|
||||
"0,6": 0,
|
||||
"0,8": 0,
|
||||
"1,2": 0,
|
||||
"1,4": 1,
|
||||
"1,6": 2,
|
||||
"1,8": 3,
|
||||
"2,2": 0,
|
||||
"2,4": 4,
|
||||
"2,6": 5,
|
||||
"2,8": 5,
|
||||
"1,2": 1,
|
||||
"1,3": 1,
|
||||
"1,4": 0,
|
||||
"1,6": 1,
|
||||
"1,7": 0,
|
||||
"2,2": 2,
|
||||
"2,3": 2,
|
||||
"2,4": 0,
|
||||
"2,6": 2,
|
||||
"2,7": 0,
|
||||
"3,2": 0,
|
||||
"3,3": 0,
|
||||
"3,4": 0,
|
||||
"3,6": 0,
|
||||
"3,8": 0,
|
||||
"4,0": 0,
|
||||
"4,2": 0,
|
||||
"4,3": 0,
|
||||
"4,4": 3,
|
||||
"4,2": 1,
|
||||
"4,3": 1,
|
||||
"4,4": 0,
|
||||
"4,5": 0,
|
||||
"4,6": 3,
|
||||
"4,6": 1,
|
||||
"4,7": 0,
|
||||
"4,8": 3,
|
||||
"4,9": 0,
|
||||
"4,8": 0,
|
||||
"5,0": 0,
|
||||
"5,2": 0,
|
||||
"5,3": 0,
|
||||
"5,4": 5,
|
||||
"5,2": 2,
|
||||
"5,3": 2,
|
||||
"5,4": 0,
|
||||
"5,5": 0,
|
||||
"5,6": 5,
|
||||
"5,6": 2,
|
||||
"5,7": 0,
|
||||
"5,8": 5,
|
||||
"5,9": 0,
|
||||
"5,8": 0,
|
||||
"6,2": 0,
|
||||
"6,6": 0,
|
||||
"6,8": 0
|
||||
"6,3": 0,
|
||||
"6,4": 0,
|
||||
"6,6": 0
|
||||
},
|
||||
"SheetStyle": {
|
||||
"FontFamily": 0
|
||||
@@ -299,7 +265,7 @@
|
||||
},
|
||||
"Spans": [
|
||||
"1,1,6,1",
|
||||
"1,2,6,1"
|
||||
"1,4,6,1"
|
||||
],
|
||||
"PageInfo": {
|
||||
"$type": "Forguncy.Model.Pages.UserControlPage, ServerDesignerCommon",
|
||||
@@ -312,4 +278,4 @@
|
||||
"PaperSize": {},
|
||||
"Margin": {}
|
||||
}
|
||||
}//KjT4ADE1F8b/zkR+vJQY6/P1KnUEZRTaGebqqsDFQKU09JATyVBjyobv4uTfQqoaxwPYMzrKwpb+J2p5VtOac3LBKto5E5NHay7lHyJb3d2kyc+XJgPH9O4EjOcXEYUv3FoowZn9/5drEePsL++zKKnurJzso3sNmGsCSBMffgSRKuPw2N8+Kkw753+MkHnDWWZR6xcRNneqkSxgjVkJAM/5dfmvXuo1/JgIoPPziIfchDynm9z8ZHHQPJtpOZUqnnOP9uzkrlN326j/OHyGgHmy8x0h34f7WKe1LWhlBRLMsrqVg9P16cNK7xCrf0wa52lImm95A4/aw8pBNM0kifie8FusUQsGCwH5TOPs9aUMrID7AhwLB3YfuosTVJ9bZxEyVOAO+y3CG/AEiGtX2XOx/h19D/zt5xCc4xn5WqtZinoz+9lyQ4kM/EAIznK+ZwrdqQQjy/oM6mCADR2vZn+Roq8ncnyLrZnK5gllNyVtXXpk4pfqsPZmX3kzdiNfdZbx01U1pFLaNB6zGXGSKB5jkgIjZTf7gnGZyWjZf0cBcaAPrWOaeWX/2aNZL/v7OcHdKXCRpZ6W3LZSQx3CKHYScjTfr3Wwgfa610DJXfIhOddQCZugt5eVKVIqR203veLeAmahnRFx7Bp+3+EIgY98+QJPrGYQrCl8IQrhwGKTMqv0Q0R7vVr62NEvloK2L5wvTjHWi3UsrB48RJ/P/r7WVnpTmXnD8VQFrCn1uYDFeoEMV0DXClPjvASK3yGS5e6xmXoNWrLIaROr0NnrT1x/hRNurs9mtoe9Uaj1h0tuD0ZqWSkhDMeb1t+CLvXkJLL66OTjzx0DOcFSQB2S8VGkf0WJSvUYhbi2fLnQwOMTNM1EoxInkxVlHv3YgccGm8CQ+3ZC6MQOLf+XTh0l9Q==|920
|
||||
}//wVmvUeo7MWt1dNvC4VQEYqBq7p6hvR3T2e5voXDlV9ZgNpHnr9z0gBSZouUAHxF2JgY+hfsXUcS2a0tiDHss74bhbSrEV8Zbzzc8ueMC2p3Pb1sqM9cjpa/Y4/e1+2Hux4StvRvhdMLBAkKlfjLQNhpv9mOAABqT1/8InbDRen17E3QwmJpX+4C708NEgnudiMRakStQ1rOSMnBQqco8IIYjW640mvphX9+C6pv1z0Me7qRqnLv8SIRDGSqFDZrOpm24Up1Qwx2p0FNz+dVNWLM2KUPO5MwowKt/RDhMMqSLoApkZBGXBfqvVwQj2qc7o5zAbbb/yaaTL1cSfwZ4312/+gtU76Ouc3DUD+jJblaqUGVBfvvrtJ6ZZRnmcN1qSrerI5/xop2NyC3AjoVqYXd133F6p3LXPVuWDWd5mi3gBkGXcx8m+x0PYrFGu7nMgoVN7qL55P91mT79Ac2d5GJFQqRWVX95VGzm6mI86k7aRLS3N122i+DafgErVt6JKr7t9Z+VG1sPYibFaA9JeWNrxqZ0/JWAfqaH9obPhIyBRkG3tlIclGGrnnbwhA0AwJsrWmU8nh/siJkb/zoI+yKby/RE0GcWcl4ZTg9323Iv6P+mbV9pYqujQLnqrf1sVzIGoyrTHi8XUsGc7FfDfQVCZQ8ghIOamXvU8v6yJh/g1bT8/rBPN/new6QR4LLbB0Ofmrfe/aYUfPr+s3RBCHGoQYIEmxeWCy/ujBYD0JftJBPWFOHNJpE1ZArydTyQz+XzjX03IiCU0iRUb2BGLh9cMZdrN7Vizf2elbVfwna/GVmc3oH1LTfMQY2dbyTf4Oat01Ln6rIcftLGzren4NOSw3oAcpmsyoyrw40XT6LKUJgfFrYYvVh1UGvkaL7ETV6q0dPUqdh46iilQukOqQ==|920
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"PageType": 3,
|
||||
"ColumnCount": 10,
|
||||
"ColumnCount": 9,
|
||||
"RowCount": 7
|
||||
}
|
||||
Reference in New Issue
Block a user