20251009 排产计划
This commit is contained in:
@@ -0,0 +1,117 @@
|
||||
|
||||
ALTER PROCEDURE [dbo].[Sp_HJGL_ProductionPlanStatistics]
|
||||
@projectId nvarchar(50)=null
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON; -- 减少网络流量,提高性能
|
||||
|
||||
-- 使用CTE预先过滤和聚合数据
|
||||
WITH PipelineFiltered AS (
|
||||
SELECT UnitWorkId, FlowingSection, PipelineId
|
||||
FROM HJGL_Pipeline
|
||||
WHERE PipeArea='1'
|
||||
AND FlowingSection IS NOT NULL
|
||||
AND FlowingSection != ''
|
||||
AND (@projectId IS NULL OR UnitWorkId IN (
|
||||
SELECT UnitWorkId FROM WBS_UnitWork WHERE ProjectId = @projectId
|
||||
))
|
||||
),
|
||||
|
||||
-- 工厂预制总达因
|
||||
TotalDiaCTE AS (
|
||||
SELECT p.UnitWorkId, p.FlowingSection, SUM(wj.Size) as TotalDia
|
||||
FROM HJGL_WeldJoint wj
|
||||
INNER JOIN PipelineFiltered p ON p.PipelineId = wj.PipelineId
|
||||
WHERE wj.JointAttribute='预制口'
|
||||
GROUP BY p.UnitWorkId, p.FlowingSection
|
||||
),
|
||||
|
||||
-- 当日完成工作量
|
||||
CurrentDayCompletedCTE AS (
|
||||
SELECT p.UnitWorkId, p.FlowingSection, SUM(wj.Size) as CurrentDayCompletedDia
|
||||
FROM HJGL_WeldJoint wj
|
||||
INNER JOIN PipelineFiltered p ON p.PipelineId = wj.PipelineId
|
||||
INNER JOIN HJGL_WeldingDaily wd ON wd.WeldingDailyId = wj.WeldingDailyId
|
||||
WHERE wj.JointAttribute='预制口'
|
||||
AND wj.WeldingDailyId IS NOT NULL
|
||||
AND wd.WeldingDate >= CAST(GETDATE() AS DATE) -- 优化日期比较,使用日期范围
|
||||
AND wd.WeldingDate < DATEADD(DAY, 1, CAST(GETDATE() AS DATE))
|
||||
GROUP BY p.UnitWorkId, p.FlowingSection
|
||||
),
|
||||
|
||||
-- 累计已完成量
|
||||
TotalCompletedCTE AS (
|
||||
SELECT p.UnitWorkId, p.FlowingSection, SUM(wj.Size) as totalCompletedDia
|
||||
FROM HJGL_WeldJoint wj
|
||||
INNER JOIN PipelineFiltered p ON p.PipelineId = wj.PipelineId
|
||||
WHERE wj.JointAttribute='预制口'
|
||||
AND wj.WeldingDailyId IS NOT NULL
|
||||
GROUP BY p.UnitWorkId, p.FlowingSection
|
||||
),
|
||||
|
||||
-- 当前焊工数量
|
||||
WelderCountCTE AS (
|
||||
SELECT p.UnitWorkId, p.FlowingSection,
|
||||
COUNT(DISTINCT pp.PersonId) as WelderCount -- 使用DISTINCT避免重复计数
|
||||
FROM Person_Persons pp
|
||||
INNER JOIN HJGL_WeldJoint wj ON wj.BackingWelderId = pp.PersonId
|
||||
INNER JOIN PipelineFiltered p ON p.PipelineId = wj.PipelineId
|
||||
WHERE wj.JointAttribute='预制口'
|
||||
AND wj.WeldingDailyId IS NOT NULL
|
||||
GROUP BY p.UnitWorkId, p.FlowingSection
|
||||
),
|
||||
|
||||
-- 预警焊工数量
|
||||
WarningWelderCountCTE AS (
|
||||
SELECT p.UnitWorkId, p.FlowingSection,
|
||||
COUNT(DISTINCT pp.PersonId) as WarningWelderCount
|
||||
FROM Person_Persons pp
|
||||
INNER JOIN HJGL_WeldJoint wj ON wj.BackingWelderId = pp.PersonId
|
||||
INNER JOIN PipelineFiltered p ON p.PipelineId = wj.PipelineId
|
||||
INNER JOIN Welder_WelderQualify wq ON wq.WelderId = pp.PersonId
|
||||
WHERE wj.JointAttribute='预制口'
|
||||
AND wj.WeldingDailyId IS NOT NULL
|
||||
AND wq.LimitDate < GETDATE() -- 焊工资格过期预警
|
||||
GROUP BY p.UnitWorkId, p.FlowingSection
|
||||
)
|
||||
|
||||
SELECT DISTINCT
|
||||
unitWork.UnitWorkId,
|
||||
unitWork.UnitWorkCode,
|
||||
unitWork.UnitWorkName,
|
||||
unitWork.ProjectId,
|
||||
pipeline.FlowingSection,
|
||||
isnull(total.TotalDia,0) as TotalDia,--工厂预制总达因
|
||||
p.PlanStartDate,--计划开始日期
|
||||
p.PlanEndDate,--计划完成日期
|
||||
p.Days as TotalDays,--总天数
|
||||
(case when p.PlanEndDate>= getdate() then (p.Days-(DATEDIFF(day,p.PlanStartDate,GETDATE()))-1) else '' end) as RemainingDays,--剩余天数
|
||||
(case when p.Days>0 then cast(isnull(total.TotalDia,0)/p.Days as decimal(18,2)) else 0 end) as AvgDayCompleteDia, --平均每日应完成工作量
|
||||
ISNULL(currentDay.CurrentDayCompletedDia,0) as CurrentDayCompletedDia, --当日完成工作量
|
||||
cast(case when (case when p.PlanEndDate>= getdate() then (p.Days-(DATEDIFF(day,p.PlanStartDate,GETDATE()))-1) else 0 end)>0 then
|
||||
(isnull(total.TotalDia,0)-isnull(totalCompleted.totalCompletedDia,0))/ (case when p.PlanEndDate>= getdate() then (p.Days-(DATEDIFF(day,p.PlanStartDate,GETDATE()))-1) else 0 end) else 0 end as decimal(18,2)) as NextDayComplete, --次日应完成量
|
||||
isnull(totalCompleted.totalCompletedDia,0) as totalCompletedDia, --累计已完成量
|
||||
cast(cast((case when isnull(total.TotalDia,0)>0 then
|
||||
(isnull(totalCompleted.totalCompletedDia,0) / isnull(total.TotalDia,0)*100) else 0 end) as decimal(18,2)) as varchar(10))+'%' as CompletedRate, --已完成百分比
|
||||
welder.WelderCount, --当前焊工数量
|
||||
warningWelder.WarningWelderCount --预警焊工数量
|
||||
FROM WBS_UnitWork AS unitWork
|
||||
INNER JOIN PipelineFiltered pipeline ON pipeline.UnitWorkId = unitWork.UnitWorkId -- 使用INNER JOIN,因为pipeline数据必须存在
|
||||
LEFT JOIN HJGL_ProductionSchedulingPlan p ON p.PipelineId = unitWork.UnitWorkId AND p.FlowNum = pipeline.FlowingSection
|
||||
--工厂预制总达因
|
||||
LEFT JOIN TotalDiaCTE total ON total.UnitWorkId = unitWork.UnitWorkId AND total.FlowingSection = pipeline.FlowingSection
|
||||
--当日完成工作量
|
||||
LEFT JOIN CurrentDayCompletedCTE currentDay ON currentDay.UnitWorkId = unitWork.UnitWorkId AND currentDay.FlowingSection = pipeline.FlowingSection
|
||||
--累计已完成量
|
||||
LEFT JOIN TotalCompletedCTE totalCompleted ON totalCompleted.UnitWorkId = unitWork.UnitWorkId AND totalCompleted.FlowingSection = pipeline.FlowingSection
|
||||
--当前焊工数量
|
||||
LEFT JOIN WelderCountCTE welder ON welder.UnitWorkId = unitWork.UnitWorkId AND welder.FlowingSection = pipeline.FlowingSection
|
||||
--预警焊工数量
|
||||
LEFT JOIN WarningWelderCountCTE warningWelder ON warningWelder.UnitWorkId = unitWork.UnitWorkId AND warningWelder.FlowingSection = pipeline.FlowingSection
|
||||
WHERE (@projectId IS NULL OR unitWork.ProjectId = @projectId)
|
||||
AND pipeline.FlowingSection IS NOT NULL;
|
||||
|
||||
END
|
||||
GO
|
||||
|
||||
|
||||
@@ -29,6 +29,11 @@ namespace BLL
|
||||
return Funs.DB.HJGL_ProductionSchedulingPlan.FirstOrDefault(e => e.ProjectId == loginProjectId && e.FlowNum == flowingSection && e.PipelineId == unitWorkId && e.Material == material && e.Caliber == caliber);
|
||||
}
|
||||
|
||||
public static List<Model.HJGL_ProductionSchedulingPlan> GetProductionSchedulingPlanByMaterialLists(string loginProjectId, string flowingSection, string unitWorkId, string material)
|
||||
{
|
||||
return (from x in Funs.DB.HJGL_ProductionSchedulingPlan where x.ProjectId == loginProjectId && x.FlowNum == flowingSection && x.PipelineId == unitWorkId && x.Material == material select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加排产计划
|
||||
/// </summary>
|
||||
|
||||
@@ -44,14 +44,14 @@
|
||||
Layout="VBox" ShowHeader="false" BodyPadding="5px" IconFont="PlusCircle" Title="排产计划"
|
||||
TitleToolTip="排产计划" AutoScroll="true">
|
||||
<Items>
|
||||
<f:Panel ID="panelCenterTop" runat="server" ShowBorder="true" RegionPosition="Center" Title="生产看板" AutoScroll="true" Layout="VBox">
|
||||
<f:Panel ID="panelCenterTop" runat="server" ShowBorder="true" RegionPosition="Center" Title="生产看板" AutoScroll="true" Layout="VBox" EnableCollapse="true">
|
||||
<Items>
|
||||
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="生产看板" ForceFit="false"
|
||||
EnableCollapse="false" runat="server" BoxFlex="1" DataKeyNames="UnitWorkId,FlowingSection" AllowCellEditing="true"
|
||||
EnableColumnLines="true" ClicksToEdit="1" DataIDField=""
|
||||
AllowSorting="true" SortField="UnitWorkCode,FlowingSection" SortDirection="ASC"
|
||||
AllowSorting="true" SortField="UnitWorkName,FlowingSection" SortDirection="ASC"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="15"
|
||||
EnableTextSelection="True" Height="300px">
|
||||
EnableTextSelection="True" Height="300px" OnRowDataBound="Grid2_RowDataBound">
|
||||
<Columns>
|
||||
<f:RowNumberField EnablePagingNumber="true" HeaderText="序号"
|
||||
Width="60px" HeaderTextAlign="Center" TextAlign="Center" />
|
||||
@@ -91,9 +91,9 @@
|
||||
DataField="CurrentDayCompletedDia" SortField="CurrentDayCompletedDia" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
Width="140px">
|
||||
</f:RenderField>
|
||||
<f:RenderField HeaderText="次日应完成量" ColumnID="NextDayComplete"
|
||||
<f:RenderField HeaderText="次日应完成量(平均)" ColumnID="NextDayComplete"
|
||||
DataField="NextDayComplete" SortField="NextDayComplete" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
Width="120px">
|
||||
Width="150px">
|
||||
</f:RenderField>
|
||||
<f:RenderField HeaderText="累计已完成量" ColumnID="totalCompletedDia"
|
||||
DataField="totalCompletedDia" SortField="totalCompletedDia" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
@@ -132,11 +132,11 @@
|
||||
</Items>
|
||||
<Items>
|
||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="True" Title="排产计划" ForceFit="false"
|
||||
EnableCollapse="false" runat="server" BoxFlex="1" DataKeyNames="ProductionSchedulingPlanId" AllowCellEditing="true"
|
||||
EnableCollapse="true" runat="server" BoxFlex="1" DataKeyNames="ProductionSchedulingPlanId" AllowCellEditing="true"
|
||||
EnableColumnLines="true" ClicksToEdit="1" DataIDField="ProductionSchedulingPlanId"
|
||||
AllowSorting="true" SortField="FlowNum,Material,Caliber" SortDirection="ASC" OnSort="Grid1_Sort"
|
||||
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
|
||||
EnableTextSelection="True" OnRowDataBound="Grid1_RowDataBound">
|
||||
EnableTextSelection="True" OnRowDataBound="Grid1_RowDataBound" >
|
||||
<Toolbars>
|
||||
<f:Toolbar ID="Toolbar3" Position="Top" runat="server" ToolbarAlign="Left">
|
||||
<Items>
|
||||
@@ -210,9 +210,6 @@
|
||||
<f:RenderField HeaderText="平均每日应完成工作量" ColumnID="AvgDailyWorkload"
|
||||
DataField="AvgDailyWorkload" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
Width="140px">
|
||||
<Editor>
|
||||
<f:NumberBox ID="txtAvgDailyWorkload" runat="server" NoNegative="true"></f:NumberBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField HeaderText="当日已完成量" ColumnID="OnDayCompleteDyne"
|
||||
DataField="OnDayCompleteDyne" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
@@ -221,9 +218,6 @@
|
||||
<f:RenderField HeaderText="次日应完成量" ColumnID="NextDayCompleteDyne"
|
||||
DataField="NextDayCompleteDyne" FieldType="Float" HeaderTextAlign="Center" TextAlign="Left"
|
||||
Width="120px">
|
||||
<Editor>
|
||||
<f:NumberBox ID="NumberBox2" runat="server" NoNegative="true"></f:NumberBox>
|
||||
</Editor>
|
||||
</f:RenderField>
|
||||
<f:RenderField HeaderText="累计已完成量" ColumnID="CompletedCount"
|
||||
DataField="CompletedCount" FieldType="String" HeaderTextAlign="Center" TextAlign="Left"
|
||||
@@ -283,17 +277,22 @@
|
||||
}
|
||||
|
||||
function onGridDataLoad(event) {
|
||||
this.mergeColumns(['FlowNum', 'Material', 'TotalDyne', 'TotalPriority', 'PriorityTotalDyne', 'TotalCompletedRate']);
|
||||
this.mergeColumns(['FlowNum', 'Material', 'TotalDyne', 'TotalPriority'], {
|
||||
depends: true
|
||||
});
|
||||
this.mergeColumns(['FlowNum', 'PriorityTotalDyne', 'TotalCompletedRate'], {
|
||||
depends: true
|
||||
});
|
||||
}
|
||||
|
||||
//自动计算天数、平均每天工作量
|
||||
function onGridAfterEdit(event, value, params) {
|
||||
var me = this, columnId = params.columnId, rowId = params.rowId;
|
||||
if (columnId === 'PlanStartDate' || columnId === 'PlanEndDate' || columnId == 'TotalDyne' || columnId == 'OnDayCompleteDyne') {
|
||||
if (columnId === 'PlanStartDate' || columnId === 'PlanEndDate' || columnId == 'Dain' || columnId == 'OnDayCompleteDyne') {
|
||||
const startDate = Date.parse(me.getCellValue(rowId, 'PlanStartDate'));//计划开始时间
|
||||
const endDate = Date.parse(me.getCellValue(rowId, 'PlanEndDate'));//计划结束时间
|
||||
var totalDia = me.getCellValue(rowId, 'TotalDyne');//总达因
|
||||
var dain = me.getCellValue(rowId, 'Dain');//达因数
|
||||
var onDayCompleteDyne = me.getCellValue(rowId, 'OnDayCompleteDyne');//当日已完成量
|
||||
var completedCount = me.getCellValue(rowId, 'CompletedCount');//累计已完成量
|
||||
|
||||
if (startDate > endDate) {
|
||||
alert("计划开始时间不能大于计划结束时间");
|
||||
@@ -303,17 +302,24 @@
|
||||
const timeDifference = endDate - startDate;
|
||||
// 将时间差转换为天数
|
||||
const daysDifference = timeDifference / (1000 * 60 * 60 * 24);
|
||||
//平均每天工作量=总达因/天数
|
||||
const avgDailyWorkload = totalDia / (daysDifference + 1);
|
||||
//次日应完成量=平均每天完成量-已完成量+平均每天完成量
|
||||
if (onDayCompleteDyne != "") {
|
||||
var nextDayCompleteDyne = avgDailyWorkload - onDayCompleteDyne + avgDailyWorkload;
|
||||
//平均每日应完成量=达因数/天数
|
||||
const avgDailyWorkload = dain / (daysDifference + 1);
|
||||
|
||||
|
||||
const currentTime = Math.abs(endDate - Date.now());//获取剩余天数(毫秒)
|
||||
const daysTime = Math.ceil(currentTime / (1000 * 60 * 60 * 24));//将时间差转换为天数
|
||||
if (daysTime > 0) {
|
||||
//次日应完成量=剩余工程量(达因数-累计已完成量)/剩余天数(结束时间-当前时间)
|
||||
var nextDayCompleteDyne = (dain - completedCount) / daysTime;
|
||||
}
|
||||
|
||||
me.updateCellValue(rowId, 'Days', daysDifference + 1);//天数
|
||||
me.updateCellValue(rowId, 'AvgDailyWorkload', avgDailyWorkload.toFixed(2));//平均每天工作量
|
||||
me.updateCellValue(rowId, 'NextDayCompleteDyne', nextDayCompleteDyne.toFixed(2));//次日应完成量
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
|
||||
@@ -4,6 +4,7 @@ using MiniExcelLibs;
|
||||
using Model;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NPOI.SS.Formula.Functions;
|
||||
using Org.BouncyCastle.Bcpg.OpenPgp;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
@@ -483,8 +484,8 @@ namespace FineUIPro.Web.HJGL.PreDesign
|
||||
p.AvgDailyWorkload,
|
||||
w.ProjectType,
|
||||
p.CompletedCount,
|
||||
p.CompletedRate,
|
||||
p.TotalCompletedRate,
|
||||
(cast(p.CompletedRate as nvarchar(10))+'%') as CompletedRate,
|
||||
(cast(p.TotalCompletedRate as nvarchar(10))+'%') as TotalCompletedRate,
|
||||
p.OnDayCompleteDyne,
|
||||
p.NextDayCompleteDyne
|
||||
FROM HJGL_ProductionSchedulingPlan p
|
||||
@@ -597,6 +598,7 @@ namespace FineUIPro.Web.HJGL.PreDesign
|
||||
{
|
||||
if (this.Grid1.Rows.Count > 0)
|
||||
{
|
||||
string totalPriority = string.Empty;
|
||||
foreach (JObject mergedRow in Grid1.GetMergedData())
|
||||
{
|
||||
JObject values = mergedRow.Value<JObject>("values");
|
||||
@@ -605,18 +607,34 @@ namespace FineUIPro.Web.HJGL.PreDesign
|
||||
var newPlan = BLL.ProductionSchedulingPlanService.GetProductionSchedulingPlanById(rowId);
|
||||
if (newPlan != null)
|
||||
{
|
||||
newPlan.TotalPriority = values.Value<string>("TotalPriority");
|
||||
newPlan.PriorityTotalDyne = Funs.GetNewDecimal(values.Value<string>("PriorityTotalDyne"));
|
||||
if (!string.IsNullOrEmpty(values.Value<string>("TotalPriority")))
|
||||
{
|
||||
newPlan.TotalPriority = values.Value<string>("TotalPriority");
|
||||
}
|
||||
else
|
||||
{
|
||||
newPlan.TotalPriority = totalPriority;
|
||||
totalPriority = string.Empty;
|
||||
}
|
||||
newPlan.PlanStartDate = Funs.GetNewDateTime(values.Value<string>("PlanStartDate"));
|
||||
newPlan.PlanEndDate = Funs.GetNewDateTime(values.Value<string>("PlanEndDate"));
|
||||
newPlan.Days = Funs.GetNewInt(values.Value<string>("Days"));
|
||||
newPlan.AvgDailyWorkload = Funs.GetNewDecimal(values.Value<string>("AvgDailyWorkload"));
|
||||
newPlan.OnDayCompleteDyne = Funs.GetNewDecimal(values.Value<string>("OnDayCompleteDyne"));
|
||||
newPlan.NextDayCompleteDyne = Funs.GetNewDecimal(values.Value<string>("NextDayCompleteDyne"));
|
||||
newPlan.CompletedCount = Funs.GetNewInt(values.Value<string>("CompletedCount"));
|
||||
newPlan.CompletedRate = Funs.GetNewDecimal(values.Value<string>("CompletedRate"));
|
||||
newPlan.TotalCompletedRate = Funs.GetNewDecimal(values.Value<string>("TotalCompletedRate"));
|
||||
BLL.ProductionSchedulingPlanService.UpdateProductionSchedulingPlan(newPlan);
|
||||
|
||||
//更新合并单元格的总达因(按材质)优先级
|
||||
if (!string.IsNullOrEmpty(newPlan.TotalPriority))
|
||||
{
|
||||
var pLists = BLL.ProductionSchedulingPlanService.GetProductionSchedulingPlanByMaterialLists(this.CurrUser.LoginProjectId, newPlan.FlowNum, newPlan.PipelineId, newPlan.Material);
|
||||
foreach (var item in pLists)
|
||||
{
|
||||
if (string.IsNullOrEmpty(item.TotalPriority))
|
||||
{
|
||||
totalPriority = newPlan.TotalPriority;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
ShowNotify("保存成功!", MessageBoxIcon.Success);
|
||||
@@ -945,6 +963,31 @@ namespace FineUIPro.Web.HJGL.PreDesign
|
||||
Grid2.DataSource = table;
|
||||
Grid2.DataBind();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 当次日应完成量高于平均每日应完成工作量发出预警(标红)
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void Grid2_RowDataBound(object sender, GridRowEventArgs e)
|
||||
{
|
||||
DataRowView row = e.DataItem as DataRowView;
|
||||
double avgDailyWorkload = 0;
|
||||
double nextDayCompleteDyne = 0;
|
||||
if (row["AvgDayCompleteDia"] != null && !string.IsNullOrEmpty(row["AvgDayCompleteDia"].ToString()))
|
||||
{
|
||||
avgDailyWorkload = Convert.ToDouble(row["AvgDayCompleteDia"]);//平均每日应完成工作量
|
||||
}
|
||||
if (row["NextDayComplete"] != null && !string.IsNullOrEmpty(row["NextDayComplete"].ToString()))
|
||||
{
|
||||
nextDayCompleteDyne = Convert.ToDouble(row["NextDayComplete"]);//次日应完成量
|
||||
}
|
||||
if (avgDailyWorkload < nextDayCompleteDyne)
|
||||
{
|
||||
e.RowCssClass = "color1";
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
+33
-49
@@ -7,11 +7,13 @@
|
||||
// </自动生成>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
|
||||
|
||||
public partial class ProductionSchedulingPlan {
|
||||
|
||||
namespace FineUIPro.Web.HJGL.PreDesign
|
||||
{
|
||||
|
||||
|
||||
public partial class ProductionSchedulingPlan
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// form1 控件。
|
||||
/// </summary>
|
||||
@@ -20,7 +22,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// PageManager1 控件。
|
||||
/// </summary>
|
||||
@@ -29,7 +31,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.PageManager PageManager1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Panel1 控件。
|
||||
/// </summary>
|
||||
@@ -38,7 +40,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel Panel1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// panelLeftRegion 控件。
|
||||
/// </summary>
|
||||
@@ -47,7 +49,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel panelLeftRegion;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtSize 控件。
|
||||
/// </summary>
|
||||
@@ -56,7 +58,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox txtSize;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnStatics 控件。
|
||||
/// </summary>
|
||||
@@ -65,7 +67,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnStatics;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// hdUnitWorkId 控件。
|
||||
/// </summary>
|
||||
@@ -74,7 +76,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.HiddenField hdUnitWorkId;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// tvControlItem 控件。
|
||||
/// </summary>
|
||||
@@ -83,7 +85,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Tree tvControlItem;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// panelCenterRegion 控件。
|
||||
/// </summary>
|
||||
@@ -92,7 +94,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel panelCenterRegion;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// panelCenterTop 控件。
|
||||
/// </summary>
|
||||
@@ -101,7 +103,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Panel panelCenterTop;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Grid2 控件。
|
||||
/// </summary>
|
||||
@@ -110,7 +112,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid2;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator2 控件。
|
||||
/// </summary>
|
||||
@@ -119,7 +121,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator2;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText2 控件。
|
||||
/// </summary>
|
||||
@@ -128,7 +130,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText2;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize2 控件。
|
||||
/// </summary>
|
||||
@@ -137,7 +139,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize2;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Grid1 控件。
|
||||
/// </summary>
|
||||
@@ -146,7 +148,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Grid Grid1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Toolbar3 控件。
|
||||
/// </summary>
|
||||
@@ -155,7 +157,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Toolbar Toolbar3;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarFill1 控件。
|
||||
/// </summary>
|
||||
@@ -164,7 +166,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarFill ToolbarFill1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnSave 控件。
|
||||
/// </summary>
|
||||
@@ -173,7 +175,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnSave;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnOut 控件。
|
||||
/// </summary>
|
||||
@@ -182,7 +184,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Button btnOut;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtTotalPriority 控件。
|
||||
/// </summary>
|
||||
@@ -191,7 +193,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.TextBox txtTotalPriority;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtPlanStartDate 控件。
|
||||
/// </summary>
|
||||
@@ -200,7 +202,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtPlanStartDate;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// txtPlanEndDate 控件。
|
||||
/// </summary>
|
||||
@@ -209,25 +211,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DatePicker txtPlanEndDate;
|
||||
|
||||
/// <summary>
|
||||
/// txtAvgDailyWorkload 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox txtAvgDailyWorkload;
|
||||
|
||||
/// <summary>
|
||||
/// NumberBox2 控件。
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// 自动生成的字段。
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.NumberBox NumberBox2;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarSeparator1 控件。
|
||||
/// </summary>
|
||||
@@ -236,7 +220,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ToolbarText1 控件。
|
||||
/// </summary>
|
||||
@@ -245,7 +229,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.ToolbarText ToolbarText1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ddlPageSize 控件。
|
||||
/// </summary>
|
||||
@@ -254,7 +238,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.DropDownList ddlPageSize;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Menu1 控件。
|
||||
/// </summary>
|
||||
@@ -263,7 +247,7 @@ namespace FineUIPro.Web.HJGL.PreDesign {
|
||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||
/// </remarks>
|
||||
protected global::FineUIPro.Menu Menu1;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// btnMenuDelete 控件。
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user