2021-04-30 10:28:37 +08:00
using BLL ;
using System ;
using System.Collections.Generic ;
using System.Data ;
using System.Data.SqlClient ;
using System.Linq ;
namespace FineUIPro.Web.TestRun.DriverReport
{
public partial class MonthReport : PageBase
{
#region 加 载
protected void Page_Load ( object sender , EventArgs e )
{
if ( ! IsPostBack )
{
GetButtonPower ( ) ;
BindGrid ( ) ;
2024-04-26 10:08:30 +08:00
btnNew . OnClientClick = Window1 . GetShowReference ( "MonthReportNewEdit.aspx" ) + "return false;" ;
2021-04-30 10:28:37 +08:00
}
}
#endregion
#region 数 据 绑 定
//加载列表
public void BindGrid ( )
{
2024-03-18 15:59:06 +08:00
string strSql = @"SELECT report.MonthReportId,
2021-04-30 10:28:37 +08:00
report.ProjectId,
2024-03-18 15:59:06 +08:00
report.MonthReportCode,
2024-04-10 14:37:59 +08:00
(CONVERT(varchar(10),DATEADD(DAY,1,DATEADD(MONTH,-1,report.MonthReportDate)),120)+'至'+CONVERT(varchar(10),report.MonthReportDate,120)) as MonthReportDate,
2024-04-26 10:08:30 +08:00
RIGHT(att.AttachUrl,CHARINDEX('_',REVERSE(att.AttachUrl))-1) AS AttachUrl,
report.SortId,
report.StartDate,
report.endDate"
2024-03-18 15:59:06 +08:00
+ @" FROM TestRun_MonthReport AS report "
2024-04-10 14:37:59 +08:00
+ @" LEFT JOIN AttachFile AS att ON att.ToKeyId=report.MonthReportId "
2024-03-18 15:59:06 +08:00
+ @" WHERE report.ProjectId=@projectId " ;
2021-04-30 10:28:37 +08:00
List < SqlParameter > listStr = new List < SqlParameter > ( ) ;
listStr . Add ( new SqlParameter ( "@projectId" , this . CurrUser . LoginProjectId ) ) ;
2024-03-18 15:59:06 +08:00
if ( ! string . IsNullOrEmpty ( this . txtMonthReportCode . Text . Trim ( ) ) )
2021-04-30 10:28:37 +08:00
{
2024-03-18 15:59:06 +08:00
strSql + = " AND report.MonthReportCode LIKE @monthReportCode" ;
listStr . Add ( new SqlParameter ( "@monthReportCode" , "%" + this . txtMonthReportCode . Text . Trim ( ) + "%" ) ) ;
2021-04-30 10:28:37 +08:00
}
SqlParameter [ ] parameter = listStr . ToArray ( ) ;
DataTable tb = SQLHelper . GetDataTableRunText ( strSql , parameter ) ;
Grid1 . RecordCount = tb . Rows . Count ;
var table = this . GetPagedDataTable ( Grid1 , tb ) ;
Grid1 . DataSource = table ;
Grid1 . DataBind ( ) ;
}
#endregion
#region 分 页
/// <summary>
/// 分页索引事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange ( object sender , GridPageEventArgs e )
{
BindGrid ( ) ;
}
/// <summary>
/// 分页下拉框事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged ( object sender , EventArgs e )
{
Grid1 . PageSize = Convert . ToInt32 ( ddlPageSize . SelectedValue ) ;
BindGrid ( ) ;
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort ( object sender , FineUIPro . GridSortEventArgs e )
{
Grid1 . SortDirection = e . SortDirection ;
Grid1 . SortField = e . SortField ;
BindGrid ( ) ;
}
#endregion
#region 搜 索
//搜索按钮事件
protected void btnSearch_Click ( object sender , EventArgs e )
{
BindGrid ( ) ;
}
#endregion
#region 关 闭 弹 出 窗 口
/// <summary>
/// 关闭弹出窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close ( object sender , WindowCloseEventArgs e )
{
BindGrid ( ) ;
}
#endregion
#region 编 辑
protected void btnMenuModify_Click ( object sender , EventArgs e )
{
EditData ( ) ;
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick ( object sender , GridRowClickEventArgs e )
{
EditData ( ) ;
}
/// <summary>
/// 编辑
/// </summary>
private void EditData ( )
{
if ( Grid1 . SelectedRowIndexArray . Length = = 0 )
{
Alert . ShowInTop ( "请至少选择一条记录" , MessageBoxIcon . Warning ) ;
return ;
}
2024-04-26 10:08:30 +08:00
PageContext . RegisterStartupScript ( Window1 . GetShowReference ( String . Format ( "MonthReportNewEdit.aspx?id={0}" , Grid1 . SelectedRowID , "编辑 - " ) ) ) ;
2021-04-30 10:28:37 +08:00
}
#endregion
#region 删 除
protected void btnMenuDel_Click ( object sender , EventArgs e )
{
if ( Grid1 . SelectedRowIndexArray . Length > 0 )
{
foreach ( int rowIndex in Grid1 . SelectedRowIndexArray )
{
string rowID = Grid1 . DataKeys [ rowIndex ] [ 0 ] . ToString ( ) ;
2024-03-18 15:59:06 +08:00
var info = BLL . TestRun_MonthReportService . GetMonthReportById ( rowID ) ;
2021-04-30 10:28:37 +08:00
if ( info ! = null )
{
2024-03-18 15:59:06 +08:00
BLL . TestRun_MonthReportItem2Service . DeleteMonthReportItem2ByReportId ( rowID ) ;
BLL . TestRun_MonthReportItemService . DeleteMonthReportItemByMonthReportId ( rowID ) ;
BLL . TestRun_MonthReportService . DeleteMonthReportById ( rowID ) ;
2021-04-30 10:28:37 +08:00
}
}
BindGrid ( ) ;
ShowNotify ( "删除数据成功!" , MessageBoxIcon . Success ) ;
}
}
#endregion
#region Grid行点击事件
/// <summary>
/// Grid行点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowCommand ( object sender , GridCommandEventArgs e )
{
string id = Grid1 . DataKeys [ e . RowIndex ] [ 0 ] . ToString ( ) ;
if ( e . CommandName = = "AttachUrl" )
{
PageContext . RegisterStartupScript ( WindowAtt . GetShowReference ( String . Format ( "../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/TestRun/DriverReport/MonthReport&menuId={1}" , id , BLL . Const . MonthReportMenuId ) ) ) ;
}
2024-03-18 15:59:06 +08:00
else if ( e . CommandName = = "Push" ) //推送提醒
{
PageContext . RegisterStartupScript ( Window2 . GetShowReference ( String . Format ( "MonthReportPush.aspx?id={0}" , Grid1 . SelectedRowID , "编辑 - " ) ) ) ;
}
else if ( e . CommandName = = "SeePush" ) //查看推送内容
{
var report = BLL . TestRun_MonthReportService . GetMonthReportById ( id ) ;
if ( report ! = null )
{
2024-06-06 16:00:57 +08:00
//if (!string.IsNullOrEmpty(report.PushPerson))
//{
// if (report.PushPerson.Contains(this.CurrUser.UserId))
// {
2024-03-18 15:59:06 +08:00
PageContext . RegisterStartupScript ( Window1 . GetShowReference ( String . Format ( "MonthReportPushView.aspx?id={0}" , Grid1 . SelectedRowID , "编辑 - " ) ) ) ;
2024-06-06 16:00:57 +08:00
// }
// else
// {
// Alert.ShowInTop("对不起,您不是接收推送人员,不能查看!");
// return;
// }
//}
//else
//{
// Alert.ShowInTop("对不起,您不是接收推送人员,不能查看!");
// return;
//}
2024-03-18 15:59:06 +08:00
}
}
2021-04-30 10:28:37 +08:00
}
#endregion
#region 权 限 设 置
/// <summary>
/// 权限设置
/// </summary>
private void GetButtonPower ( )
{
var buttonList = BLL . CommonService . GetAllButtonList ( this . CurrUser . LoginProjectId , this . CurrUser . UserId , BLL . Const . MonthReportMenuId ) ;
if ( buttonList . Count ( ) > 0 )
{
if ( buttonList . Contains ( BLL . Const . BtnAdd ) )
{
this . btnNew . Hidden = false ;
}
if ( buttonList . Contains ( BLL . Const . BtnModify ) )
{
this . btnMenuModify . Hidden = false ;
this . Grid1 . EnableRowDoubleClickEvent = true ;
}
if ( buttonList . Contains ( BLL . Const . BtnDelete ) )
{
this . btnMenuDel . Hidden = false ;
}
}
}
#endregion
2024-03-18 15:59:06 +08:00
#region 查 看
/// <summary>
/// 查看
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuView_Click ( object sender , EventArgs e )
{
if ( Grid1 . SelectedRowIndexArray . Length = = 0 )
{
Alert . ShowInTop ( "请至少选择一条记录" , MessageBoxIcon . Warning ) ;
return ;
}
2024-04-26 10:08:30 +08:00
PageContext . RegisterStartupScript ( Window1 . GetShowReference ( String . Format ( "MonthReportNewView.aspx?id={0}" , Grid1 . SelectedRowID , "编辑 - " ) ) ) ;
2024-03-18 15:59:06 +08:00
}
#endregion
2024-04-26 10:08:30 +08:00
/// <summary>
/// 格式化字符串
/// </summary>
/// <param name="reportId"></param>
/// <returns></returns>
protected static string ConvertDate ( object reportId )
{
string date = string . Empty ;
if ( reportId ! = null )
{
var r = BLL . TestRun_MonthReportService . GetMonthReportById ( reportId . ToString ( ) ) ;
if ( r ! = null )
{
date = string . Format ( "{0:yyyy-MM-dd}" , r . StartDate ) + " 至 " + string . Format ( "{0:yyyy-MM-dd}" , r . EndDate ) ;
}
}
return date ;
}
2021-04-30 10:28:37 +08:00
}
}