This commit is contained in:
李鹏飞 2025-05-26 17:16:13 +08:00
commit 456b2927b5
73 changed files with 3434 additions and 1105 deletions

View File

@ -0,0 +1,37 @@
--
IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'JDGL_MonthPlan' AND COLUMN_NAME = 'IsOK')
BEGIN
ALTER TABLE JDGL_MonthPlan ADD IsOK bit;
END
GO
update JDGL_MonthPlan set IsOK =1 where RealDate is not null
update JDGL_MonthPlan set IsOK =0 where RealDate is null
GO
--1
IF NOT EXISTS (SELECT * FROM Sys_Menu WHERE MenuId = '09E6A03F-65C8-4FAC-9659-7A0B56D8CC19')
BEGIN
--
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
VALUES('09E6A03F-65C8-4FAC-9659-7A0B56D8CC19','指挥调度中心','ZHDD/ZHDD.aspx',10,'0','Menu_CommandDispatchCenter',0,1,1)
END
GO
--1
IF NOT EXISTS (SELECT * FROM Sys_Const WHERE ID = '182BC982-F98F-41B3-A2D2-9DD834BF5833')
BEGIN
--
INSERT INTO dbo.Sys_Const(ID,ConstText,ConstValue,SortIndex,GroupId)
VALUES('182BC982-F98F-41B3-A2D2-9DD834BF5833','指挥调度中心','Menu_CommandDispatchCenter',11,'MenuType_P')
END
GO
--
IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Check_CheckControl' AND COLUMN_NAME = 'CCManIds')
BEGIN
ALTER TABLE Check_CheckControl ADD CCManIds nvarchar(2000);
END
GO

View File

@ -0,0 +1,37 @@
--
IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'JDGL_MonthPlan' AND COLUMN_NAME = 'IsOK')
BEGIN
ALTER TABLE JDGL_MonthPlan ADD IsOK bit;
END
GO
update JDGL_MonthPlan set IsOK =1 where RealDate is not null
update JDGL_MonthPlan set IsOK =0 where RealDate is null
GO
--1
IF NOT EXISTS (SELECT * FROM Sys_Menu WHERE MenuId = '09E6A03F-65C8-4FAC-9659-7A0B56D8CC19')
BEGIN
--
INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
VALUES('09E6A03F-65C8-4FAC-9659-7A0B56D8CC19','指挥调度中心','ZHDD/ZHDD.aspx',10,'0','Menu_CommandDispatchCenter',0,1,1)
END
GO
--1
IF NOT EXISTS (SELECT * FROM Sys_Const WHERE ID = '182BC982-F98F-41B3-A2D2-9DD834BF5833')
BEGIN
--
INSERT INTO dbo.Sys_Const(ID,ConstText,ConstValue,SortIndex,GroupId)
VALUES('182BC982-F98F-41B3-A2D2-9DD834BF5833','指挥调度中心','Menu_CommandDispatchCenter',11,'MenuType_P')
END
GO
--
IF NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Check_CheckControl' AND COLUMN_NAME = 'CCManIds')
BEGIN
ALTER TABLE Check_CheckControl ADD CCManIds nvarchar(2000);
END
GO

View File

@ -96,6 +96,7 @@ namespace BLL
newCheckControl.ReAttachUrl = CheckControl.ReAttachUrl; newCheckControl.ReAttachUrl = CheckControl.ReAttachUrl;
newCheckControl.State = CheckControl.State; newCheckControl.State = CheckControl.State;
newCheckControl.SaveHandleMan = CheckControl.SaveHandleMan; newCheckControl.SaveHandleMan = CheckControl.SaveHandleMan;
newCheckControl.CCManIds = CheckControl.CCManIds;
db.Check_CheckControl.InsertOnSubmit(newCheckControl); db.Check_CheckControl.InsertOnSubmit(newCheckControl);
db.SubmitChanges(); db.SubmitChanges();
@ -128,17 +129,19 @@ namespace BLL
else else
{ {
x.ProposeUnitId = x.ProposeUnitId + "$" + "$"; x.ProposeUnitId = x.ProposeUnitId + "$" + "$";
} }
Sys_User checkMen = UserService.GetUserByUserId(x.CheckMan); Sys_User checkMen = UserService.GetUserByUserId(x.CheckMan);
x.CheckMan = (checkMen != null ? checkMen.UserName : "") + "$" + UnitWorkService.GetNameById(x.UnitWorkId) + "$" + ConvertManAndID(x.CheckControlCode); x.CheckMan = (checkMen != null ? checkMen.UserName : "") + "$" + UnitWorkService.GetNameById(x.UnitWorkId) + "$" + ConvertManAndID(x.CheckControlCode);
x.CNProfessionalCode = x.CNProfessionalCode + "$" + CNProfessionalService.GetCNProfessionalNameByCode(x.CNProfessionalCode); x.CNProfessionalCode = x.CNProfessionalCode + "$" + CNProfessionalService.GetCNProfessionalNameByCode(x.CNProfessionalCode);
var ccManNames = UserService.getUserNamesUserIds(x.CCManIds);
x.CCManIds = (x.CCManIds != null ? x.CCManIds : "") + "$" + ccManNames;
return x; return x;
} }
} }
/// <summary> /// <summary>
/// 根据状态选择下一步办理类型 /// 根据状态选择下一步办理类型
/// </summary> /// </summary>
@ -616,6 +619,8 @@ namespace BLL
newCheckControl.State = CheckControl.State; newCheckControl.State = CheckControl.State;
if (!string.IsNullOrEmpty(CheckControl.ProposeUnitId)) if (!string.IsNullOrEmpty(CheckControl.ProposeUnitId))
newCheckControl.ProposeUnitId = CheckControl.ProposeUnitId; newCheckControl.ProposeUnitId = CheckControl.ProposeUnitId;
if (!string.IsNullOrEmpty(CheckControl.CCManIds))
newCheckControl.CCManIds = CheckControl.CCManIds;
db.SubmitChanges(); db.SubmitChanges();
} }
} }

View File

@ -546,7 +546,7 @@ namespace BLL
/// <summary> /// <summary>
/// 木工岗位Id /// 木工岗位Id
/// </summary> /// </summary>
public static string WorkPost_Carpentry = "4ACC633F-BD81-4CBB-9058-A4E4DFFE7881"; public static string WorkPost_Carpentry = "e72ce3da-c3e3-45cc-9575-a82dbb2ca2aa";
/// <summary> /// <summary>
/// 钢筋工岗位Id /// 钢筋工岗位Id
@ -574,35 +574,40 @@ namespace BLL
public static string WorkPost_Fitter2 = "F49B8430-AC71-40B2-86A3-6825C73F59E5"; public static string WorkPost_Fitter2 = "F49B8430-AC71-40B2-86A3-6825C73F59E5";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——管道焊工
/// </summary> /// </summary>
public static string WorkPost_Welder = "97afac2d-7ffb-49de-bf15-4b49ef24df63"; public static string WorkPost_Welder = "97afac2d-7ffb-49de-bf15-4b49ef24df63";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——结构焊工
/// </summary> /// </summary>
public static string WorkPost_Welder1 = "16c736b6-7ee1-4069-8b57-1a658e6a615f"; public static string WorkPost_Welder1 = "16c736b6-7ee1-4069-8b57-1a658e6a615f";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——设备焊工
/// </summary> /// </summary>
public static string WorkPost_Welder2 = "36644e8c-0593-4ca7-880f-6a55510c51a1"; public static string WorkPost_Welder2 = "36644e8c-0593-4ca7-880f-6a55510c51a1";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——电焊工
/// </summary> /// </summary>
public static string WorkPost_Welder3 = "5383f797-da4a-4547-b2aa-905a99c1bcfa"; public static string WorkPost_Welder3 = "5383f797-da4a-4547-b2aa-905a99c1bcfa";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——管道焊工
/// </summary> /// </summary>
public static string WorkPost_Welder4 = "97afac2d-7ffb-49de-bf15-4b49ef24df63"; public static string WorkPost_Welder4 = "97afac2d-7ffb-49de-bf15-4b49ef24df63";
/// <summary> /// <summary>
/// 焊工岗位Id /// 焊工岗位Id——其他焊工
/// </summary> /// </summary>
public static string WorkPost_Welder5 = "F8CD2EB0-1D46-422B-A21C-331669B2CF6C"; public static string WorkPost_Welder5 = "F8CD2EB0-1D46-422B-A21C-331669B2CF6C";
/// <summary>
/// 焊工岗位Id——工艺焊工
/// </summary>
public static string WorkPost_Welder6 = "4ACC633F-BD81-4CBB-9058-A4E4DFFE7881";
/// <summary> /// <summary>
/// 铆工岗位Id /// 铆工岗位Id
/// </summary> /// </summary>
@ -791,6 +796,10 @@ namespace BLL
/// </summary> /// </summary>
public const string Menu_Opinion = "Menu_Opinion"; public const string Menu_Opinion = "Menu_Opinion";
/// <summary> /// <summary>
/// 指挥调度中心
/// </summary>
public const string Menu_CommandDispatchCenter = "Menu_CommandDispatchCenter";
/// <summary>
/// 文档管理 /// 文档管理
/// </summary> /// </summary>
public const string Menu_Doc = "Menu_Doc"; public const string Menu_Doc = "Menu_Doc";

View File

@ -122,7 +122,7 @@ namespace BLL
/// <param name="PageSize">每页数量</param> /// <param name="PageSize">每页数量</param>
/// <returns></returns> /// <returns></returns>
public static IEnumerable getListData(string projectId, string unitId, string personName, string identityCard, string treamGroupId, string workPostIds, public static IEnumerable getListData(string projectId, string unitId, string personName, string identityCard, string treamGroupId, string workPostIds,
bool ckTrain, string postType, bool ckJT, bool ckIdCardInfoNotOK, Grid Grid1,bool isBlack=false) bool ckTrain, string postType, bool ckJT, bool ckIdCardInfoNotOK, bool chManager, Grid Grid1,bool isBlack=false)
{ {
IQueryable<Model.View_SitePerson_Person> getPersonList = getPersonLists.Where(x => x.ProjectId == projectId); IQueryable<Model.View_SitePerson_Person> getPersonList = getPersonLists.Where(x => x.ProjectId == projectId);
if (!string.IsNullOrEmpty(unitId)) if (!string.IsNullOrEmpty(unitId))
@ -180,6 +180,10 @@ namespace BLL
{ {
getPersonList = getPersonList.Where(x => x.RealNameAddTime == null); getPersonList = getPersonList.Where(x => x.RealNameAddTime == null);
} }
if (chManager)
{
getPersonList = getPersonList.Where(x => x.PostType == Const.PostType_1);
}
if (ckIdCardInfoNotOK) if (ckIdCardInfoNotOK)
{ {
getPersonList = getPersonList.Where(x => x.IdentityCard == null || x.HeadImage == null || (x.IdentityCard.Length != 15 && x.IdentityCard.Length != 18)); getPersonList = getPersonList.Where(x => x.IdentityCard == null || x.HeadImage == null || (x.IdentityCard.Length != 15 && x.IdentityCard.Length != 18));

View File

@ -49,6 +49,7 @@ namespace BLL
PlanDate = MonthPlan.PlanDate, PlanDate = MonthPlan.PlanDate,
DutyPerson = MonthPlan.DutyPerson, DutyPerson = MonthPlan.DutyPerson,
RealDate = MonthPlan.RealDate, RealDate = MonthPlan.RealDate,
IsOK = MonthPlan.IsOK,
Remark = MonthPlan.Remark, Remark = MonthPlan.Remark,
CompileMan = MonthPlan.CompileMan, CompileMan = MonthPlan.CompileMan,
CompileDate = MonthPlan.CompileDate, CompileDate = MonthPlan.CompileDate,
@ -73,6 +74,7 @@ namespace BLL
newMonthPlan.PlanDate = MonthPlan.PlanDate; newMonthPlan.PlanDate = MonthPlan.PlanDate;
newMonthPlan.DutyPerson = MonthPlan.DutyPerson; newMonthPlan.DutyPerson = MonthPlan.DutyPerson;
newMonthPlan.RealDate = MonthPlan.RealDate; newMonthPlan.RealDate = MonthPlan.RealDate;
newMonthPlan.IsOK = MonthPlan.IsOK;
newMonthPlan.Remark = MonthPlan.Remark; newMonthPlan.Remark = MonthPlan.Remark;
newMonthPlan.CompileMan = MonthPlan.CompileMan; newMonthPlan.CompileMan = MonthPlan.CompileMan;
newMonthPlan.CompileDate = MonthPlan.CompileDate; newMonthPlan.CompileDate = MonthPlan.CompileDate;

View File

@ -281,7 +281,8 @@ namespace BLL
var getInouts = from x in db.SitePerson_PersonInOut var getInouts = from x in db.SitePerson_PersonInOut
where x.ProjectId == projectId && x.ChangeTime.Value >= dateS where x.ProjectId == projectId && x.ChangeTime.Value >= dateS
select x; select x;
int SafeHours = 0; //int SafeHours = 0;
int SafeHours = db.SitePerson_PersonInOutNumber.Where(x => x.ProjectId == projectId && x.InOutDate < dateS).Max(x => x.WorkHours) ?? 0;
foreach (var itemNum in getNums) foreach (var itemNum in getNums)
{ {
DateTime date = Funs.GetNewDateTimeOrNow(itemNum.InOutDate.ToShortDateString()); DateTime date = Funs.GetNewDateTimeOrNow(itemNum.InOutDate.ToShortDateString());

View File

@ -189,7 +189,7 @@ namespace BLL
/// 项目OBS查询接口 /// 项目OBS查询接口
/// </summary> /// </summary>
/// <param name="proId">项目Id</param> /// <param name="proId">项目Id</param>
public static List<Model.PMPOBSOutInput> GetPMPProjectOBSMasterData(string proId) public static List<Model.PMPOBSOutInput> GetPMPProjectOBSData(string proId)
{ {
string url = $"{PmpApiUrl}/api/standard/dis/query_all"; string url = $"{PmpApiUrl}/api/standard/dis/query_all";
var token = GetToken(); var token = GetToken();

File diff suppressed because one or more lines are too long

View File

@ -205,9 +205,13 @@
<value>user</value> <value>user</value>
<comment>用户</comment> <comment>用户</comment>
</data> </data>
<data name="VideoSurveillance" xml:space="preserve"> <data name="VideoSurveillance" xml:space="preserve">
<value>Video surveillance</value> <value>Video surveillance</value>
<comment>视频监控</comment> <comment>视频监控</comment>
</data>
<data name="CommandDispatchCenter" xml:space="preserve">
<value>Command dispatch center</value>
<comment>指挥调度中心</comment>
</data> </data>
<data name="WeldingManage" xml:space="preserve"> <data name="WeldingManage" xml:space="preserve">
<value>Welding manage</value> <value>Welding manage</value>
@ -260,6 +264,10 @@
<data name="completed" xml:space="preserve"> <data name="completed" xml:space="preserve">
<value>Completed</value> <value>Completed</value>
<comment>已完成</comment> <comment>已完成</comment>
</data>
<data name="qualified" xml:space="preserve">
<value>Qualified</value>
<comment>合格数</comment>
</data> </data>
<data name="ConstructionUnit" xml:space="preserve"> <data name="ConstructionUnit" xml:space="preserve">
<value>Construction unit</value> <value>Construction unit</value>

File diff suppressed because it is too large Load Diff

View File

@ -186,6 +186,9 @@
<data name="VideoSurveillance" xml:space="preserve"> <data name="VideoSurveillance" xml:space="preserve">
<value>视频监控</value> <value>视频监控</value>
</data> </data>
<data name="CommandDispatchCenter" xml:space="preserve">
<value>指挥调度中心</value>
</data>
<data name="WeldingManage" xml:space="preserve"> <data name="WeldingManage" xml:space="preserve">
<value>焊接管理</value> <value>焊接管理</value>
</data> </data>
@ -224,6 +227,9 @@
</data> </data>
<data name="completed" xml:space="preserve"> <data name="completed" xml:space="preserve">
<value>已完成</value> <value>已完成</value>
</data>
<data name="qualified" xml:space="preserve">
<value>合格数</value>
</data> </data>
<data name="ConstructionUnit" xml:space="preserve"> <data name="ConstructionUnit" xml:space="preserve">
<value>施工单位</value> <value>施工单位</value>
@ -1083,7 +1089,7 @@
<data name="main_new1_QualityInspection_AllInspectionManagement_Label" xml:space="preserve"> <data name="main_new1_QualityInspection_AllInspectionManagement_Label" xml:space="preserve">
<value>共检总数</value> <value>共检总数</value>
</data> </data>
<data name="main_new1_QualityInspection_IsOnceInspectionManagement_Label" xml:space="preserve"> <data name="main_new1_QualityInspection_IsOnceInspectionManagement_Label" xml:space="preserve">
<value>一次合格数量</value> <value>一次合格数量</value>
</data> </data>
<data name="main_new1_QualityInspection_InspectionManagementZgl_Label" xml:space="preserve"> <data name="main_new1_QualityInspection_InspectionManagementZgl_Label" xml:space="preserve">

View File

@ -177,6 +177,15 @@ namespace Resources {
} }
} }
/// <summary>
/// 查找类似 指挥调度中心 的本地化字符串。
/// </summary>
internal static string CommandDispatchCenter {
get {
return ResourceManager.GetString("CommandDispatchCenter", resourceCulture);
}
}
/// <summary> /// <summary>
/// 查找类似 已完成 的本地化字符串。 /// 查找类似 已完成 的本地化字符串。
/// </summary> /// </summary>
@ -2796,6 +2805,15 @@ namespace Resources {
} }
} }
/// <summary>
/// 查找类似 合格数 的本地化字符串。
/// </summary>
internal static string qualified {
get {
return ResourceManager.GetString("qualified", resourceCulture);
}
}
/// <summary> /// <summary>
/// 查找类似 质量管理 的本地化字符串。 /// 查找类似 质量管理 的本地化字符串。
/// </summary> /// </summary>

View File

@ -39,7 +39,6 @@ namespace FineUIPro.Web.CQMS.BaseInfo
this.txtEndTime.Text = "24"; this.txtEndTime.Text = "24";
} }
} }
} }
protected void btnSave_Click(object sender, EventArgs e) protected void btnSave_Click(object sender, EventArgs e)

View File

@ -25,6 +25,11 @@
<f:DropDownList ID="sdrpUnitId" runat="server" Label="报验单位" LabelAlign="Right"> <f:DropDownList ID="sdrpUnitId" runat="server" Label="报验单位" LabelAlign="Right">
</f:DropDownList> </f:DropDownList>
<f:DropDownList ID="drpCNPr" runat="server" Label="专业" LabelAlign="Right" LabelWidth="60px"></f:DropDownList> <f:DropDownList ID="drpCNPr" runat="server" Label="专业" LabelAlign="Right" LabelWidth="60px"></f:DropDownList>
<f:DropDownList ID="drpSchemeType" runat="server" Label="方案类型" LabelAlign="Right" LabelWidth="100px">
<f:ListItem Text="- 请选择 -" Value="" />
<f:ListItem Text="危大工程" Value="危大工程" />
<f:ListItem Text="超危大工程" Value="超危大工程" />
</f:DropDownList>
<f:TextBox runat="server" ID="txtPlanName" Label="方案名称" LabelAlign="Right"></f:TextBox> <f:TextBox runat="server" ID="txtPlanName" Label="方案名称" LabelAlign="Right"></f:TextBox>
<f:Button ID="btnSearch" Icon="SystemSearch" <f:Button ID="btnSearch" Icon="SystemSearch"
EnablePostBack="true" runat="server" ToolTip="查询" OnClick="btnSearch_Click"> EnablePostBack="true" runat="server" ToolTip="查询" OnClick="btnSearch_Click">
@ -51,10 +56,10 @@
HeaderTextAlign="Center" Width="200px"> HeaderTextAlign="Center" Width="200px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="SchemeType" DataField="SchemeType" FieldType="String" HeaderText="方案类型" TextAlign="Center" <f:RenderField ColumnID="SchemeType" DataField="SchemeType" FieldType="String" HeaderText="方案类型" TextAlign="Center"
HeaderTextAlign="Center" Width="200px"> HeaderTextAlign="Center" Width="200px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="TypeName" DataField="TypeName" FieldType="String" HeaderText="类型" TextAlign="Center" <f:RenderField ColumnID="TypeName" DataField="TypeName" FieldType="String" HeaderText="类型" TextAlign="Center"
HeaderTextAlign="Center" Width="200px"> HeaderTextAlign="Center" Width="200px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="ProfessionalName" DataField="ProfessionalName" FieldType="String" HeaderText="专业" TextAlign="Center" <f:RenderField ColumnID="ProfessionalName" DataField="ProfessionalName" FieldType="String" HeaderText="专业" TextAlign="Center"
HeaderTextAlign="Center" Width="150px"> HeaderTextAlign="Center" Width="150px">
@ -82,10 +87,10 @@
<f:RenderField ColumnID="ApprovalMan" DataField="ApprovalMan" FieldType="String" HeaderText="批准人" TextAlign="Center" <f:RenderField ColumnID="ApprovalMan" DataField="ApprovalMan" FieldType="String" HeaderText="批准人" TextAlign="Center"
HeaderTextAlign="Center" Width="120px"> HeaderTextAlign="Center" Width="120px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="IsReview" DataField="IsReview" FieldType="String" HeaderText="是否通过专家评审" TextAlign="Center" <f:RenderField ColumnID="IsReview" DataField="IsReview" FieldType="String" HeaderText="是否通过专家评审" TextAlign="Center"
HeaderTextAlign="Center" Width="150px"> HeaderTextAlign="Center" Width="150px">
</f:RenderField> </f:RenderField>
<%-- <f:RenderField ColumnID="ImplementationDeviation" DataField="ImplementationDeviation" FieldType="String" HeaderText="施工总结" TextAlign="Center" <%-- <f:RenderField ColumnID="ImplementationDeviation" DataField="ImplementationDeviation" FieldType="String" HeaderText="施工总结" TextAlign="Center"
HeaderTextAlign="Center" Width="220px"> HeaderTextAlign="Center" Width="220px">
</f:RenderField>--%> </f:RenderField>--%>
<%-- <f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" > --%> <%-- <f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" > --%>
@ -97,7 +102,7 @@
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Center"> <f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink" OnClick="attchUrl_Click" <asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink" OnClick="attchUrl_Click"
Text='查看' ToolTip="附件查看"> Text='查看' ToolTip="附件查看">
</asp:LinkButton> </asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
@ -128,8 +133,8 @@
Width="1200px" Height="660px"> Width="1200px" Height="660px">
</f:Window> </f:Window>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true" <f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px" Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px"> Height="500px">
</f:Window> </f:Window>
<f:Menu ID="Menu1" runat="server"> <f:Menu ID="Menu1" runat="server">
<Items> <Items>

View File

@ -54,6 +54,11 @@ namespace FineUIPro.Web.Comprehensive
strSql += " AND C.CNProfessionalId=@CNProfessionalId"; strSql += " AND C.CNProfessionalId=@CNProfessionalId";
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNPr.SelectedValue)); listStr.Add(new SqlParameter("@CNProfessionalId", drpCNPr.SelectedValue));
} }
if (drpSchemeType.SelectedValue != BLL.Const._Null && !string.IsNullOrWhiteSpace(drpSchemeType.SelectedValue))
{
strSql += " AND C.SchemeType=@SchemeType";
listStr.Add(new SqlParameter("@SchemeType", drpSchemeType.SelectedValue));
}
if (!string.IsNullOrEmpty(this.txtPlanName.Text.Trim())) if (!string.IsNullOrEmpty(this.txtPlanName.Text.Trim()))
{ {
strSql += " AND C.PlanName like @PlanName"; strSql += " AND C.PlanName like @PlanName";
@ -433,7 +438,7 @@ namespace FineUIPro.Web.Comprehensive
} }
} }
#endregion #endregion
protected void attchUrl_Click(object sender, EventArgs e) protected void attchUrl_Click(object sender, EventArgs e)
{ {
Debug.WriteLine("attchUrl_Click"); Debug.WriteLine("attchUrl_Click");

View File

@ -77,6 +77,15 @@ namespace FineUIPro.Web.Comprehensive
/// </remarks> /// </remarks>
protected global::FineUIPro.DropDownList drpCNPr; protected global::FineUIPro.DropDownList drpCNPr;
/// <summary>
/// drpSchemeType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpSchemeType;
/// <summary> /// <summary>
/// txtPlanName 控件。 /// txtPlanName 控件。
/// </summary> /// </summary>

View File

@ -87,7 +87,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
this.AttachUrl4.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_4")); this.AttachUrl4.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_4"));
this.AttachUrl5.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_5")); this.AttachUrl5.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_5"));
this.AttachUrl6.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_6")); this.AttachUrl6.InnerHtml = BLL.UploadAttachmentService.ShowAttachment("../../", getUrl(this.MajorPlanApprovalId + "_6"));
this.txtTrainPersonNum.Text = majorPlanApproval.TrainPersonNum.HasValue ? majorPlanApproval.TrainPersonNum.ToString() : ""; this.txtTrainPersonNum.Text = majorPlanApproval.TrainPersonNum.HasValue ? majorPlanApproval.TrainPersonNum.ToString() : "";
this.txtAuditMan.Text = majorPlanApproval.AuditMan; this.txtAuditMan.Text = majorPlanApproval.AuditMan;
this.txtApprovalMan.Text = majorPlanApproval.ApprovalMan; this.txtApprovalMan.Text = majorPlanApproval.ApprovalMan;
@ -130,7 +130,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
Alert.ShowInTop("请选择类型!", MessageBoxIcon.Warning); Alert.ShowInTop("请选择类型!", MessageBoxIcon.Warning);
return; return;
} }
if (!string.IsNullOrEmpty(this.txtExpectedTime.Text)) if (!string.IsNullOrEmpty(this.txtExpectedTime.Text))
{ {
majorPlanApproval.ExpectedTime = Convert.ToDateTime(this.txtExpectedTime.Text); majorPlanApproval.ExpectedTime = Convert.ToDateTime(this.txtExpectedTime.Text);
@ -157,7 +157,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
majorPlanApproval.TrainPersonNum = Funs.GetNewInt(this.txtTrainPersonNum.Text.Trim()); majorPlanApproval.TrainPersonNum = Funs.GetNewInt(this.txtTrainPersonNum.Text.Trim());
if (this.drpStates.SelectedValue != "1") if (this.drpSchemeType.SelectedValue == "超危大工程" && this.drpStates.SelectedValue != "1")
{ {
//判断附件是否必传 //判断附件是否必传
if (!returnFj(this.hdAttachUrl.Text + "_1")) if (!returnFj(this.hdAttachUrl.Text + "_1"))
@ -196,8 +196,8 @@ namespace FineUIPro.Web.CQMS.Comprehensive
return; return;
} }
} }
majorPlanApproval.ProjectId = this.CurrUser.LoginProjectId; majorPlanApproval.ProjectId = this.CurrUser.LoginProjectId;
if (this.drpUnitId.SelectedValue != BLL.Const._Null) if (this.drpUnitId.SelectedValue != BLL.Const._Null)
{ {
@ -279,7 +279,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_1", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_1", BLL.Const.MajorPlanApprovalMenuId)));
} }
protected void btnAttach_Click2(object sender, EventArgs e) protected void btnAttach_Click2(object sender, EventArgs e)
@ -291,7 +291,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_2", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_2", BLL.Const.MajorPlanApprovalMenuId)));
} }
protected void btnAttach_Click3(object sender, EventArgs e) protected void btnAttach_Click3(object sender, EventArgs e)
@ -303,7 +303,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_3", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_3", BLL.Const.MajorPlanApprovalMenuId)));
} }
protected void btnAttach_Click4(object sender, EventArgs e) protected void btnAttach_Click4(object sender, EventArgs e)
@ -315,7 +315,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_4", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_4", BLL.Const.MajorPlanApprovalMenuId)));
} }
protected void btnAttach_Click5(object sender, EventArgs e) protected void btnAttach_Click5(object sender, EventArgs e)
@ -327,7 +327,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_5", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_5", BLL.Const.MajorPlanApprovalMenuId)));
} }
protected void btnAttach_Click6(object sender, EventArgs e) protected void btnAttach_Click6(object sender, EventArgs e)
@ -339,13 +339,14 @@ namespace FineUIPro.Web.CQMS.Comprehensive
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format( PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format(
"../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}", "../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/MajorPlanApproval&menuId={1}",
this.hdAttachUrl.Text+"_6", BLL.Const.MajorPlanApprovalMenuId))); this.hdAttachUrl.Text + "_6", BLL.Const.MajorPlanApprovalMenuId)));
} }
private bool returnFj(string id) { private bool returnFj(string id)
{
bool isT = true; bool isT = true;
var model = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == id); var model = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == id);
if (model==null) if (model == null)
{ {
return false; return false;
} }

View File

@ -9,7 +9,7 @@
</head> </head>
<body> <body>
<form id="form1" runat="server"> <form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1"/> <f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" <f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch"> ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items> <Items>
@ -59,13 +59,13 @@
<f:RenderField ColumnID="ProfessionalName" DataField="ProfessionalName" FieldType="String" HeaderText="专业" TextAlign="Center" <f:RenderField ColumnID="ProfessionalName" DataField="ProfessionalName" FieldType="String" HeaderText="专业" TextAlign="Center"
HeaderTextAlign="Center" Width="110px"> HeaderTextAlign="Center" Width="110px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="NoticeCode" DataField="NoticeCode" FieldType="String" HeaderText="共检通知单编号" TextAlign="Center" <f:RenderField ColumnID="NoticeCode" DataField="NoticeCode" SortField="NoticeCode" FieldType="String" HeaderText="共检通知单编号" TextAlign="Center"
HeaderTextAlign="Center" Width="130px"> HeaderTextAlign="Center" Width="130px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="AcceptanceSite" DataField="AcceptanceSite" FieldType="String" HeaderText="验收部位" TextAlign="Center" <f:RenderField ColumnID="AcceptanceSite" DataField="AcceptanceSite" FieldType="String" HeaderText="验收部位" TextAlign="Center"
HeaderTextAlign="Center" Width="150px"> HeaderTextAlign="Center" Width="150px">
</f:RenderField> </f:RenderField>
<%-- <f:RenderField ColumnID="AcceptanceCheckMan" DataField="AcceptanceCheckMan" FieldType="String" HeaderText="检查人" TextAlign="Center" <%-- <f:RenderField ColumnID="AcceptanceCheckMan" DataField="AcceptanceCheckMan" FieldType="String" HeaderText="检查人" TextAlign="Center"
HeaderTextAlign="Center" Width="120px"> HeaderTextAlign="Center" Width="120px">
</f:RenderField>--%> </f:RenderField>--%>
<f:TemplateField ColumnID="AcceptanceCheckMan" Width="280px" HeaderText="检查人" HeaderTextAlign="Center" TextAlign="Center"> <f:TemplateField ColumnID="AcceptanceCheckMan" Width="280px" HeaderText="检查人" HeaderTextAlign="Center" TextAlign="Center">
@ -79,13 +79,13 @@
<f:RenderField ColumnID="InspectionCode" DataField="InspectionCode" FieldType="String" HeaderText="报检编号" TextAlign="Center" <f:RenderField ColumnID="InspectionCode" DataField="InspectionCode" FieldType="String" HeaderText="报检编号" TextAlign="Center"
HeaderTextAlign="Center" Width="120px"> HeaderTextAlign="Center" Width="120px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="InspectionDate" DataField="InspectionDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="验收日期" TextAlign="Center" <f:RenderField ColumnID="InspectionDate" DataField="InspectionDate" SortField="InspectionDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="验收日期" TextAlign="Center"
HeaderTextAlign="Center" Width="120px"> HeaderTextAlign="Center" Width="120px">
</f:RenderField> </f:RenderField>
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" > <f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left">
<ItemTemplate> <ItemTemplate>
<asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink" <asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink"
Text='<%# BLL.AttachFileService.GetBtnFileUrl(Eval("InspectionId")+"R") %>' ToolTip="附件查看"></asp:LinkButton> Text='<%# BLL.AttachFileService.GetBtnFileUrl(Eval("InspectionId")+"R") %>' ToolTip="附件查看"></asp:LinkButton>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
</Columns> </Columns>

View File

@ -33,54 +33,40 @@ namespace FineUIPro.Web.CQMS.ProcessControl
/// </summary> /// </summary>
public void BindGrid() public void BindGrid()
{ {
string strSql = @"SELECT P.InspectionId, StringBuilder sb = new StringBuilder();
P.ProjectId, sb.Append("SELECT P.InspectionId,P.ProjectId,P.UnitId,P.CNProfessionalId,P.UnitWorkId,U.UnitName,C.ProfessionalName,P.NoticeCode,UnitWork.UnitWorkName,DP.DivisionName AS Branch,BP.BreakdownName AS ControlPointType,BP.Class,P.AcceptanceSite,P.AcceptanceCheckMan,(CASE WHEN IsOnceQualified='False' THEN '否' ELSE '是' END)AS IsOnceQualified,P.InspectionCode,P.InspectionDate ");
P.UnitId, sb.Append("FROM ProcessControl_InspectionManagement AS P ");
P.CNProfessionalId, sb.Append("LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId ");
P.UnitWorkId, sb.Append("LEFT JOIN Base_CNProfessional C ON C.CNProfessionalId = P.CNProfessionalId ");
U.UnitName, sb.Append("LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId ");
C.ProfessionalName, sb.Append("LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch ");
P.NoticeCode, sb.Append("LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType ");
UnitWork.UnitWorkName, sb.Append("WHERE P.ProjectId=@ProjectId ");
DP.DivisionName AS Branch,
BP.BreakdownName AS ControlPointType,
BP.Class,
P.AcceptanceSite,
P.AcceptanceCheckMan,
(CASE WHEN IsOnceQualified='False' THEN '否' ELSE '是' END)AS IsOnceQualified,
P.InspectionCode,
P.InspectionDate"
+ @" FROM ProcessControl_InspectionManagement AS P "
+ @" LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId"
+ @" LEFT JOIN Base_CNProfessional C ON C.CNProfessionalId = P.CNProfessionalId"
+ @" LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId"
+ @" LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch"
+ @" LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType"
+ @" WHERE P.ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>(); List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (drpUnit.SelectedValue != BLL.Const._Null) if (drpUnit.SelectedValue != BLL.Const._Null)
{ {
strSql += " AND P.UnitId=@UnitId"; sb.Append("AND P.UnitId=@UnitId ");
listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue)); listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
} }
if (drpCNProfessional.SelectedValue != BLL.Const._Null) if (drpCNProfessional.SelectedValue != BLL.Const._Null)
{ {
strSql += " AND P.CNProfessionalId=@CNProfessionalId"; sb.Append("AND P.CNProfessionalId=@CNProfessionalId ");
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue)); listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
} }
if (!string.IsNullOrEmpty(txtStarTime.Text)) if (!string.IsNullOrEmpty(txtStarTime.Text))
{ {
strSql += " AND P.InspectionDate >= @startTime"; sb.Append("AND P.InspectionDate >= @startTime ");
listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text))); listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text)));
} }
if (!string.IsNullOrEmpty(txtEndTime.Text)) if (!string.IsNullOrEmpty(txtEndTime.Text))
{ {
strSql += " AND P.InspectionDate <= @endTime"; sb.Append("AND P.InspectionDate <= @endTim ");
listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text))); listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text)));
} }
sb.Append("ORDER BY P.NoticeCode DESC ");
SqlParameter[] parameter = listStr.ToArray(); SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); DataTable tb = SQLHelper.GetDataTableRunText(sb.ToString(), parameter);
Grid1.RecordCount = tb.Rows.Count; Grid1.RecordCount = tb.Rows.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb); //tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb); var table = this.GetPagedDataTable(Grid1, tb);
@ -246,11 +232,38 @@ namespace FineUIPro.Web.CQMS.ProcessControl
string newUrl = string.Empty; string newUrl = string.Empty;
uploadfilepath = rootPath + initTemplatePath; uploadfilepath = rootPath + initTemplatePath;
var lists = (from x in Funs.DB.ProcessControl_InspectionManagementDetail //var lists = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
join y in Funs.DB.ProcessControl_InspectionManagement // join y in Funs.DB.ProcessControl_InspectionManagement
on x.InspectionId equals y.InspectionId // on x.InspectionId equals y.InspectionId
where y.ProjectId == this.CurrUser.LoginProjectId // where y.ProjectId == this.CurrUser.LoginProjectId
select y); // select y);
var db = Funs.DB;
var lists = (from x in db.ProcessControl_InspectionManagement
join bu in db.Base_Unit on x.UnitId equals bu.UnitId into buGroup
from bu in buGroup.DefaultIfEmpty()
join bcn in db.Base_CNProfessional on x.CNProfessionalId equals bcn.CNProfessionalId into bcnGroup
from bcn in bcnGroup.DefaultIfEmpty()
//join wbsuw in db.WBS_UnitWork on x.UnitWorkId equals wbsuw.UnitWorkId into wbsuwGroup
//from wbsuw in wbsuwGroup.DefaultIfEmpty()
//join wbsd in db.WBS_DivisionProject on x.Branch equals wbsd.DivisionProjectId into wbsdGroup
//from wbsd in wbsdGroup.DefaultIfEmpty()
//join wbsbp in db.WBS_BreakdownProject on x.ControlPointType equals wbsbp.BreakdownProjectId into wbsbpGroup
//from wbsbp in wbsbpGroup.DefaultIfEmpty()
where x.ProjectId == this.CurrUser.LoginProjectId
orderby x.NoticeCode descending
select new
{
UnitId = x.UnitId,
UnitName = bu.UnitName,
CNProfessionalId = x.CNProfessionalId,
ProfessionalName = bcn.ProfessionalName,
NoticeCode = x.NoticeCode,
AcceptanceSite = x.AcceptanceSite,
AcceptanceCheckMan = x.AcceptanceCheckMan,
InspectionDate = x.InspectionDate,
IsOnceQualified = x.IsOnceQualified,
InspectionCode = x.InspectionCode
});
if (drpUnit.SelectedValue != BLL.Const._Null) if (drpUnit.SelectedValue != BLL.Const._Null)
{ {
lists = lists.Where(x => x.UnitId == drpUnit.SelectedValue); lists = lists.Where(x => x.UnitId == drpUnit.SelectedValue);
@ -307,22 +320,11 @@ namespace FineUIPro.Web.CQMS.ProcessControl
// 添加数据 // 添加数据
cell = row.CreateCell(0); cell = row.CreateCell(0);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
string unitName = string.Empty; cell.SetCellValue(item.UnitName);//施工分包商
if (!string.IsNullOrEmpty(item.UnitId))
{
unitName = BLL.UnitService.GetUnitNameByUnitId(item.UnitId);
}
cell.SetCellValue(unitName);//施工分包商
cell = row.CreateCell(1); cell = row.CreateCell(1);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
string proName = string.Empty; cell.SetCellValue(item.ProfessionalName);//专业
var cnp = BLL.CNProfessionalService.GetCNProfessional(item.CNProfessionalId);
if (cnp != null)
{
proName = cnp.ProfessionalName;
}
cell.SetCellValue(proName);//专业
cell = row.CreateCell(2); cell = row.CreateCell(2);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
@ -343,7 +345,7 @@ namespace FineUIPro.Web.CQMS.ProcessControl
cell = row.CreateCell(5); cell = row.CreateCell(5);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
cell.SetCellValue(item.IsOnceQualified == true ? "是" : "否");//是否一次合格 cell.SetCellValue(item.IsOnceQualified == false ? "否" : "是");//是否一次合格
cell = row.CreateCell(6); cell = row.CreateCell(6);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;

View File

@ -1,6 +1,7 @@
using Aspose.Words; using Aspose.Words;
using Aspose.Words.Tables; using Aspose.Words.Tables;
using BLL; using BLL;
using FineUIPro.Web.BaseInfo;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data; using System.Data;
@ -9,6 +10,7 @@ using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.ListView;
namespace FineUIPro.Web.CQMS.ProcessControl namespace FineUIPro.Web.CQMS.ProcessControl
{ {
@ -47,113 +49,149 @@ namespace FineUIPro.Web.CQMS.ProcessControl
/// </summary> /// </summary>
public void BindGrid() public void BindGrid()
{ {
if (this.CurrUser.UserId==BLL.Const.hfnbdId) DataTable tb = BindData();
{ Grid1.RecordCount = tb.Rows.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
//if (this.CurrUser.UserId == BLL.Const.hfnbdId)
//{
// string strSql = @"SELECT P.InspectionId,P.ProjectId,P.UnitId,
// P.CNProfessionalId,
// P.UnitWorkId,U.UnitName,
// C.DetectionItems as ProfessionalName,
// P.NoticeCode,UnitWork.UnitWorkName,
// DP.DivisionName AS Branch,
// BP.BreakdownName AS ControlPointType,
// BP.Class,P.AcceptanceSite, P.AcceptanceCheckMan"
// + @" FROM ProcessControl_InspectionManagement AS P"
// + @" LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId"
// + @" LEFT JOIN Control_PointCropping C ON C.ControlId = P.CNProfessionalId"
// + @" LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId"
// + @" LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch"
// + @" LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType"
// + @" WHERE P.ProjectId=@ProjectId ";
// List<SqlParameter> listStr = new List<SqlParameter>();
// listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
// if (drpUnit.SelectedValue != BLL.Const._Null)
// {
// strSql += " AND P.UnitId=@UnitId";
// listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
// }
// if (drpCNProfessional.SelectedValue != BLL.Const._Null)
// {
// strSql += " AND P.CNProfessionalId=@CNProfessionalId";
// listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
// }
// if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
// {
// strSql += " AND P.InspectionDate >= @startTime";
// listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text.Trim())));
// }
// if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
// {
// strSql += " AND P.InspectionDate <= @endTime";
// listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text.Trim())));
// }
// SqlParameter[] parameter = listStr.ToArray();
// DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// Grid1.RecordCount = tb.Rows.Count;
// //tb = GetFilteredTable(Grid1.FilteredData, tb);
// var table = this.GetPagedDataTable(Grid1, tb);
// Grid1.DataSource = table;
// Grid1.DataBind();
//}
//else
//{
// string strSql = @"SELECT P.InspectionId,P.ProjectId,P.UnitId,
// P.CNProfessionalId,
// P.UnitWorkId,U.UnitName,
// C.ProfessionalName as ProfessionalName,
// P.NoticeCode,UnitWork.UnitWorkName,
// DP.DivisionName AS Branch,
// BP.BreakdownName AS ControlPointType,
// BP.Class,P.AcceptanceSite,P.AcceptanceCheckMan"
// + @" FROM ProcessControl_InspectionManagement AS P"
// + @" LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId"
// + @" left join Base_CNProfessional c on c.CNProfessionalId = P.CNProfessionalId"
// + @" LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId"
// + @" LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch"
// + @" LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType"
// + @" WHERE P.ProjectId=@ProjectId ";
// List<SqlParameter> listStr = new List<SqlParameter>();
// listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
// if (drpUnit.SelectedValue != BLL.Const._Null)
// {
// strSql += " AND P.UnitId=@UnitId";
// listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
// }
// if (drpCNProfessional.SelectedValue != BLL.Const._Null)
// {
// strSql += " AND P.CNProfessionalId=@CNProfessionalId";
// listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
// }
// if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
// {
// strSql += " AND P.InspectionDate >= @startTime";
// listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text.Trim())));
// }
// if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
// {
// strSql += " AND P.InspectionDate <= @endTime";
// listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text.Trim())));
// }
// SqlParameter[] parameter = listStr.ToArray();
// DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// Grid1.RecordCount = tb.Rows.Count;
// //tb = GetFilteredTable(Grid1.FilteredData, tb);
// var table = this.GetPagedDataTable(Grid1, tb);
// Grid1.DataSource = table;
// Grid1.DataBind();
//}
}
string strSql = @"SELECT P.InspectionId, /// <summary>
P.ProjectId, /// 查询数据
P.UnitId, /// </summary>
P.CNProfessionalId, /// <returns></returns>
P.UnitWorkId, public DataTable BindData()
U.UnitName, {
C.DetectionItems as ProfessionalName, StringBuilder sb = new StringBuilder();
P.NoticeCode, sb.Append("SELECT P.InspectionId,P.ProjectId,P.UnitId,P.CNProfessionalId,P.UnitWorkId,U.UnitName,C.ProfessionalName as ProfessionalName,P.NoticeCode,UnitWork.UnitWorkName,DP.DivisionName AS Branch,BP.BreakdownName AS ControlPointType,BP.Class,P.AcceptanceSite,P.AcceptanceCheckMan ");
UnitWork.UnitWorkName, sb.Append("FROM ProcessControl_InspectionManagement AS P ");
DP.DivisionName AS Branch, sb.Append("LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId ");
BP.BreakdownName AS ControlPointType, sb.Append("LEFT JOIN Base_CNProfessional AS C on c.CNProfessionalId = P.CNProfessionalId ");
BP.Class, sb.Append("LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId ");
P.AcceptanceSite, sb.Append("LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch ");
P.AcceptanceCheckMan" sb.Append("LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType ");
+ @" FROM ProcessControl_InspectionManagement AS P" sb.Append("WHERE P.ProjectId=@ProjectId ");
+ @" LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId" List<SqlParameter> listStr = new List<SqlParameter>();
+ @" LEFT JOIN Control_PointCropping C ON C.ControlId = P.CNProfessionalId" listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
+ @" LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId" if (drpUnit.SelectedValue != BLL.Const._Null)
+ @" LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch"
+ @" LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType"
+ @" WHERE P.ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (drpUnit.SelectedValue != BLL.Const._Null)
{
strSql += " AND P.UnitId=@UnitId";
listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
}
if (drpCNProfessional.SelectedValue != BLL.Const._Null)
{
strSql += " AND P.CNProfessionalId=@CNProfessionalId";
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
}
if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
{
strSql += " AND P.InspectionDate >= @startTime";
listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text.Trim())));
}
if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
{
strSql += " AND P.InspectionDate <= @endTime";
listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text.Trim())));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
else
{ {
string strSql = @"SELECT P.InspectionId, sb.Append("AND P.UnitId=@UnitId ");
P.ProjectId, listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
P.UnitId,
P.CNProfessionalId,
P.UnitWorkId,
U.UnitName,
C.ProfessionalName as ProfessionalName,
P.NoticeCode,
UnitWork.UnitWorkName,
DP.DivisionName AS Branch,
BP.BreakdownName AS ControlPointType,
BP.Class,
P.AcceptanceSite,
P.AcceptanceCheckMan"
+ @" FROM ProcessControl_InspectionManagement AS P"
+ @" LEFT JOIN Base_Unit AS U ON U.UnitId = P.UnitId"
+ @" left join Base_CNProfessional c on c.CNProfessionalId = P.CNProfessionalId"
+ @" LEFT JOIN WBS_UnitWork AS UnitWork ON UnitWork.UnitWorkId = P.UnitWorkId"
+ @" LEFT JOIN WBS_DivisionProject AS DP ON DP.DivisionProjectId = P.Branch"
+ @" LEFT JOIN WBS_BreakdownProject AS BP ON BP.BreakdownProjectId = P.ControlPointType"
+ @" WHERE P.ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (drpUnit.SelectedValue != BLL.Const._Null)
{
strSql += " AND P.UnitId=@UnitId";
listStr.Add(new SqlParameter("@UnitId", drpUnit.SelectedValue));
}
if (drpCNProfessional.SelectedValue != BLL.Const._Null)
{
strSql += " AND P.CNProfessionalId=@CNProfessionalId";
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
}
if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
{
strSql += " AND P.InspectionDate >= @startTime";
listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text.Trim())));
}
if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
{
strSql += " AND P.InspectionDate <= @endTime";
listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text.Trim())));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
} }
if (drpCNProfessional.SelectedValue != BLL.Const._Null)
{
sb.Append("AND P.CNProfessionalId=@CNProfessionalId ");
listStr.Add(new SqlParameter("@CNProfessionalId", drpCNProfessional.SelectedValue));
}
if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
{
sb.Append("AND P.InspectionDate >= @startTime ");
listStr.Add(new SqlParameter("@startTime", Funs.GetNewDateTime(txtStarTime.Text.Trim())));
}
if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
{
sb.Append("AND P.InspectionDate <= @endTime ");
listStr.Add(new SqlParameter("@endTime", Funs.GetNewDateTime(txtEndTime.Text.Trim())));
}
sb.Append("ORDER BY P.NoticeCode DESC ");
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(sb.ToString(), parameter);
return tb;
} }
#endregion #endregion
@ -342,6 +380,142 @@ namespace FineUIPro.Web.CQMS.ProcessControl
string newUrl = string.Empty; string newUrl = string.Empty;
uploadfilepath = rootPath + initTemplatePath; uploadfilepath = rootPath + initTemplatePath;
var db = Funs.DB;
var lists = (from x in db.ProcessControl_InspectionManagement
join bu in db.Base_Unit on x.UnitId equals bu.UnitId into buGroup
from bu in buGroup.DefaultIfEmpty()
join bcn in db.Base_CNProfessional on x.CNProfessionalId equals bcn.CNProfessionalId into bcnGroup
from bcn in bcnGroup.DefaultIfEmpty()
//join wbsuw in db.WBS_UnitWork on x.UnitWorkId equals wbsuw.UnitWorkId into wbsuwGroup
//from wbsuw in wbsuwGroup.DefaultIfEmpty()
//join wbsd in db.WBS_DivisionProject on x.Branch equals wbsd.DivisionProjectId into wbsdGroup
//from wbsd in wbsdGroup.DefaultIfEmpty()
//join wbsbp in db.WBS_BreakdownProject on x.ControlPointType equals wbsbp.BreakdownProjectId into wbsbpGroup
//from wbsbp in wbsbpGroup.DefaultIfEmpty()
where x.ProjectId == this.CurrUser.LoginProjectId
orderby x.NoticeCode descending
select new
{
UnitId = x.UnitId,
UnitName = bu.UnitName,
CNProfessionalId = x.CNProfessionalId,
ProfessionalName = bcn.ProfessionalName,
NoticeCode = x.NoticeCode,
AcceptanceSite = x.AcceptanceSite,
AcceptanceCheckMan = x.AcceptanceCheckMan,
InspectionDate = x.InspectionDate
});
if (drpUnit.SelectedValue != BLL.Const._Null)
{
lists = lists.Where(x => x.UnitId == drpUnit.SelectedValue);
}
if (drpCNProfessional.SelectedValue != BLL.Const._Null)
{
lists = lists.Where(x => x.CNProfessionalId == drpCNProfessional.SelectedValue);
}
if (!string.IsNullOrEmpty(txtStarTime.Text.Trim()))
{
lists = lists.Where(x => x.InspectionDate >= Funs.GetNewDateTime(txtStarTime.Text.Trim()));
}
if (!string.IsNullOrEmpty(txtEndTime.Text.Trim()))
{
lists = lists.Where(x => x.InspectionDate <= Funs.GetNewDateTime(txtEndTime.Text.Trim()));
}
if (lists != null)
{
string projectName = BLL.ProjectService.GetShortNameByProjectId(this.CurrUser.LoginProjectId);
newUrl = uploadfilepath.Replace("共检通知单模板", "共检通知单(" + projectName + DateTime.Now.ToString("yyyyMMdd") + "");
if (File.Exists(newUrl))
{
File.Delete(newUrl);
}
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 lists)
{
// 第二步:创建新数据行
row = sheet.CreateRow(i);
// 添加数据
cell = row.CreateCell(0);
cell.CellStyle = cellStyle;
cell.SetCellValue(item.UnitName);//施工分包商
cell = row.CreateCell(1);
cell.CellStyle = cellStyle;
cell.SetCellValue(item.ProfessionalName);//专业
cell = row.CreateCell(2);
cell.CellStyle = cellStyle;
cell.SetCellValue(item.NoticeCode);//共检通知单编号
cell = row.CreateCell(3);
cell.CellStyle = cellStyle;
cell.SetCellValue(item.AcceptanceSite);//验收部位
cell = row.CreateCell(4);
cell.CellStyle = cellStyle;
string userName = string.Empty;
if (!string.IsNullOrEmpty(item.AcceptanceCheckMan))
{
userName = ConvertCheckMan(item.AcceptanceCheckMan);
}
cell.SetCellValue(userName);//检查人
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);
}
}
protected void btnOut_Click2(object sender, EventArgs e)
{
string rootPath = Server.MapPath("~/");
string initTemplatePath = Const.InspectionNoticesTempUrl;
string uploadfilepath = string.Empty;
string newUrl = string.Empty;
uploadfilepath = rootPath + initTemplatePath;
var lists = (from x in Funs.DB.ProcessControl_InspectionManagementDetail var lists = (from x in Funs.DB.ProcessControl_InspectionManagementDetail
join y in Funs.DB.ProcessControl_InspectionManagement join y in Funs.DB.ProcessControl_InspectionManagement
on x.InspectionId equals y.InspectionId on x.InspectionId equals y.InspectionId
@ -1082,7 +1256,7 @@ namespace FineUIPro.Web.CQMS.ProcessControl
newInspection.UnqualifiedReason = inspection.UnqualifiedReason; newInspection.UnqualifiedReason = inspection.UnqualifiedReason;
//通知单编号后有字母递增无则加“a” //通知单编号后有字母递增无则加“a”
string fisrtE = inspection.NoticeCode.Substring(0,inspection.NoticeCode.Length - 1); string fisrtE = inspection.NoticeCode.Substring(0, inspection.NoticeCode.Length - 1);
string lastE = inspection.NoticeCode.Substring(inspection.NoticeCode.Length - 1, 1); string lastE = inspection.NoticeCode.Substring(inspection.NoticeCode.Length - 1, 1);
bool b = Regex.IsMatch(lastE, "[a-zA-Z]"); bool b = Regex.IsMatch(lastE, "[a-zA-Z]");
if (b) if (b)
@ -1093,7 +1267,7 @@ namespace FineUIPro.Web.CQMS.ProcessControl
else else
{ {
newInspection.NoticeCode = inspection.NoticeCode + "a"; newInspection.NoticeCode = inspection.NoticeCode + "a";
} }
newInspection.AcceptanceCheckMan = inspection.AcceptanceCheckMan; newInspection.AcceptanceCheckMan = inspection.AcceptanceCheckMan;
newInspection.ParentDivisionProjectId = inspection.ParentDivisionProjectId; newInspection.ParentDivisionProjectId = inspection.ParentDivisionProjectId;

View File

@ -72,8 +72,8 @@
<f:RenderField ColumnID="TotalRate" DataField="TotalRate" FieldType="String" HeaderText="累计一次合格率(%" TextAlign="Center" <f:RenderField ColumnID="TotalRate" DataField="TotalRate" FieldType="String" HeaderText="累计一次合格率(%" TextAlign="Center"
HeaderTextAlign="Center" Width="160px"> HeaderTextAlign="Center" Width="160px">
</f:RenderField> </f:RenderField>
<f:RenderField ColumnID="CreateDate" DataField="CreateDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="创建日期" TextAlign="Center" <f:RenderField ColumnID="CreateDate" DataField="CreateDate" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd HH:mm:ss" HeaderText="创建日期" TextAlign="Center"
HeaderTextAlign="Center" Width="120px"> HeaderTextAlign="Center" Width="160px">
</f:RenderField> </f:RenderField>
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" > <f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left" >
<ItemTemplate> <ItemTemplate>

View File

@ -321,7 +321,7 @@ namespace FineUIPro.Web.CQMS.ProcessControl
cell = row.CreateCell(6); cell = row.CreateCell(6);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
cell.SetCellValue(item.CreateDate.HasValue ? string.Format("{0:yyyy-MM-dd}", item.CreateDate) : "");//创建日期 cell.SetCellValue(item.CreateDate.HasValue ? string.Format("{0:yyyy-MM-dd HH:mm:ss}", item.CreateDate) : "");//创建日期
i++; i++;
} }

View File

@ -88,7 +88,6 @@ namespace FineUIPro.Web.CQMS.Solution
} }
protected DataTable ChecklistData() protected DataTable ChecklistData()
{ {
string strSql = @"SELECT chec.ConstructSolutionId,chec.ProjectId,chec.UnitId,chec.UnitWorkIds,chec.CNProfessionalCodes," string strSql = @"SELECT chec.ConstructSolutionId,chec.ProjectId,chec.UnitId,chec.UnitWorkIds,chec.CNProfessionalCodes,"
+ @" chec.CompileMan,chec.CompileDate,chec.code,chec.state,chec.SolutionType,chec.SolutionName," + @" chec.CompileMan,chec.CompileDate,chec.code,chec.state,chec.SolutionType,chec.SolutionName,"
+ @" unit.UnitName,u.userName as CompileManName,chec.SpecialSchemeTypeId,s.SolutionTempleteTypeName," + @" unit.UnitName,u.userName as CompileManName,chec.SpecialSchemeTypeId,s.SolutionTempleteTypeName,"

View File

@ -31,7 +31,7 @@
<Items> <Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="各项目基本情况" EnableCollapse="true" <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="各项目基本情况" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px" runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px"
SortField="ProjectName" SortDirection="ASC" OnSort="Grid1_Sort" EnableColumnLines="true" AllowPaging="true" SortField="ProjectCode" SortDirection="ASC" OnSort="Grid1_Sort" EnableColumnLines="true" AllowPaging="true"
IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid1_PageIndexChange" ForceFit="true" IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid1_PageIndexChange" ForceFit="true"
EnableTextSelection="True"> EnableTextSelection="True">
<Toolbars> <Toolbars>
@ -53,7 +53,7 @@
<asp:Label ID="labNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label> <asp:Label ID="labNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
<f:RenderField Width="120px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left" <f:RenderField Width="100px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left"
HeaderTextAlign="Center"> HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="450px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left" <f:RenderField Width="450px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left"
@ -83,9 +83,9 @@
</f:Tab> </f:Tab>
<f:Tab ID="Tab2" Title="月度计划统计" BodyPadding="5px" Layout="VBox" IconFont="Bookmark" runat="server"> <f:Tab ID="Tab2" Title="月度计划统计" BodyPadding="5px" Layout="VBox" IconFont="Bookmark" runat="server">
<Items> <Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="各项目基本情况" EnableCollapse="true" <f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="月度计划统计" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px" runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px"
SortField="ProjectName" SortDirection="ASC" OnSort="Grid2_Sort" EnableColumnLines="true" AllowPaging="true" SortField="ProjectCode" SortDirection="ASC" OnSort="Grid2_Sort" EnableColumnLines="true" AllowPaging="true"
IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid2_PageIndexChange" ForceFit="true" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid2_RowDoubleClick" IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid2_PageIndexChange" ForceFit="true" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid2_RowDoubleClick"
EnableTextSelection="True"> EnableTextSelection="True">
<Toolbars> <Toolbars>
@ -110,10 +110,10 @@
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center" <f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center"> TextAlign="Center">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label> <asp:Label ID="Label1" runat="server" Text='<%# Grid2.PageIndex * Grid2.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
<f:RenderField Width="150px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left" <f:RenderField Width="100px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left"
HeaderTextAlign="Center"> HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="350px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left" <f:RenderField Width="350px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left"
@ -160,9 +160,9 @@
</f:Tab> </f:Tab>
<f:Tab ID="Tab3" Title="周度计划统计" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server"> <f:Tab ID="Tab3" Title="周度计划统计" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server">
<Items> <Items>
<f:Grid ID="Grid3" ShowBorder="true" ShowHeader="false" Title="各项目基本情况" EnableCollapse="true" <f:Grid ID="Grid3" ShowBorder="true" ShowHeader="false" Title="周度计划统计" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px" runat="server" BoxFlex="1" DataKeyNames="ProjectId" DataIDField="ProjectId" AllowSorting="true" MarginRight="15px"
SortField="ProjectName" SortDirection="ASC" OnSort="Grid3_Sort" EnableColumnLines="true" AllowPaging="true" SortField="ProjectCode" SortDirection="ASC" OnSort="Grid3_Sort" EnableColumnLines="true" AllowPaging="true"
IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid3_PageIndexChange" ForceFit="true" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid3_RowDoubleClick" IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid3_PageIndexChange" ForceFit="true" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid3_RowDoubleClick"
EnableTextSelection="True"> EnableTextSelection="True">
<Toolbars> <Toolbars>
@ -184,10 +184,10 @@
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center" <f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center"> TextAlign="Center">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label> <asp:Label ID="Label2" runat="server" Text='<%# Grid3.PageIndex * Grid3.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
<f:RenderField Width="150px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left" <f:RenderField Width="100px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left"
HeaderTextAlign="Center"> HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="350px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left" <f:RenderField Width="350px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left"
@ -232,6 +232,93 @@
</f:Grid> </f:Grid>
</Items> </Items>
</f:Tab> </f:Tab>
<f:Tab ID="Tab4" Title="实物工程量统计" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server">
<Items>
<f:Grid ID="Grid4" ShowBorder="true" ShowHeader="false" Title="实物工程量统计" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="QuantityCompletionId" DataIDField="QuantityCompletionId" AllowSorting="true" MarginRight="15px"
SortField="ProjectCode,Name" SortDirection="ASC" OnSort="Grid4_Sort" EnableColumnLines="true" AllowPaging="true"
IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid4_PageIndexChange" ForceFit="true"
EnableTextSelection="True">
<Toolbars>
<f:Toolbar ID="Toolbar4" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DropDownList ID="drpProject4" runat="server" Label="项目" Width="400px" LabelWidth="80px" LabelAlign="Right"
EnableEdit="true" OnSelectedIndexChanged="TextBox4_TextChanged" AutoPostBack="true">
</f:DropDownList>
<f:TextBox runat="server" ID="txtTypeName" Label="类型" LabelWidth="150px" LabelAlign="Right" AutoPostBack="true" OnTextChanged="TextBox4_TextChanged"></f:TextBox>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="Button3" EnablePostBack="false" ToolTip="关闭" Text="关闭" runat="server" Icon="SystemClose" OnClientClick="closeNow();">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Grid4.PageIndex * Grid4.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="100px" ColumnID="ProjectCode" DataField="ProjectCode" FieldType="String" HeaderText="项目号" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="350px" ColumnID="ProjectName" ExpandUnusedSpace="true" DataField="ProjectName" FieldType="String" HeaderText="项目名称" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Name" ExpandUnusedSpace="true" DataField="Name" FieldType="String" HeaderText="类型" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="Unit" ExpandUnusedSpace="true" DataField="Unit" FieldType="String" HeaderText="单位" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="DesignNum" ExpandUnusedSpace="true" DataField="DesignNum" FieldType="String" HeaderText="设计数量" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:GroupField HeaderText="本期完成情况" TextAlign="Center">
<Columns>
<f:RenderField Width="100px" ColumnID="PlanNum" DataField="PlanNum" FieldType="String" HeaderText="计划项" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="RealNum" DataField="RealNum" FieldType="String" HeaderText="实际完成" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Rate" DataField="Rate" FieldType="String" HeaderText="完成率(%)" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="NextNum" DataField="NextNum" FieldType="String" HeaderText="下月计划" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="累计完成情况" TextAlign="Center">
<Columns>
<f:RenderField Width="100px" ColumnID="TotalPlanNum" DataField="TotalPlanNum" FieldType="String" HeaderText="计划项" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="TotalRealNum" DataField="TotalRealNum" FieldType="String" HeaderText="实际完成" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="TotalRate" DataField="TotalRate" FieldType="String" HeaderText="完成率(%)" TextAlign="Right"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:GroupField>
<f:RenderField Width="120px" ColumnID="SumRate" ExpandUnusedSpace="true" DataField="SumRate" FieldType="String" HeaderText="完成率(%)" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator4" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText4" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize4" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize4_SelectedIndexChanged">
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Tab>
<f:Tab ID="TabOnlineMenuSet" Title="个人完成情况统计" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server" Hidden="True"> <f:Tab ID="TabOnlineMenuSet" Title="个人完成情况统计" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server" Hidden="True">
<Items> <Items>
</Items> </Items>

View File

@ -4,6 +4,7 @@ using System.Collections.Generic;
using System.Data; using System.Data;
using System.Data.SqlClient; using System.Data.SqlClient;
using System.Linq; using System.Linq;
using System.Text;
namespace FineUIPro.Web.DataShow namespace FineUIPro.Web.DataShow
{ {
@ -16,14 +17,17 @@ namespace FineUIPro.Web.DataShow
Funs.DropDownPageSize(this.ddlPageSize); Funs.DropDownPageSize(this.ddlPageSize);
Funs.DropDownPageSize(this.ddlPageSize2); Funs.DropDownPageSize(this.ddlPageSize2);
Funs.DropDownPageSize(this.ddlPageSize3); Funs.DropDownPageSize(this.ddlPageSize3);
Funs.DropDownPageSize(this.ddlPageSize4);
ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
ddlPageSize2.SelectedValue = Grid2.PageSize.ToString(); ddlPageSize2.SelectedValue = Grid2.PageSize.ToString();
ddlPageSize3.SelectedValue = Grid3.PageSize.ToString(); ddlPageSize3.SelectedValue = Grid3.PageSize.ToString();
ddlPageSize4.SelectedValue = Grid4.PageSize.ToString();
BLL.ProjectService.InitProjectDropDownList(this.drpProject, true); BLL.ProjectService.InitProjectDropDownList(this.drpProject, true);
BLL.ProjectService.InitProjectDropDownList(this.drpProject2, true); BLL.ProjectService.InitProjectDropDownList(this.drpProject2, true);
BLL.UserService.InitSGBUser(this.drpDutyPerson2, true); BLL.UserService.InitSGBUser(this.drpDutyPerson2, true);
BLL.ProjectService.InitProjectDropDownList(this.drpProject3, true); BLL.ProjectService.InitProjectDropDownList(this.drpProject3, true);
BLL.UserService.InitSGBUser(this.drpDutyPerson3, true); BLL.UserService.InitSGBUser(this.drpDutyPerson3, true);
BLL.ProjectService.InitProjectDropDownList(this.drpProject4, true);
BindGrid1(); BindGrid1();
//统计月份信息 //统计月份信息
@ -60,7 +64,7 @@ left join (
where w.RealDate is not null and w.RealDate<=w.PlanDate where w.RealDate is not null and w.RealDate<=w.PlanDate
GROUP BY w.ProjectId GROUP BY w.ProjectId
) AS MonthPlanOK ON MonthPlanOK.ProjectId=p.ProjectId ) AS MonthPlanOK ON MonthPlanOK.ProjectId=p.ProjectId
where ProjectState =1 "; where isnull(p.ProjectState,1)=1 ";
List<SqlParameter> listStr = new List<SqlParameter>(); List<SqlParameter> listStr = new List<SqlParameter>();
string cpara = string.Empty; string cpara = string.Empty;
if (this.drpProject.SelectedValue != Const._Null) if (this.drpProject.SelectedValue != Const._Null)
@ -104,11 +108,18 @@ left join (
tb.Columns.Add(new DataColumn("TotalRate", typeof(decimal))); tb.Columns.Add(new DataColumn("TotalRate", typeof(decimal)));
Model.SGGLDB db = Funs.DB; Model.SGGLDB db = Funs.DB;
var projects = from x in db.Base_Project where x.ProjectState == "1" orderby x.ProjectName select x; var projects = from x in db.Base_Project where x.ProjectState == Const.ProjectState_1 || x.ProjectState == null orderby x.ProjectName select x;
if (this.drpProject2.SelectedValue != BLL.Const._Null) if (this.drpProject2.SelectedValue != BLL.Const._Null)
{ {
projects = projects.Where(x => x.ProjectId == this.drpProject2.SelectedValue).OrderBy(x => x.ProjectName); projects = projects.Where(x => x.ProjectId == this.drpProject2.SelectedValue).OrderBy(x => x.ProjectName);
} }
if (this.drpDutyPerson2.SelectedValue != BLL.Const._Null)
{
var lstProject = (from x in db.JDGL_WeekPlan
where x.DutyPerson.Contains(this.drpDutyPerson2.SelectedValue)
select x.ProjectId).ToList();
projects = projects.Where(x => lstProject.Contains(x.ProjectId)).OrderBy(x => x.ProjectName);
}
//////统计月份信息 //////统计月份信息
//DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01"); //DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01");
//if (DateTime.Now.Day < 26) //if (DateTime.Now.Day < 26)
@ -178,11 +189,18 @@ left join (
tb.Columns.Add(new DataColumn("TotalRate", typeof(decimal))); tb.Columns.Add(new DataColumn("TotalRate", typeof(decimal)));
Model.SGGLDB db = Funs.DB; Model.SGGLDB db = Funs.DB;
var projects = from x in db.Base_Project where x.ProjectState == "1" orderby x.ProjectName select x; var projects = from x in db.Base_Project where x.ProjectState == Const.ProjectState_1 || x.ProjectState == null orderby x.ProjectName select x;
if (this.drpProject3.SelectedValue != BLL.Const._Null) if (this.drpProject3.SelectedValue != BLL.Const._Null)
{ {
projects = projects.Where(x => x.ProjectId == this.drpProject3.SelectedValue).OrderBy(x => x.ProjectName); projects = projects.Where(x => x.ProjectId == this.drpProject3.SelectedValue).OrderBy(x => x.ProjectName);
} }
if (this.drpDutyPerson3.SelectedValue != BLL.Const._Null)
{
var lstProject = (from x in db.JDGL_WeekPlan
where x.DutyPerson.Contains(this.drpDutyPerson3.SelectedValue)
select x.ProjectId).ToList();
projects = projects.Where(x => lstProject.Contains(x.ProjectId)).OrderBy(x => x.ProjectName);
}
//统计月份信息 //统计月份信息
DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01"); DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01");
if (DateTime.Now.Day < 26) if (DateTime.Now.Day < 26)
@ -234,6 +252,51 @@ left join (
Grid3.DataBind(); Grid3.DataBind();
} }
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid4()
{
StringBuilder strSql = new StringBuilder();
strSql.AppendLine($@"select pro.ProjectId,pro.ProjectCode,pro.ProjectName,qc.QuantityCompletionId,ql.Name,ql.Unit,ql.DesignNum,ql.SortIndex,qco.RealNum as RealNum,qco.NextNum as NextNum,
CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(qco.PlanNum, 0) WHEN 0 THEN 0 ELSE 100 * ISNULL(qco.RealNum, 0) / (1.0 * qco.PlanNum) END AS DECIMAL(9, 2))))) AS Rate,
CONVERT(FLOAT, (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalPlanNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalRealNum,
CONVERT(NVARCHAR(10), ((CAST(CASE(select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) WHEN 0 THEN 0 ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) / (1.0 * (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion 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_QuantityCompletion 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_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalPlanNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalRealNum ");
strSql.AppendLine(@"from JDGL_QuantityList ql
left join JDGL_QuantityCompletion qc on ql.QuantityListId=qc.QuantityListId
left join Base_Project pro on pro.ProjectId=qc.ProjectId
left join (select PlanNum,RealNum,NextNum,QuantityListId from JDGL_QuantityCompletion where Months=@month) qco on qco.QuantityListId=ql.QuantityListId ");
strSql.AppendLine("where isnull(pro.ProjectState,1)=1 and qc.QuantityCompletionId=(select top 1 QuantityCompletionId from JDGL_QuantityCompletion q where q.QuantityListId=qc.QuantityListId and q.Months<=@month order by q.Months desc) ");
List<SqlParameter> listStr = new List<SqlParameter>();
string month = string.Format("{0:yyyy-MM-01}", DateTime.Now);
if (DateTime.Now.Day < 26)
{
month = string.Format("{0:yyyy-MM-01}", DateTime.Now.AddMonths(-1));
}
listStr.Add(new SqlParameter("@month", month));
if (this.drpProject4.SelectedValue != Const._Null)
{
strSql.AppendLine("and qc.ProjectId = @projectId ");
listStr.Add(new SqlParameter("@projectId", this.drpProject4.SelectedValue));
}
if (!string.IsNullOrEmpty(this.txtTypeName.Text.Trim()))
{
strSql.AppendLine("and ql.Name like @typeName ");
listStr.Add(new SqlParameter("@typeName", "%" + this.txtTypeName.Text.Trim() + "%"));
}
strSql.AppendLine("order by pro.ProjectCode,ql.Name ");
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql.ToString(), parameter);
Grid4.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid4, tb);
Grid4.DataSource = table;
Grid4.DataBind();
}
#region #region
/// <summary> /// <summary>
/// 查询 /// 查询
@ -365,6 +428,51 @@ left join (
} }
#endregion #endregion
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox4_TextChanged(object sender, EventArgs e)
{
this.BindGrid4();
}
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid4_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid4();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid4_Sort(object sender, GridSortEventArgs e)
{
BindGrid4();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize4_SelectedIndexChanged(object sender, EventArgs e)
{
Grid4.PageSize = Convert.ToInt32(ddlPageSize4.SelectedValue);
BindGrid4();
}
#endregion
protected void TabStrip1_TabIndexChanged(object sender, EventArgs e) protected void TabStrip1_TabIndexChanged(object sender, EventArgs e)
{ {
if (TabStrip1.ActiveTabIndex == 1) if (TabStrip1.ActiveTabIndex == 1)
@ -381,6 +489,13 @@ left join (
BindGrid3(); BindGrid3();
} }
} }
else if (TabStrip1.ActiveTabIndex == 3)
{
if (this.Grid4.Rows.Count == 0)
{
BindGrid4();
}
}
} }
/// <summary> /// <summary>

View File

@ -320,6 +320,96 @@ namespace FineUIPro.Web.DataShow
/// </remarks> /// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize3; protected global::FineUIPro.DropDownList ddlPageSize3;
/// <summary>
/// Tab4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tab Tab4;
/// <summary>
/// Grid4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid4;
/// <summary>
/// Toolbar4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar4;
/// <summary>
/// drpProject4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpProject4;
/// <summary>
/// txtTypeName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTypeName;
/// <summary>
/// Button3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button Button3;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label3;
/// <summary>
/// ToolbarSeparator4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator4;
/// <summary>
/// ToolbarText4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText4;
/// <summary>
/// ddlPageSize4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize4;
/// <summary> /// <summary>
/// TabOnlineMenuSet 控件。 /// TabOnlineMenuSet 控件。
/// </summary> /// </summary>

View File

@ -0,0 +1,569 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JDStatistics.aspx.cs" Inherits="FineUIPro.Web.DataShow.JDStatistics" Async="true" %>
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>首页</title>
<link href="../res/index/css/reset.css" rel="stylesheet" />
<link href="../res/index/css/home.css" rel="stylesheet" />
<link href="../res/index/css/swiper-3.4.2.min.css" rel="stylesheet" />
<style type="text/css">
* {
box-sizing: border-box;
}
.flexV {
flex-direction: column;
}
.wrap {
height: 100%;
padding: 15px;
/*background-color: #EEEED1;*/
background-color: #FFFFFF;
}
.iteml {
margin-left: 5px;
}
.itemb {
margin-bottom: 5px;
}
.bottom-wrap {
padding: 0;
margin-bottom: 5px;
}
.bottom-wrap:last-child {
margin-bottom: 0;
}
.bw-b-bottom {
width: 100%;
height: 100%;
}
.bw-b-bottom-up {
border-radius: 0;
height: 100%;
margin: 0;
box-shadow: none;
}
.bw-item-content {
padding: 5px;
}
.top {
width: 100%;
}
.top .item {
}
.bw-b {
width: 50%;
}
.bw-b-bottom-up {
}
.tab-wrap {
left: auto;
right: 15px;
top: 5px;
font-size: 12px;
}
.tab .t-item {
width: auto;
padding: 5px 10px;
color: #363636;
}
.tit-item {
padding: 0 10px;
justify-content: space-between;
font-size: 12px;
}
.tab-wrap .tab .t-item {
color: #1C1C1C;
}
.tip-item {
margin-left: 10px;
align-items: center;
font-size: 10px;
}
.tip {
width: 25px;
height: 13px;
background-color: #258F76;
border-radius: 2px;
margin-right: 5px;
}
.tip-next {
background-color: #4F4F4F;
}
.myTableClass {
width: 100%;
height: 100%;
overflow: auto;
margin: 2px 1px;
border-collapse: collapse; /* 设置表格边框合并 */
border: 1px solid #BEBEBE;
background: #ffffff;
color: #8B8989; /* 设置表格文字颜色 */
text-align: center; /* 设置表格文字居中 */
font-size: 14px;
}
.tab-title {
height: 48px;
color: #3CB371;
font-size: 16px;
font-weight: 700;
}
.tab-header {
height: 36px;
color: #1C86EE;
font-size: 14px;
font-weight: 600;
}
td, th {
border: 1px solid #BEBEBE;
}
</style>
</head>
<body>
<div class="wrap flex flexV">
<div class="bottom-wrap flex1">
<div class="top flex">
<div class="item flex2 iteml">
<div class="bw-b-bottom">
<div class="bw-b-bottom-up">
<div class="bw-item-content">
<div id='jdqk' style="width: 100%; height: 100%;"></div>
</div>
</div>
</div>
</div>
<%-- <div class="item flex2 iteml">
<div class="bw-b-bottom">
<div class="bw-b-bottom-up">
<div class="tab-wrap">
<div class="tab" data-value="2">
<div class="t-item active">月度计划</div>
<div class="spline"></div>
<div class="t-item">周度计划</div>
</div>
</div>
<div class="bw-item-content">
<div id='jdplan' style="width: 100%; height: 100%;"></div>
</div>
</div>
</div>
</div>--%>
</div>
</div>
<div class="bottom-wrap flex1">
<div class="top flex">
<div class="item flex1 iteml">
<div class="bw-b-bottom">
<div class="bw-b-bottom-up">
<div class="tab-wrap">
<div class="tab" data-value="2">
<div class="t-item active">月度计划</div>
<div class="spline"></div>
<div class="t-item">周度计划</div>
</div>
</div>
<div class="bw-item-content">
<div id='jdplan' style="width: 100%; height: 100%;"></div>
</div>
<%--<div class="bw-item-content">
<div id='four' style="width: 100%; height: 100%;"></div>
</div>--%>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
<script type="text/javascript" src="../res/index/js/jquery-3.4.1.min.js"></script>
<script type="text/javascript" src="../res/index/js/swiper-3.4.2.jquery.min.js"></script>
<script type="text/javascript" src="../res/index/js/echarts.min.js"></script>
<script type="text/javascript">
// 进度情况
createJDQK()
function createJDQK() {
let type = [<%=ProjectMc %>]
// 计划月进度
let value = [<%=ProjectJd%>]
let value1 = [<%=ProjectJd%>]
let opt = {
title: [{
text: '进度情况',
textStyle: {
color: '#1C1C1C',
fontSize: 16,
fontWeight: 700
},
show: true
}],
grid: {
top: 48,
left: 48,
right: 48,
bottom: 48,
},
tooltip: {
formatter: '{b}: {c}'
},
legend: {
top: 30,
data: [
{
name: "进度统计",
textStyle: {
color: '#2FC4AC'
}
},
{
name: "进度百分比",
textStyle: {
color: '#E29C18'
}
},
]
},
xAxis: {
type: 'category',
data: type,
axisLine: {
lineStyle: {
color: '#84D7FE'
}
},
axisLabel: {
interval: 0,
rotate: -10, // 如果数据较多时旋转标签以避免重叠
margin: 8, // 设置标签与轴线之间的距离
// align: 'center'
},
axisTick: {
show: false
}
},
yAxis: {
type: 'value',
axisLine: {
lineStyle: {
color: '#84D7FE'
}
},
splitLine: {
lineStyle: {
color: '#2E87AC',
type: 'dashed'
}
}
},
series: [
{
name: '进度统计',
data: value,
type: 'bar',
barWidth: 20,
label: { //柱体上显示数值
show: true,//开启显示
position: "top",//在上方显示
textStyle: {//数值样式
fontSize: '14px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === '0' ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(255,0,0, 0.5)' } }
},
{
name: '进度百分比',
data: value1,
type: 'line',
symbol: 'none',
itemStyle: {
color: '#EDB627'
},
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(
0,
0,
0,
1,
[
{
offset: 0,
color: 'rgba(237, 182, 39, 1)' // 折线底下区域渐变色
},
{
offset: 0.8,
color: 'rgba(237, 182, 39, 0)' // 折线底下区域渐变色
}
],
false
)
}
}
},
]
};
var myEchart = echarts.init(document.getElementById('jdqk'));
myEchart.setOption(opt);
}
</script>
<script type="text/javascript">
function categoryJDPlan(id, xArr, data, num) {
// 基于准备好的dom初始化echarts实例
var myChart = echarts.init(document.getElementById(id))
// 指定图表的配置项和数据
var option = {
title: {
// left:'center',
text: '项目进度计划',
textStyle: {
color: '#1C1C1C',
fontSize: 16,
fontWeight: 700
},
show: true
},
tooltip: {},
legend: {
//left: '80%',
show: true,
textStyle: {//图例文字的样式
color: '#363636',
fontSize: 12,
}
},
xAxis: {
type: 'category',
data: xArr,
axisLine: {
lineStyle: {
color: '#84D7FE'
}
},
axisLabel: {
interval: 0,
rotate: -10, // 如果数据较多时旋转标签以避免重叠
margin: 8, // 设置标签与轴线之间的距离
// align: 'center'
},
axisTick: {
show: false
},
},
yAxis: {
type: 'value',
axisLine: {
//show: false,
lineStyle: {
color: '#84D7FE'
}
},
splitLine: {
lineStyle: {
color: '#2E87AC',
type: 'dashed'
}
},
},
series: data,
grid: {
top: 48,
left: 48,
right: 48,
bottom: 48,
},
}
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option)
}
var jdplan =<%=MonthJD %>;
var xArr = jdplan.categories
var data = [
{
name: '未完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: jdplan.series[0].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(255,0,0, 0.5)' } }
},
{
name: '已完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: jdplan.series[1].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(0,100,0,0.8)' } }
}
]
categoryJDPlan('jdplan', xArr, data, jdplan.xFontNum)
//categoryJDPlan('four', xArr, data, jdplan.xFontNum)
</script>
<script>
$(".tab .t-item").click(function () {
var $this = $(this)
var index = $this.index()
if ($this.hasClass('active') && index == 0) {
return
}
var $tab = $this.closest(".tab")
var value = $tab.attr("data-value")
$tab.find(".t-item").removeClass('active');
$this.addClass('active')
var monthplan =<%=MonthJD %>;
var weekplan =<%=WeekJD %>;
var num = 5;
if (value == 2) {
var xArr = monthplan.categories
var data = [
{
name: '未完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: monthplan.series[0].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(255,0,0, 0.5)' } }
},
{
name: '已完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: monthplan.series[1].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(0,100,0,0.8)' } }
}
]
if (index == 2) {
xArr = weekplan.categories
var data = [
{
name: '未完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: weekplan.series[0].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(255,0,0, 0.5)' } }
},
{
name: '已完成',
type: 'bar',
stack: '总量',
barWidth: 30,
data: weekplan.series[1].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['35%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#363636'
},
formatter: function (params) {
// 当数值为0时返回空字符串不显示标签
return params.value === 0 ? '' : params.value;
},
},
itemStyle: { normal: { color: 'rgba(0,100,0,0.8)' } }
}
];
}
categoryJDPlan('jdplan', xArr, data, num);
}
})
</script>
</html>

View File

@ -0,0 +1,180 @@
using BLL;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
//using FineUIPro.Web.DataShow;
using Model;
//using System.Runtime.Caching;
using System.Threading.Tasks;
//using System.Web;
//using System.Web.UI;
//using System.Web.UI.WebControls;
//using Org.BouncyCastle.Ocsp;
//using FineUIPro.Web.HJGL.FL;
namespace FineUIPro.Web.DataShow
{
public partial class JDStatistics : PageBase
{
List<Model.Base_Project> allProjects;
#region
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
protected async void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
allProjects = ProjectService.GetAllProjectDropDownList();
this.ProjectId = string.Empty;
if (this.CurrUser != null && !string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
this.ProjectId = this.CurrUser.LoginProjectId;
}
//GetJdAsync();
var projectJDQKTask = GetJdAsync();
var otherTasks = new List<Task>
{
//GetJdAsync(),// 进度情况
GetMonthJDAsync(),// 月进度
GetWeekJDAsync(),// 周进度
};
await Task.WhenAll(otherTasks.Concat(new[] { projectJDQKTask }));
}
}
#region
//protected string ProjectAllJd;
protected string ProjectJd;
protected string ProjectMc;
protected async Task GetJdAsync()
{
var list = allProjects;
if (list.Any())
{
var progressCompletions = from x in Funs.DB.JDGL_ProgressCompletion select x;
foreach (var item in list)
{
var pCs = progressCompletions.Where(x => x.ProjectId == item.ProjectId).ToList();
//ProjectAllJd += "'" + pCs.Sum(x => x.PlanNum ?? 0).ToString("0.##") + "',";
ProjectJd += "'" + pCs.Sum(x => x.RealNum ?? 0).ToString("0.##") + "',";
ProjectMc += "'" + item.ShortName + "',";
}
//ProjectAllJd = ProjectAllJd.TrimEnd(',');
ProjectJd = ProjectJd.TrimEnd(',');
ProjectMc = ProjectMc.TrimEnd(',');
}
}
#endregion
#region
protected string MonthJD;
/// <summary>
/// 月进度
/// </summary>
protected async Task GetMonthJDAsync()
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
businessColumn.title = "月进度完成情况";
businessColumn.xFontNum = 8;
var date = DateTime.Now.AddMonths(1);
var allItems = from x in Funs.DB.JDGL_MonthPlan
where x.Months < new DateTime(date.Year, date.Month, 1)
select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List<double> listdata = new List<double>();
List<double> listdata2 = new List<double>();
int okNum = 0;
foreach (var pro in allProjects)
{
listCategories.Add(pro.ShortName);
var proItems = allItems.Where(x => x.ProjectId == pro.ProjectId);
okNum = proItems.Where(x => x.RealDate.HasValue).Count();
listdata.Add(proItems.Count() - okNum);
listdata2.Add(okNum);
}
s.data = listdata;
s2.data = listdata2;
series.Add(s);
series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
MonthJD = JsonConvert.SerializeObject(businessColumn);
}
#endregion
#region
protected string WeekJD;
/// <summary>
/// 周进度
/// </summary>
protected async Task GetWeekJDAsync()
{
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List<string> listCategories = new List<string>();
businessColumn.title = "周进度完成情况";
businessColumn.xFontNum = 8;
var date = DateTime.Now.AddMonths(1);
var allItems = from x in Funs.DB.JDGL_WeekPlan
where x.EndDate < new DateTime(date.Year, date.Month, 1)
select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List<double> listdata = new List<double>();
List<double> listdata2 = new List<double>();
int okNum = 0;
foreach (var pro in allProjects)
{
listCategories.Add(pro.ShortName);
var proItems = allItems.Where(x => x.ProjectId == pro.ProjectId);
okNum = proItems.Where(x => x.IsOK.HasValue && x.IsOK == true).Count();
listdata.Add(proItems.Count() - okNum);
listdata2.Add(okNum);
}
s.data = listdata;
s2.data = listdata2;
series.Add(s);
series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
WeekJD = JsonConvert.SerializeObject(businessColumn);
}
#endregion
}
}

View File

@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.DataShow
{
public partial class JDStatistics
{
/// <summary>
/// Head1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlHead Head1;
}
}

View File

@ -706,6 +706,7 @@
<Content Include="DataShow\HJGLWeldingItem.aspx" /> <Content Include="DataShow\HJGLWeldingItem.aspx" />
<Content Include="DataShow\InspectionManagement.aspx" /> <Content Include="DataShow\InspectionManagement.aspx" />
<Content Include="DataShow\InspectionManagementItem.aspx" /> <Content Include="DataShow\InspectionManagementItem.aspx" />
<Content Include="DataShow\JDStatistics.aspx" />
<Content Include="DataShow\JDWeekDetail.aspx" /> <Content Include="DataShow\JDWeekDetail.aspx" />
<Content Include="DataShow\JDMonthDetail.aspx" /> <Content Include="DataShow\JDMonthDetail.aspx" />
<Content Include="DataShow\JD.aspx" /> <Content Include="DataShow\JD.aspx" />
@ -2160,6 +2161,7 @@
<Content Include="Video\Video.aspx" /> <Content Include="Video\Video.aspx" />
<Content Include="WorkBench.aspx" /> <Content Include="WorkBench.aspx" />
<Content Include="Work\ToDoList.aspx" /> <Content Include="Work\ToDoList.aspx" />
<Content Include="ZHDD\ZHDD.aspx" />
<Content Include="ZHGL\DataIn\AccidentCauseReportBar.aspx" /> <Content Include="ZHGL\DataIn\AccidentCauseReportBar.aspx" />
<Content Include="ZHGL\DataIn\AccidentCauseReportBarIn.aspx" /> <Content Include="ZHGL\DataIn\AccidentCauseReportBarIn.aspx" />
<Content Include="ZHGL\DataIn\AccidentCauseReportImport.aspx" /> <Content Include="ZHGL\DataIn\AccidentCauseReportImport.aspx" />
@ -9354,6 +9356,13 @@
<Compile Include="DataShow\InspectionManagementItem.aspx.designer.cs"> <Compile Include="DataShow\InspectionManagementItem.aspx.designer.cs">
<DependentUpon>InspectionManagementItem.aspx</DependentUpon> <DependentUpon>InspectionManagementItem.aspx</DependentUpon>
</Compile> </Compile>
<Compile Include="DataShow\JDStatistics.aspx.cs">
<DependentUpon>JDStatistics.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="DataShow\JDStatistics.aspx.designer.cs">
<DependentUpon>JDStatistics.aspx</DependentUpon>
</Compile>
<Compile Include="DataShow\JDWeekDetail.aspx.cs"> <Compile Include="DataShow\JDWeekDetail.aspx.cs">
<DependentUpon>JDWeekDetail.aspx</DependentUpon> <DependentUpon>JDWeekDetail.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType> <SubType>ASPXCodeBehind</SubType>
@ -18499,6 +18508,13 @@
<Compile Include="Work\ToDoList.aspx.designer.cs"> <Compile Include="Work\ToDoList.aspx.designer.cs">
<DependentUpon>ToDoList.aspx</DependentUpon> <DependentUpon>ToDoList.aspx</DependentUpon>
</Compile> </Compile>
<Compile Include="ZHDD\ZHDD.aspx.cs">
<DependentUpon>ZHDD.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="ZHDD\ZHDD.aspx.designer.cs">
<DependentUpon>ZHDD.aspx</DependentUpon>
</Compile>
<Compile Include="ZHGL\DataIn\AccidentCauseReportBar.aspx.cs"> <Compile Include="ZHGL\DataIn\AccidentCauseReportBar.aspx.cs">
<DependentUpon>AccidentCauseReportBar.aspx</DependentUpon> <DependentUpon>AccidentCauseReportBar.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType> <SubType>ASPXCodeBehind</SubType>

View File

@ -73,7 +73,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit
+ @" LEFT JOIN QualityAudit_SafePersonQuality AS PersonQuality ON Person.PersonId = PersonQuality.PersonId " + @" LEFT JOIN QualityAudit_SafePersonQuality AS PersonQuality ON Person.PersonId = PersonQuality.PersonId "
+ @" LEFT JOIN Base_WorkPost AS WorkPost ON WorkPost.WorkPostId = Person.WorkPostId " + @" LEFT JOIN Base_WorkPost AS WorkPost ON WorkPost.WorkPostId = Person.WorkPostId "
+ @" LEFT JOIN Sys_User AS Users ON PersonQuality.CompileMan = Users.UserId " + @" LEFT JOIN Sys_User AS Users ON PersonQuality.CompileMan = Users.UserId "
+ @" WHERE WorkPost.IsHsse =1"; + @" WHERE WorkPost.IsHsse =1 ";
List<SqlParameter> listStr = new List<SqlParameter>(); List<SqlParameter> listStr = new List<SqlParameter>();
strSql += " AND Person.ProjectId = @ProjectId"; strSql += " AND Person.ProjectId = @ProjectId";
listStr.Add(new SqlParameter("@ProjectId", this.ProjectId)); listStr.Add(new SqlParameter("@ProjectId", this.ProjectId));
@ -102,11 +102,11 @@ namespace FineUIPro.Web.HSSE.QualityAudit
{ {
if (this.rblIsPost.SelectedValue == "1") if (this.rblIsPost.SelectedValue == "1")
{ {
strSql += " AND Person.OutTime is null "; strSql += " AND Person.IsUsed ='1' AND (Person.OutTime is null OR Person.OutTime > getdate()) ";
} }
else if (this.rblIsPost.SelectedValue == "0") else if (this.rblIsPost.SelectedValue == "0")
{ {
strSql += " AND Person.OutTime is not null "; strSql += " AND Person.OutTime is not null AND Person.OutTime < getdate() ";
} }
} }
SqlParameter[] parameter = listStr.ToArray(); SqlParameter[] parameter = listStr.ToArray();

View File

@ -48,6 +48,9 @@
<f:RadioItem Value="1" Text="在岗" /> <f:RadioItem Value="1" Text="在岗" />
<f:RadioItem Value="0" Text="不在岗" /> <f:RadioItem Value="0" Text="不在岗" />
</f:RadioButtonList> </f:RadioButtonList>
<f:CheckBox runat="server" ID="chManager" Label="管理人员" LabelAlign="right" LabelWidth="80px"
AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged">
</f:CheckBox>
<f:CheckBox runat="server" ID="ckJT" Label="未同步" LabelAlign="right" LabelWidth="70px" <f:CheckBox runat="server" ID="ckJT" Label="未同步" LabelAlign="right" LabelWidth="70px"
AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged"> AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged">
</f:CheckBox> </f:CheckBox>

View File

@ -59,7 +59,7 @@ namespace FineUIPro.Web.HSSE.SitePerson
} }
////权限按钮方法 ////权限按钮方法
this.GetButtonPower(); this.GetButtonPower();
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString(); this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
BLL.WorkPostService.InitWorkPostDropDownList(this.drpPost, true); BLL.WorkPostService.InitWorkPostDropDownList(this.drpPost, true);
BindGrid(); BindGrid();
@ -74,10 +74,10 @@ namespace FineUIPro.Web.HSSE.SitePerson
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{ {
string unitId = string.Empty; string unitId = string.Empty;
var getData = PersonService.getListData(this.ProjectId, unitId, this.txtPersonName.Text.Trim(), this.txtIdentityCard.Text.Trim(), var getData = PersonService.getListData(this.ProjectId, unitId, this.txtPersonName.Text.Trim(), this.txtIdentityCard.Text.Trim(),
"", Funs.GetStringByArray(this.drpPost.SelectedValueArray), this.ckTrain.Checked, this.rblPost.SelectedValue, this.ckJT.Checked, "", Funs.GetStringByArray(this.drpPost.SelectedValueArray), this.ckTrain.Checked, this.rblPost.SelectedValue, this.ckJT.Checked,
false, Grid1,true); false, this.chManager.Checked, Grid1, true);
Grid1.RecordCount = PersonService.count; Grid1.RecordCount = PersonService.count;
Grid1.DataSource = getData; Grid1.DataSource = getData;
Grid1.DataBind(); Grid1.DataBind();
@ -213,17 +213,17 @@ namespace FineUIPro.Web.HSSE.SitePerson
{ {
if (buttonList.Contains(BLL.Const.BtnAdd)) if (buttonList.Contains(BLL.Const.BtnAdd))
{ {
} }
if (buttonList.Contains(BLL.Const.BtnModify)) if (buttonList.Contains(BLL.Const.BtnModify))
{ {
btnMenuBlack.Hidden = false; btnMenuBlack.Hidden = false;
} }
if (buttonList.Contains(BLL.Const.BtnDelete)) if (buttonList.Contains(BLL.Const.BtnDelete))
{ {
} }
} }
} }

View File

@ -113,6 +113,15 @@ namespace FineUIPro.Web.HSSE.SitePerson
/// </remarks> /// </remarks>
protected global::FineUIPro.RadioButtonList rblPost; protected global::FineUIPro.RadioButtonList rblPost;
/// <summary>
/// chManager 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox chManager;
/// <summary> /// <summary>
/// ckJT 控件。 /// ckJT 控件。
/// </summary> /// </summary>

View File

@ -82,6 +82,9 @@
<f:RadioItem Value="1" Text="在岗" /> <f:RadioItem Value="1" Text="在岗" />
<f:RadioItem Value="0" Text="不在岗" /> <f:RadioItem Value="0" Text="不在岗" />
</f:RadioButtonList> </f:RadioButtonList>
<f:CheckBox runat="server" ID="chManager" Label="管理人员" LabelAlign="right" LabelWidth="80px"
AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged">
</f:CheckBox>
<f:CheckBox runat="server" ID="ckJT" Label="未同步" LabelAlign="right" LabelWidth="70px" <f:CheckBox runat="server" ID="ckJT" Label="未同步" LabelAlign="right" LabelWidth="70px"
AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged"> AutoPostBack="true" OnCheckedChanged="TextBox_TextChanged">
</f:CheckBox> </f:CheckBox>

View File

@ -182,7 +182,7 @@ namespace FineUIPro.Web.HSSE.SitePerson
var getData = PersonService.getListData(this.ProjectId, unitId, this.txtPersonName.Text.Trim(), this.txtIdentityCard.Text.Trim(), var getData = PersonService.getListData(this.ProjectId, unitId, this.txtPersonName.Text.Trim(), this.txtIdentityCard.Text.Trim(),
this.drpTreamGroup.SelectedValue, Funs.GetStringByArray(this.drpPost.SelectedValueArray), this.ckTrain.Checked, this.rblPost.SelectedValue, this.ckJT.Checked, this.drpTreamGroup.SelectedValue, Funs.GetStringByArray(this.drpPost.SelectedValueArray), this.ckTrain.Checked, this.rblPost.SelectedValue, this.ckJT.Checked,
this.ckIdCardInfoNotOK.Checked, Grid1); this.ckIdCardInfoNotOK.Checked, this.chManager.Checked, Grid1);
Grid1.RecordCount = PersonService.count; Grid1.RecordCount = PersonService.count;
Grid1.DataSource = getData; Grid1.DataSource = getData;
Grid1.DataBind(); Grid1.DataBind();

View File

@ -176,6 +176,15 @@ namespace FineUIPro.Web.HSSE.SitePerson
/// </remarks> /// </remarks>
protected global::FineUIPro.RadioButtonList rblPost; protected global::FineUIPro.RadioButtonList rblPost;
/// <summary>
/// chManager 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox chManager;
/// <summary> /// <summary>
/// ckJT 控件。 /// ckJT 控件。
/// </summary> /// </summary>

View File

@ -8,75 +8,86 @@
</head> </head>
<body> <body>
<form id="form1" runat="server"> <form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" /> <f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" <f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch"> ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items> <Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="现场人员统计" EnableCollapse="true" <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="现场人员统计" EnableCollapse="true" AllowPaging="true" IsDatabasePaging="true" PageSize="20" OnPageIndexChange="Grid1_PageIndexChange"
runat="server" BoxFlex="1" DataKeyNames="Number" DataIDField="Number" AllowSorting="true" ForceFit="true" runat="server" BoxFlex="1" DataKeyNames="Number" DataIDField="Number" AllowSorting="true" ForceFit="true"
SortField="Number" SortDirection="ASC" EnableColumnLines="true" EnableTextSelection="True"> SortField="UnitName,WorkPostName" SortDirection="ASC" EnableColumnLines="true" EnableTextSelection="True">
<Toolbars> <Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left"> <f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items> <Items>
<f:DropDownList runat="server" ID="drpUnit" Label="单位" <f:DropDownList runat="server" ID="drpUnit" Label="单位"
Width="300px" LabelAlign="Right" LabelWidth="50px"></f:DropDownList> Width="300px" LabelAlign="Right" LabelWidth="50px">
<f:DropDownList runat="server" ID="drpWorkPost" Label="岗位" </f:DropDownList>
Width="220px" LabelAlign="Right" LabelWidth="50px"></f:DropDownList> <f:DropDownList runat="server" ID="drpWorkPost" Label="岗位"
<f:DatePicker ID="txtStartDate" runat="server" Label="开始日期" LabelWidth="80px" Width="220px"> Width="220px" LabelAlign="Right" LabelWidth="50px">
</f:DatePicker> </f:DropDownList>
<f:DatePicker ID="txtEndDate" runat="server" Label="结束日期" LabelWidth="80px" Width="220px"> <f:DatePicker ID="txtStartDate" runat="server" Label="开始日期" LabelWidth="80px" Width="220px">
</f:DatePicker> </f:DatePicker>
<f:DatePicker ID="txtEndDate" runat="server" Label="结束日期" LabelWidth="80px" Width="220px">
</Items> </f:DatePicker>
</f:Toolbar>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:RadioButtonList ID="rblIsUsed" runat="server" Label="进出场" LabelAlign="Right" Width="300px">
<f:RadioItem Value="0" Text="全部" Selected="true"/>
<f:RadioItem Value="True" Text="进场" />
<f:RadioItem Value="False" Text="出场" />
</f:RadioButtonList>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSearch" runat="server" Icon="BrickMagnify" ToolTip="查询" OnClick="btnSearch_Click">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items> </Items>
</f:Toolbar> </f:Toolbar>
</Toolbars> <f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Columns> <Items>
<f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center" <f:RadioButtonList ID="rblIsUsed" runat="server" Label="进出场" LabelAlign="Right" Width="300px">
TextAlign="Center"> <f:RadioItem Value="0" Text="全部" Selected="true" />
<ItemTemplate> <f:RadioItem Value="True" Text="进场" />
<asp:Label ID="labNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label> <f:RadioItem Value="False" Text="出场" />
</ItemTemplate> </f:RadioButtonList>
</f:TemplateField> <f:ToolbarFill runat="server"></f:ToolbarFill>
<f:RenderField Width="240px" ColumnID="UnitName" DataField="UnitName" <f:Button ID="btnSearch" runat="server" Icon="BrickMagnify" ToolTip="查询" OnClick="btnSearch_Click">
SortField="UnitName" FieldType="String" HeaderText="单位名称" HeaderTextAlign="Center" </f:Button>
TextAlign="Left"> <f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
</f:RenderField> EnableAjax="false" DisableControlBeforePostBack="false">
<f:RenderField Width="200px" ColumnID="WorkAreaName" DataField="WorkAreaName" </f:Button>
SortField="WorkAreaName" FieldType="String" HeaderText="区域名称" HeaderTextAlign="Center" </Items>
TextAlign="Left"> </f:Toolbar>
</f:RenderField> </Toolbars>
<f:RenderField Width="200px" ColumnID="WorkPostName" DataField="WorkPostName" <Columns>
SortField="WorkPostName" FieldType="String" HeaderText="岗位名称" HeaderTextAlign="Center" <f:TemplateField ColumnID="tfNumber" Width="55px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Left"> TextAlign="Center">
</f:RenderField> <ItemTemplate>
<f:RenderField Width="100px" ColumnID="PersonCount" DataField="PersonCount" <asp:Label ID="labNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
SortField="PersonCount" FieldType="Int" HeaderText="出入人次" HeaderTextAlign="Center" </ItemTemplate>
TextAlign="Left"> </f:TemplateField>
</f:RenderField> <f:RenderField Width="240px" ColumnID="UnitName" DataField="UnitName"
<%-- <f:TemplateField Width="120px" HeaderText="总人数" HeaderTextAlign="Center" TextAlign="Center"> SortField="UnitName" FieldType="String" HeaderText="单位名称" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="WorkAreaName" DataField="WorkAreaName"
SortField="WorkAreaName" FieldType="String" HeaderText="区域名称" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="WorkPostName" DataField="WorkPostName"
SortField="WorkPostName" FieldType="String" HeaderText="岗位名称" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="PersonCount" DataField="PersonCount"
SortField="PersonCount" FieldType="Int" HeaderText="出入人次" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<%-- <f:TemplateField Width="120px" HeaderText="总人数" HeaderTextAlign="Center" TextAlign="Center">
<ItemTemplate> <ItemTemplate>
<asp:Label ID="Label6" runat="server" Text='<%# Bind("PersonCount") %>' ToolTip='<%#Bind("PersonCount") %>'></asp:Label> <asp:Label ID="Label6" runat="server" Text='<%# Bind("PersonCount") %>' ToolTip='<%#Bind("PersonCount") %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</f:TemplateField>--%> </f:TemplateField>--%>
</Columns> </Columns>
</f:Grid> <PageItems>
</Items> <f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:Panel> </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:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
</form> </form>
</body> </body>
</html> </html>

View File

@ -28,6 +28,7 @@ namespace FineUIPro.Web.HSSE.SitePerson
{ {
if (!IsPostBack) if (!IsPostBack)
{ {
Funs.DropDownPageSize(this.ddlPageSize);
this.ProjectId = this.CurrUser.LoginProjectId; this.ProjectId = this.CurrUser.LoginProjectId;
if (!string.IsNullOrEmpty(Request.Params["projectId"]) && Request.Params["projectId"] != this.ProjectId) if (!string.IsNullOrEmpty(Request.Params["projectId"]) && Request.Params["projectId"] != this.ProjectId)
{ {
@ -44,7 +45,7 @@ namespace FineUIPro.Web.HSSE.SitePerson
var project = BLL.ProjectService.GetProjectByProjectId(this.ProjectId); var project = BLL.ProjectService.GetProjectByProjectId(this.ProjectId);
if (project != null) if (project != null)
{ {
this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", project.StartDate); this.txtStartDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);//project.StartDate
this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now.AddDays(1)); this.txtEndDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now.AddDays(1));
GetPersonStatistic(); GetPersonStatistic();
} }
@ -126,6 +127,32 @@ namespace FineUIPro.Web.HSSE.SitePerson
GetPersonStatistic(); GetPersonStatistic();
} }
#region
/// <summary>
/// 页索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
GetPersonStatistic();
}
#endregion
#region
/// <summary>
/// 分页选择下拉改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
GetPersonStatistic();
}
#endregion
#region #region
/// 导出按钮 /// 导出按钮
/// </summary> /// </summary>

View File

@ -7,11 +7,13 @@
// </自动生成> // </自动生成>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace FineUIPro.Web.HSSE.SitePerson { namespace FineUIPro.Web.HSSE.SitePerson
{
public partial class PersonStatistic {
public partial class PersonStatistic
{
/// <summary> /// <summary>
/// form1 控件。 /// form1 控件。
/// </summary> /// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1; protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary> /// <summary>
/// PageManager1 控件。 /// PageManager1 控件。
/// </summary> /// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.PageManager PageManager1; protected global::FineUIPro.PageManager PageManager1;
/// <summary> /// <summary>
/// Panel1 控件。 /// Panel1 控件。
/// </summary> /// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Panel Panel1; protected global::FineUIPro.Panel Panel1;
/// <summary> /// <summary>
/// Grid1 控件。 /// Grid1 控件。
/// </summary> /// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Grid Grid1; protected global::FineUIPro.Grid Grid1;
/// <summary> /// <summary>
/// Toolbar2 控件。 /// Toolbar2 控件。
/// </summary> /// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Toolbar Toolbar2; protected global::FineUIPro.Toolbar Toolbar2;
/// <summary> /// <summary>
/// drpUnit 控件。 /// drpUnit 控件。
/// </summary> /// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.DropDownList drpUnit; protected global::FineUIPro.DropDownList drpUnit;
/// <summary> /// <summary>
/// drpWorkPost 控件。 /// drpWorkPost 控件。
/// </summary> /// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.DropDownList drpWorkPost; protected global::FineUIPro.DropDownList drpWorkPost;
/// <summary> /// <summary>
/// txtStartDate 控件。 /// txtStartDate 控件。
/// </summary> /// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.DatePicker txtStartDate; protected global::FineUIPro.DatePicker txtStartDate;
/// <summary> /// <summary>
/// txtEndDate 控件。 /// txtEndDate 控件。
/// </summary> /// </summary>
@ -92,7 +94,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.DatePicker txtEndDate; protected global::FineUIPro.DatePicker txtEndDate;
/// <summary> /// <summary>
/// Toolbar1 控件。 /// Toolbar1 控件。
/// </summary> /// </summary>
@ -101,7 +103,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Toolbar Toolbar1; protected global::FineUIPro.Toolbar Toolbar1;
/// <summary> /// <summary>
/// rblIsUsed 控件。 /// rblIsUsed 控件。
/// </summary> /// </summary>
@ -110,7 +112,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.RadioButtonList rblIsUsed; protected global::FineUIPro.RadioButtonList rblIsUsed;
/// <summary> /// <summary>
/// btnSearch 控件。 /// btnSearch 控件。
/// </summary> /// </summary>
@ -119,7 +121,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnSearch; protected global::FineUIPro.Button btnSearch;
/// <summary> /// <summary>
/// btnOut 控件。 /// btnOut 控件。
/// </summary> /// </summary>
@ -128,7 +130,7 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnOut; protected global::FineUIPro.Button btnOut;
/// <summary> /// <summary>
/// labNumber 控件。 /// labNumber 控件。
/// </summary> /// </summary>
@ -137,5 +139,32 @@ namespace FineUIPro.Web.HSSE.SitePerson {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Label labNumber; protected global::System.Web.UI.WebControls.Label labNumber;
/// <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

@ -43,18 +43,23 @@
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" AutoPostBack="true" OnTextChanged="TextBox_TextChanged"
LabelAlign="right" Width="150px"> LabelAlign="right" Width="150px">
</f:TextBox> </f:TextBox>
<f:DropDownList ID="drpIsSuperLargerHazard" runat="server" AutoPostBack="true" OnSelectedIndexChanged="TextBox_TextChanged">
<f:ListItem Text="- 请选择 -" Value="" />
<f:ListItem Text="危大工程" Value="0" />
<f:ListItem Text="超危大工程" Value="1" />
</f:DropDownList>
<f:TextBox runat="server" ID="txtTypeName" EmptyText="按类型查询" <f:TextBox runat="server" ID="txtTypeName" EmptyText="按类型查询"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="150px" AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="150px"
LabelAlign="right"> LabelAlign="right">
</f:TextBox> </f:TextBox>
<f:TextBox runat="server" ID="txtAddress" EmptyText="按地点查询" <f:TextBox runat="server" ID="txtAddress" EmptyText="按地点查询"
AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="150px" AutoPostBack="true" OnTextChanged="TextBox_TextChanged" Width="150px"
LabelAlign="right"> LabelAlign="right">
</f:TextBox> </f:TextBox>
<f:DatePicker runat="server" ID="txtStartDate" AutoPostBack="true" Width="150px" <f:DatePicker runat="server" ID="txtStartDate" AutoPostBack="true" Width="150px"
OnTextChanged="TextBox_TextChanged" LabelAlign="right" EmptyText="预计开始时间"> OnTextChanged="TextBox_TextChanged" LabelAlign="right" EmptyText="预计开始时间">
</f:DatePicker> </f:DatePicker>
<f:DatePicker runat="server" ID="txtEndDate" EmptyText="结束时间" AutoPostBack="true" Width="150px" <f:DatePicker runat="server" ID="txtEndDate" EmptyText="结束时间" AutoPostBack="true" Width="150px"
OnTextChanged="TextBox_TextChanged" LabelAlign="right"> OnTextChanged="TextBox_TextChanged" LabelAlign="right">
</f:DatePicker> </f:DatePicker>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill> <f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
@ -81,6 +86,10 @@
SortField="HazardCode" FieldType="String" HeaderText="文件编号" TextAlign="Left" SortField="HazardCode" FieldType="String" HeaderText="文件编号" TextAlign="Left"
HeaderTextAlign="Center"> HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="150px" ColumnID="IsSuperLargerHazard" DataField="IsSuperLargerHazard"
SortField="IsSuperLargerHazard" FieldType="String" HeaderText="方案类型" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="TypeName" DataField="TypeName" <f:RenderField Width="180px" ColumnID="TypeName" DataField="TypeName"
SortField="TypeName" FieldType="String" HeaderText="类型" TextAlign="Left" SortField="TypeName" FieldType="String" HeaderText="类型" TextAlign="Left"
HeaderTextAlign="Center"> HeaderTextAlign="Center">

View File

@ -43,7 +43,7 @@ namespace FineUIPro.Web.HSSE.Solution
this.ucTree.UnitId = this.CurrUser.UnitId; this.ucTree.UnitId = this.CurrUser.UnitId;
this.ucTree.ProjectId = this.ProjectId; this.ucTree.ProjectId = this.ProjectId;
btnNew.OnClientClick = Window1.GetShowReference("LargerHazardEdit.aspx") + "return false;"; btnNew.OnClientClick = Window1.GetShowReference("LargerHazardEdit.aspx") + "return false;";
ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格 // 绑定表格
@ -78,6 +78,7 @@ namespace FineUIPro.Web.HSSE.Solution
when '0' then '' when '0' then ''
else '' end as StatesStr" else '' end as StatesStr"
+ @", case when LargerHazard.IsArgument=1 then '是' else '否' end as IsArgumentStr,Const.ConstText as TypeName,Project.ProjectName" + @", case when LargerHazard.IsArgument=1 then '是' else '否' end as IsArgumentStr,Const.ConstText as TypeName,Project.ProjectName"
+ @", case when LargerHazard.IsSuperLargerHazard=1 then '超危大工程' else '危大工程' end as IsSuperLargerHazard "
+ @" FROM Solution_LargerHazard AS LargerHazard " + @" FROM Solution_LargerHazard AS LargerHazard "
+ @" LEFT JOIN Base_Project AS Project ON LargerHazard.ProjectId = Project.ProjectId " + @" LEFT JOIN Base_Project AS Project ON LargerHazard.ProjectId = Project.ProjectId "
+ @" LEFT JOIN Sys_FlowOperate AS FlowOperate ON LargerHazard.HazardId=FlowOperate.DataId AND FlowOperate.IsClosed <> 1" + @" LEFT JOIN Sys_FlowOperate AS FlowOperate ON LargerHazard.HazardId=FlowOperate.DataId AND FlowOperate.IsClosed <> 1"
@ -94,6 +95,12 @@ namespace FineUIPro.Web.HSSE.Solution
strSql += " AND LargerHazard.HazardCode LIKE @HazardCode"; strSql += " AND LargerHazard.HazardCode LIKE @HazardCode";
listStr.Add(new SqlParameter("@HazardCode", "%" + this.txtHazardCode.Text.Trim() + "%")); listStr.Add(new SqlParameter("@HazardCode", "%" + this.txtHazardCode.Text.Trim() + "%"));
} }
if (drpIsSuperLargerHazard.SelectedValue != BLL.Const._Null && !string.IsNullOrWhiteSpace(drpIsSuperLargerHazard.SelectedValue))
{
strSql += " AND LargerHazard.IsSuperLargerHazard=@IsSuperLargerHazard";
listStr.Add(new SqlParameter("@IsSuperLargerHazard", drpIsSuperLargerHazard.SelectedValue));
}
if (!string.IsNullOrEmpty(this.txtTypeName.Text.Trim())) if (!string.IsNullOrEmpty(this.txtTypeName.Text.Trim()))
{ {
strSql += " AND Const.ConstText LIKE @TypeName"; strSql += " AND Const.ConstText LIKE @TypeName";

View File

@ -104,6 +104,15 @@ namespace FineUIPro.Web.HSSE.Solution
/// </remarks> /// </remarks>
protected global::FineUIPro.TextBox txtHazardCode; protected global::FineUIPro.TextBox txtHazardCode;
/// <summary>
/// drpIsSuperLargerHazard 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpIsSuperLargerHazard;
/// <summary> /// <summary>
/// txtTypeName 控件。 /// txtTypeName 控件。
/// </summary> /// </summary>

View File

@ -72,6 +72,10 @@
<f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" SortField="RealDate" <f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" SortField="RealDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center"> FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="100px" ColumnID="IsOKStr" DataField="IsOKStr"
SortField="IsOKStr" FieldType="String" HeaderText="完成状态" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Remark" DataField="Remark" <f:RenderField Width="100px" ColumnID="Remark" DataField="Remark"
SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center" SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center"> HeaderTextAlign="Center">
@ -89,7 +93,7 @@
</f:Window> </f:Window>
<f:Menu ID="Menu1" runat="server"> <f:Menu ID="Menu1" runat="server">
<Items> <Items>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Hidden="true" Icon="Pencil" Text="修改" <f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Hidden="true" Icon="Pencil" Text="修改"
OnClick="btnMenuModify_Click"> OnClick="btnMenuModify_Click">
</f:MenuButton> </f:MenuButton>
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Hidden="true" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?" <f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Hidden="true" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"

View File

@ -123,7 +123,7 @@ namespace FineUIPro.Web.JDGL.Check
/// <returns></returns> /// <returns></returns>
private DataTable BindData() private DataTable BindData()
{ {
string strSql = @"select mp.*,u.UnitName string strSql = @"select mp.*,u.UnitName,case mp.IsOK when 1 then '已完成' when 0 then '未完成' else '' end as IsOKStr
,DutyPersonName = STUFF((SELECT ',' + p.UserName FROM dbo.Sys_User as p where PATINDEX('%,' + RTRIM(p.UserId) + ',%', ',' + mp.DutyPerson + ',') > 0 FOR XML PATH('')), 1, 1,'') ,DutyPersonName = STUFF((SELECT ',' + p.UserName FROM dbo.Sys_User as p where PATINDEX('%,' + RTRIM(p.UserId) + ',%', ',' + mp.DutyPerson + ',') > 0 FOR XML PATH('')), 1, 1,'')
from [dbo].[JDGL_MonthPlan] mp from [dbo].[JDGL_MonthPlan] mp
left join Base_Unit u on u.UnitId=mp.UnitId left join Base_Unit u on u.UnitId=mp.UnitId
@ -318,6 +318,9 @@ where mp.ProjectId=@ProjectId and mp.Months=@month order by mp.SortIndex";
cell.SetCellValue(realDate); cell.SetCellValue(realDate);
cell = row.CreateCell(6); cell = row.CreateCell(6);
cell.CellStyle = cellStyle; cell.CellStyle = cellStyle;
cell.SetCellValue(tb.Rows[j]["IsOKStr"].ToString());
cell = row.CreateCell(7);
cell.CellStyle = cellStyle;
cell.SetCellValue(tb.Rows[j]["Remark"].ToString()); cell.SetCellValue(tb.Rows[j]["Remark"].ToString());
i++; i++;
} }

View File

@ -22,7 +22,7 @@
</f:FormRow> </f:FormRow>
<f:FormRow> <f:FormRow>
<Items> <Items>
<f:DropDownList ID="drpUnit" runat="server" Label="责任单位" LabelWidth="150px" AutoSelectFirstItem="false" Required="true" ShowRedStar="true"> <f:DropDownList ID="drpUnit" runat="server" Label="责任单位" LabelWidth="150px" AutoSelectFirstItem="false" Required="true" ShowRedStar="true">
</f:DropDownList> </f:DropDownList>
</Items> </Items>
</f:FormRow> </f:FormRow>
@ -37,13 +37,16 @@
<f:TextArea ID="txtNodeContent" runat="server" Label="节点内容" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true"></f:TextArea> <f:TextArea ID="txtNodeContent" runat="server" Label="节点内容" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true"></f:TextArea>
</Items> </Items>
</f:FormRow> </f:FormRow>
<f:FormRow> <f:FormRow>
<Items> <Items>
<f:DatePicker ID="txtPlanDate" runat="server" Label="计划完成时间" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true"> <f:DatePicker ID="txtPlanDate" runat="server" Label="计划完成时间" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true">
</f:DatePicker> </f:DatePicker>
<f:DatePicker ID="txtRealDate" runat="server" Label="实际完成时间" LabelAlign="Right" LabelWidth="150px"> <f:DatePicker ID="txtRealDate" runat="server" Label="实际完成时间" LabelAlign="Right" LabelWidth="150px" AutoPostBack="true" OnTextChanged="RealDate_TextChanged" >
</f:DatePicker> </f:DatePicker>
<f:DropDownList ID="drpIsOK" runat="server" Label="完成状态" LabelAlign="Right" AutoSelectFirstItem="false" LabelWidth="150px">
<f:ListItem Text="已完成" Value="已完成" />
<f:ListItem Text="未完成" Value="未完成" />
</f:DropDownList>
</Items> </Items>
</f:FormRow> </f:FormRow>

View File

@ -78,7 +78,14 @@ namespace FineUIPro.Web.JDGL.Check
txtMonths.Text = string.Format("{0:yyyy-MM}", model.Months); txtMonths.Text = string.Format("{0:yyyy-MM}", model.Months);
txtMonths.Readonly = true; txtMonths.Readonly = true;
drpUnit.SelectedValue = model.UnitId; drpUnit.SelectedValue = model.UnitId;
if (model.IsOK == true)
{
this.drpIsOK.SelectedValue = "已完成";
}
else
{
this.drpIsOK.SelectedValue = "未完成";
}
if (!string.IsNullOrEmpty(model.DutyPerson)) if (!string.IsNullOrEmpty(model.DutyPerson))
{ {
List<string> listPersonId = model.DutyPerson.Split(',').ToList(); List<string> listPersonId = model.DutyPerson.Split(',').ToList();
@ -100,6 +107,20 @@ namespace FineUIPro.Web.JDGL.Check
} }
} }
/// <summary>
/// 完成时间选择后触发事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void RealDate_TextChanged(object sender, EventArgs e)
{
var txtRealDate = this.txtRealDate.Text.Trim();
if (!string.IsNullOrWhiteSpace(txtRealDate))
{
this.drpIsOK.SelectedValue = "已完成";
}
}
/// <summary> /// <summary>
/// 保存 /// 保存
/// </summary> /// </summary>
@ -118,6 +139,7 @@ namespace FineUIPro.Web.JDGL.Check
CompileMan = this.CurrUser.UserId, CompileMan = this.CurrUser.UserId,
CompileDate = DateTime.Now, CompileDate = DateTime.Now,
}; };
model.IsOK = this.drpIsOK.SelectedValue == "已完成";
if (!string.IsNullOrWhiteSpace(this.txtRealDate.Text)) if (!string.IsNullOrWhiteSpace(this.txtRealDate.Text))
{ {
model.RealDate = Funs.GetNewDateTime(this.txtRealDate.Text); model.RealDate = Funs.GetNewDateTime(this.txtRealDate.Text);

View File

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

View File

@ -76,6 +76,12 @@
<f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" SortField="RealDate" <f:RenderField Width="95px" ColumnID="RealDate" DataField="RealDate" SortField="RealDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center"> FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField> </f:RenderField>
<f:TemplateField ColumnID="IsOK" Width="100px" HeaderText="完成状态" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# ConvertIsOK(Eval("IsOK")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="100px" ColumnID="Remark" DataField="Remark" <f:RenderField Width="100px" ColumnID="Remark" DataField="Remark"
SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center" SortField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center"> HeaderTextAlign="Center">

View File

@ -267,8 +267,6 @@ namespace FineUIPro.Web.JDGL.Check
Target = Target.Self Target = Target.Self
}; };
alert.Show(); alert.Show();
} }
else else
{ {
@ -396,6 +394,7 @@ namespace FineUIPro.Web.JDGL.Check
string col3 = pds.Rows[i][3].ToString().Trim(); string col3 = pds.Rows[i][3].ToString().Trim();
string col4 = pds.Rows[i][4].ToString().Trim(); string col4 = pds.Rows[i][4].ToString().Trim();
string col5 = pds.Rows[i][5].ToString().Trim(); string col5 = pds.Rows[i][5].ToString().Trim();
string col6 = pds.Rows[i][6].ToString().Trim();
if (!string.IsNullOrEmpty(col0))//责任单位 if (!string.IsNullOrEmpty(col0))//责任单位
{ {
var projectUnit = projectUnits.FirstOrDefault(x => x.UnitName == col0); var projectUnit = projectUnits.FirstOrDefault(x => x.UnitName == col0);
@ -428,13 +427,18 @@ namespace FineUIPro.Web.JDGL.Check
} }
MonthPlan.DutyPerson = lstUserIds; MonthPlan.DutyPerson = lstUserIds;
} }
if (!string.IsNullOrEmpty(col5))//完成状态
{
MonthPlan.IsOK = col5 == "已完成";
}
if (!string.IsNullOrEmpty(col4))//实际完成时间 if (!string.IsNullOrEmpty(col4))//实际完成时间
{ {
MonthPlan.RealDate = Funs.GetNewDateTime(col4); MonthPlan.RealDate = Funs.GetNewDateTime(col4);
MonthPlan.IsOK = true;
} }
if (!string.IsNullOrEmpty(col5))//备注 if (!string.IsNullOrEmpty(col6))//备注
{ {
MonthPlan.Remark = col5; MonthPlan.Remark = col6;
} }
MonthPlan.SortIndex = i + 1; MonthPlan.SortIndex = i + 1;
MonthPlan.MonthPlanId = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan)); MonthPlan.MonthPlanId = SQLHelper.GetNewID(typeof(Model.JDGL_MonthPlan));
@ -489,6 +493,7 @@ namespace FineUIPro.Web.JDGL.Check
newMonthPlan.PlanDate = MonthPlans[i].PlanDate; newMonthPlan.PlanDate = MonthPlans[i].PlanDate;
newMonthPlan.DutyPerson = MonthPlans[i].DutyPerson; newMonthPlan.DutyPerson = MonthPlans[i].DutyPerson;
newMonthPlan.RealDate = MonthPlans[i].RealDate; newMonthPlan.RealDate = MonthPlans[i].RealDate;
newMonthPlan.IsOK = MonthPlans[i].IsOK;
newMonthPlan.Remark = MonthPlans[i].Remark; newMonthPlan.Remark = MonthPlans[i].Remark;
newMonthPlan.SortIndex = MonthPlans[i].SortIndex; newMonthPlan.SortIndex = MonthPlans[i].SortIndex;
newMonthPlan.CompileMan = this.CurrUser.UserId; newMonthPlan.CompileMan = this.CurrUser.UserId;
@ -501,6 +506,7 @@ namespace FineUIPro.Web.JDGL.Check
oldMonthPlan.PlanDate = MonthPlans[i].PlanDate; oldMonthPlan.PlanDate = MonthPlans[i].PlanDate;
oldMonthPlan.DutyPerson = MonthPlans[i].DutyPerson; oldMonthPlan.DutyPerson = MonthPlans[i].DutyPerson;
oldMonthPlan.RealDate = MonthPlans[i].RealDate; oldMonthPlan.RealDate = MonthPlans[i].RealDate;
oldMonthPlan.IsOK = MonthPlans[i].IsOK;
oldMonthPlan.Remark = MonthPlans[i].Remark; oldMonthPlan.Remark = MonthPlans[i].Remark;
BLL.MonthPlanService.UpdateMonthPlan(oldMonthPlan); BLL.MonthPlanService.UpdateMonthPlan(oldMonthPlan);
} }
@ -593,6 +599,27 @@ namespace FineUIPro.Web.JDGL.Check
} }
#endregion #endregion
/// <summary>
/// 完成状态
/// </summary>
/// <param name="registrationId"></param>
/// <returns></returns>
protected string ConvertIsOK(object IsOK)
{
string name = string.Empty;
if (IsOK != null)
{
if (IsOK.ToString() == "True")
{
name = "已完成";
}
else
{
name = "未完成";
}
}
return name;
}
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>

View File

@ -7,11 +7,13 @@
// </自动生成> // </自动生成>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace FineUIPro.Web.JDGL.Check { namespace FineUIPro.Web.JDGL.Check
{
public partial class MonthPlanIn {
public partial class MonthPlanIn
{
/// <summary> /// <summary>
/// form1 控件。 /// form1 控件。
/// </summary> /// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1; protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary> /// <summary>
/// PageManager1 控件。 /// PageManager1 控件。
/// </summary> /// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.PageManager PageManager1; protected global::FineUIPro.PageManager PageManager1;
/// <summary> /// <summary>
/// SimpleForm1 控件。 /// SimpleForm1 控件。
/// </summary> /// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Form SimpleForm1; protected global::FineUIPro.Form SimpleForm1;
/// <summary> /// <summary>
/// Toolbar2 控件。 /// Toolbar2 控件。
/// </summary> /// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Toolbar Toolbar2; protected global::FineUIPro.Toolbar Toolbar2;
/// <summary> /// <summary>
/// txtMonth 控件。 /// txtMonth 控件。
/// </summary> /// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.DatePicker txtMonth; protected global::FineUIPro.DatePicker txtMonth;
/// <summary> /// <summary>
/// btnAudit 控件。 /// btnAudit 控件。
/// </summary> /// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnAudit; protected global::FineUIPro.Button btnAudit;
/// <summary> /// <summary>
/// btnImport 控件。 /// btnImport 控件。
/// </summary> /// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnImport; protected global::FineUIPro.Button btnImport;
/// <summary> /// <summary>
/// btnSave 控件。 /// btnSave 控件。
/// </summary> /// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnSave; protected global::FineUIPro.Button btnSave;
/// <summary> /// <summary>
/// btnDownLoad 控件。 /// btnDownLoad 控件。
/// </summary> /// </summary>
@ -92,7 +94,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnDownLoad; protected global::FineUIPro.Button btnDownLoad;
/// <summary> /// <summary>
/// fuAttachUrl 控件。 /// fuAttachUrl 控件。
/// </summary> /// </summary>
@ -101,7 +103,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.FileUpload fuAttachUrl; protected global::FineUIPro.FileUpload fuAttachUrl;
/// <summary> /// <summary>
/// Grid1 控件。 /// Grid1 控件。
/// </summary> /// </summary>
@ -110,7 +112,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Grid Grid1; protected global::FineUIPro.Grid Grid1;
/// <summary> /// <summary>
/// Label2 控件。 /// Label2 控件。
/// </summary> /// </summary>
@ -119,7 +121,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Label Label2; protected global::System.Web.UI.WebControls.Label Label2;
/// <summary> /// <summary>
/// lbImageUrl 控件。 /// lbImageUrl 控件。
/// </summary> /// </summary>
@ -128,7 +130,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Label lbImageUrl; protected global::System.Web.UI.WebControls.Label lbImageUrl;
/// <summary> /// <summary>
/// Label1 控件。 /// Label1 控件。
/// </summary> /// </summary>
@ -137,7 +139,16 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Label Label1; protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// Label5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label5;
/// <summary> /// <summary>
/// hdFileName 控件。 /// hdFileName 控件。
/// </summary> /// </summary>
@ -146,7 +157,7 @@ namespace FineUIPro.Web.JDGL.Check {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.HiddenField hdFileName; protected global::FineUIPro.HiddenField hdFileName;
/// <summary> /// <summary>
/// hdCheckResult 控件。 /// hdCheckResult 控件。
/// </summary> /// </summary>

View File

@ -775,7 +775,7 @@ namespace FineUIPro.Web.JDGL.Check
} }
/// <summary> /// <summary>
/// /// 完成状态
/// </summary> /// </summary>
/// <param name="registrationId"></param> /// <param name="registrationId"></param>
/// <returns></returns> /// <returns></returns>

View File

@ -0,0 +1,29 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ZHDD.aspx.cs" Inherits="FineUIPro.Web.ZHDD.ZHDD" %>
<!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>
<link href="~/res/css/common.css" rel="stylesheet" type="text/css" />
<style>
container-title-tt {
display: none !important
}
</style>
</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:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server" Height="800">
<iframe id="ifZHDD" runat="server" allow="microphone;camera;midi;encrypted-media;" allowfullscreen="true" width="100%" height="878" frameborder="0" style="margin-top: -78px"></iframe>
</f:ContentPanel>
</Items>
</f:Panel>
</form>
</body>
</html>

View File

@ -0,0 +1,44 @@
using BLL;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using AspNet = System.Web.UI.WebControls;
namespace FineUIPro.Web.ZHDD
{
public partial class ZHDD : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//string username = "rdys_test";
//string password = "Runde.2024";
string username = "合肥诺必达";
string password = "Hf123456@";
var res1 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_pkey&user_name=" + username + "&pwd=" + password, "POST");
var j1 = JsonConvert.DeserializeObject<dynamic>(res1);
string data = j1.data;
var res2 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_token&user_name=" + username + "&pkey=" + j1.data, "POST");
var j2 = JsonConvert.DeserializeObject<dynamic>(res2);
string session_id = j2.session_id;
string token = j2.token;
ifZHDD.Src = "https://caps.runde.pro/login/#token=" + session_id + "&user_name=" + username + "target=home";
}
}
#endregion
}
}

View File

@ -0,0 +1,62 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.ZHDD
{
public partial class ZHDD
{
/// <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>
/// ContentPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel1;
/// <summary>
/// ifZHDD 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlIframe ifZHDD;
}
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="09E6A03F-65C8-4FAC-9659-7A0B56D8CC19" Text="指挥调度中心" NavigateUrl="ZHDD/ZHDD.aspx">
</TreeNode>
</Tree>

View File

@ -327,7 +327,7 @@
}, },
axisLabel: { axisLabel: {
show: true, show: true,
interval: 0, /*interval: 0,*/
textStyle: { textStyle: {
color: 'rgba(255, 255, 255, 0.8)' color: 'rgba(255, 255, 255, 0.8)'
} }
@ -380,30 +380,30 @@
name: '累计人工时', name: '累计人工时',
type: 'line', type: 'line',
data: two.series[0].data, data: two.series[0].data,
label: { //柱体上显示数值 //label: { //柱体上显示数值
show: true,//开启显示 // show: true,//开启显示
position: 'top',//在上方显示 // position: 'top',//在上方显示
textStyle: {//数值样式 // textStyle: {//数值样式
fontSize: '20px', // fontSize: '20px',
color: '#fff' // color: '#fff'
}, // },
formatter: '{c}', // formatter: '{c}',
}, // },
itemStyle: { normal: { color: '#00c771' } } itemStyle: { normal: { color: '#00c771' } }
},{ },{
name: '当月人工时', name: '当月人工时',
type: 'bar', type: 'bar',
barWidth: 40, /* barWidth: 40,*/
data: two.series[1].data, data: two.series[1].data,
label: { //柱体上显示数值 //label: { //柱体上显示数值
show: true,//开启显示 // show: true,//开启显示
position: 'inside',//内部 // position: 'inside',//内部
textStyle: {//数值样式 // textStyle: {//数值样式
fontSize: '20px', // fontSize: '20px',
color: '#fff' // color: '#fff'
}, // },
formatter: '{c}', // formatter: '{c}',
}, // },
}] }]
category_Two('two', xArr, data) category_Two('two', xArr, data)
</script> </script>

View File

@ -226,7 +226,7 @@
</div> </div>
<div class="zyp"> <div class="zyp">
<div class="lab"> <div class="lab">
<asp:Literal runat="server" Text="<%$ Resources:Lan,altitude %>" /> <asp:Literal runat="server" Text="<%$ Resources:Lan,lifting %>" />
</div> </div>
<div class="num"><%=WrokCount2 %>/<%=AllWrokCount2 %></div> <div class="num"><%=WrokCount2 %>/<%=AllWrokCount2 %></div>
</div> </div>
@ -499,10 +499,10 @@
<div class="main" style="padding: .1875rem .25rem;"> <div class="main" style="padding: .1875rem .25rem;">
<div class="cl-tab"> <div class="cl-tab">
<div class="cl-btn cl-btn-act" id="span_gdcl" onclick="clOnclick(0)" style="cursor: pointer"> <div class="cl-btn cl-btn-act" id="span_gdcl" onclick="clOnclick(0)" style="cursor: pointer">
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MaterialLabel %>" /> <asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PipeMaterials %>" />
</div> </div>
<div class="cl-btn" onclick="clOnclick(1)" id="span_sbcl" style="cursor: pointer"> <div class="cl-btn" onclick="clOnclick(1)" id="span_sbcl" style="cursor: pointer">
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PipeMaterials %>" /> <asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_EquipmentMaterials %>" />
</div> </div>
</div> </div>
<div class="table"> <div class="table">
@ -1968,7 +1968,7 @@
})--%> })--%>
createZL({ name: '<%=QualityRate%>', value1: <%=zlallNumber%>, value2: <%=zlfinishNumber%>, el: 'zl-map1' }) createZL({ name: '<%=QualityRate%>', value1: <%=zlallNumber%>, value2: <%=zlfinishNumber%>, el: 'zl-map1' })
createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' }) createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' })
createZL({ name: '<%=OnePassRateOfWelding%>', value1: <%=hjallNumber%>, value2: <%=hjfinishNumber%>, el: 'zl-map3' }) createZL3({ name: '<%=OnePassRateOfWelding%>', value1: <%=hjallNumber%>, value2: <%=hjfinishNumber%>, el: 'zl-map3' })
function createZL(obj) { function createZL(obj) {
let AOption1 = { let AOption1 = {
title: [{ title: [{
@ -1988,20 +1988,20 @@
textStyle: { textStyle: {
rich: { rich: {
a: { a: {
fontSize: 14, fontSize: 12,
color: '#DADADA', color: '#DADADA',
}, },
b: { b: {
color: '#FFFFFF', color: '#FFFFFF',
fontSize: 14, fontSize: 12,
}, },
c: { c: {
padding: [0, 6], padding: [0, 3],
fontSize: 14, fontSize: 12,
color: '#FFFFFF', color: '#FFFFFF',
}, },
d: { d: {
fontSize: 14, fontSize: 12,
color: '#12CDA2', color: '#12CDA2',
} }
} }
@ -2131,6 +2131,168 @@
var aPassChart = echarts.init(document.getElementById(obj.el)); var aPassChart = echarts.init(document.getElementById(obj.el));
aPassChart.setOption(AOption1); aPassChart.setOption(AOption1);
} }
function createZL3(obj) {
let AOption1 = {
title: [{
text: obj.name || '',
top: '62%',
left: 'center',
textStyle: {
color: '#FFFFFF',
fontSize: 14,
fontWeight: 100
}
}, {
// text: `总计:${obj.value1} | 合格数:${obj.value2}`,
text: [`{a|<%=total%>}{b|${obj.value1}}{c||}{a|<%=qualified%>}{d|${obj.value2}}`],
top: '80%',
left: 'center',
textStyle: {
rich: {
a: {
fontSize: 12,
color: '#DADADA',
},
b: {
color: '#FFFFFF',
fontSize: 12,
},
c: {
padding: [0, 3],
fontSize: 12,
color: '#FFFFFF',
},
d: {
fontSize: 12,
color: '#12CDA2',
}
}
}
},
],
series: [
{
name: '',
type: 'gauge',
radius: "60%",
center: ["50%", "30%"],
startAngle: 360,
endAngle: 0,
splitNumber: 20,
progress: {
show: false
},
axisLine: {
roundCap: true,
lineStyle: {
width: 20,
color: [[1, new echarts.graphic.LinearGradient(
0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
[
{ offset: 0, color: 'RGBA(38, 223, 235, .4)' }, // 0% 处的颜色
{ offset: 1, color: '#29F1FA' } // 100% 处的颜色
]
)]]
}
},
detail: {
valueAnimation: true,
formatter: function (value) {
if (obj.value1 == 0) {
str = `{a|0}{b|%}`
} else {
str = `{a|${(obj.value2 / obj.value1 * 100).toFixed(2)}}{b|%}`
}
return str;
},
color: 'inherit',
offsetCenter: [0, 0],
rich: {
a: {
fontSize: 20,
color: '#FFFFFF'
},
b: {
fontSize: 12,
color: '#FFFFFF'
}
}
},
pointer: {
show: false
},
axisLabel: {
show: false
},
splitLine: {
distance: -20,
length: 20,
lineStyle: {
color: '#021837',
width: 4,
}
},
axisTick: {
show: false
},
anchor: {
show: false
},
data: [
{ value: obj.value1 },
],
},
{
name: '',
type: 'gauge',
radius: "68%",
center: ["50%", "30%"],
startAngle: 20,
endAngle: 200,
splitNumber: 20,
progress: {
show: false
},
axisLine: {
roundCap: true,
lineStyle: {
width: 1,
color: [[1, new echarts.graphic.LinearGradient(
0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
[
{ offset: 0, color: 'RGBA(38, 223, 235, .4)' }, // 0% 处的颜色
{ offset: 1, color: '#29F1FA' } // 100% 处的颜色
]
)]]
}
},
pointer: {
show: false
},
axisLabel: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
anchor: {
show: false
},
}
]
};
var aPassChart = echarts.init(document.getElementById(obj.el));
aPassChart.setOption(AOption1);
}
// 风险巡检图标 // 风险巡检图标
createFXMap() createFXMap()

View File

@ -1,9 +1,11 @@
using BLL; using BLL;
using FineUIPro.Web.BaseInfo; using FineUIPro.Web.BaseInfo;
using FineUIPro.Web.DataShow; using FineUIPro.Web.DataShow;
using FineUIPro.Web.OfficeCheck.Check;
using FineUIPro.Web.SysManage; using FineUIPro.Web.SysManage;
using Model; using Model;
using Newtonsoft.Json; using Newtonsoft.Json;
using NPOI.HSSF.Record;
using NPOI.Util; using NPOI.Util;
using System; using System;
using System.Collections; using System.Collections;
@ -28,6 +30,8 @@ namespace FineUIPro.Web.common
protected string completed = string.Empty; protected string completed = string.Empty;
protected string qualified = string.Empty;
protected string Cumulative_actual_value = string.Empty; protected string Cumulative_actual_value = string.Empty;
//实际值 //实际值
@ -171,7 +175,10 @@ namespace FineUIPro.Web.common
getGjsx(); getGjsx();
} }
// 质量统计模块封装 /// <summary>
/// 质量统计模块封装
/// </summary>
/// <returns></returns>
private async Task BindQualityStatisticsAsync() private async Task BindQualityStatisticsAsync()
{ {
await Task.Run(() => await Task.Run(() =>
@ -199,7 +206,8 @@ namespace FineUIPro.Web.common
//int wHours = db.SitePerson_PersonInOutNumber.Where(x => x.ProjectId == ProjectId).Max(x => x.WorkHours) ?? 0; //int wHours = db.SitePerson_PersonInOutNumber.Where(x => x.ProjectId == ProjectId).Max(x => x.WorkHours) ?? 0;
int wHours = 0; int wHours = 0;
DateTime? sDate = Funs.GetNewDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString()); DateTime? sDate = Funs.GetNewDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString());
wHours = (from x in db.T_d_EmployInOutRecord where x.ProjectId == ProjectId select x.ManHours ?? 0).ToList().Sum(); //wHours = (from x in db.T_d_EmployInOutRecord where x.ProjectId == ProjectId select x.ManHours ?? 0).ToList().Sum();
wHours = (from x in db.SitePerson_PersonInOutNumber where x.ProjectId == ProjectId orderby x.InOutDate descending select x.WorkHours ?? 0).ToList().FirstOrDefault();
this.divSafeWorkTime.InnerHtml = wHours.ToString(); this.divSafeWorkTime.InnerHtml = wHours.ToString();
//本月安全人工时 //本月安全人工时
@ -212,19 +220,20 @@ namespace FineUIPro.Web.common
this.divSafeWorkTimeMonth.InnerHtml = wHoursMonth.ToString(); this.divSafeWorkTimeMonth.InnerHtml = wHoursMonth.ToString();
//安全培训累计人员 //安全培训累计人员
var getTrainRecord = db.EduTrain_TrainRecord.Where(x => x.ProjectId == ProjectId).Sum(x => x.TrainPersonNum) ?? 0; //var getTrainRecord = db.EduTrain_TrainRecord.Where(x => x.ProjectId == ProjectId).Sum(x => x.TrainPersonNum) ?? 0;
var getTrainRecord = db.View_EduTrain_TrainFind.Where(x => x.ProjectId == ProjectId).Count();
//修改:增加博晟教育中的人数 //修改:增加博晟教育中的人数
var boShengCount = db.Bo_Sheng_TrainPerson.Count(x => x.ProjectId == ProjectId && (x.DeleteTag == "False" || x.DeleteTag == null)); var boShengCount = db.Bo_Sheng_TrainPerson.Count(x => x.ProjectId == ProjectId && (x.DeleteTag == "False" || x.DeleteTag == null));
this.divSafePersonNum.InnerHtml = (getTrainRecord + boShengCount).ToString(); this.divSafePersonNum.InnerHtml = (getTrainRecord + boShengCount).ToString();
//安全管理人员 //安全管理人员
var allSum = from x in Funs.DB.SitePerson_Person var allSum = from x in db.SitePerson_Person
where x.ProjectId == ProjectId && x.IsUsed == true && x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime.Value > DateTime.Now) where x.ProjectId == ProjectId && x.IsUsed == true && x.InTime <= DateTime.Now && (!x.OutTime.HasValue || x.OutTime.Value > DateTime.Now)
select x; select x;
var glAllPerson = from x in allSum var glAllPerson = from x in allSum
join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId join y in db.Base_WorkPost on x.WorkPostId equals y.WorkPostId
where y.IsHsse == true && x.ProjectId == ProjectId //安管人员 where y.IsHsse == true && x.ProjectId == ProjectId //安管人员
select x; select x;
this.divSafeManagePersonNum.InnerHtml = glAllPerson.Count().ToString(); this.divSafeManagePersonNum.InnerHtml = glAllPerson.Count().ToString();
@ -254,14 +263,36 @@ namespace FineUIPro.Web.common
{ {
int AllCount = 0; int AllCount = 0;
int MCount = 0; int MCount = 0;
//修改日期2024-10-30 16:53:50 为了和另一个看板相同 List<string> pids = new List<string>();
//Funs.DB.T_d_EmployInOutRecord.Where(x => x.ProjectId == this.CurrUser.LoginProjectId && x.RecordDate.Value == DateTime.Now.Date) pids.Add(this.CurrUser.LoginProjectId);
//var getallin = APIPageDataService.getPersonNum(ProjectId, DateTime.Now); var getallin = APIPageDataService.getPersonNum(pids, DateTime.Now);
var getallin = from x in Funs.DB.T_d_EmployInOutRecord //int AllCount = 0;
join z in Funs.DB.Base_WorkPost on x.PostId equals z.WorkPostId //int MCount = 0;
where x.ProjectId == this.CurrUser.LoginProjectId && x.RecordDate.Value == DateTime.Now.Date //var getallin = from x in Funs.DB.T_d_EmployInOutRecord
select new { z.PostType }; // join z in Funs.DB.Base_WorkPost on x.PostId equals z.WorkPostId into zGroup
// from z in zGroup.DefaultIfEmpty()
// where x.ProjectId == this.CurrUser.LoginProjectId && x.RecordDate.Value == DateTime.Now.Date
// select new { x.IDCardNo, z.PostType };
//var getallin = (from x in Funs.DB.SitePerson_Checking
// join z in Funs.DB.SitePerson_Person on x.PersonId equals z.PersonId into zGroup
// from z in zGroup.DefaultIfEmpty()
// //join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId into yGroup
// //from y in yGroup.DefaultIfEmpty()
// join w in Funs.DB.Base_WorkPost on z.WorkPostId equals w.WorkPostId into wGroup
// from w in wGroup.DefaultIfEmpty()
// where x.ProjectId == this.CurrUser.LoginProjectId && x.IntoOut == "1" && x.IntoOutTime >= DateTime.Now.Date
// select new { x.PersonId, w.PostType }).Union
// (from x in Funs.DB.SitePerson_PersonInOut
// join z in Funs.DB.SitePerson_Person on x.PersonId equals z.PersonId into zGroup
// from z in zGroup.DefaultIfEmpty()
// //join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId into yGroup
// //from y in yGroup.DefaultIfEmpty()
// join w in Funs.DB.Base_WorkPost on z.WorkPostId equals w.WorkPostId into wGroup
// from w in wGroup.DefaultIfEmpty()
// where x.ProjectId == this.CurrUser.LoginProjectId && x.IsIn == true && x.ChangeTime >= DateTime.Now.Date
// select new { x.PersonId, w.PostType });
AllCount = getallin.Count(); AllCount = getallin.Count();
if (AllCount > 0) if (AllCount > 0)
@ -505,7 +536,8 @@ namespace FineUIPro.Web.common
int allCount = 0; int allCount = 0;
var getPersonQualitys = from x in Funs.DB.QualityAudit_PersonQuality var getPersonQualitys = from x in Funs.DB.QualityAudit_PersonQuality
join y in Funs.DB.SitePerson_Person on x.PersonId equals y.PersonId join y in Funs.DB.SitePerson_Person on x.PersonId equals y.PersonId
where x.LimitDate.HasValue && x.LimitDate < DateTime.Now && y.ProjectId == ProjectId join z in Funs.DB.Base_WorkPost on y.WorkPostId equals z.WorkPostId
where x.LimitDate.HasValue && x.LimitDate < DateTime.Now && y.ProjectId == ProjectId && y.OutTime == null && z.PostType == Const.PostType_2
select x; select x;
//// 预警人数 //// 预警人数
allCount = getPersonQualitys.Count(); allCount = getPersonQualitys.Count();
@ -864,19 +896,19 @@ namespace FineUIPro.Web.common
select x).Count().ToString(); select x).Count().ToString();
var num2 = (from x in db.ProcessControl_InspectionManagement var num2 = (from x in db.ProcessControl_InspectionManagement
where x.IsOnceQualified == true && x.ProjectId == ProjectId where (x.IsOnceQualified == null || x.IsOnceQualified == true) && x.ProjectId == ProjectId
select x).Count(); select x).Count();
zlgjfinishNumber = num2.ToString(); zlgjfinishNumber = num2.ToString();
var num3 = (from x in db.ProcessControl_InspectionManagement var allnum = (from x in db.ProcessControl_InspectionManagement
where (x.IsOnceQualified == false || x.IsOnceQualified == null) && x.ProjectId == ProjectId where x.ProjectId == ProjectId
select x).Count(); select x).Count();
var zgl = "0"; var zgl = "0";
if (num2 != 0) if (num2 != 0)
{ {
zgl = String.Format("{0:N2}", 100.0 * num2 / (num2 + num3)); zgl = String.Format("{0:N2}", 100.0 * num2 / allnum);
zlgjzgl = zgl.ToString(); zlgjzgl = zgl.ToString();
zggjzglDataValue = (100 - (100.0 * num2 / (num2 + num3))).ToString(); zggjzglDataValue = (100 - (100.0 * num2 / allnum)).ToString();
} }
else else
{ {
@ -940,45 +972,42 @@ namespace FineUIPro.Web.common
// } // }
// } // }
// } // }
var ndtList = var ndtList = (from x in db.ProcessControl_NondestructiveTest_New where x.ProjectId == ProjectId select x).ToList();
(from x in db.ProcessControl_NondestructiveTest_New
where x.ProjectId == ProjectId
select x).ToList();
decimal a = 0, b = 0; decimal a = 0, b = 0;
if (ndtList.Count > 0) if (ndtList.Count > 0)
{ {
foreach (var item in ndtList) //取每个单位、专业最新的一条数据
var datalist = ndtList.GroupBy(r => new { r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList();
foreach (var item in datalist)
{ {
if (item.TotalQuantity.HasValue) if (item.TotalQuantity.HasValue)
{ {
a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / 100);
100);
b += item.TotalQuantity.Value; b += item.TotalQuantity.Value;
} }
} }
result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a); result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a);
} }
else //else
{ //{
var hjglData = // var hjglData =
(from x in db.HJGL_FL_Data // (from x in db.HJGL_FL_Data
where x.ProjectId == ProjectId // where x.ProjectId == ProjectId
orderby x.CompileDate descending // orderby x.CompileDate descending
select x).FirstOrDefault(); // select x).FirstOrDefault();
if (hjglData != null) // if (hjglData != null)
{ // {
a = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmQualifiedAmount); // a = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmQualifiedAmount);
b = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmAmount); // b = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmAmount);
if (a > 0 && b > 0) // if (a > 0 && b > 0)
{ // {
result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a); // result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a);
} // }
} // }
} //}
if (b > 0) if (b > 0)
{ {
hjallNumber = b.ToString(); hjallNumber = b.ToString();
@ -1244,42 +1273,32 @@ namespace FineUIPro.Web.common
{ {
string doneJdtjHtml = string.Empty; string doneJdtjHtml = string.Empty;
string month = string.Format("{0:yyyy-MM-01}", DateTime.Now); string month = string.Format("{0:yyyy-MM-01}", DateTime.Now);
//DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01");
if (DateTime.Now.Day < 26) if (DateTime.Now.Day < 26)
{ {
month = string.Format("{0:yyyy-MM-01}", DateTime.Now.AddMonths(-1)); month = string.Format("{0:yyyy-MM-01}", DateTime.Now.AddMonths(-1));
//months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.AddMonths(-1).Month.ToString() + "-01");
} }
string strSql = @"select qc.QuantityCompletionId,(select PlanNum from JDGL_QuantityCompletion where QuantityListId=ql.QuantityListId and Months=@month) as PlanNum, StringBuilder strSql = new StringBuilder();
(select RealNum from JDGL_QuantityCompletion where QuantityListId=ql.QuantityListId and Months=@month) as RealNum, strSql.AppendLine($@"select pro.ProjectId,pro.ProjectCode,pro.ProjectName,qc.QuantityCompletionId,ql.Name,ql.Unit,ql.DesignNum,ql.SortIndex,qco.PlanNum as PlanNum,qco.RealNum as RealNum,
(select NextNum from JDGL_QuantityCompletion where QuantityListId=ql.QuantityListId and Months=@month) as NextNum,ql.DesignNum,ql.Name,ql.Unit,ql.SortIndex, CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(qco.PlanNum, 0) WHEN 0 THEN 0 ELSE 100 * ISNULL(qco.RealNum, 0) / (1.0 * qco.PlanNum) END AS DECIMAL(9, 2))))) AS Rate,
CONVERT(FLOAT, (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalPlanNum, --(select NextNum from JDGL_QuantityCompletion where QuantityListId=ql.QuantityListId and Months=@month) as NextNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalRealNum, CONVERT(FLOAT, (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalPlanNum,
CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(qc.PlanNum, 0) WHEN 0 THEN 0 CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) as TotalRealNum,
CONVERT(NVARCHAR(10), ((CAST(CASE(select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) WHEN 0 THEN 0 ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) / (1.0 * (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) END AS DECIMAL(9, 2))))) AS TotalRate,
ELSE 100 * ISNULL(qc.RealNum, 0) / (1.0 * qc.PlanNum) END AS DECIMAL(9, 2))))) + '%' CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(ql.DesignNum, 0) WHEN 0 THEN 0 ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion 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_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalPlanNum,
AS Rate, CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalRealNum ");
CONVERT(NVARCHAR(10), ((CAST(CASE(select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) WHEN 0 THEN 0 strSql.AppendLine(@"from JDGL_QuantityList ql
left join JDGL_QuantityCompletion qc on ql.QuantityListId=qc.QuantityListId
ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month) / (1.0 * (select sum(ISNULL(PlanNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months <= @month)) END AS DECIMAL(9, 2)))))+'%' left join Base_Project pro on pro.ProjectId=qc.ProjectId
left join (select PlanNum,RealNum,QuantityListId from JDGL_QuantityCompletion where Months=@month) qco on qco.QuantityListId=ql.QuantityListId ");
AS TotalRate, strSql.AppendLine("where qc.ProjectId=@ProjectId and isnull(pro.ProjectState,1)=1 and qc.QuantityCompletionId=(select top 1 QuantityCompletionId from JDGL_QuantityCompletion q where q.QuantityListId=qc.QuantityListId and q.Months<=@month order by q.Months desc) ");
CONVERT(NVARCHAR(10), ((CAST(CASE ISNULL(ql.DesignNum, 0) WHEN 0 THEN 0 strSql.AppendLine("order by ql.SortIndex, ql.Name ");
ELSE 100 * (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion 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_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalPlanNum,
CONVERT(FLOAT, (select sum(ISNULL(RealNum, 0)) from JDGL_QuantityCompletion where ProjectId = ql.ProjectId and QuantityListId = qc.QuantityListId and Months < qc.Months)) as LastTotalRealNum
from[dbo].JDGL_QuantityList ql
left join dbo.[JDGL_QuantityCompletion] qc on ql.QuantityListId=qc.QuantityListId
where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_QuantityCompletion] 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";
List<SqlParameter> listStr = new List<SqlParameter>(); List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@month", month)); listStr.Add(new SqlParameter("@month", month));
SqlParameter[] parameter = listStr.ToArray(); SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); DataTable tb = SQLHelper.GetDataTableRunText(strSql.ToString(), parameter);
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
for (int j = 0; j < tb.Rows.Count; j++) for (int j = 0; j < tb.Rows.Count; j++)
@ -1290,7 +1309,7 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
string planNum = Funs.RemoveZero(tb.Rows[j]["PlanNum"].ToString().Trim()); string planNum = Funs.RemoveZero(tb.Rows[j]["PlanNum"].ToString().Trim());
string realNum = Funs.RemoveZero(tb.Rows[j]["RealNum"].ToString().Trim()); string realNum = Funs.RemoveZero(tb.Rows[j]["RealNum"].ToString().Trim());
string rate = tb.Rows[j]["Rate"].ToString().Trim(); string rate = tb.Rows[j]["Rate"].ToString().Trim();
string nextNum = Funs.RemoveZero(tb.Rows[j]["NextNum"].ToString().Trim()); //string nextNum = Funs.RemoveZero(tb.Rows[j]["NextNum"].ToString().Trim());
string totalPlanNum = Funs.RemoveZero(tb.Rows[j]["TotalPlanNum"].ToString().Trim()); string totalPlanNum = Funs.RemoveZero(tb.Rows[j]["TotalPlanNum"].ToString().Trim());
string totalRealNum = Funs.RemoveZero(tb.Rows[j]["TotalRealNum"].ToString().Trim()); string totalRealNum = Funs.RemoveZero(tb.Rows[j]["TotalRealNum"].ToString().Trim());
string totalRate = tb.Rows[j]["TotalRate"].ToString().Trim(); string totalRate = tb.Rows[j]["TotalRate"].ToString().Trim();
@ -1481,8 +1500,8 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
listdata.Add(workPostCount2); listdata.Add(workPostCount2);
//焊工 //焊工
listCategories.Add("焊工"); listCategories.Add("焊工");
int workPostCount6 = persons.Count(x => x.WorkPostId == Const.WorkPost_Welder1 || x.WorkPostId == Const.WorkPost_Welder2 || int workPostCount6 = persons.Count(x => x.WorkPostId == Const.WorkPost_Welder1 || x.WorkPostId == Const.WorkPost_Welder2 || x.WorkPostId == Const.WorkPost_Welder3
x.WorkPostId == Const.WorkPost_Welder3 || x.WorkPostId == Const.WorkPost_Welder4 || x.WorkPostId == Const.WorkPost_Welder5); || x.WorkPostId == Const.WorkPost_Welder4 || x.WorkPostId == Const.WorkPost_Welder5 || x.WorkPostId == Const.WorkPost_Welder6);
listdata.Add(workPostCount6); listdata.Add(workPostCount6);
//铆工 //铆工
listCategories.Add("铆工"); listCategories.Add("铆工");
@ -1657,8 +1676,9 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
SqlParameter[] Staticparameter = listStaticListStr.ToArray(); SqlParameter[] Staticparameter = listStaticListStr.ToArray();
DataTable statcitbDataTable = SQLHelper.GetDataTableRunProc("Sp_GJSXStatistic", Staticparameter); DataTable statcitbDataTable = SQLHelper.GetDataTableRunProc("Sp_GJSXStatistic", Staticparameter);
var list = from x in Funs.DB.GJSX where x.ProjectId == this.CurrUser.LoginProjectId && x.State!="1" select x; var list = from x in Funs.DB.GJSX where x.ProjectId == this.CurrUser.LoginProjectId && x.State != "1" select x;
var allcount = list.Count(x => x.State == "0") + list.Count(x => x.State != "0" && x.CompleteDate < DateTime.Now); //var allcount = list.Count(x => x.State == "0") + list.Count(x => x.State != "0" && x.CompleteDate < DateTime.Now);
var allcount = list.Count();
var closecount = list.Count(x => x.State == "0"); var closecount = list.Count(x => x.State == "0");
gjsxRate = String.Format("{0:N2}", 100.0 * closecount / allcount); gjsxRate = String.Format("{0:N2}", 100.0 * closecount / allcount);
gjsxRate = gjsxRate.ToString().Replace("NaN", "0") + "%"; gjsxRate = gjsxRate.ToString().Replace("NaN", "0") + "%";
@ -1747,7 +1767,7 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
} }
//设备材料 //设备材料
var SbclList = Funs.DB.CLGL_ContractListSum.Where(x => x.C1 == "管道" && x.ProjectId == pid); var SbclList = Funs.DB.CLGL_ContractListSum.Where(x => x.C1 == "设备" && x.ProjectId == pid);
foreach (var item in SbclList) foreach (var item in SbclList)
{ {
sbclHtml += "<div class=\"row\">"; sbclHtml += "<div class=\"row\">";
@ -1769,9 +1789,13 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
sbclHtml += "<div class=\"tr\" >" + Sbdhs + "</div>"; sbclHtml += "<div class=\"tr\" >" + Sbdhs + "</div>";
//百分比 //百分比
var dhbfb = "0%"; var dhbfb = "0%";
if (SbcllCgl + Sbdhs != 0) //if (SbcllCgl + Sbdhs != 0)
//{
// dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%";
//}
if (SbcllCgl != 0)
{ {
dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%"; dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / SbcllCgl, 2) + "%";
} }
sbclHtml += "<div class=\"tr\" >" + dhbfb + "</div>"; sbclHtml += "<div class=\"tr\" >" + dhbfb + "</div>";
sbclHtml += "</div>"; sbclHtml += "</div>";
@ -1797,6 +1821,7 @@ where qc.QuantityCompletionId=(select top 1 QuantityCompletionId from[JDGL_Quant
OnePassRateOfWelding = Resources.Lan.OnePassRateOfWelding; OnePassRateOfWelding = Resources.Lan.OnePassRateOfWelding;
total = Resources.Lan.total; total = Resources.Lan.total;
completed = Resources.Lan.completed; completed = Resources.Lan.completed;
qualified = Resources.Lan.qualified;
majorRisk = Resources.Lan.MajorRisk; majorRisk = Resources.Lan.MajorRisk;
LowRisk = Resources.Lan.LowRisk; LowRisk = Resources.Lan.LowRisk;
GeneralRisk = Resources.Lan.GeneralRisk; GeneralRisk = Resources.Lan.GeneralRisk;

View File

@ -530,9 +530,9 @@
window.open("../DataShow/GJSX.aspx") window.open("../DataShow/GJSX.aspx")
}else if (type == 'JD') { }else if (type == 'JD') {
// $('iframe').attr('src', '../InterfacePopup/CQMS/QualityProblem.aspx') //关键事项数据 // $('iframe').attr('src', '../InterfacePopup/CQMS/QualityProblem.aspx') //进度管理数据
window.open("../DataShow/JD.aspx") window.open("../DataShow/JD.aspx")
window.open("../DataShow/JDStatistics.aspx")
} }
else if (type == 'ManagerData') { else if (type == 'ManagerData') {
// $('iframe').attr('src', '../InterfacePopup/CQMS/ManagerData.aspx') //管理人员数据 // $('iframe').attr('src', '../InterfacePopup/CQMS/ManagerData.aspx') //管理人员数据
@ -1902,7 +1902,7 @@
]--%> ]--%>
createZL({ name: '<%=main_new_qualityIssuesRectificationRate%>', value1: <%=zlallNumber%>, value2: <%=zlfinishNumber%>, el: 'zl-map1' }) createZL({ name: '<%=main_new_qualityIssuesRectificationRate%>', value1: <%=zlallNumber%>, value2: <%=zlfinishNumber%>, el: 'zl-map1' })
createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' }) createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' })
createZL({ name: '<%=OnePassRateOfWelding%>', value1: <%=hjallNumber%>, value2: <%=hjfinishNumber%>, el: 'zl-map3' }) createZL3({ name: '<%=OnePassRateOfWelding%>', value1: <%=hjallNumber%>, value2: <%=hjfinishNumber%>, el: 'zl-map3' })
function createZL(obj) { function createZL(obj) {
let AOption1 = { let AOption1 = {
@ -1916,32 +1916,189 @@
fontWeight: 100 fontWeight: 100
} }
}, { }, {
// text: `总计:${obj.value1} | 完成:${obj.value2}`, // text: `总计:${obj.value1} | 完成:${obj.value2}`,
text: [`{a|<%=total%>}{b|${obj.value1}}{c||}{a|<%=completed%>}{d|${obj.value2}}`], text: [`{a|<%=total%>}{b|${obj.value1}}{c||}{a|<%=completed%>}{d|${obj.value2}}`],
top: '80%', top: '80%',
left: 'center', left: 'center',
textStyle: { textStyle: {
rich: { rich: {
a: { a: {
fontSize: 12, fontSize: 12,
color: '#DADADA', color: '#DADADA',
},
b: {
color: '#FFFFFF',
fontSize: 12,
},
c: {
padding: [0, 3],
fontSize: 12,
color: '#FFFFFF',
},
d: {
fontSize: 12,
color: '#12CDA2',
}
}, },
b: { }
color: '#FFFFFF', },
fontSize: 12, ],
}, series: [
c: { {
padding: [0, 6], name: '',
fontSize: 12, type: 'gauge',
color: '#FFFFFF', radius: "60%",
}, center: ["50%", "30%"],
d: { startAngle: 360,
fontSize: 12, endAngle: 0,
color: '#12CDA2', splitNumber: 20,
progress: {
show: false
},
axisLine: {
roundCap: true,
lineStyle: {
width: 20,
color: [[1, new echarts.graphic.LinearGradient(
0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
[
{ offset: 0, color: 'RGBA(38, 223, 235, .4)' }, // 0% 处的颜色
{ offset: 1, color: '#29F1FA' } // 100% 处的颜色
]
)]]
} }
}, },
detail: {
valueAnimation: true,
formatter: function (value) {
//str = `{a|${(obj.value2 / obj.value1 * 100).toFixed(2)}}{b|%}`
str = `{a|${parseFloat((obj.value2 / obj.value1 * 100).toFixed(2))}}{b|%}`
return str;
},
color: 'inherit',
offsetCenter: [0, 0],
rich: {
a: {
fontSize: 20,
color: '#FFFFFF'
},
b: {
fontSize: 12,
color: '#FFFFFF'
}
}
},
pointer: {
show: false
},
axisLabel: {
show: false
},
splitLine: {
distance: -20,
length: 20,
lineStyle: {
color: '#021837',
width: 4,
}
},
axisTick: {
show: false
},
anchor: {
show: false
},
data: [
{ value: obj.value1 },
],
},
{
name: '',
type: 'gauge',
radius: "68%",
center: ["50%", "30%"],
startAngle: 20,
endAngle: 200,
splitNumber: 20,
progress: {
show: false
},
axisLine: {
roundCap: true,
lineStyle: {
width: 1,
color: [[1, new echarts.graphic.LinearGradient(
0, 0, 0, 1, // 这四个参数分别表示渐变的起点 (x1, y1) 与终点 (x2, y2)
[
{ offset: 0, color: 'RGBA(38, 223, 235, .4)' }, // 0% 处的颜色
{ offset: 1, color: '#29F1FA' } // 100% 处的颜色
]
)]]
}
},
pointer: {
show: false
},
axisLabel: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
anchor: {
show: false
},
} }
}, ]
};
var aPassChart = echarts.init(document.getElementById(obj.el));
aPassChart.setOption(AOption1);
}
function createZL3(obj) {
let AOption1 = {
title: [{
text: obj.name || '',
top: '62%',
left: 'center',
textStyle: {
color: '#FFFFFF',
fontSize: 14,
fontWeight: 100
}
}, {
// text: `总计:${obj.value1} | 完成:${obj.value2}`,
text: [`{a|<%=total%>}{b|${obj.value1}}{c||}{a|<%=qualified%>}{d|${obj.value2}}`],
top: '80%',
left: 'center',
textStyle: {
rich: {
a: {
fontSize: 12,
color: '#DADADA',
},
b: {
color: '#FFFFFF',
fontSize: 12,
},
c: {
padding: [0, 3],
fontSize: 12,
color: '#FFFFFF',
},
d: {
fontSize: 12,
color: '#12CDA2',
}
},
}
},
], ],
series: [ series: [
{ {

View File

@ -12,6 +12,7 @@ using System.Web;
using System.Web.UI; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.WebControls;
using Org.BouncyCastle.Ocsp; using Org.BouncyCastle.Ocsp;
using FineUIPro.Web.HJGL.FL;
namespace FineUIPro.Web.common namespace FineUIPro.Web.common
{ {
@ -29,6 +30,7 @@ namespace FineUIPro.Web.common
protected string OnePassRateOfWelding = string.Empty; protected string OnePassRateOfWelding = string.Empty;
protected string total = string.Empty; protected string total = string.Empty;
protected string completed = string.Empty; protected string completed = string.Empty;
protected string qualified = string.Empty;
protected string mainI_progressStatistics = string.Empty; protected string mainI_progressStatistics = string.Empty;
protected string Percentage_of_progress = string.Empty; protected string Percentage_of_progress = string.Empty;
@ -75,7 +77,7 @@ namespace FineUIPro.Web.common
: db.Base_Project : db.Base_Project
.Where(x => x.ProjectState == "1") .Where(x => x.ProjectState == "1")
.Select(x => x.ProjectId) .Select(x => x.ProjectId)
.ToArray(); .ToArray();
//在建项目 //在建项目
if (pids == null) if (pids == null)
{ {
@ -102,7 +104,6 @@ namespace FineUIPro.Web.common
if (countAqrgsSum > 10000) if (countAqrgsSum > 10000)
{ {
countAqrgsSum = countAqrgsSum / Convert.ToDecimal(10000.00); countAqrgsSum = countAqrgsSum / Convert.ToDecimal(10000.00);
this.divSafeWorkTime.InnerHtml = Math.Round(countAqrgsSum, 2).ToString() + "万"; this.divSafeWorkTime.InnerHtml = Math.Round(countAqrgsSum, 2).ToString() + "万";
} }
else else
@ -112,8 +113,8 @@ namespace FineUIPro.Web.common
// 当月安全人工时 // 当月安全人工时
var countMonthAqrgs = pids?.Any() == true var countMonthAqrgs = pids?.Any() == true
? CountAqrgs(getStartMonth(), getEndMonth(), pids) ? CountAqrgs(getLastMonthEndDay(), getEndMonth(), pids)
: CountAqrgs(getStartMonth(), getEndMonth()); : CountAqrgs(getLastMonthEndDay(), getEndMonth());
if (countMonthAqrgs > 10000) if (countMonthAqrgs > 10000)
@ -126,109 +127,127 @@ namespace FineUIPro.Web.common
{ {
this.divSafeWorkTimeMonth.InnerHtml = countMonthAqrgs.ToString().Split('.')[0]; this.divSafeWorkTimeMonth.InnerHtml = countMonthAqrgs.ToString().Split('.')[0];
} }
// 安全培训人员(合并数据库查询) //// 安全培训人员(合并数据库查询)
var trainingQuery = db.EduTrain_TrainRecord //var trainingQuery = db.EduTrain_TrainRecord
.Where(x => pids.Contains(x.ProjectId)) // .Where(x => pids.Contains(x.ProjectId))
.GroupBy(x => 1) // .GroupBy(x => 1)
.Select(g => new { // .Select(g => new
TrainCount = g.Sum(x => x.TrainPersonNum) ?? 0, // {
BoShengCount = db.Bo_Sheng_TrainPerson // TrainCount = g.Sum(x => x.TrainPersonNum) ?? 0,
.Where(x => (x.DeleteTag == "False" || x.DeleteTag == null)) // BoShengCount = db.Bo_Sheng_TrainPerson
.Where(x => pids.Contains(x.ProjectId)) // .Where(x => (x.DeleteTag == "False" || x.DeleteTag == null))
.Count() // .Where(x => pids.Contains(x.ProjectId))
}).FirstOrDefault(); // .Count()
// }).FirstOrDefault();
//divSafePersonNum.InnerHtml = trainingQuery != null
// ? (trainingQuery.TrainCount + trainingQuery.BoShengCount).ToString()
// : "0";
int getTrainRecord = 0, boShengCount = 0;
if (pids == null)
{
getTrainRecord = db.View_EduTrain_TrainFind.Count();
//修改:增加博晟教育中的人数
boShengCount = db.Bo_Sheng_TrainPerson.Count(x => x.DeleteTag == "False" || x.DeleteTag == null);
}
else
{
getTrainRecord = db.View_EduTrain_TrainFind.Where(x => pids.Contains(x.ProjectId)).Count();
//修改:增加博晟教育中的人数
boShengCount = db.Bo_Sheng_TrainPerson.Count(x => pids.Contains(x.ProjectId) && (x.DeleteTag == "False" || x.DeleteTag == null));
}
this.divSafePersonNum.InnerHtml = (getTrainRecord + boShengCount).ToString();
divSafePersonNum.InnerHtml = trainingQuery != null
? (trainingQuery.TrainCount + trainingQuery.BoShengCount).ToString()
: "0";
// 安全管理人员(优化关联查询) // 安全管理人员(优化关联查询)
var safetyStaffCount = db.SitePerson_Person var safetyStaffCount = db.SitePerson_Person
.Where(x=> x.IsUsed == true && x.InTime < DateTime.Now && (x.OutTime == null || x.OutTime > DateTime.Now)) .Where(x => x.IsUsed == true && x.InTime < DateTime.Now && (x.OutTime == null || x.OutTime > DateTime.Now))
.Where(x => pids.Contains(x.ProjectId)) .Where(x => pids.Contains(x.ProjectId))
.Join(db.Base_WorkPost.Where(x => x.IsHsse==true), .Join(db.Base_WorkPost.Where(x => x.IsHsse == true),
person => person.WorkPostId, person => person.WorkPostId,
post => post.WorkPostId, post => post.WorkPostId,
(person, post) => person) (person, post) => person)
.Count(); .Count();
divSafeManagePersonNum.InnerText = safetyStaffCount.ToString(); divSafeManagePersonNum.InnerText = safetyStaffCount.ToString();
}); });
} }
// 质量统计模块封装 // 质量统计模块封装
private async Task BindQualityStatisticsAsync() private async Task BindQualityStatisticsAsync()
{ {
await Task.Run(() => { await Task.Run(() =>
{
var db = Funs.DB; var db = Funs.DB;
// 质量管理人员(合并公司+项目级查询) // 质量管理人员(合并公司+项目级查询)
var qualityQuery = db.Base_WorkPost var qualityQuery = db.Base_WorkPost
.Where(x => x.IsCQMS == true) .Where(x => x.IsCQMS == true)
.GroupJoin(db.SitePerson_Person.Where(x=> x.IsUsed == true), .GroupJoin(db.SitePerson_Person.Where(x => x.IsUsed == true),
post => post.WorkPostId, post => post.WorkPostId,
person => person.WorkPostId, person => person.WorkPostId,
(post, persons) => new { post, persons }) (post, persons) => new { post, persons })
.SelectMany(x => x.persons.DefaultIfEmpty(), .SelectMany(x => x.persons.DefaultIfEmpty(),
(x, person) => new { x.post, person }) (x, person) => new { x.post, person })
.Where(x => pids.Contains(x.person.ProjectId)); .Where(x => pids.Contains(x.person.ProjectId));
//企业总部人员和分支机构人员 //企业总部人员和分支机构人员
var query = (from person in db.Person_CompanyBranchPerson var query = (from person in db.Person_CompanyBranchPerson
join unit in db.Base_Unit on person.UnitId equals unit.UnitId into unitJoin join unit in db.Base_Unit on person.UnitId equals unit.UnitId into unitJoin
from unit in unitJoin.DefaultIfEmpty() // 左连接 from unit in unitJoin.DefaultIfEmpty() // 左连接
join workPost in db.Base_WorkPost on person.WorkPostId equals workPost.WorkPostId into workPostJoin join workPost in db.Base_WorkPost on person.WorkPostId equals workPost.WorkPostId into workPostJoin
from workPost in workPostJoin.DefaultIfEmpty() // 左连接 from workPost in workPostJoin.DefaultIfEmpty() // 左连接
where person.IsOnJob == true && workPost.IsCQMS == true where person.IsOnJob == true && workPost.IsCQMS == true
select new select new
{ {
ID = person.CompanyBranchPersonId, ID = person.CompanyBranchPersonId,
UnitName = unit.UnitName, UnitName = unit.UnitName,
PersonName = person.PersonName, PersonName = person.PersonName,
SexStr = person.Sex == "1" ? "男" : "女", SexStr = person.Sex == "1" ? "男" : "女",
IdentityCard = person.IdentityCard, IdentityCard = person.IdentityCard,
WorkPostName = workPost.WorkPostName, WorkPostName = workPost.WorkPostName,
Telephone = person.Telephone, Telephone = person.Telephone,
IsOnJob = person.IsOnJob, IsOnJob = person.IsOnJob,
Remark = person.Remark, Remark = person.Remark,
ProjectName = "" ProjectName = ""
}).ToList(); }).ToList();
divCqmsManageNum.InnerText = (qualityQuery.Count() + query.Count()).ToString(); divCqmsManageNum.InnerText = (qualityQuery.Count() + query.Count()).ToString();
// 质量培训人员 // 质量培训人员
divCqmsPxNum.InnerText = db.Comprehensive_InspectionPerson divCqmsPxNum.InnerText = db.Comprehensive_InspectionPerson
.Where(x => pids.Contains(x.ProjectId)) .Where(x => pids.Contains(x.ProjectId))
.Count(x => x.IsTrain == true).ToString(); .Count(x => x.IsTrain == true).ToString();
}); });
} }
// 项目统计优化 // 项目统计优化
private async Task BindProjectStatisticsAsync() private async Task BindProjectStatisticsAsync()
{ {
await Task.Run(() => { await Task.Run(() =>
var db = Funs.DB;
int acount = allProjects.Count();
int pcount1 = 0;
int pcount2 = 0;
int pcount3 = 0;
if (acount > 0)
{ {
pcount1 = allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select( x => x.ProjectId).Count(); var db = Funs.DB;
var pidzjsg = string.Join(",", allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select(x => x.ProjectId)).Split(','); int acount = allProjects.Count();
if (pids == null) int pcount1 = 0;
int pcount2 = 0;
int pcount3 = 0;
if (acount > 0)
{ {
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true && pidzjsg.Contains(x.ProjectId) select x.ProjectId).Count(); pcount1 = allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select(x => x.ProjectId).Count();
var pidzjsg = string.Join(",", allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select(x => x.ProjectId)).Split(',');
if (pids == null)
{
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true && pidzjsg.Contains(x.ProjectId) select x.ProjectId).Count();
}
else
{
pidzjsg = pids;
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true && pids.Contains(x.ProjectId) select x.ProjectId).Count();
}
pcount3 = Count3(pidzjsg);
} }
else div_zjxmCount.InnerHtml = pcount1.ToString() + "<div class=\"th\">个</div>";
{ div_cjrsCount.InnerHtml = pcount2.ToString() + "<div class=\"th\">人</div>";
pidzjsg = pids; div_wdgcCount.InnerHtml = pcount3.ToString() + "<div class=\"th\">个</div>";
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true && pids.Contains(x.ProjectId) select x.ProjectId).Count();
}
pcount3 = Count3(pidzjsg);
}
div_zjxmCount.InnerHtml = pcount1.ToString() + "<div class=\"th\">个</div>";
div_cjrsCount.InnerHtml = pcount2.ToString() + "<div class=\"th\">人</div>";
div_wdgcCount.InnerHtml = pcount3.ToString() + "<div class=\"th\">个</div>";
}); });
} }
@ -236,16 +255,31 @@ namespace FineUIPro.Web.common
#region #region
/// <summary>
/// 获取上月的月末日期
/// </summary>
/// <returns></returns>
public static DateTime getLastMonthEndDay()
{
// 获取当前日期
DateTime currentDate = DateTime.Now.AddMonths(-1);
// 获取当前月的最后一天
DateTime lastDayOfMonth = new DateTime(currentDate.Year, currentDate.Month, DateTime.DaysInMonth(currentDate.Year, currentDate.Month));
return lastDayOfMonth;
}
/// <summary> /// <summary>
/// 获取当前月的月末日期 /// 获取当前月的月末日期
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public static DateTime getEndMonth() public static DateTime getEndMonth()
{ {
// 获取当前日期
DateTime currentDate = DateTime.Now;
// 获取当前月的最后一天
DateTime lastDayOfMonth = new DateTime(currentDate.Year, currentDate.Month, DateTime.DaysInMonth(currentDate.Year, currentDate.Month));
int span = Convert.ToInt32(System.DateTime.Now.Day); return lastDayOfMonth;
System.DateTime dateEnd = System.DateTime.Now.AddMonths(1).AddDays(-span);
return dateEnd;
} }
/// <summary> /// <summary>
/// 获取当前月初日期 /// 获取当前月初日期
@ -253,10 +287,11 @@ namespace FineUIPro.Web.common
/// <returns></returns> /// <returns></returns>
public static DateTime getStartMonth() public static DateTime getStartMonth()
{ {
int span = Convert.ToInt32(System.DateTime.Now.Day); // 获取当前日期
span = span - 1; DateTime currentDate = DateTime.Now;
System.DateTime dateStart = System.DateTime.Now.AddDays(-span); // 获取当前月的月初日期
return dateStart; DateTime firstDayOfMonth = new DateTime(currentDate.Year, currentDate.Month, 1);
return firstDayOfMonth;
} }
//安全人工时(穿透) //安全人工时(穿透)
@ -272,8 +307,7 @@ namespace FineUIPro.Web.common
var datetime1 = d1; var datetime1 = d1;
var datetime2 = d2; var datetime2 = d2;
var getAllPersonInOutList = from x in Funs.DB.SitePerson_PersonInOutNumber var getAllPersonInOutList = from x in Funs.DB.SitePerson_PersonInOutNumber
select new { x.ProjectId, x.InOutDate, x.WorkHours };
select new { x.ProjectId, x.InOutDate, x.WorkHours };
if (pids != null) if (pids != null)
{ {
getAllPersonInOutList = getAllPersonInOutList.Where(x => pids.Contains(x.ProjectId)); getAllPersonInOutList = getAllPersonInOutList.Where(x => pids.Contains(x.ProjectId));
@ -286,18 +320,20 @@ namespace FineUIPro.Web.common
{ {
getAllPersonInOutList = getAllPersonInOutList.Where(x => x.InOutDate <= datetime2); getAllPersonInOutList = getAllPersonInOutList.Where(x => x.InOutDate <= datetime2);
} }
var projects = getAllPersonInOutList var projects = getAllPersonInOutList.GroupBy(x => x.ProjectId).Select(g => new
.GroupBy(x => x.ProjectId) {
.Select(g => new Project = g.Key,
{ Items = g.OrderBy(x => x.InOutDate).ToList()
Project = g.Key, }).Where(g => g.Items.Any());
Items = g.OrderBy(x => x.InOutDate).ToList()
})
.Where(g => g.Items.Any());
cout1 = projects.ToList().Sum(g =>
(g.Items.Last().WorkHours ?? 0) -
(g.Items.First().WorkHours ?? 0));
if (!datetime1.HasValue && !datetime2.HasValue)
{//查累计人工时
cout1 = projects.ToList().Sum(g => (g.Items.Last().WorkHours ?? 0));
}
else
{//查当月人工时
cout1 = projects.ToList().Sum(g => (g.Items.Last().WorkHours ?? 0) - (g.Items.First().WorkHours ?? 0));
}
var getD1 = from x in Funs.DB.Accident_AccidentHandle var getD1 = from x in Funs.DB.Accident_AccidentHandle
join y in Funs.DB.Base_Project on x.ProjectId equals y.ProjectId join y in Funs.DB.Base_Project on x.ProjectId equals y.ProjectId
@ -322,7 +358,7 @@ namespace FineUIPro.Web.common
{ {
getD1 = getD1.Where(x => x.AccidentDate <= datetime2); getD1 = getD1.Where(x => x.AccidentDate <= datetime2);
getD2 = getD2.Where(x => x.CompileDate <= datetime2); getD2 = getD2.Where(x => x.CompileDate <= datetime2);
} }
if (getD1.Any()) if (getD1.Any())
{ {
cout1 = cout1 - getD1.Sum(x => x.WorkHoursLoss ?? 0); cout1 = cout1 - getD1.Sum(x => x.WorkHoursLoss ?? 0);
@ -388,7 +424,7 @@ namespace FineUIPro.Web.common
return await Task.Run(() => return await Task.Run(() =>
{ {
Model.SingleSerie series = new Model.SingleSerie(); Model.SingleSerie series = new Model.SingleSerie();
var project1s = allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select(x=> new { x.ProjectId, x.ProjectName, x.ProjectState2, x.Province, x.ShortName }).ToList(); var project1s = allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null).Select(x => new { x.ProjectId, x.ProjectName, x.ProjectState2, x.Province, x.ShortName }).ToList();
var consts = Funs.DB.Sys_Const.Where(x => x.GroupId == ConstValue.GroupId_ProjectState).ToList(); var consts = Funs.DB.Sys_Const.Where(x => x.GroupId == ConstValue.GroupId_ProjectState).ToList();
string name = string.Empty; string name = string.Empty;
if (project1s.Any()) if (project1s.Any())
@ -456,25 +492,25 @@ namespace FineUIPro.Web.common
var accidentList1 = from x in db.Accident_AccidentPersonRecord var accidentList1 = from x in db.Accident_AccidentPersonRecord
join y in db.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId join y in db.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId
where y.AccidentTypeName.Contains("未遂") where y.AccidentTypeName.Contains("未遂")
select new { x.ProjectId, x.AccidentDate } ; select new { x.ProjectId, x.AccidentDate };
var accidentList2 = from x in db.Accident_AccidentReportOther var accidentList2 = from x in db.Accident_AccidentReportOther
join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue
where y.ConstText.Contains("未遂") where y.ConstText.Contains("未遂")
select new { x.ProjectId, x.AccidentDate }; select new { x.ProjectId, x.AccidentDate };
var allProvinceProjectList = (from x in allProjects var allProvinceProjectList = (from x in allProjects
join y in provinceDic on x.Province equals y.ProvinceCode join y in provinceDic on x.Province equals y.ProvinceCode
where provinces.Contains(y.CnShortName ) where provinces.Contains(y.CnShortName)
select new { x,y.CnShortName}).ToList(); select new { x, y.CnShortName }).ToList();
var allProvinces= allProvinceProjectList.Select(x =>x.CnShortName ).Distinct().ToList(); var allProvinces = allProvinceProjectList.Select(x => x.CnShortName).Distinct().ToList();
foreach (var province in allProvinces) foreach (var province in allProvinces)
{ {
int accidentNum = 0; int accidentNum = 0;
DateTime date = DateTime.Now; DateTime date = DateTime.Now;
decimal money1 = 0, money2 = 0; decimal money1 = 0, money2 = 0;
/* var projects = from x in allProjects /* var projects = from x in allProjects
join y in provinceDic on x.Province equals y.ProvinceCode join y in provinceDic on x.Province equals y.ProvinceCode
where y.CnShortName == province where y.CnShortName == province
select x;*/ select x;*/
var projects = allProvinceProjectList.Where(x => x.CnShortName == province); var projects = allProvinceProjectList.Where(x => x.CnShortName == province);
listdata.Add(projects.Count()); listdata.Add(projects.Count());
decimal progress = 0; decimal progress = 0;
@ -699,7 +735,7 @@ namespace FineUIPro.Web.common
select x).Count().ToString(); select x).Count().ToString();
var num2 = (from x in Funs.DB.Check_CheckControl var num2 = (from x in Funs.DB.Check_CheckControl
where x.State == "7" where x.State == "7"
select x).Count(); select x).Count();
zlfinishNumber = num2.ToString(); zlfinishNumber = num2.ToString();
@ -716,11 +752,11 @@ namespace FineUIPro.Web.common
else else
{ {
zlallNumber = (from x in Funs.DB.Check_CheckControl zlallNumber = (from x in Funs.DB.Check_CheckControl
where pids.Contains(x.ProjectId) where pids.Contains(x.ProjectId)
select x).Count().ToString(); select x).Count().ToString();
var num2 = (from x in Funs.DB.Check_CheckControl var num2 = (from x in Funs.DB.Check_CheckControl
where x.State == "7" && pids.Contains(x.ProjectId) where x.State == "7" && pids.Contains(x.ProjectId)
select x).Count(); select x).Count();
zlfinishNumber = num2.ToString(); zlfinishNumber = num2.ToString();
@ -755,7 +791,7 @@ namespace FineUIPro.Web.common
zlgjallNumber = num1.ToString(); zlgjallNumber = num1.ToString();
var num2 = (from x in Funs.DB.ProcessControl_InspectionManagement var num2 = (from x in Funs.DB.ProcessControl_InspectionManagement
where x.IsOnceQualified == true where (x.IsOnceQualified == null || x.IsOnceQualified == true)
select x).Count(); select x).Count();
zlgjfinishNumber = num2.ToString(); zlgjfinishNumber = num2.ToString();
@ -771,7 +807,7 @@ namespace FineUIPro.Web.common
zlgjallNumber = num1.ToString(); zlgjallNumber = num1.ToString();
var num2 = (from x in Funs.DB.ProcessControl_InspectionManagement var num2 = (from x in Funs.DB.ProcessControl_InspectionManagement
where x.IsOnceQualified == true && pids.Contains(x.ProjectId) where (x.IsOnceQualified == null || x.IsOnceQualified == true) && pids.Contains(x.ProjectId)
select x).Count(); select x).Count();
zlgjfinishNumber = num2.ToString(); zlgjfinishNumber = num2.ToString();
@ -799,40 +835,83 @@ namespace FineUIPro.Web.common
List<double> listdata = new List<double>(); List<double> listdata = new List<double>();
double result = 0; double result = 0;
Model.SGGLDB db = Funs.DB; Model.SGGLDB db = Funs.DB;
var ndtLists = from x in db.ProcessControl_NondestructiveTest_New select x; var ndtLists = (from x in db.ProcessControl_NondestructiveTest_New select x).ToList();
if (pids != null) if (pids != null)
{ {
ndtLists = ndtLists.Where(x=>pids.Contains(x.ProjectId)); ndtLists = ndtLists.Where(x => pids.Contains(x.ProjectId)).ToList();
} }
decimal a = 0, b = 0; decimal a = 0, b = 0;
var sumResult = ndtLists if (ndtLists.Count > 0)
.GroupBy(x => x.ProjectId) {
.Select(g => new { //取每个单位、专业最新的一条数据
TotalQ = g.OrderByDescending(x => x.CreateDate) var datalist = ndtLists.GroupBy(r => new { r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList();
.Select(x => x.TotalQuantity) foreach (var item in datalist)
.FirstOrDefault(), {
Rate = g.OrderByDescending(x => x.CreateDate) if (item.TotalQuantity.HasValue)
.Select(x => x.TotalRate) {
.FirstOrDefault() a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / 100);
}) b += item.TotalQuantity.Value;
.Where(x => x.TotalQ.HasValue).ToList() }
.Select(x => new { }
A = Math.Floor(x.TotalQ.Value * (decimal.Parse(x.Rate)) / 100), result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a);
B = x.TotalQ.Value }
}); //else
a = sumResult.Sum(x=>x.A); //{
b = sumResult.Sum(x => x.B); // var hjglData =
// (from x in db.HJGL_FL_Data
// where x.ProjectId == ProjectId
// orderby x.CompileDate descending
// select x).FirstOrDefault();
// if (hjglData != null)
// {
// a = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmQualifiedAmount);
// b = Funs.GetNewDecimalOrZero(hjglData.OneTimeFilmAmount);
// if (a > 0 && b > 0)
// {
// result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a);
// }
// }
//}
if (b > 0) if (b > 0)
{ {
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 2));
hjallNumber = b.ToString(); hjallNumber = b.ToString();
hjfinishNumber = a.ToString(); hjfinishNumber = a.ToString();
hjzgl = result.ToString(); hjzgl = result.ToString();
hjDataValue = (100 - result).ToString(); hjDataValue = (100 - result).ToString();
} }
//var sumResult = ndtLists
// .GroupBy(x => x.ProjectId)
// .Select(g => new
// {
// TotalQ = g.OrderByDescending(x => x.CreateDate)
// .Select(x => x.TotalQuantity)
// .FirstOrDefault(),
// Rate = g.OrderByDescending(x => x.CreateDate)
// .Select(x => x.TotalRate)
// .FirstOrDefault()
// })
// .Where(x => x.TotalQ.HasValue).ToList()
// .Select(x => new
// {
// A = Math.Floor(x.TotalQ.Value * (decimal.Parse(x.Rate)) / 100),
// B = x.TotalQ.Value
// });
//a = sumResult.Sum(x => x.A);
//b = sumResult.Sum(x => x.B);
//if (b > 0)
//{
// result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 2));
// hjallNumber = b.ToString();
// hjfinishNumber = a.ToString();
// hjzgl = result.ToString();
// hjDataValue = (100 - result).ToString();
//}
}); });
} }
@ -906,7 +985,7 @@ namespace FineUIPro.Web.common
var getallin = new List<Model.PageDataPersonInOutItem>(); var getallin = new List<Model.PageDataPersonInOutItem>();
if (pids == null) if (pids == null)
{ {
getallin = APIPageDataService.getPersonNum(new List<string>(),DateTime.Now); getallin = APIPageDataService.getPersonNum(new List<string>(), DateTime.Now);
} }
else else
{ {
@ -928,8 +1007,8 @@ namespace FineUIPro.Web.common
ProjectPersonMc += "'" + item.ShortName + "',"; ProjectPersonMc += "'" + item.ShortName + "',";
ProjectPersonCount += "'" + getallin.Count(x => x.ProjectId == item.ProjectId) + "',"; ProjectPersonCount += "'" + getallin.Count(x => x.ProjectId == item.ProjectId) + "',";
} }
ProjectPersonMc = ProjectPersonMc.TrimEnd(','); ProjectPersonMc = !string.IsNullOrWhiteSpace(ProjectPersonMc) ? ProjectPersonMc.TrimEnd(',') : string.Empty;
ProjectPersonCount = ProjectPersonCount.TrimEnd(','); ProjectPersonCount = !string.IsNullOrWhiteSpace(ProjectPersonCount) ? ProjectPersonCount.TrimEnd(',') : string.Empty;
}); });
} }
#endregion #endregion
@ -947,7 +1026,7 @@ namespace FineUIPro.Web.common
foreach (var item in allProjects) foreach (var item in allProjects)
{ {
ProjectPersonMc += "'" + item.ShortName + "',"; ProjectPersonMc += "'" + item.ShortName + "',";
ProjectPersonCount += "'" + allperson.Count(x=>x.ProjectId==item.ProjectId) + "',"; ProjectPersonCount += "'" + allperson.Count(x => x.ProjectId == item.ProjectId) + "',";
} }
ProjectPersonMc = ProjectPersonMc.TrimEnd(','); ProjectPersonMc = ProjectPersonMc.TrimEnd(',');
ProjectPersonCount = ProjectPersonCount.TrimEnd(','); ProjectPersonCount = ProjectPersonCount.TrimEnd(',');
@ -963,7 +1042,7 @@ namespace FineUIPro.Web.common
var list = allProjects; var list = allProjects;
if (list.Any()) if (list.Any())
{ {
var progressCompletions = from x in Funs.DB.JDGL_ProgressCompletion select x ; var progressCompletions = from x in Funs.DB.JDGL_ProgressCompletion select x;
foreach (var item in list) foreach (var item in list)
{ {
var pCs = progressCompletions.Where(x => x.ProjectId == item.ProjectId).ToList(); var pCs = progressCompletions.Where(x => x.ProjectId == item.ProjectId).ToList();
@ -989,7 +1068,7 @@ namespace FineUIPro.Web.common
div_zgwwc.InnerHtml = GeneralNotClosedNum.ToString(); div_zgwwc.InnerHtml = GeneralNotClosedNum.ToString();
div_zgwcl.InnerHtml = (100.0 * GeneralClosedNum / (GeneralNotClosedNum + GeneralClosedNum)).ToString("0.##") + "%"; div_zgwcl.InnerHtml = (100.0 * GeneralClosedNum / (GeneralNotClosedNum + GeneralClosedNum)).ToString("0.##") + "%";
}); });
} }
/// <summary> /// <summary>
@ -1112,13 +1191,11 @@ namespace FineUIPro.Web.common
#endregion #endregion
#region #region
sbclHtml += " <div class=\"row\">";
pname = item.ShortName; pname = item.ShortName;
if (item.ShortName.Length > 5) if (item.ShortName.Length > 5)
{ {
pname = item.ShortName.Substring(0, 5) + "..."; pname = item.ShortName.Substring(0, 5) + "...";
} }
sbclHtml += "<div class=\"th-p\" title=\"" + item.ShortName + "\">" + pname + "</div>";
//采购量 //采购量
var SbcllCglList = SbclList.Where(x => x.ProjectId == pid).ToList(); var SbcllCglList = SbclList.Where(x => x.ProjectId == pid).ToList();
double SbcllCgl = 0.0; double SbcllCgl = 0.0;
@ -1137,22 +1214,25 @@ namespace FineUIPro.Web.common
} }
} }
sbclHtml += "<div class=\"row\">";
sbclHtml += "<div class=\"th-p\" title=\"" + item.ShortName + "\">" + pname + "</div>";
sbclHtml += "<div class=\"th-p\">" + SbcllCgl + "</div>"; sbclHtml += "<div class=\"th-p\">" + SbcllCgl + "</div>";
sbclHtml += "<div class=\"th-p\">" + Sbdhs + "</div>"; sbclHtml += "<div class=\"th-p\">" + Sbdhs + "</div>";
//百分比 //百分比
if (SbcllCgl + Sbdhs != 0) //if (SbcllCgl + Sbdhs != 0)
//{
// var dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%";
// sbclHtml += "<div class=\"th-p\">" + dhbfb + "</div>";
//}
if (SbcllCgl != 0)
{ {
var dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%"; var dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / SbcllCgl, 2) + "%";
sbclHtml += "<div class=\"th-p\">" + dhbfb + "</div>"; sbclHtml += "<div class=\"th-p\">" + dhbfb + "</div>";
} }
else else
{ {
sbclHtml += "<div class=\"th-p\">0%</div>"; sbclHtml += "<div class=\"th-p\">0%</div>";
} }
sbclHtml += " </div>"; sbclHtml += " </div>";
#endregion #endregion
} }
@ -1165,7 +1245,8 @@ namespace FineUIPro.Web.common
/// <returns></returns> /// <returns></returns>
private int GetNearMissNum() private int GetNearMissNum()
{ {
string cacheKey = "NearMissNum_" + string.Join("_",pids); Model.SGGLDB db = Funs.DB;
string cacheKey = "NearMissNum_" + string.Join("_", pids);
var memoryCache = MemoryCache.Default; var memoryCache = MemoryCache.Default;
if (memoryCache.Get(cacheKey) != null) if (memoryCache.Get(cacheKey) != null)
{ {
@ -1174,18 +1255,36 @@ namespace FineUIPro.Web.common
int result = 0; int result = 0;
if (pids == null) if (pids == null)
{ {
result = (from x in Funs.DB.Accident_AccidentPersonRecord var wsAccidentList1 = from x in db.Accident_AccidentPersonRecord
join y in Funs.DB.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId join y in db.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId
where x.IsAttempt == "1" && x.CompileDate > Const.DtmarkTime where y.AccidentTypeName.Contains("未遂")
select x).Count(); select x;
var wsAccidentList2 = from x in db.Accident_AccidentReportOther
join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue
where y.ConstText.Contains("未遂")
select x;
result = wsAccidentList1.Count() + wsAccidentList2.Count();
//result = (from x in Funs.DB.Accident_AccidentPersonRecord
// join y in Funs.DB.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId
// where x.IsAttempt == "1" && x.CompileDate > Const.DtmarkTime
// select x).Count();
} }
else else
{ {
result = (from x in Funs.DB.Accident_AccidentPersonRecord var wsAccidentList1 = from x in db.Accident_AccidentPersonRecord
join y in Funs.DB.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId join y in db.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId
where x.IsAttempt == "1" && x.CompileDate > Const.DtmarkTime where y.AccidentTypeName.Contains("未遂") && pids.Contains(x.ProjectId)
&& pids.Contains(x.ProjectId) select x;
select x).Count(); var wsAccidentList2 = from x in db.Accident_AccidentReportOther
join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue
where y.ConstText.Contains("未遂") && pids.Contains(x.ProjectId)
select x;
result = wsAccidentList1.Count() + wsAccidentList2.Count();
//result = (from x in Funs.DB.Accident_AccidentPersonRecord
// join y in Funs.DB.Base_AccidentType on x.AccidentTypeId equals y.AccidentTypeId
// where x.IsAttempt == "1" && x.CompileDate > Const.DtmarkTime
// && pids.Contains(x.ProjectId)
// select x).Count();
} }
var policy = new CacheItemPolicy var policy = new CacheItemPolicy
@ -1210,6 +1309,7 @@ namespace FineUIPro.Web.common
OnePassRateOfWelding = Resources.Lan.OnePassRateOfWelding; OnePassRateOfWelding = Resources.Lan.OnePassRateOfWelding;
total = Resources.Lan.total; total = Resources.Lan.total;
completed = Resources.Lan.completed; completed = Resources.Lan.completed;
qualified = Resources.Lan.qualified;
mainI_progressStatistics = Resources.Lan.mainI_progressStatistics; mainI_progressStatistics = Resources.Lan.mainI_progressStatistics;
Percentage_of_progress = Resources.Lan.Percentage_of_progress; Percentage_of_progress = Resources.Lan.Percentage_of_progress;
}); });

View File

@ -252,9 +252,9 @@
</f:DropDownList> </f:DropDownList>
<f:Label ID="lblProjectName" runat="server"></f:Label> <f:Label ID="lblProjectName" runat="server"></f:Label>
</div> </div>
<div class="t-btn t-btn-act" onclick="ProjectZJClick();" style="cursor: pointer;display:none;">在建</div> <div class="t-btn t-btn-act" onclick="ProjectZJClick();" style="cursor: pointer; display: none;">在建</div>
<div class="t-btn" onclick="ProjectTGClick();" style="cursor: pointer;display:none;">停工</div> <div class="t-btn" onclick="ProjectTGClick();" style="cursor: pointer; display: none;">停工</div>
<div class="t-btn" onclick="ProjectJGClick();" style="cursor: pointer;display:none;">竣工</div> <div class="t-btn" onclick="ProjectJGClick();" style="cursor: pointer; display: none;">竣工</div>
</div> </div>
<div class="nav-btn n-btns-l"> <div class="nav-btn n-btns-l">
<div class="n-btn-l p-n-btn-l" onclick="CQMSClick();" style="cursor: pointer"> <div class="n-btn-l p-n-btn-l" onclick="CQMSClick();" style="cursor: pointer">
@ -324,12 +324,11 @@
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnProjectSet" OnClientClick="parent.removeActiveTab();"> EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnProjectSet" OnClientClick="parent.removeActiveTab();">
</f:Button> </f:Button>
</div> </div>
<%--<div class="t-btn1 iconfont icon-bangzhu" onclick="HelpFunction()" style="cursor: pointer"> <div class="t-btn1 " onclick="HelpFunction()" style="cursor: pointer">
<span><asp:Literal runat="server" Text="<%$ Resources:Lan,help %>" /><f:Button runat="server" CssClass="bgbtntop" IconFont="Eye" OnClick="btnHelp_Click" ToolTip="<%$ Resources:Lan,help %>" Hidden="true" <f:Button runat="server" CssClass="bgbtntop" IconFont="Question" OnClick="btnHelp_Click" ToolTip="<%$ Resources:Lan,help %>" Hidden="false"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHelp" OnClientClick="parent.removeActiveTab();"> EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHelp" OnClientClick="parent.removeActiveTab();">
</f:Button> </f:Button>
</span> </div>
</div>--%>
<%--<div class="t-btn1 iconfont icon-tuichu" onclick="SignOutFunction()" style="cursor: pointer"> <%--<div class="t-btn1 iconfont icon-tuichu" onclick="SignOutFunction()" style="cursor: pointer">
<span><asp:Literal runat="server" Text="<%$ Resources:Lan,quit %>" /><f:Button runat="server" CssClass="bgbtntop" Text="<%$ Resources:Lan,quit %>" ToolTip="<%$ Resources:Lan,quit %>" IconFont="PowerOff" Hidden="true" <span><asp:Literal runat="server" Text="<%$ Resources:Lan,quit %>" /><f:Button runat="server" CssClass="bgbtntop" Text="<%$ Resources:Lan,quit %>" ToolTip="<%$ Resources:Lan,quit %>" IconFont="PowerOff" Hidden="true"
EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18"> EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18">
@ -359,6 +358,9 @@
<div class="n-btn-r c-n-btn-r" onclick="DigitalSiteClick();" style="cursor: pointer"> <div class="n-btn-r c-n-btn-r" onclick="DigitalSiteClick();" style="cursor: pointer">
<asp:Literal runat="server" Text="<%$ Resources:Lan,VideoSurveillance %>" /> <asp:Literal runat="server" Text="<%$ Resources:Lan,VideoSurveillance %>" />
</div> </div>
<div class="n-btn-r c-n-btn-r" onclick="CommandDispatchClick();" style="cursor: pointer; width: 1.475rem; height: .305rem; line-height: .35rem;">
<asp:Literal runat="server" Text="<%$ Resources:Lan,CommandDispatchCenter %>" />
</div>
<div class="n-btn-r c-n-btn-r" onclick="PDigDataClick();" style="cursor: pointer"> <div class="n-btn-r c-n-btn-r" onclick="PDigDataClick();" style="cursor: pointer">
<asp:Literal runat="server" Text="<%$ Resources:Lan,OnSiteAttendance %>" /> <asp:Literal runat="server" Text="<%$ Resources:Lan,OnSiteAttendance %>" />
</div> </div>
@ -533,6 +535,12 @@
<f:Button runat="server" CssClass="bgbtn" Text="视频监控" OnClick="btnDigitalSite_Click" OnClientClick="openVideo();" <f:Button runat="server" CssClass="bgbtn" Text="视频监控" OnClick="btnDigitalSite_Click" OnClientClick="openVideo();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnDigitalSite" Hidden="true"> EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnDigitalSite" Hidden="true">
</f:Button> </f:Button>
<%-- <f:Button runat="server" CssClass="bgbtn" Text="指挥调度中心" OnClick="btnCommandDispatch_Click" OnClientClick="openCommandDispatchCenter();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnCommandDispatch" Hidden="true">
</f:Button>--%>
<f:Button runat="server" CssClass="bgbtn" Text="指挥调度中心" OnClick="btnCommandDispatch_Click" OnClientClick="parent.removeActiveTab();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnCommandDispatch" Hidden="true">
</f:Button>
<f:Button runat="server" CssClass="bgbtn" Text="现场考勤" OnClick="btnPDigData_Click" OnClientClick="parent.removeActiveTab();" <f:Button runat="server" CssClass="bgbtn" Text="现场考勤" OnClick="btnPDigData_Click" OnClientClick="parent.removeActiveTab();"
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPDigData" Hidden="true"> EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPDigData" Hidden="true">
</f:Button> </f:Button>
@ -574,6 +582,7 @@
var btnTransferClientID = '<%= btnTransfer.ClientID %>'; var btnTransferClientID = '<%= btnTransfer.ClientID %>';
var btnPGJSXClientID = '<%= btnPGJSX.ClientID %>'; var btnPGJSXClientID = '<%= btnPGJSX.ClientID %>';
var btnDigitalSiteClientID = '<%= btnDigitalSite.ClientID %>'; var btnDigitalSiteClientID = '<%= btnDigitalSite.ClientID %>';
var btnCommandDispatchClientID = '<%= btnCommandDispatch.ClientID %>';
var btnPDigDataClientID = '<%= btnPDigData.ClientID %>'; var btnPDigDataClientID = '<%= btnPDigData.ClientID %>';
var btnOpinionClientID = '<%= btnOpinion.ClientID %>'; var btnOpinionClientID = '<%= btnOpinion.ClientID %>';
var btnDocClientID = '<%= btnDoc.ClientID %>'; var btnDocClientID = '<%= btnDoc.ClientID %>';
@ -653,6 +662,12 @@
var $item = $('.f-tabstrip-header') var $item = $('.f-tabstrip-header')
$item.attr('style', ";display:block !important;") $item.attr('style', ";display:block !important;")
} }
function CommandDispatchClick() {
parent.removeActiveTab();
F(btnCommandDispatchClientID).click();
var $item = $('.f-tabstrip-header')
$item.attr('style', ";display:block !important;")
}
// 点击标题栏工具图标 - 查看源代码 // 点击标题栏工具图标 - 查看源代码
var videoURL ='<%=VideoURL %>' var videoURL ='<%=VideoURL %>'
@ -670,6 +685,18 @@
alert("您没有权限!"); alert("您没有权限!");
} }
} }
<%--// 点击标题栏工具图标 - 查看源代码
var dispatchCenterURL = '<%=CommandDispatchCenterURL %>'
function openCommandDispatchCenter() {
if (dispatchCenterURL) {
window.open(dispatchCenterURL, '_blank');
}
else {
alert("您没有权限!");
}
}--%>
function PDigDataClick() { function PDigDataClick() {
parent.removeActiveTab(); parent.removeActiveTab();
F(btnPDigDataClientID).click(); F(btnPDigDataClientID).click();

View File

@ -10,6 +10,7 @@ using System.Web;
using System.Web.UI.WebControls; using System.Web.UI.WebControls;
using System.Xml; using System.Xml;
using System.Linq; using System.Linq;
using FineUIPro.Web.ZHDD;
namespace FineUIPro.Web namespace FineUIPro.Web
{ {
@ -321,7 +322,7 @@ namespace FineUIPro.Web
var getproject = ProjectService.GetProjectByProjectName(Request.Params["projectName"]); var getproject = ProjectService.GetProjectByProjectName(Request.Params["projectName"]);
if (getproject != null) if (getproject != null)
{ {
if (getproject.ProjectState!="1") if (getproject.ProjectState != "1")
{ {
ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, getproject.ProjectState, false, "1"); ProjectService.InitProjectShortNameByStateDropDownList(this.drpProject, this.CurrUser.UserId, getproject.ProjectState, false, "1");
} }
@ -356,30 +357,30 @@ namespace FineUIPro.Web
this.InitLangMenuButton(); this.InitLangMenuButton();
var project = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId == this.drpProject.SelectedValue); var project = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId == this.drpProject.SelectedValue);
if (project != null && !string.IsNullOrEmpty(project.ProjectCode)) if (project != null && !string.IsNullOrEmpty(project.ProjectCode))
{ {
this.lblProjectName.Text = project.ProjectName; this.lblProjectName.Text = project.ProjectName;
this.hfProjectCode.Text = project.ProjectCode; this.hfProjectCode.Text = project.ProjectCode;
} }
if (project != null && !string.IsNullOrEmpty(project.MonitorPW)) if (project != null && !string.IsNullOrEmpty(project.MonitorPW))
{ {
this.hfMonitorPW.Text = Funs.EncryptionPassword(project.MonitorPW); this.hfMonitorPW.Text = Funs.EncryptionPassword(project.MonitorPW);
} }
else else
{ {
this.hfMonitorPW.Text = ""; this.hfMonitorPW.Text = "";
} }
if (CurrUser.UserId == Const.hfnbdId) if (CurrUser.UserId == Const.hfnbdId)
{ {
var sysSet17 = (from x in Funs.DB.Sys_Set where x.SetName == "视频监控密码" select x).ToList().FirstOrDefault(); var sysSet17 = (from x in Funs.DB.Sys_Set where x.SetName == "视频监控密码" select x).ToList().FirstOrDefault();
if (sysSet17 != null) if (sysSet17 != null)
{ {
this.hfProjectCode.Text = "admin"; this.hfProjectCode.Text = "admin";
this.hfMonitorPW.Text = Funs.EncryptionPassword(sysSet17.SetValue); this.hfMonitorPW.Text = Funs.EncryptionPassword(sysSet17.SetValue);
} }
} }
//GetWeather(); //GetWeather();
if (Request.Cookies["SelectLan"] != null) if (Request.Cookies["SelectLan"] != null)
@ -738,6 +739,12 @@ namespace FineUIPro.Web
this.Tab1.IFrameUrl = "~/Opinion/OpinionCollection.aspx"; this.Tab1.IFrameUrl = "~/Opinion/OpinionCollection.aspx";
this.Tab1.Title = "意见收集"; this.Tab1.Title = "意见收集";
} }
else if (type == Const.Menu_CommandDispatchCenter)
{
this.leftPanel.Hidden = true;
this.Tab1.IFrameUrl = "~/ZHDD/ZHDD.aspx";
this.Tab1.Title = "指挥调度中心";
}
else if (type == Const.Menu_Doc) else if (type == Const.Menu_Doc)
{ {
this.Tab1.IFrameUrl = "~/DocManage/DocManage.aspx"; this.Tab1.IFrameUrl = "~/DocManage/DocManage.aspx";
@ -852,6 +859,26 @@ namespace FineUIPro.Web
return ConfigurationManager.AppSettings["Video_URL"] + "#/screen"; return ConfigurationManager.AppSettings["Video_URL"] + "#/screen";
} }
} }
//protected string CommandDispatchCenterURL
//{
// get
// {
// //string username = "rdys_test";
// //string password = "Runde.2024";
// string username = "合肥诺必达";
// string password = "Hf123456@";
// var res1 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_pkey&user_name=" + username + "&pwd=" + password, "POST");
// var j1 = JsonConvert.DeserializeObject<dynamic>(res1);
// string data = j1.data;
// var res2 = APIGetHttpService.Http("https://caps.runde.pro/api/index.php?ctl=tool&act=get_token&user_name=" + username + "&pkey=" + j1.data, "POST");
// var j2 = JsonConvert.DeserializeObject<dynamic>(res2);
// string session_id = j2.session_id;
// string token = j2.token;
// string url = "https://caps.runde.pro/login/#token=" + session_id + "&user_name=" + username + "target=home";
// return url;
// }
//}
protected void btnPDigData_Click(object sender, EventArgs e) protected void btnPDigData_Click(object sender, EventArgs e)
{ {
@ -867,6 +894,15 @@ namespace FineUIPro.Web
{ {
this.MenuSwitchMethod(Const.Menu_Opinion); this.MenuSwitchMethod(Const.Menu_Opinion);
} }
protected void btnCommandDispatch_Click(object sender, EventArgs e)
{
this.MenuSwitchMethod(Const.Menu_CommandDispatchCenter);
}
//protected void btnCommandDispatch_Click(object sender, EventArgs e)
//{
// string url = "ZHDD/ZHDD.aspx";
// Response.Write("<script>window.open(" + url + "'',''_blank'')</script>");
//}
protected void btnTodo_Click(object sender, EventArgs e) protected void btnTodo_Click(object sender, EventArgs e)
{ {
@ -905,9 +941,9 @@ namespace FineUIPro.Web
protected void btnHelp_Click(object sender, EventArgs e) protected void btnHelp_Click(object sender, EventArgs e)
{ {
if (this.CurrUser.UserId==Const.hfnbdId) if (this.CurrUser.UserId == Const.hfnbdId)
{ {
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/Help&menuId={1}",Const.UnitId_CWCEC, BLL.Const.SysConstSetMenuId))); PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/Help&menuId={1}", Const.UnitId_CWCEC, BLL.Const.SysConstSetMenuId)));
} }
else else
@ -923,7 +959,8 @@ namespace FineUIPro.Web
/// </summary> /// </summary>
/// <param name="sender"></param> /// <param name="sender"></param>
/// <param name="e"></param> /// <param name="e"></param>
protected void btnPhoneClick(object sender, EventArgs e) { protected void btnPhoneClick(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/ProjectData/ProjectUserContact.aspx"))); PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("~/ProjectData/ProjectUserContact.aspx")));
} }

View File

@ -131,6 +131,15 @@ namespace FineUIPro.Web
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnProjectSet; protected global::FineUIPro.Button btnProjectSet;
/// <summary>
/// btnHelp 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnHelp;
/// <summary> /// <summary>
/// ArrowsAlt 控件。 /// ArrowsAlt 控件。
/// </summary> /// </summary>
@ -491,6 +500,15 @@ namespace FineUIPro.Web
/// </remarks> /// </remarks>
protected global::FineUIPro.Button btnDigitalSite; protected global::FineUIPro.Button btnDigitalSite;
/// <summary>
/// btnCommandDispatch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnCommandDispatch;
/// <summary> /// <summary>
/// btnPDigData 控件。 /// btnPDigData 控件。
/// </summary> /// </summary>

View File

@ -56366,6 +56366,8 @@ namespace Model
private string _SaveHandleMan; private string _SaveHandleMan;
private string _CCManIds;
private EntityRef<Base_Project> _Base_Project; private EntityRef<Base_Project> _Base_Project;
private EntityRef<Sys_User> _Sys_User; private EntityRef<Sys_User> _Sys_User;
@ -56422,6 +56424,8 @@ namespace Model
partial void OnProposeUnitIdChanged(); partial void OnProposeUnitIdChanged();
partial void OnSaveHandleManChanging(string value); partial void OnSaveHandleManChanging(string value);
partial void OnSaveHandleManChanged(); partial void OnSaveHandleManChanged();
partial void OnCCManIdsChanging(string value);
partial void OnCCManIdsChanged();
#endregion #endregion
public Check_CheckControl() public Check_CheckControl()
@ -56900,6 +56904,26 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CCManIds", DbType="NVarChar(2000)")]
public string CCManIds
{
get
{
return this._CCManIds;
}
set
{
if ((this._CCManIds != value))
{
this.OnCCManIdsChanging(value);
this.SendPropertyChanging();
this._CCManIds = value;
this.SendPropertyChanged("CCManIds");
this.OnCCManIdsChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Check_CheckControl_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)] [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Check_CheckControl_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)]
public Base_Project Base_Project public Base_Project Base_Project
{ {
@ -220236,6 +220260,8 @@ namespace Model
private System.Nullable<int> _SortIndex; private System.Nullable<int> _SortIndex;
private System.Nullable<bool> _IsOK;
private EntityRef<Base_Project> _Base_Project; private EntityRef<Base_Project> _Base_Project;
private EntityRef<Base_Unit> _Base_Unit; private EntityRef<Base_Unit> _Base_Unit;
@ -220270,6 +220296,8 @@ namespace Model
partial void OnCompileDateChanged(); partial void OnCompileDateChanged();
partial void OnSortIndexChanging(System.Nullable<int> value); partial void OnSortIndexChanging(System.Nullable<int> value);
partial void OnSortIndexChanged(); partial void OnSortIndexChanged();
partial void OnIsOKChanging(System.Nullable<bool> value);
partial void OnIsOKChanged();
#endregion #endregion
public JDGL_MonthPlan() public JDGL_MonthPlan()
@ -220532,6 +220560,26 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsOK", DbType="Bit")]
public System.Nullable<bool> IsOK
{
get
{
return this._IsOK;
}
set
{
if ((this._IsOK != value))
{
this.OnIsOKChanging(value);
this.SendPropertyChanging();
this._IsOK = value;
this.SendPropertyChanged("IsOK");
this.OnIsOKChanged();
}
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_JDGL_MonthPlan_Base_Project", Storage="_Base_Project", ThisKey="ProjectId", OtherKey="ProjectId", IsForeignKey=true)] [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 public Base_Project Base_Project
{ {

View File

@ -86,14 +86,18 @@ namespace WebAPI.Filter
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
public static List<string> lists = new List<string> { "PMP*SynPMPProjectData", "GJSX*OverdueWarningSendEmail", "User*postLoginOn", "get*token", "HazardRegister*getHazardRegisterTotalCount", public static List<string> lists = new List<string> { "PMP*SynPMPProjectData", "GJSX*OverdueWarningSendEmail", "User*postLoginOn", "get*token", "HazardRegister*getHazardRegisterTotalCount",
"HazardRegister*getHazardRegisterByProjectIdStates", "HazardRegister*getHazardRegisterByProjectIdStates",
"JGZL*getUserList", "JGZL*getUserList",
"JGZL*getProjedtList", "JGZL*getProjedtList",
"JGZL*getUnitWorkListByProjectId", "JGZL*getUnitWorkListByProjectId",
"JGZL*getInstallationListByProjectId", "JGZL*getInstallationListByProjectId",
"JGZL*getUnitList", "JGZL*getUnitList",
"upload*attendance" }; "upload*attendance" ,
"CNCECServer*PostGetHSSEData",
"CNCECServer*PostGetCQMSData",
"CNCECServer*PostGetHJGLData"
};
/// <summary> /// <summary>
/// ///

View File

@ -12,7 +12,7 @@
<SiteUrlToLaunchAfterPublish /> <SiteUrlToLaunchAfterPublish />
<LaunchSiteAfterPublish>true</LaunchSiteAfterPublish> <LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
<ExcludeApp_Data>false</ExcludeApp_Data> <ExcludeApp_Data>false</ExcludeApp_Data>
<publishUrl>E:\诺必达合肥\发布\五环WebApi</publishUrl> <publishUrl>G:\发布\五环WebApi</publishUrl>
<DeleteExistingFiles>true</DeleteExistingFiles> <DeleteExistingFiles>true</DeleteExistingFiles>
<PrecompileBeforePublish>true</PrecompileBeforePublish> <PrecompileBeforePublish>true</PrecompileBeforePublish>
<EnableUpdateable>true</EnableUpdateable> <EnableUpdateable>true</EnableUpdateable>

View File

@ -5,7 +5,7 @@
--> -->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<_PublishTargetUrl>E:\诺必达合肥\发布\五环WebApi</_PublishTargetUrl> <_PublishTargetUrl>G:\发布\五环WebApi</_PublishTargetUrl>
<History>True|2025-04-07T08:11:44.5172315Z||;True|2025-04-02T18:10:22.8695984+08:00||;True|2025-04-02T17:59:51.2978116+08:00||;True|2025-04-02T17:50:55.8630437+08:00||;True|2025-04-02T17:49:22.5114405+08:00||;True|2025-04-02T17:47:11.0650205+08:00||;True|2025-04-02T17:39:09.8576853+08:00||;True|2025-04-02T17:38:15.3079030+08:00||;True|2025-04-02T17:22:03.6735964+08:00||;True|2025-04-02T17:19:04.4220913+08:00||;True|2025-04-02T17:17:14.0244636+08:00||;True|2025-04-02T17:11:09.6583011+08:00||;True|2025-04-02T17:07:23.6330597+08:00||;True|2025-04-02T16:58:45.4070649+08:00||;True|2025-04-02T16:50:20.5907511+08:00||;True|2025-04-02T16:44:18.5351224+08:00||;True|2025-04-02T16:31:11.1297141+08:00||;True|2025-04-02T16:18:43.1126995+08:00||;True|2025-04-02T14:50:42.5384021+08:00||;True|2025-04-01T10:53:08.9403414+08:00||;True|2025-04-01T10:52:08.7646389+08:00||;True|2025-04-01T09:52:56.3095742+08:00||;True|2025-03-13T16:44:25.3220313+08:00||;True|2025-03-13T15:31:10.3223071+08:00||;True|2025-03-13T10:58:17.1401575+08:00||;True|2025-01-23T23:10:37.9664637+08:00||;True|2024-09-24T09:51:10.8028974+08:00||;True|2024-09-20T17:30:59.6144803+08:00||;True|2024-09-20T15:28:40.2547949+08:00||;True|2024-09-19T16:30:51.3047517+08:00||;True|2024-09-19T15:53:23.2431713+08:00||;True|2024-09-19T15:48:55.0571748+08:00||;True|2024-09-19T15:06:29.5748482+08:00||;True|2024-09-19T14:55:42.1477578+08:00||;True|2024-09-19T10:07:53.8666329+08:00||;True|2024-09-03T16:26:17.4985546+08:00||;True|2024-07-17T10:29:15.9472548+08:00||;</History> <History>True|2025-04-07T08:11:44.5172315Z||;True|2025-04-02T18:10:22.8695984+08:00||;True|2025-04-02T17:59:51.2978116+08:00||;True|2025-04-02T17:50:55.8630437+08:00||;True|2025-04-02T17:49:22.5114405+08:00||;True|2025-04-02T17:47:11.0650205+08:00||;True|2025-04-02T17:39:09.8576853+08:00||;True|2025-04-02T17:38:15.3079030+08:00||;True|2025-04-02T17:22:03.6735964+08:00||;True|2025-04-02T17:19:04.4220913+08:00||;True|2025-04-02T17:17:14.0244636+08:00||;True|2025-04-02T17:11:09.6583011+08:00||;True|2025-04-02T17:07:23.6330597+08:00||;True|2025-04-02T16:58:45.4070649+08:00||;True|2025-04-02T16:50:20.5907511+08:00||;True|2025-04-02T16:44:18.5351224+08:00||;True|2025-04-02T16:31:11.1297141+08:00||;True|2025-04-02T16:18:43.1126995+08:00||;True|2025-04-02T14:50:42.5384021+08:00||;True|2025-04-01T10:53:08.9403414+08:00||;True|2025-04-01T10:52:08.7646389+08:00||;True|2025-04-01T09:52:56.3095742+08:00||;True|2025-03-13T16:44:25.3220313+08:00||;True|2025-03-13T15:31:10.3223071+08:00||;True|2025-03-13T10:58:17.1401575+08:00||;True|2025-01-23T23:10:37.9664637+08:00||;True|2024-09-24T09:51:10.8028974+08:00||;True|2024-09-20T17:30:59.6144803+08:00||;True|2024-09-20T15:28:40.2547949+08:00||;True|2024-09-19T16:30:51.3047517+08:00||;True|2024-09-19T15:53:23.2431713+08:00||;True|2024-09-19T15:48:55.0571748+08:00||;True|2024-09-19T15:06:29.5748482+08:00||;True|2024-09-19T14:55:42.1477578+08:00||;True|2024-09-19T10:07:53.8666329+08:00||;True|2024-09-03T16:26:17.4985546+08:00||;True|2024-07-17T10:29:15.9472548+08:00||;</History>
<LastFailureDetails /> <LastFailureDetails />
</PropertyGroup> </PropertyGroup>
@ -86,22 +86,22 @@
<publishTime>10/28/2024 14:02:50</publishTime> <publishTime>10/28/2024 14:02:50</publishTime>
</File> </File>
<File Include="bin/App_global.asax.compiled"> <File Include="bin/App_global.asax.compiled">
<publishTime>04/07/2025 16:11:41</publishTime> <publishTime>05/26/2025 16:55:20</publishTime>
</File> </File>
<File Include="bin/App_global.asax.dll"> <File Include="bin/App_global.asax.dll">
<publishTime>04/07/2025 16:11:41</publishTime> <publishTime>05/26/2025 16:55:20</publishTime>
</File> </File>
<File Include="bin/Aspose.Words.dll"> <File Include="bin/Aspose.Words.dll">
<publishTime>12/06/2024 20:13:58</publishTime> <publishTime>12/06/2024 20:13:58</publishTime>
</File> </File>
<File Include="bin/BLL.dll"> <File Include="bin/BLL.dll">
<publishTime>04/07/2025 16:11:19</publishTime> <publishTime>05/26/2025 16:55:06</publishTime>
</File> </File>
<File Include="bin/BLL.dll.config"> <File Include="bin/BLL.dll.config">
<publishTime>12/26/2024 09:46:52</publishTime> <publishTime>12/26/2024 09:46:52</publishTime>
</File> </File>
<File Include="bin/BLL.pdb"> <File Include="bin/BLL.pdb">
<publishTime>04/07/2025 16:11:19</publishTime> <publishTime>05/26/2025 16:55:06</publishTime>
</File> </File>
<File Include="bin/BouncyCastle.Crypto.dll"> <File Include="bin/BouncyCastle.Crypto.dll">
<publishTime>12/18/2020 05:32:28</publishTime> <publishTime>12/18/2020 05:32:28</publishTime>
@ -128,10 +128,10 @@
<publishTime>07/25/2012 19:48:56</publishTime> <publishTime>07/25/2012 19:48:56</publishTime>
</File> </File>
<File Include="bin/Model.dll"> <File Include="bin/Model.dll">
<publishTime>04/07/2025 16:11:13</publishTime> <publishTime>05/26/2025 16:27:23</publishTime>
</File> </File>
<File Include="bin/Model.pdb"> <File Include="bin/Model.pdb">
<publishTime>04/07/2025 16:11:13</publishTime> <publishTime>05/26/2025 16:27:23</publishTime>
</File> </File>
<File Include="bin/netstandard.dll"> <File Include="bin/netstandard.dll">
<publishTime>07/04/2024 14:13:01</publishTime> <publishTime>07/04/2024 14:13:01</publishTime>
@ -389,13 +389,13 @@
<publishTime>02/09/2013 00:42:28</publishTime> <publishTime>02/09/2013 00:42:28</publishTime>
</File> </File>
<File Include="bin/WebAPI.dll"> <File Include="bin/WebAPI.dll">
<publishTime>04/07/2025 16:11:22</publishTime> <publishTime>05/26/2025 16:55:11</publishTime>
</File> </File>
<File Include="bin/WebAPI.pdb"> <File Include="bin/WebAPI.pdb">
<publishTime>04/07/2025 16:11:22</publishTime> <publishTime>05/26/2025 16:55:11</publishTime>
</File> </File>
<File Include="bin/WebAPI.xml"> <File Include="bin/WebAPI.xml">
<publishTime>04/07/2025 16:11:22</publishTime> <publishTime>05/26/2025 16:55:11</publishTime>
</File> </File>
<File Include="bin/WebGrease.dll"> <File Include="bin/WebGrease.dll">
<publishTime>01/23/2014 21:57:34</publishTime> <publishTime>01/23/2014 21:57:34</publishTime>
@ -479,7 +479,7 @@
<publishTime>10/28/2024 14:02:50</publishTime> <publishTime>10/28/2024 14:02:50</publishTime>
</File> </File>
<File Include="PrecompiledApp.config"> <File Include="PrecompiledApp.config">
<publishTime>04/07/2025 16:11:23</publishTime> <publishTime>05/26/2025 16:55:12</publishTime>
</File> </File>
<File Include="Scripts/bootstrap.js"> <File Include="Scripts/bootstrap.js">
<publishTime>10/28/2024 14:02:50</publishTime> <publishTime>10/28/2024 14:02:50</publishTime>

View File

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