提交代码

This commit is contained in:
高飞 2024-05-10 15:46:52 +08:00
parent 1c23ce814d
commit 563d401af6
30 changed files with 2014 additions and 98 deletions

View File

@ -0,0 +1,2 @@
alter table [dbo].[JDGL_MonthPlan] add SortIndex int null
GO

View File

@ -3148,6 +3148,10 @@ namespace BLL
/// </summary>
public const string QuantityCompletionTemplateUrl = "File\\Excel\\DataIn\\项目进度完成情况导入模板.xls";
/// <summary>
/// 月度计划情况导入模版文件原始的虚拟路径
/// </summary>
public const string MonthPlanTemplateUrl = "File\\Excel\\DataIn\\月度计划情况导入模板.xls";
/// <summary>
/// 仪表索引
/// </summary>
public const string InstrumentUrl = "File\\Excel\\TestRun\\仪表索引模板.xlsx";

View File

@ -22,6 +22,16 @@ namespace BLL
return Funs.DB.JDGL_MonthPlan.FirstOrDefault(e => e.MonthPlanId == MonthPlanId);
}
/// <summary>
/// 根据主键获取月度计划情况
/// </summary>
/// <param name="MonthPlanId"></param>
/// <returns></returns>
public static List<Model.JDGL_MonthPlan> GetMonthPlansByMonths(string projectId, DateTime months)
{
return (from x in Funs.DB.JDGL_MonthPlan where x.ProjectId == projectId && x.Months == months select x).ToList();
}
/// <summary>
/// 添加月度计划情况
/// </summary>
@ -42,6 +52,7 @@ namespace BLL
Remark = MonthPlan.Remark,
CompileMan = MonthPlan.CompileMan,
CompileDate = MonthPlan.CompileDate,
SortIndex = MonthPlan.SortIndex,
};
db.JDGL_MonthPlan.InsertOnSubmit(newMonthPlan);
db.SubmitChanges();
@ -65,7 +76,8 @@ namespace BLL
newMonthPlan.Remark = MonthPlan.Remark;
newMonthPlan.CompileMan = MonthPlan.CompileMan;
newMonthPlan.CompileDate = MonthPlan.CompileDate;
newMonthPlan.SortIndex = MonthPlan.SortIndex;
db.SubmitChanges();
}
}
@ -84,5 +96,20 @@ namespace BLL
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除月度计划情况
/// </summary>
/// <param name="MonthPlanId"></param>
public static void DeleteAllMonthPlan(string projectId, DateTime months)
{
Model.SGGLDB db = Funs.DB;
var q = from x in db.JDGL_MonthPlan where x.ProjectId == projectId && x.Months == months select x;
if (q != null)
{
db.JDGL_MonthPlan.DeleteAllOnSubmit(q);
db.SubmitChanges();
}
}
}
}

View File

@ -169,6 +169,32 @@
}
}
}
/// <summary>
/// 项目类型单位表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitUnitDropDownList2(FineUIPro.DropDownList dropName, string projectId, string unitType, bool isShowPlease)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var pUnit = (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId && x.UnitType == unitType
orderby y.UnitCode
select y).ToList();
dropName.DataValueField = "UnitName";
dropName.DataTextField = "UnitName";
dropName.DataSource = pUnit;
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
}
#endregion
/// <summary>

View File

@ -1379,6 +1379,9 @@
<Content Include="JDGL\Check\MeterCompletionEdit.aspx" />
<Content Include="JDGL\Check\MeterCompletionIn.aspx" />
<Content Include="JDGL\Check\MonthPlan.aspx" />
<Content Include="JDGL\Check\MonthPlanEdit.aspx" />
<Content Include="JDGL\Check\MonthPlanIn.aspx" />
<Content Include="JDGL\Check\MonthPlanStatisc.aspx" />
<Content Include="JDGL\Check\PipelineCompletion.aspx" />
<Content Include="JDGL\Check\PipelineCompletionEdit.aspx" />
<Content Include="JDGL\Check\PipelineCompletionIn.aspx" />
@ -13751,6 +13754,27 @@
<Compile Include="JDGL\Check\MonthPlan.aspx.designer.cs">
<DependentUpon>MonthPlan.aspx</DependentUpon>
</Compile>
<Compile Include="JDGL\Check\MonthPlanEdit.aspx.cs">
<DependentUpon>MonthPlanEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="JDGL\Check\MonthPlanEdit.aspx.designer.cs">
<DependentUpon>MonthPlanEdit.aspx</DependentUpon>
</Compile>
<Compile Include="JDGL\Check\MonthPlanIn.aspx.cs">
<DependentUpon>MonthPlanIn.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="JDGL\Check\MonthPlanIn.aspx.designer.cs">
<DependentUpon>MonthPlanIn.aspx</DependentUpon>
</Compile>
<Compile Include="JDGL\Check\MonthPlanStatisc.aspx.cs">
<DependentUpon>MonthPlanStatisc.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="JDGL\Check\MonthPlanStatisc.aspx.designer.cs">
<DependentUpon>MonthPlanStatisc.aspx</DependentUpon>
</Compile>
<Compile Include="JDGL\Check\PipelineCompletion.aspx.cs">
<DependentUpon>PipelineCompletion.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress>false</Use64BitIISExpress>
<IISExpressSSLPort />

View File

@ -16,7 +16,7 @@
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="月度计划情况" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="MonthPlanId" AllowCellEditing="true" ForceFit="true"
ClicksToEdit="1" DataIDField="MonthPlanId" AllowSorting="true" SortField="SortIndex,Name"
ClicksToEdit="1" DataIDField="MonthPlanId" AllowSorting="true" SortField="SortIndex"
SortDirection="ASC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="1000"
AllowFilters="true" EnableTextSelection="True">
@ -30,6 +30,8 @@
OnClick="btnSave_Click">
</f:Button>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="BtnAnalyse" ToolTip="统计" Icon="ChartPie" runat="server" OnClick="BtnAnalyse_Click">
</f:Button>
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="false" runat="server"
Hidden="true">
</f:Button>
@ -53,7 +55,7 @@
SortField="UnitName" FieldType="String" HeaderText="责任单位" TextAlign="center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="NodeContent" DataField="NodeContent"
<f:RenderField Width="250px" ColumnID="NodeContent" DataField="NodeContent"
SortField="NodeContent" FieldType="String" HeaderText="节点内容" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
@ -78,7 +80,7 @@
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="入" Hidden="true" EnableIFrame="true" EnableMaximize="true"
<f:Window ID="Window1" Title="入" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="false"
CloseAction="HidePostBack" Width="1200px" Height="700px">
</f:Window>

View File

@ -19,7 +19,7 @@ namespace FineUIPro.Web.JDGL.Check
{
GetButtonPower();
btnNew.OnClientClick = Window1.GetShowReference("MonthPlanEdit.aspx") + "return false;";
this.txtMonths.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtMonths.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
BindGrid();
}
}
@ -51,6 +51,7 @@ namespace FineUIPro.Web.JDGL.Check
protected void btnModify_Click(object sender, EventArgs e)
{
Window1.Title = "录入";
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthPlanEdit.aspx?Months={0}", this.txtMonths.Text, "编辑 - ")));
}
@ -59,34 +60,9 @@ namespace FineUIPro.Web.JDGL.Check
/// </summary>
private void BindGrid()
{
string strSql = @"select qc.MonthPlanId,(select PlanNum from JDGL_MonthPlan where QuantityListId=ql.QuantityListId and Months=@month) as PlanNum,
(select RealNum from JDGL_MonthPlan where QuantityListId=ql.QuantityListId and Months=@month) as RealNum,
(select NextNum from JDGL_MonthPlan where QuantityListId=ql.QuantityListId and Months=@month) as NextNum,ql.DesignNum,ql.Name,ql.Unit,ql.SortIndex,
CONVERT(FLOAT, (select sum(ISNULL(PlanNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalPlanNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalRealNum,
CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(qc.PlanNum, 0) WHEN 0 THEN 0
ELSE 100 * ISNULL(qc.RealNum, 0) / (1.0 * qc.PlanNum) END AS DECIMAL(9, 2))))) + '%'
AS Rate,
CONVERT(NVARCHAR(10), ((CAST(CASE(select sum(ISNULL(PlanNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) WHEN 0 THEN 0
ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) / (1.0 * (select sum(ISNULL(PlanNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) END AS DECIMAL(9, 2)))))+'%'
AS TotalRate,
CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(ql.DesignNum, 0) WHEN 0 THEN 0
ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) / (1.0 * ql.DesignNum) END AS DECIMAL(9, 2)))))+'%'
AS SumRate,
CONVERT(FLOAT, (select sum(ISNULL(PlanNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalPlanNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_MonthPlan where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalRealNum
from[dbo].JDGL_QuantityList ql
left join dbo.[JDGL_MonthPlan] qc on ql.QuantityListId=qc.QuantityListId
where qc.MonthPlanId=(select top 1 MonthPlanId from[JDGL_MonthPlan] q where q.QuantityListId=qc.QuantityListId and q.Months<=@month order by q.Months desc) and qc.ProjectId=@ProjectId order by ql.SortIndex, ql.Name";
//string strSql = @"select *
// from dbo.View_JDGL_MonthPlan qc
// where qc.ProjectId=@ProjectId order by qc.SortIndex, qc.Name";
string strSql = @"select mp.*,u.UnitName,us.UserName as DutyPersonName from [dbo].[JDGL_MonthPlan] mp
left join Base_Unit u on u.UnitId=mp.UnitId
left join Sys_User us on us.UserId=mp.DutyPerson where mp.ProjectId=@ProjectId and mp.Months=@month order by mp.SortIndex";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@month", string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(this.txtMonths.Text.Trim() + "-01"))));
@ -167,6 +143,7 @@ where qc.MonthPlanId=(select top 1 MonthPlanId from[JDGL_MonthPlan] q where q.Qu
/// <param name="e"></param>
protected void btnImport_Click(object sender, EventArgs e)
{
Window1.Title = "导入";
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthPlanIn.aspx?ProjectId={0}", this.CurrUser.LoginProjectId, "导入 - ")));
}
@ -180,5 +157,18 @@ where qc.MonthPlanId=(select top 1 MonthPlanId from[JDGL_MonthPlan] q where q.Qu
BindGrid();
}
#endregion
#region
/// <summary>
/// 统计分析
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BtnAnalyse_Click(object sender, EventArgs e)
{
Window1.Title = "统计";
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthPlanStatisc.aspx", "统计 - ")));
}
#endregion
}
}

View File

@ -75,6 +75,15 @@ namespace FineUIPro.Web.JDGL.Check {
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// BtnAnalyse 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button BtnAnalyse;
/// <summary>
/// btnNew 控件。
/// </summary>

View File

@ -0,0 +1,104 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MonthPlanEdit.aspx.cs" Inherits="FineUIPro.Web.JDGL.Check.MonthPlanEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" />
<f:Panel ID="Panel17" IsFluid="true" Title="月度计划情况" runat="server" EnableCollapse="false"
ShowHeader="true">
<Toolbars>
<f:Toolbar ID="Toolbar5" Position="top" ToolbarAlign="Right" runat="server" CssClass="Toolbar2">
<Items>
<f:DatePicker ID="txtMonth" runat="server" ShowRedStar="true" Required="true" Label="月份" LabelAlign="Right" LabelWidth="80px"
EnableEdit="true" DateFormatString="yyyy-MM" AutoPostBack="true" DisplayType="Month" OnTextChanged="txtMonths_TextChanged">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Form ID="Form15" runat="server" ShowBorder="true" BodyPadding="5px" ShowHeader="false" Title="月度计划情况">
<Rows>
<f:FormRow>
<Items>
<f:Grid ID="Grid1" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false" OnRowCommand="Grid1_RowCommand"
DataKeyNames="MonthPlanId" DataIDField="MonthPlanId" EnableColumnLines="true" ForceFit="true" AllowCellEditing="true" ClicksToEdit="1">
<Toolbars>
<f:Toolbar ID="Toolbar3" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
<f:Button ID="btnNew" ToolTip="新增" Text="" Icon="Add" EnablePostBack="true"
runat="server" OnClick="btnNew_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="UnitId" DataField="UnitId"
FieldType="String" HeaderText="责任单位" TextAlign="Center"
HeaderTextAlign="Center">
<Editor>
<f:DropDownList runat="server" ID="drpUnitId" EnableEdit="true"></f:DropDownList>
</Editor>
</f:RenderField>
<f:RenderField Width="250px" ColumnID="NodeContent" DataField="NodeContent"
FieldType="String" HeaderText="节点内容" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="txtNodeContent" runat="server" Text='<%# Bind("NodeContent") %>'>
</f:TextBox>
</Editor>
</f:RenderField>
<f:RenderField Width="95px" ColumnID="PlanDate" DataField="PlanDate" Renderer="Date" RendererArgument="yyyy-MM-dd"
FieldType="Date" HeaderText="计划完成时间" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtPlanDate" runat="server" ShowRedStar="true" Required="true"
EnableEdit="true" DateFormatString="yyyy-MM-dd"></f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="DutyPerson" DataField="DutyPerson"
FieldType="String" HeaderText="五环责任人" TextAlign="Center"
HeaderTextAlign="Center">
<Editor>
<f:DropDownList runat="server" ID="drpDutyPerson" EnableEdit="true"></f:DropDownList>
</Editor>
</f:RenderField>
<f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" Renderer="Date" RendererArgument="yyyy-MM-dd"
FieldType="Date" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:DatePicker ID="txtRealDate" runat="server" ShowRedStar="true" Required="true"
EnableEdit="true" DateFormatString="yyyy-MM-dd"></f:DatePicker>
</Editor>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Remark" DataField="Remark"
FieldType="String" HeaderText="备注" TextAlign="Center" HeaderTextAlign="Center">
<Editor>
<f:TextBox ID="txtRemark" runat="server" Text='<%# Bind("Remark") %>'>
</f:TextBox>
</Editor>
</f:RenderField>
<f:LinkButtonField Width="40px" TextAlign="Center" HeaderText="删除" ToolTip="删除" CommandName="del"
Icon="Delete" />
</Columns>
</f:Grid>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:Panel>
</form>
</body>
</html>

View File

@ -0,0 +1,188 @@
using BLL;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.JDGL.Check
{
public partial class MonthPlanEdit : PageBase
{
/// <summary>
/// 项目id
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01");
if (!string.IsNullOrEmpty(Request.Params["Months"]))
{
months = Convert.ToDateTime(Request.Params["Months"] + "-01");
}
BLL.ProjectUnitService.InitUnitDropDownList2(drpUnitId, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, false);
UserService.Init(drpDutyPerson, CurrUser.LoginProjectId, false);
this.txtMonth.Text = string.Format("{0:yyyy-MM}", months);
BindGrid();
}
}
/// <summary>
/// 加载Grid
/// </summary>
private void BindGrid()
{
DateTime months = Convert.ToDateTime(this.txtMonth.Text + "-01");
Model.SGGLDB db = Funs.DB;
Grid1.DataSource = from x in db.JDGL_MonthPlan
where x.ProjectId == this.CurrUser.LoginProjectId && x.Months == months
orderby x.SortIndex
select new
{
x.MonthPlanId,
x.ProjectId,
x.Months,
UnitId = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
x.NodeContent,
x.PlanDate,
DutyPerson = db.Sys_User.First(y => y.UserId == x.DutyPerson).UserName,
x.RealDate,
x.Remark,
};
Grid1.DataBind();
}
#region
/// <summary>
/// 月份选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void txtMonths_TextChanged(object sender, EventArgs e)
{
BindGrid();
}
#endregion
protected void btnSave_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.txtMonth.Text))
{
ShowNotify("请选择月份!", MessageBoxIcon.Warning);
}
SaveData(true);
}
private void SaveData(bool bl)
{
DateTime months = Convert.ToDateTime(this.txtMonth.Text + "-01");
var list = GetDetails();
var units = from x in Funs.DB.Base_Unit select x;
var users = from x in Funs.DB.Sys_User select x;
BLL.MonthPlanService.DeleteAllMonthPlan(this.CurrUser.LoginProjectId, months);
Model.SGGLDB db = Funs.DB;
int i = 1;
foreach (var item in list)
{
Model.JDGL_MonthPlan MonthPlan = new Model.JDGL_MonthPlan();
MonthPlan.MonthPlanId = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan));
MonthPlan.ProjectId = this.CurrUser.LoginProjectId;
MonthPlan.Months = months;
var unit = units.FirstOrDefault(x => x.UnitName == item.UnitId);
if (unit != null)
{
MonthPlan.UnitId = unit.UnitId;
}
MonthPlan.NodeContent = item.NodeContent;
MonthPlan.PlanDate = item.PlanDate;
var user = users.FirstOrDefault(x => x.UserName == item.DutyPerson);
if (user != null)
{
MonthPlan.DutyPerson = user.UserId;
}
MonthPlan.RealDate = item.RealDate;
MonthPlan.Remark = item.Remark;
MonthPlan.CompileMan = this.CurrUser.UserId;
MonthPlan.CompileDate = DateTime.Now;
MonthPlan.SortIndex = i;
BLL.MonthPlanService.AddMonthPlan(MonthPlan);
i++;
}
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#region
/// <summary>
/// 增加按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
var list = GetDetails();
Model.JDGL_MonthPlan ql = new Model.JDGL_MonthPlan();
ql.MonthPlanId = SQLHelper.GetNewID();
list.Add(ql);
Grid1.DataSource = list;
Grid1.DataBind();
}
private List<Model.JDGL_MonthPlan> GetDetails()
{
List<Model.JDGL_MonthPlan> list = new List<Model.JDGL_MonthPlan>();
foreach (JObject mergedRow in Grid1.GetMergedData())
{
JObject values = mergedRow.Value<JObject>("values");
int i = mergedRow.Value<int>("index");
Model.JDGL_MonthPlan ql = new Model.JDGL_MonthPlan();
ql.MonthPlanId = Grid1.Rows[i].RowID;
ql.UnitId = values.Value<string>("UnitId");
ql.NodeContent = values.Value<string>("NodeContent");
ql.PlanDate = Funs.GetNewDateTime(values.Value<string>("PlanDate"));
ql.DutyPerson = values.Value<string>("DutyPerson");
ql.RealDate = Funs.GetNewDateTime(values.Value<string>("RealDate"));
ql.Remark = values.Value<string>("Remark");
list.Add(ql);
}
return list;
}
#endregion
#region
/// <summary>
/// Grid行点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
string monthPlanId = Grid1.DataKeys[e.RowIndex][0].ToString();
var list = GetDetails();
if (e.CommandName == "del")//删除
{
var Report = list.FirstOrDefault(x => x.MonthPlanId == monthPlanId);
if (Report != null)
{
list.Remove(Report);
}
this.Grid1.DataSource = list;
this.Grid1.DataBind();
}
}
#endregion
}
}

View File

@ -0,0 +1,168 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.JDGL.Check {
public partial class MonthPlanEdit {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel17 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel17;
/// <summary>
/// Toolbar5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar5;
/// <summary>
/// txtMonth 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtMonth;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// Form15 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form15;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar3;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// drpUnitId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUnitId;
/// <summary>
/// txtNodeContent 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtNodeContent;
/// <summary>
/// txtPlanDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtPlanDate;
/// <summary>
/// drpDutyPerson 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpDutyPerson;
/// <summary>
/// txtRealDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtRealDate;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
}
}

View File

@ -0,0 +1,105 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MonthPlanIn.aspx.cs" Inherits="FineUIPro.Web.JDGL.Check.MonthPlanIn" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>导入信息</title>
<link href="~/res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" OnCustomEvent="PageManager1_CustomEvent" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" ToolbarAlign="Right" runat="server">
<Items>
<f:DatePicker ID="txtMonth" runat="server" ShowRedStar="true" Required="true" Label="月份" LabelAlign="Right" DateFormatString="yyyy-MM" DisplayType="Month"
EnableEdit="true">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnAudit" Icon="ApplicationEdit" runat="server" ToolTip="审核" ValidateForms="SimpleForm1"
OnClick="btnAudit_Click">
</f:Button>
<f:Button ID="btnImport" Icon="ApplicationGet" runat="server" ToolTip="导入" ValidateForms="SimpleForm1"
OnClick="btnImport_Click">
</f:Button>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnDownLoad" runat="server" Icon="ApplicationGo" ToolTip="下载模板" OnClick="btnDownLoad_Click">
</f:Button>
<%--<f:Button ID="btnOut" Icon="Pencil" runat="server" Text="导出" ToolTip="导出错误列表" ValidateForms="SimpleForm1"
OnClick="btnOut_Click" Hidden="true"></f:Button>--%>
</Items>
</f:Toolbar>
</Toolbars>
<Rows>
<f:FormRow>
<Items>
<f:FileUpload runat="server" ID="fuAttachUrl" EmptyText="选择要导入的文件" Label="选择要导入的文件"
LabelWidth="150px">
</f:FileUpload>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server" ForceFit="true"
EnableColumnLines="true" BoxFlex="1" DataKeyNames="MonthPlanId" DataIDField="MonthPlanId"
AllowSorting="true" SortField="Name" PageSize="500" Height="400px">
<Columns>
<f:TemplateField Width="55px" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField ColumnID="UnitName" Width="150px" HeaderText="责任单位" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbImageUrl" runat="server" Text='<%# ConvertUnitName(Eval("UnitId")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="NodeContent" DataField="NodeContent"
SortField="NodeContent" FieldType="String" HeaderText="节点内容" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="95px" ColumnID="PlanDate" DataField="PlanDate" SortField="PlanDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="计划完成时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="DutyPersonName" Width="100px" HeaderText="五环责任人" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# ConvertDutyPersonName(Eval("DutyPerson")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" SortField="RealDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Remark" DataField="Remark"
SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:HiddenField ID="hdFileName" runat="server">
</f:HiddenField>
<f:HiddenField ID="hdCheckResult" runat="server">
</f:HiddenField>
</Items>
</f:FormRow>
<%-- <f:FormRow>
<Items>
<f:Label ID="lblBottom" runat="server" Text="说明1 人员信息导入模板中灰色项为必填项。2 身份证号码必须为15或18位所属单位、所在班组、单位工程、岗位、特岗证书等必须与基础信息中对应类型的名称一致,否则无法导入。3 如需修改已有人员信息请到系统中修改。4 数据导入后,点击“保存”,即可完成人员信息导入。">
</f:Label>
</Items>
</f:FormRow>--%>
</Rows>
</f:Form>
</form>
</body>
</html>

View File

@ -0,0 +1,615 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using System.Web.UI;
namespace FineUIPro.Web.JDGL.Check
{
public partial class MonthPlanIn : PageBase
{
#region
/// <summary>
/// 上传预设的虚拟路径
/// </summary>
private string initPath = Const.ExcelUrl;
/// <summary>
/// 人员集合
/// </summary>
public static List<Model.JDGL_MonthPlan> MonthPlans = new List<Model.JDGL_MonthPlan>();
/// <summary>
/// 错误集合
/// </summary>
public static string errorInfos = string.Empty;
/// <summary>
/// 项目ID
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.hdFileName.Text = string.Empty;
this.hdCheckResult.Text = string.Empty;
if (MonthPlans != null)
{
MonthPlans.Clear();
}
errorInfos = string.Empty;
this.ProjectId = Request.Params["ProjectId"];
}
}
#endregion
#region
/// <summary>
/// 审核
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAudit_Click(object sender, EventArgs e)
{
try
{
if (this.fuAttachUrl.HasFile == false)
{
ShowNotify("请您选择Excel文件", MessageBoxIcon.Warning);
return;
}
string IsXls = Path.GetExtension(this.fuAttachUrl.FileName).ToString().Trim().ToLower();
if (IsXls != ".xls")
{
ShowNotify("只可以选择Excel文件", MessageBoxIcon.Warning);
return;
}
if (MonthPlans != null)
{
MonthPlans.Clear();
}
if (!string.IsNullOrEmpty(errorInfos))
{
errorInfos = string.Empty;
}
string rootPath = Server.MapPath("~/");
string initFullPath = rootPath + initPath;
if (!Directory.Exists(initFullPath))
{
Directory.CreateDirectory(initFullPath);
}
this.hdFileName.Text = BLL.Funs.GetNewFileName() + IsXls;
string filePath = initFullPath + this.hdFileName.Text;
this.fuAttachUrl.PostedFile.SaveAs(filePath);
//PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("PersonDataAudit.aspx?FileName={0}&ProjectId={1}", this.hdFileName.Text, Request.Params["ProjectId"], "审核 - ")));
ImportXlsToData(rootPath + initPath + this.hdFileName.Text);
}
catch (Exception ex)
{
ShowNotify("'" + ex.Message + "'", MessageBoxIcon.Warning);
}
}
#region Excel提取数据
/// <summary>
/// 从Excel提取数据--》Dataset
/// </summary>
/// <param name="filename">Excel文件路径名</param>
private void ImportXlsToData(string fileName)
{
try
{
string oleDBConnString = String.Empty;
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
DataSet ds = new DataSet();
oleDBConn = new OleDbConnection(oleDBConnString);
oleDBConn.Open();
m_tableName = oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (m_tableName != null && m_tableName.Rows.Count > 0)
{
m_tableName.TableName = m_tableName.Rows[0]["TABLE_NAME"].ToString().Trim();
}
string sqlMaster;
sqlMaster = " SELECT * FROM [" + m_tableName.TableName + "]";
oleAdMaster = new OleDbDataAdapter(sqlMaster, oleDBConn);
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL(ds.Tables[0], 6);
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region Dataset的数据导入数据库
/// <summary>
/// 将Dataset的数据导入数据库
/// </summary>
/// <param name="pds">数据集</param>
/// <param name="Cols">数据集行数</param>
/// <returns></returns>
private bool AddDatasetToSQL(DataTable pds, int Cols)
{
string result = string.Empty;
int ic, ir;
ic = pds.Columns.Count;
if (ic < Cols)
{
Alert.ShowInTop("导入Excel格式错误Excel只有" + ic.ToString().Trim() + "行", MessageBoxIcon.Warning);
}
ir = pds.Rows.Count;
Model.SGGLDB db = Funs.DB;
var projectUnits = from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == this.CurrUser.LoginProjectId
select new { x.UnitId, y.UnitName };
var projectUsers = from x in db.Project_ProjectUser
join y in db.Sys_User on x.UserId equals y.UserId
where x.ProjectId == this.CurrUser.LoginProjectId
select new { x.UserId, y.UserName };
if (pds != null && ir > 0)
{
for (int i = 0; i < ir; i++)
{
string col0 = pds.Rows[i][0].ToString().Trim();
if (string.IsNullOrEmpty(col0))
{
result += "第" + (i + 2).ToString() + "行," + "责任单位" + "," + "此项为必填项!" + "|";
}
else
{
var unit = projectUnits.FirstOrDefault(e => e.UnitName == col0);
if (unit == null)
{
result += "第" + (i + 2).ToString() + "行," + "责任单位" + "," + "[" + col0 + "]不在项目单位中!" + "|";
}
}
string col1 = pds.Rows[i][1].ToString().Trim();
if (string.IsNullOrEmpty(col1))
{
result += "第" + (i + 2).ToString() + "行," + "节点内容" + "," + "此项为必填项!" + "|";
}
string col2 = pds.Rows[i][2].ToString().Trim();
if (!string.IsNullOrEmpty(col2))
{
try
{
DateTime dec = Convert.ToDateTime(col2);
}
catch (Exception)
{
result += "第" + (i + 2).ToString() + "行," + "计划完成时间" + "," + "[" + col2 + "]错误!" + "|";
}
}
else
{
result += "第" + (i + 2).ToString() + "行," + "计划完成时间" + "," + "此项为必填项!" + "|";
}
string col3 = pds.Rows[i][3].ToString().Trim();
if (string.IsNullOrEmpty(col3))
{
result += "第" + (i + 2).ToString() + "行," + "五环责任人" + "," + "此项为必填项!" + "|";
}
else
{
var user = projectUsers.FirstOrDefault(e => e.UserName == col3);
if (user == null)
{
result += "第" + (i + 2).ToString() + "行," + "五环责任人" + "," + "[" + col3 + "]不在项目用户信息中!" + "|";
}
}
string col4 = pds.Rows[i][4].ToString().Trim();
if (!string.IsNullOrEmpty(col4))
{
try
{
DateTime dec = Convert.ToDateTime(col4);
}
catch (Exception)
{
result += "第" + (i + 2).ToString() + "行," + "实际完成时间" + "," + "[" + col4 + "]错误!" + "|";
}
}
}
if (!string.IsNullOrEmpty(result))
{
result = result.Substring(0, result.LastIndexOf("|"));
errorInfos = result;
Alert alert = new Alert
{
Message = result,
Target = Target.Self
};
alert.Show();
}
else
{
errorInfos = string.Empty;
ShowNotify("审核完成,请点击导入!", MessageBoxIcon.Success);
}
}
else
{
ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
}
return true;
}
#endregion
#endregion
#region
/// <summary>
/// 导入
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnImport_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(errorInfos))
{
if (!string.IsNullOrEmpty(this.hdFileName.Text))
{
string rootPath = Server.MapPath("~/");
ImportXlsToData2(rootPath + initPath + this.hdFileName.Text);
}
else
{
ShowNotify("请先审核要导入的文件!", MessageBoxIcon.Warning);
}
}
else
{
Alert.ShowInTop("请先将错误数据修正,再重新导入保存!", MessageBoxIcon.Warning);
}
}
#region Excel提取数据
/// <summary>
/// 从Excel提取数据--》Dataset
/// </summary>
/// <param name="filename">Excel文件路径名</param>
private void ImportXlsToData2(string fileName)
{
try
{
string oleDBConnString = String.Empty;
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
DataSet ds = new DataSet();
oleDBConn = new OleDbConnection(oleDBConnString);
oleDBConn.Open();
m_tableName = oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (m_tableName != null && m_tableName.Rows.Count > 0)
{
m_tableName.TableName = m_tableName.Rows[0]["TABLE_NAME"].ToString().Trim();
}
string sqlMaster;
sqlMaster = " SELECT * FROM [" + m_tableName.TableName + "]";
oleAdMaster = new OleDbDataAdapter(sqlMaster, oleDBConn);
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL2(ds.Tables[0], 6);
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region Dataset的数据导入数据库
/// <summary>
/// 将Dataset的数据导入数据库
/// </summary>
/// <param name="pds">数据集</param>
/// <param name="Cols">数据集列数</param>
/// <returns></returns>
private bool AddDatasetToSQL2(DataTable pds, int Cols)
{
int ic, ir;
MonthPlans.Clear();
ic = pds.Columns.Count;
if (ic < Cols)
{
Alert.ShowInTop("导入Excel格式错误Excel只有" + ic.ToString().Trim() + "列", MessageBoxIcon.Warning);
}
ir = pds.Rows.Count;
Model.SGGLDB db = Funs.DB;
var projectUnits = from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == this.CurrUser.LoginProjectId select new { x.UnitId,y.UnitName};
var projectUsers = from x in db.Project_ProjectUser
join y in db.Sys_User on x.UserId equals y.UserId
where x.ProjectId == this.CurrUser.LoginProjectId select new { x.UserId,y.UserName};
DateTime month = Convert.ToDateTime(this.txtMonth.Text.Trim());
if (pds != null && ir > 0)
{
for (int i = 0; i < ir; i++)
{
Model.JDGL_MonthPlan MonthPlan = new Model.JDGL_MonthPlan();
string col0 = pds.Rows[i][0].ToString().Trim();
string col1 = pds.Rows[i][1].ToString().Trim();
string col2 = pds.Rows[i][2].ToString().Trim();
string col3 = pds.Rows[i][3].ToString().Trim();
string col4 = pds.Rows[i][4].ToString().Trim();
string col5 = pds.Rows[i][5].ToString().Trim();
if (!string.IsNullOrEmpty(col0))//责任单位
{
var projectUnit = projectUnits.FirstOrDefault(x=>x.UnitName==col0);
if (projectUnit != null)
{
MonthPlan.UnitId = projectUnit.UnitId;
}
}
if (!string.IsNullOrEmpty(col1))//节点内容
{
MonthPlan.NodeContent = col1;
}
if (!string.IsNullOrEmpty(col2))//计划完成时间
{
MonthPlan.PlanDate = Funs.GetNewDateTime(col2);
}
if (!string.IsNullOrEmpty(col3))//计划完成
{
var projectUser = projectUsers.FirstOrDefault(x => x.UserName == col3);
if (projectUser != null)
{
MonthPlan.DutyPerson = projectUser.UserId;
}
}
if (!string.IsNullOrEmpty(col4))//实际完成时间
{
MonthPlan.RealDate = Funs.GetNewDateTime(col4);
}
if (!string.IsNullOrEmpty(col5))//备注
{
MonthPlan.Remark = col5;
}
int num = (from x in Funs.DB.JDGL_MonthPlan where x.Months == month && x.ProjectId == this.CurrUser.LoginProjectId select x).Count();
MonthPlan.SortIndex = num + 1;
MonthPlan.MonthPlanId = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan));
MonthPlans.Add(MonthPlan);
}
if (MonthPlans.Count > 0)
{
this.Grid1.Hidden = false;
this.Grid1.DataSource = MonthPlans;
this.Grid1.DataBind();
}
}
else
{
ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
}
return true;
}
#endregion
#endregion
#region
/// <summary>
/// 保存
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.txtMonth.Text.Trim()))
{
ShowNotify("请选择月份!", MessageBoxIcon.Warning);
return;
}
if (string.IsNullOrEmpty(errorInfos))
{
var monthPlanLists = from x in Funs.DB.JDGL_MonthPlan where x.ProjectId == this.ProjectId select x;
string quantityListId = string.Empty;
int a = MonthPlans.Count();
DateTime month = Convert.ToDateTime(this.txtMonth.Text.Trim());
for (int i = 0; i < a; i++)
{
var oldMonthPlan = monthPlanLists.FirstOrDefault(x => x.ProjectId == this.ProjectId && x.Months == month && x.UnitId == MonthPlans[i].UnitId && x.NodeContent== MonthPlans[i].NodeContent);
if (oldMonthPlan == null)
{
Model.JDGL_MonthPlan newMonthPlan = new Model.JDGL_MonthPlan();
newMonthPlan.MonthPlanId = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan));
newMonthPlan.ProjectId = this.ProjectId;
newMonthPlan.Months = month;
newMonthPlan.UnitId = MonthPlans[i].UnitId;
newMonthPlan.NodeContent = MonthPlans[i].NodeContent;
newMonthPlan.PlanDate = MonthPlans[i].PlanDate;
newMonthPlan.DutyPerson = MonthPlans[i].DutyPerson;
newMonthPlan.RealDate = MonthPlans[i].RealDate;
newMonthPlan.Remark = MonthPlans[i].Remark;
newMonthPlan.SortIndex= MonthPlans[i].SortIndex;
newMonthPlan.CompileMan = this.CurrUser.UserId;
newMonthPlan.CompileDate = DateTime.Now;
BLL.MonthPlanService.AddMonthPlan(newMonthPlan);
}
else
{
oldMonthPlan.NodeContent = MonthPlans[i].NodeContent;
oldMonthPlan.PlanDate = MonthPlans[i].PlanDate;
oldMonthPlan.DutyPerson = MonthPlans[i].DutyPerson;
oldMonthPlan.RealDate = MonthPlans[i].RealDate;
oldMonthPlan.Remark = MonthPlans[i].Remark;
BLL.MonthPlanService.UpdateMonthPlan(oldMonthPlan);
}
}
string rootPath = Server.MapPath("~/");
string initFullPath = rootPath + initPath;
string filePath = initFullPath + this.hdFileName.Text;
if (filePath != string.Empty && System.IO.File.Exists(filePath))
{
System.IO.File.Delete(filePath);//删除上传的XLS文件
}
ShowNotify("导入成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
else
{
Alert.ShowInTop("请先将错误数据修正,再重新导入保存!", MessageBoxIcon.Warning);
}
}
#endregion
#region
/// <summary>
/// 导出错误提示
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
//string strFileName = DateTime.Now.ToString("yyyyMMdd-hhmmss");
//System.Web.HttpContext HC = System.Web.HttpContext.Current;
//HC.Response.Clear();
//HC.Response.Buffer = true;
//HC.Response.ContentEncoding = System.Text.Encoding.UTF8;//设置输出流为简体中文
////---导出为Excel文件
//HC.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(strFileName, System.Text.Encoding.UTF8) + ".xls");
//HC.Response.ContentType = "application/ms-excel";//设置输出文件类型为excel文件。
//System.IO.StringWriter sw = new System.IO.StringWriter();
//System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw);
//this.gvErrorInfo.RenderControl(htw);
//HC.Response.Write(sw.ToString());
//HC.Response.End();
}
/// <summary>
/// 重载VerifyRenderingInServerForm方法否则运行的时候会出现如下错误提示“类型“GridView”的控件“GridView1”必须放在具有 runat=server 的窗体标记内”
/// </summary>
/// <param name="control"></param>
public override void VerifyRenderingInServerForm(Control control)
{
}
#endregion
#region
/// <summary>
/// 下载模板按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDownLoad_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Confirm.GetShowReference("确定下载导入模板吗?", String.Empty, MessageBoxIcon.Question, PageManager1.GetCustomEventReference(false, "Confirm_OK"), PageManager1.GetCustomEventReference("Confirm_Cancel")));
}
/// <summary>
/// 下载导入模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
{
if (e.EventArgument == "Confirm_OK")
{
string rootPath = Server.MapPath("~/");
string uploadfilepath = rootPath + Const.MonthPlanTemplateUrl;
string filePath = Const.MonthPlanTemplateUrl;
string fileName = Path.GetFileName(filePath);
FileInfo info = new FileInfo(uploadfilepath);
long fileSize = info.Length;
Response.ClearContent();
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.ContentType = "excel/plain";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AddHeader("Content-Length", fileSize.ToString().Trim());
Response.TransmitFile(uploadfilepath, 0, fileSize);
Response.End();
}
}
#endregion
/// <summary>
///
/// </summary>
/// <param name="registrationId"></param>
/// <returns></returns>
protected string ConvertUnitName(object UnitId)
{
string name = string.Empty;
if (UnitId != null)
{
name = BLL.UnitService.GetUnitNameByUnitId(UnitId.ToString());
}
return name;
}
/// <summary>
///
/// </summary>
/// <param name="registrationId"></param>
/// <returns></returns>
protected string ConvertDutyPersonName(object DutyPerson)
{
string name = string.Empty;
if (DutyPerson != null)
{
name = BLL.UserService.GetUserNameByUserId(DutyPerson.ToString());
}
return name;
}
}
}

View File

@ -0,0 +1,159 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.JDGL.Check {
public partial class MonthPlanIn {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// txtMonth 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtMonth;
/// <summary>
/// btnAudit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAudit;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnDownLoad 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDownLoad;
/// <summary>
/// fuAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FileUpload fuAttachUrl;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Label2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label2;
/// <summary>
/// lbImageUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lbImageUrl;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// hdFileName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdFileName;
/// <summary>
/// hdCheckResult 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdCheckResult;
}
}

View File

@ -0,0 +1,83 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MonthPlanStatisc.aspx.cs" Inherits="FineUIPro.Web.JDGL.Check.MonthPlanStatisc" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" Title="月度计划情况统计" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="true" SortDirection="DESC" BoxFlex="1" AllowCellEditing="true"
DataKeyNames="DesignId" EnableColumnLines="true" ClicksToEdit="2" AllowSorting="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10" ForceFit="true"
AllowFilters="true" EnableTextSelection="True" >
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DatePicker runat="server" ID="txtMonths" DateFormatString="yyyy-MM" DisplayType="Month" AutoPostBack="true" OnTextChanged="ckType_SelectedIndexChanged"
Label="月份" LabelWidth="50px" Width="150px">
</f:DatePicker>
<f:RadioButtonList runat="server" ID="ckType" AutoPostBack="True" Width="300px"
OnSelectedIndexChanged="ckType_SelectedIndexChanged">
<f:RadioItem Value="1" Text="按责任单位" Selected="True"></f:RadioItem>
<f:RadioItem Value="2" Text="按五环责任人" ></f:RadioItem>
</f:RadioButtonList>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSearch" Icon="SystemSearch" ToolTip="查询" Hidden="true"
EnablePostBack="true" runat="server" OnClick="btnSearch_Click">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="导出" Hidden="true"
Icon="TableGo" EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="200px" ColumnID="NodeContent" DataField="NodeContent"
FieldType="String" HeaderText="责任单位" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="UnitId" DataField="UnitId"
FieldType="String" HeaderText="计划项总数" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="110px" ColumnID="DutyPerson" DataField="DutyPerson"
FieldType="String" HeaderText="累计完成总数" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="Remark" DataField="Remark"
FieldType="String" HeaderText="完成比例" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true" OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
<f:ToolbarFill runat="server">
</f:ToolbarFill>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
</form>
</body>
</html>

View File

@ -0,0 +1,280 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.JDGL.Check
{
public partial class MonthPlanStatisc : PageBase
{
private static List<Model.JDGL_MonthPlan> StatisticsList = new List<Model.JDGL_MonthPlan>();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.txtMonths.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
BindStatisc();
}
}
protected void btnSearch_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.txtMonths.Text.Trim()))
{
Alert.ShowInTop("月份不能为空!", MessageBoxIcon.Warning);
return;
}
BindStatisc();
}
#region GridView
/// <summary>
/// 绑定
/// </summary>
/// <param name="cNProfessionalId"></param>
public void BindStatisc()
{
DateTime months = Convert.ToDateTime(this.txtMonths.Text + "-01");
StatisticsList = new List<Model.JDGL_MonthPlan>();
int i = 1;
Model.SGGLDB db = Funs.DB;
//所有集合
var totalList = from x in db.JDGL_MonthPlan where x.ProjectId == this.CurrUser.LoginProjectId && x.Months == months select x;
if (this.ckType.SelectedValue == "1") //按责任单位
{
var pUnit = from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitType == BLL.Const.ProjectUnitType_2
orderby y.UnitCode
select y;
foreach (var item in pUnit)
{
//当期集合
var list = totalList.Where(x => x.UnitId == item.UnitId);
Model.JDGL_MonthPlan JDGL_MonthPlan = new Model.JDGL_MonthPlan();
JDGL_MonthPlan.NodeContent = item.UnitName;
int a = list.Count();
int b = list.Count(x => x.RealDate.HasValue);
JDGL_MonthPlan.UnitId = a.ToString();
JDGL_MonthPlan.DutyPerson = b.ToString();
if (a != 0)//被除数不能为零
{
JDGL_MonthPlan.Remark = Math.Round((double)b / (double)a * 100, 2) + "%";//保留两位小数、后四舍五入
}
else
{
JDGL_MonthPlan.Remark = "0%";
}
StatisticsList.Add(JDGL_MonthPlan);
i++;
}
}
else //按五环责任人
{
var user = (from x in db.Sys_User
join y in db.JDGL_MonthPlan on x.UserId equals y.DutyPerson
where y.ProjectId == this.CurrUser.LoginProjectId
orderby x.UserId
select x).Distinct().ToList();
foreach (var item in user)
{
//所有集合
var list = totalList.Where(x => x.DutyPerson == item.UserId);
Model.JDGL_MonthPlan JDGL_MonthPlan = new Model.JDGL_MonthPlan();
JDGL_MonthPlan.NodeContent = item.UserName;
int a = list.Count();
int b = list.Count(x => x.RealDate.HasValue);
JDGL_MonthPlan.UnitId = a.ToString();
JDGL_MonthPlan.DutyPerson = b.ToString();
if (a != 0)//被除数不能为零
{
JDGL_MonthPlan.Remark = Math.Round((double)b / (double)a * 100, 2) + "%";//保留两位小数、后四舍五入
}
else
{
JDGL_MonthPlan.Remark = "0%";
}
StatisticsList.Add(JDGL_MonthPlan);
i++;
}
}
if (StatisticsList.Count() > 0) //增加总计
{
Model.JDGL_MonthPlan StatisticsLast = new Model.JDGL_MonthPlan();
StatisticsLast.NodeContent = "合计";
int a = totalList.Count();
int b = totalList.Count(x => x.RealDate.HasValue);
StatisticsLast.UnitId = a.ToString();
StatisticsLast.DutyPerson = b.ToString();
if (a != 0)//被除数不能为零
{
StatisticsLast.Remark = Math.Round((double)b / (double)a * 100, 2) + "%";//保留两位小数、后四舍五入
}
else
{
StatisticsLast.Remark = "0%";
}
StatisticsList.Add(StatisticsLast);
}
this.Grid1.DataSource = StatisticsList;
this.Grid1.DataBind();
}
#endregion
protected void ckType_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.ckType.SelectedValue == "1")
{
this.Grid1.Columns[1].HeaderText = "责任单位";
}
else
{
this.Grid1.Columns[1].HeaderText = "五环责任人";
}
BindStatisc();
}
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
BindStatisc();
}
#region
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
//string rootPath = Server.MapPath("~/");
//string initTemplatePath = Const.JDGL_MonthPlanTemlUrl;
//string uploadfilepath = string.Empty;
//string newUrl = string.Empty;
//uploadfilepath = rootPath + initTemplatePath;
//if (StatisticsList != null)
//{
// string projectName = BLL.ProjectService.GetShortNameByProjectId(this.CurrUser.LoginProjectId);
// newUrl = uploadfilepath.Replace("NCR统计模板", "NCR统计" + projectName + DateTime.Now.ToString("yyyyMMdd") + "");
// File.Copy(uploadfilepath, newUrl);
// // 第一步:读取文件流
// NPOI.SS.UserModel.IWorkbook workbook;
// using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read))
// {
// //workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream);
// workbook = new NPOI.HSSF.UserModel.HSSFWorkbook(stream);
// }
// // 创建单元格样式
// NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle();
// cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
// cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
// cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
// cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
// cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
// cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
// cellStyle.WrapText = true;//自动换行
// var font = workbook.CreateFont();
// font.FontHeightInPoints = 11;
// cellStyle.SetFont(font);
// // 第二步:创建新数据行
// NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
// NPOI.SS.UserModel.IRow row = sheet.GetRow(0);
// NPOI.SS.UserModel.ICell cell;
// int i = 2;
// foreach (var item in StatisticsList)
// {
// // 第二步:创建新数据行
// row = sheet.CreateRow(i);
// // 添加数据
// cell = row.CreateCell(0);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.WorkName);//工作名称
// cell = row.CreateCell(1);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.CheckNum);
// cell = row.CreateCell(2);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.OKNum);
// cell = row.CreateCell(3);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.NotOKNum);
// cell = row.CreateCell(4);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.OKRate);
// cell = row.CreateCell(5);
// cell.CellStyle = cellStyle;
// cell.SetCellValue(item.Remark);
// i++;
// }
// // 第三步:写入文件流
// using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write))
// {
// workbook.Write(stream);
// workbook.Close();
// }
// string fileName = Path.GetFileName(newUrl);
// FileInfo info = new FileInfo(newUrl);
// long fileSize = info.Length;
// Response.Clear();
// Response.ContentType = "application/x-zip-compressed";
// Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
// Response.AddHeader("Content-Length", fileSize.ToString());
// Response.TransmitFile(newUrl, 0, fileSize);
// Response.Flush();
// Response.Close();
// File.Delete(newUrl);
//}
//else
//{
// Alert.ShowInTop("当前无记录,无法导出!", MessageBoxIcon.Warning);
//}
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
//private string GetGridTableHtml(Grid grid)
//{
// StringBuilder sb = new StringBuilder();
// sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
// sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
// sb.Append("<tr>");
// grid.PageSize = 10000;
// BindStatisc();
// foreach (GridColumn column in grid.Columns)
// {
// sb.AppendFormat("<td>{0}</td>", column.HeaderText);
// }
// sb.Append("</tr>");
// foreach (GridRow row in grid.Rows)
// {
// sb.Append("<tr>");
// foreach (GridColumn column in grid.Columns)
// {
// string html = row.Values[column.ColumnIndex].ToString();
// if (column.ColumnID == "tfNumber")
// {
// html = (row.FindControl("labNumber") as AspNet.Label).Text;
// }
// sb.AppendFormat("<td>{0}</td>", html);
// }
// sb.Append("</tr>");
// }
// sb.Append("</table>");
// return sb.ToString();
//}
#endregion
}
}

View File

@ -0,0 +1,132 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.JDGL.Check {
public partial class MonthPlanStatisc {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtMonths 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtMonths;
/// <summary>
/// ckType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.RadioButtonList ckType;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
}
}

View File

@ -19,7 +19,7 @@ namespace FineUIPro.Web.JDGL.Check
{
GetButtonPower();
btnNew.OnClientClick = Window1.GetShowReference("QuantityCompletionEdit.aspx") + "return false;";
this.txtMonths.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
this.txtMonths.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
BindGrid();
}
}

View File

@ -95,61 +95,6 @@
</f:Form>
</Items>
</f:Panel>
<%--<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DatePicker ID="txtMonth" runat="server" ShowRedStar="true" Required="true" Label="月份" LabelAlign="Right" LabelWidth="150px"
EnableEdit="true" >
</f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtName" runat="server" Label="类型" LabelAlign="Right" LabelWidth="150px" ShowRedStar="true" Required="true"
MaxLength="50">
</f:TextBox>
<f:TextBox ID="txtUnit" runat="server" Label="单位" LabelAlign="Right" ShowRedStar="true" Required="true"
MaxLength="50">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtDesignNum" Required="true" ShowRedStar="true" Label="设计数量" LabelWidth="150px" NoDecimal="false" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtPlanNum" Required="true" ShowRedStar="true" Label="计划完成" LabelWidth="150px" NoDecimal="false" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtRealNum" Required="true" ShowRedStar="true" Label="实际完成" LabelWidth="150px" NoDecimal="false" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtNextNum" Label="下月计划" LabelWidth="150px" NoDecimal="false" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdCheckerId" runat="server">
</f:HiddenField>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpleForm1" OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false"
runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>--%>
</form>
</body>
</html>

View File

@ -15,7 +15,7 @@
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" ToolbarAlign="Right" runat="server">
<Items>
<f:DatePicker ID="txtMonth" runat="server" ShowRedStar="true" Required="true" Label="月份" LabelAlign="Right"
<f:DatePicker ID="txtMonth" runat="server" ShowRedStar="true" Required="true" Label="月份" LabelAlign="Right" DateFormatString="yyyy-MM" DisplayType="Month"
EnableEdit="true" >
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>

View File

@ -9,7 +9,7 @@
<section name="FineUIPro" type="FineUIPro.ConfigSection, FineUIPro" requirePermission="false"/>
</configSections>
<FineUIPro DebugMode="true" Theme="Cupertino"/>
<appSettings>
<appSettings>
<!--连接字符串-->
<!--<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>-->
<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>

View File

@ -10,6 +10,7 @@
<TreeNode id="59AAE0F0-2DB6-4065-B304-7E2C56EC3E5D" Text="赢得值曲线" NavigateUrl="JDGL/CostAnalysis/EarnedValueCurve.aspx"></TreeNode>
<TreeNode id="D1FC6ACA-C789-401C-B9FB-3A96FFE4C8AC" Text="进度报表" NavigateUrl="JDGL/CostAnalysis/JDReport.aspx"></TreeNode>
<TreeNode id="9CAF311E-C234-4DA4-B235-D4E478FBD80E" Text="里程碑" NavigateUrl="JDGL/WBS/MilePost.aspx"></TreeNode>
<TreeNode id="94287B92-7E96-4B90-BC6F-DAF30AE3B314" Text="月度计划情况" NavigateUrl="JDGL/Check/MonthPlan.aspx"></TreeNode>
<TreeNode id="92CBD072-20F8-45B1-9D17-6F7494DD2020" Text="数据导入" NavigateUrl=""><TreeNode id="F3AA42B3-5776-4992-A625-1216C579FEDE" Text="项目进度情况" NavigateUrl="JDGL/Check/ProgressCompletion.aspx"></TreeNode>
<TreeNode id="2AE9D982-A499-497F-8F54-ADDA5856887E" Text="工程量完成情况" NavigateUrl="JDGL/Check/QuantityCompletion.aspx"></TreeNode>
<TreeNode id="82E513B9-1A6F-495A-A633-EBC89CE5273A" Text="低温储罐完成情况" NavigateUrl="JDGL/Check/LowTankCompletion.aspx"></TreeNode>

View File

@ -6,4 +6,7 @@
<TreeNode id="C6EF06E5-9019-4583-8122-EA94FCC545C6" Text="员工总结" NavigateUrl=""></TreeNode>
<TreeNode id="AAF841AA-2EE8-4FEC-B1FB-B978736C6E1F" Text="员工责任书" NavigateUrl="Personal/PersonDuty.aspx"></TreeNode>
<TreeNode id="CB373458-30B0-4850-ABFF-B38D40A04D43" Text="员工绩效考核结果" NavigateUrl="Personal/PersonCheckInfo.aspx"></TreeNode>
<TreeNode id="522EAECC-3D40-4804-A066-A43BA8F6BFC1" Text="员工出差记录" NavigateUrl="Personal/BusinessTrip.aspx"></TreeNode>
<TreeNode id="16229932-671B-4E04-BB61-A5C7DE4CE47F" Text="员工开车绩效记录" NavigateUrl="Personal/TestRunPerformance.aspx"></TreeNode>
<TreeNode id="F0792B77-AEE4-4834-82C2-E5B75D0B0AB7" Text="开车月技术总结" NavigateUrl="Personal/TestRunMonthSummary.aspx"></TreeNode>
</Tree>

View File

@ -46,12 +46,12 @@
<TreeNode id="D9D90BA4-BF34-4045-977F-DCE9D507F40F" Text="生成工作包检查表" NavigateUrl="TestRun/BeforeTestRun/SubInspectTerm.aspx"></TreeNode>
<TreeNode id="150A6D3D-CAA2-4246-947C-6730A18BCC83" Text="检查表条件确认" NavigateUrl="TestRun/BeforeTestRun/SubWorkInspect.aspx"></TreeNode>
<TreeNode id="B6A6EA7D-EDAB-40C8-920D-A106731D0E08" Text="检查表尾项管理" NavigateUrl="TestRun/BeforeTestRun/InspectTailTermList.aspx"></TreeNode>
<TreeNode id="F7A324D0-2410-4B37-858C-10F0A3059C90" Text="检查项确认" NavigateUrl="TestRun/BeforeTestRun/TailTermHandleList.aspx"></TreeNode>
<TreeNode id="2254D22A-94EF-435F-9916-F07BD7082689" Text="检查表流转" NavigateUrl="TestRun/BeforeTestRun/InspectWanderAboutList.aspx"></TreeNode>
<TreeNode id="8542644D-BD9B-4188-9FDE-AE5D6D6D9A40" Text="检查项审核" NavigateUrl="TestRun/BeforeTestRun/TailTermApproveList.aspx"></TreeNode>
<TreeNode id="F7A324D0-2410-4B37-858C-10F0A3059C90" Text="尾项处理" NavigateUrl="TestRun/BeforeTestRun/TailTermHandleList.aspx"></TreeNode>
<TreeNode id="8542644D-BD9B-4188-9FDE-AE5D6D6D9A40" Text="尾项审核" NavigateUrl="TestRun/BeforeTestRun/TailTermApproveList.aspx"></TreeNode>
<TreeNode id="2254D22A-94EF-435F-9916-F07BD7082689" Text="检查表会签" NavigateUrl="TestRun/BeforeTestRun/InspectWanderAboutList.aspx"></TreeNode>
<TreeNode id="AF88737F-D665-4C81-99D5-A07A8910C1E0" Text="检查表流转全部通过" NavigateUrl="TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx"></TreeNode>
<TreeNode id="F184E0FC-96E3-48A5-9515-21EAD37053B3" Text="现场实施" NavigateUrl="TestRun/BeforeTestRun/SiteImplementationList.aspx"></TreeNode>
<TreeNode id="19865B64-E0AA-4D32-9712-05C14FE6288F" Text="试车记录上传" NavigateUrl="TestRun/BeforeTestRun/TestRunRecordUploadList.aspx"></TreeNode>
<TreeNode id="AF88737F-D665-4C81-99D5-A07A8910C1E0" Text="检查表流转全部通过" NavigateUrl="TestRun/BeforeTestRun/InspectWanderAboutAllPassList.aspx"></TreeNode>
<TreeNode id="FCC050F0-0F13-4CE5-BE33-623377562965" Text="三查四定尾项清单" NavigateUrl="TestRun/BeforeTestRun/SubThreeChecksFourDecisionList.aspx"></TreeNode>
<TreeNode id="4822760B-395B-4979-B547-EA0D715C8A2C" Text="三查四定提出人处理" NavigateUrl="TestRun/BeforeTestRun/FourDecisionProposerHandle.aspx"></TreeNode>
<TreeNode id="E673FC27-74F1-479C-8DE1-950183566725" Text="三查四定责任人销项" NavigateUrl="TestRun/BeforeTestRun/FourDecisionResponsibilityConfirm.aspx"></TreeNode>
@ -69,9 +69,11 @@
<TreeNode id="0217CE50-3ABB-44F8-A38A-C9792C436639" Text="试车管理" NavigateUrl=""><TreeNode id="E3E38073-1DF4-4C02-AFC0-5C93EE7C23A8" Text="系统划分" NavigateUrl="TestRun/TestRunManage/DeviceRun.aspx"></TreeNode>
<TreeNode id="4B964B32-D5CC-48A2-8750-48BC4460C264" Text="工作包设置" NavigateUrl="TestRun/TestRunManage/SetWorkPackage.aspx"></TreeNode>
<TreeNode id="B6EE8E3B-77E2-416E-8985-3C78A2169B89" Text="工作包裁剪" NavigateUrl="TestRun/TestRunManage/SubSysWorkPackage.aspx"></TreeNode>
<TreeNode id="AF2B0CAD-DE15-4F15-A5EE-C8FB558D00C8" Text="检查项分组信息" NavigateUrl="TestRun/TestRunManage/TemplateItemGroup.aspx"></TreeNode>
<TreeNode id="545AACE6-34BE-4BAA-A495-B73198F1BDE2" Text="检查表模板" NavigateUrl="TestRun/TestRunManage/InspectTemplate.aspx"></TreeNode>
<TreeNode id="086DBD12-5649-4330-807A-44ABB257495F" Text="联动试车管理" NavigateUrl="TestRun/TestRunManage/SubInspectTerm.aspx"></TreeNode>
<TreeNode id="4041089F-5CC2-4070-9556-7DAB83CF6292" Text="检查表尾项管理" NavigateUrl="TestRun/TestRunManage/InspectTailTermList.aspx"></TreeNode>
<TreeNode id="A593B611-82C1-40D8-BB6A-DD025DB62F8C" Text="联动试车确认" NavigateUrl="TestRun/TestRunManage/SubWorkInspect.aspx"></TreeNode>
<TreeNode id="2232ED9A-EA3C-4CB5-A53C-D96D3F5E0527" Text="尾项处理" NavigateUrl="TestRun/TestRunManage/TailTermHandleList.aspx"></TreeNode>
<TreeNode id="9489BD6A-1A95-43BC-85C0-A65751C2C85E" Text="尾项审核" NavigateUrl="TestRun/TestRunManage/TailTermApproveList.aspx"></TreeNode>
<TreeNode id="26F8468D-4358-4E2A-895D-8720A6F1FA89" Text="检查表会签" NavigateUrl="TestRun/TestRunManage/InspectWanderAboutList.aspx"></TreeNode>
@ -119,7 +121,8 @@
<TreeNode id="EC4B11B4-AF9B-44E9-8CD4-364A5633CB76" Text="性能考核报告" NavigateUrl="TestRun/DriverReport/PropertyReport.aspx"></TreeNode>
<TreeNode id="0D5C3347-0484-4455-AD32-D558BCFF0D0B" Text="开车完工报告" NavigateUrl="TestRun/DriverReport/DriverRunComplete.aspx"></TreeNode>
</TreeNode>
<TreeNode id="ECDC614F-6239-44D2-9523-6A25D42C6A45" Text="项目开车总结" NavigateUrl=""><TreeNode id="D215165B-95BA-4298-9736-B7A20F27B5D1" Text="专项总结" NavigateUrl="TestRun/DriverSummary/SpecialSummary.aspx"></TreeNode>
<TreeNode id="ECDC614F-6239-44D2-9523-6A25D42C6A45" Text="项目开车总结" NavigateUrl=""><TreeNode id="9B32C4BF-62E9-4561-8632-97AC0F581701" Text="月技术总结" NavigateUrl="TestRun/DriverSummary/MonthSummary.aspx"></TreeNode>
<TreeNode id="D215165B-95BA-4298-9736-B7A20F27B5D1" Text="专项总结" NavigateUrl="TestRun/DriverSummary/SpecialSummary.aspx"></TreeNode>
<TreeNode id="9EBA628D-E725-4A0B-B765-171F405D0821" Text="完工后个人总结" NavigateUrl="TestRun/DriverSummary/PersonalSummary.aspx"></TreeNode>
<TreeNode id="AA88BD56-E0B4-4B9C-9238-3F48EA59C50A" Text="开车完工报告" NavigateUrl="TestRun/DriverSummary/CompleteSummary.aspx"></TreeNode>
</TreeNode>

View File

@ -1,3 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="48545C6A-9D10-47F4-810F-DAB0CFCD5BF9" Text="Project Set up" NavigateUrl="Transfer/ProjectSetup.aspx">
</TreeNode>
<TreeNode id="D94C1BA4-9DFD-4514-AE12-6F886C5D8C9B" Text="Piping" NavigateUrl="Transfer/Piping.aspx"></TreeNode>
<TreeNode id="982F746C-084C-445C-9AE8-8C37BDFE7994" Text="Static Equipment" NavigateUrl="Transfer/StaticEquipment.aspx"></TreeNode>
<TreeNode id="7E2FB5F9-FB99-4455-B68F-460F1F9A2676" Text="Rotating Equipment" NavigateUrl="Transfer/RotatingEquipment.aspx"></TreeNode>
<TreeNode id="88F51059-55B4-4CD5-A38C-36404E5029F6" Text="Instrumentation" NavigateUrl="Transfer/Instrumentation.aspx"></TreeNode>
<TreeNode id="296E75D2-192A-4D1F-8471-DD34263F8691" Text="Electrical" NavigateUrl="Transfer/Electrical.aspx"></TreeNode>
<TreeNode id="95C39F86-C060-452E-BA37-D891C466A39B" Text="Civil Structure" NavigateUrl="Transfer/CivilStructure.aspx"></TreeNode>
<TreeNode id="794E64E2-FDD2-4B7D-8408-F7FB06F9C92A" Text="Firefighting" NavigateUrl="Transfer/Firefighting.aspx"></TreeNode>
<TreeNode id="58FFBD80-ACB9-4830-A18A-E025D9600D94" Text="Telecom" NavigateUrl="Transfer/Telecom.aspx"></TreeNode>
<TreeNode id="95295BF7-FB51-480D-9902-6ADA4E8427FC" Text="Plumbing" NavigateUrl="Transfer/Plumbing.aspx"></TreeNode>
<TreeNode id="05442049-1310-45B1-9D3D-CAAE759D8F3E" Text="HVAC" NavigateUrl="Transfer/HVAC.aspx"></TreeNode>
<TreeNode id="016903B1-3B86-4CF5-AFF8-FF8BE389BEE5" Text="Punchlist from" NavigateUrl="Transfer/PunchlistFrom.aspx"></TreeNode>
<TreeNode id="3517DBE2-9728-4BA0-9EA5-AE2147DB883B" Text="移交图表" NavigateUrl=""><TreeNode id="E6F5125D-DD94-4978-B7EB-D9C26694D86D" Text="全厂移交统计表" NavigateUrl="Transfer/Chart/Instrumentation.aspx"></TreeNode>
<TreeNode id="F97BCF55-E450-4007-AD84-AB64B3496204" Text="全厂移交统计递增表" NavigateUrl="Transfer/Chart/TransferChart.aspx"></TreeNode>
<TreeNode id="C2DD3E9E-DB18-466F-8FA0-19AD6E21EEF0" Text="Punchlist from" NavigateUrl="Transfer/Chart/PunchlistFrom.aspx"></TreeNode>
<TreeNode id="BB5EC5E1-A23D-4A3F-8772-CD40757974EC" Text="Punchlist from统计递增表" NavigateUrl="Transfer/Chart/PunchlistFromChart.aspx"></TreeNode>
</TreeNode>
</Tree>

View File

@ -83,4 +83,8 @@
</TreeNode>
<TreeNode id="EA413D2A-8D29-4DE2-932D-8511BB7F6CB2" Text="各项目巡查汇总" NavigateUrl="ZHGL/InspectionSummary/InspectionSummary.aspx"></TreeNode>
<TreeNode id="F2133BD6-C786-407A-AD6F-3EEF613229A8" Text="施工管理绩效数据" NavigateUrl="ZHGL/Performance/PerformanceAllData.aspx"></TreeNode>
<TreeNode id="53D8CED2-9AA7-43EA-B27D-EA10A06DF713" Text="开车人员绩效管理" NavigateUrl=""><TreeNode id="383290E0-60AE-4D16-8B5E-3899B85EC2ED" Text="开车绩效评分标准" NavigateUrl="ZHGL/TestRunPerformance/TestRunPerformanceStandard.aspx"></TreeNode>
<TreeNode id="C1240FCB-4C72-445E-82B5-EBFAA87D0AC6" Text="开车人员月绩效报告" NavigateUrl="ZHGL/TestRunPerformance/TestRunPerformanceMonthReport.aspx"></TreeNode>
<TreeNode id="0C6BB051-6BD1-4E35-90CE-9376F3C2D454" Text="开车人员月技术总结" NavigateUrl="ZHGL/TestRunPerformance/TestRunMonthSummaryReport.aspx"></TreeNode>
</TreeNode>
</Tree>

View File

@ -212319,6 +212319,8 @@ namespace Model
private System.Nullable<System.DateTime> _CompileDate;
private System.Nullable<int> _SortIndex;
private EntityRef<Base_Project> _Base_Project;
private EntityRef<Base_Unit> _Base_Unit;
@ -212353,6 +212355,8 @@ namespace Model
partial void OnCompileManChanged();
partial void OnCompileDateChanging(System.Nullable<System.DateTime> value);
partial void OnCompileDateChanged();
partial void OnSortIndexChanging(System.Nullable<int> value);
partial void OnSortIndexChanged();
#endregion
public JDGL_MonthPlan()
@ -212600,6 +212604,26 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SortIndex", DbType="Int")]
public System.Nullable<int> SortIndex
{
get
{
return this._SortIndex;
}
set
{
if ((this._SortIndex != value))
{
this.OnSortIndexChanging(value);
this.SendPropertyChanging();
this._SortIndex = value;
this.SendPropertyChanged("SortIndex");
this.OnSortIndexChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_JDGL_MonthPlan_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
public Base_Project Base_Project
{

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress />
<IISExpressSSLPort />