提交代码

This commit is contained in:
2024-03-05 11:22:03 +08:00
parent d28f7920d8
commit 8e60ae5b65
44 changed files with 4374 additions and 2209 deletions
@@ -0,0 +1,105 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GoodsModel.aspx.cs" Inherits="FineUIPro.Web.TestRun.DriverGoods.GoodsModel" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="物资材料库" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="GoodsModelId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="GoodsModelId" AllowSorting="true" SortField="Code"
SortDirection="ASC" OnSort="Grid1_Sort" EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableTextSelection="true">
<Toolbars>
<f:Toolbar ID="ToolSearch" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" ID="txtDescription" Label="设备(材料)名称及规格" LabelWidth="180px" LabelAlign="Right"></f:TextBox>
<f:Button ID="btnSearch" Icon="SystemSearch" EnablePostBack="true" runat="server" OnClick="btnSearch_Click" ToolTip="查询">
</f:Button>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnNew" Icon="Add" ToolTip="新增" EnablePostBack="false" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnImport" ToolTip="导入" Icon="PackageIn" runat="server" OnClick="btnImport_Click" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RenderField ColumnID="Code" DataField="Code" FieldType="String" HeaderText="序号" TextAlign="Center"
HeaderTextAlign="Center" Width="55px">
</f:RenderField>
<f:RenderField ColumnID="Purpose" DataField="Purpose" FieldType="String" HeaderText="用途" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
</f:RenderField>
<f:RenderField ColumnID="Description" DataField="Description" FieldType="String" HeaderText="设备(材料)名称及规格" TextAlign="Center"
HeaderTextAlign="Center" Width="300px" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField ColumnID="Quantity" DataField="Quantity" FieldType="String" HeaderText="数量" TextAlign="Center"
HeaderTextAlign="Center" Width="100px">
</f:RenderField>
<f:RenderField ColumnID="Attachment" DataField="Attachment" FieldType="String" HeaderText="附件(详细清单/图纸等)" TextAlign="Center"
HeaderTextAlign="Center" Width="180px">
</f:RenderField>
<f:RenderField ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true" OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="设备材料报验" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
Width="900px" Height="520px">
</f:Window>
<f:Window ID="Window2" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Top" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
Width="700px" Height="560px">
</f:Window>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Parent" EnableResize="false" runat="server"
IsModal="true" Width="700px" Height="500px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<Items>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click">
</f:MenuButton>
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"
OnClick="btnMenuDel_Click" Hidden="true">
</f:MenuButton>
</Items>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
</script>
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,168 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.DriverGoods {
public partial class GoodsModel {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// ToolSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar ToolSearch;
/// <summary>
/// txtDescription 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtDescription;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuModify 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
/// <summary>
/// btnMenuDel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDel;
}
}
@@ -0,0 +1,68 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GoodsModelDataIn.aspx.cs" Inherits="FineUIPro.Web.TestRun.DriverGoods.GoodsModelDataIn" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" OnCustomEvent="PageManager1_CustomEvent" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdFileName" runat="server">
</f:HiddenField>
<f:Button ID="btnAudit" Icon="ApplicationEdit" runat="server" ToolTip="审核" ValidateForms="SimpleForm1" Text="审核"
OnClick="btnAudit_Click">
</f:Button>
<f:Button ID="btnImport" Icon="ApplicationGet" runat="server" ToolTip="导入" ValidateForms="SimpleForm1" Text="导入"
OnClick="btnImport_Click">
</f:Button>
<f:Button ID="btnDownLoad" runat="server" Icon="ApplicationGo" ToolTip="下载模板" OnClick="btnDownLoad_Click" Text="下载模板">
</f:Button>
<f:HiddenField ID="hdCheckResult" runat="server">
</f:HiddenField>
</Items>
</f:Toolbar>
</Toolbars>
<Rows>
<f:FormRow>
<Items>
<f:FileUpload runat="server" ID="fuAttachUrl" EmptyText="选择要导入的文件" Label="选择要导入的文件"
LabelWidth="150px">
</f:FileUpload>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Grid ID="gvErrorInfo" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="人员报验" EnableCollapse="true"
runat="server" BoxFlex="1" AllowCellEditing="true" ClicksToEdit="2" AllowSorting="true"
SortDirection="DESC" EnableColumnLines="true" ForceFit="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10"
EnableRowDoubleClickEvent="true" AllowFilters="true" EnableTextSelection="True">
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# gvErrorInfo.PageIndex * gvErrorInfo.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:BoundField DataField="Row" HeaderText="错误行号">
</f:BoundField>
<f:BoundField DataField="Column" HeaderText="错误列">
</f:BoundField>
<f:BoundField DataField="Reason" HeaderText="错误类型">
</f:BoundField>
</Columns>
</f:Grid>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,399 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.TestRun.DriverGoods
{
public partial class GoodsModelDataIn : PageBase
{
#region
/// <summary>
/// 上传预设的虚拟路径
/// </summary>
private string initPath = Const.ExcelUrl;
/// <summary>
/// 错误集合
/// </summary>
public static List<Model.ErrorInfo> errorInfos = new List<Model.ErrorInfo>();
#endregion
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.hdCheckResult.Text = string.Empty;
this.hdFileName.Text = string.Empty;
if (errorInfos != null)
{
errorInfos.Clear();
}
}
}
#endregion
#region
/// <summary>
/// 审核
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAudit_Click(object sender, EventArgs e)
{
try
{
if (this.fuAttachUrl.HasFile == false)
{
ShowNotify("请您选择Excel文件!", MessageBoxIcon.Warning);
return;
}
string IsXls = Path.GetExtension(this.fuAttachUrl.FileName).ToString().Trim().ToLower();
if (IsXls != ".xls")
{
ShowNotify("只可以选择Excel文件!", MessageBoxIcon.Warning);
return;
}
if (errorInfos != null)
{
errorInfos.Clear();
}
string rootPath = Server.MapPath("~/");
string initFullPath = rootPath + initPath;
if (!Directory.Exists(initFullPath))
{
Directory.CreateDirectory(initFullPath);
}
this.hdFileName.Text = BLL.Funs.GetNewFileName() + IsXls;
string filePath = initFullPath + this.hdFileName.Text;
this.fuAttachUrl.PostedFile.SaveAs(filePath);
ImportXlsToData(rootPath + initPath + this.hdFileName.Text);
}
catch (Exception ex)
{
ShowNotify("'" + ex.Message + "'", MessageBoxIcon.Warning);
}
}
#region Excel提取数据
/// <summary>
/// 从Excel提取数据--》Dataset
/// </summary>
/// <param name="filename">Excel文件路径名</param>
private void ImportXlsToData(string fileName)
{
try
{
string oleDBConnString = String.Empty;
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
DataSet ds = new DataSet();
oleDBConn = new OleDbConnection(oleDBConnString);
oleDBConn.Open();
m_tableName = oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (m_tableName != null && m_tableName.Rows.Count > 0)
{
m_tableName.TableName = m_tableName.Rows[0]["TABLE_NAME"].ToString().Trim();
}
string sqlMaster;
sqlMaster = " SELECT * FROM [" + m_tableName.TableName + "]";
oleAdMaster = new OleDbDataAdapter(sqlMaster, oleDBConn);
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL(ds.Tables[0], 6);
hdCheckResult.Text = "1";
}
catch (Exception exc)
{
Response.Write(exc);
//return null;
// return dt;
}
finally
{
}
}
#endregion
#region Dataset的数据导入数据库
/// <summary>
/// 将Dataset的数据导入数据库
/// </summary>
/// <param name="pds">数据集</param>
/// <param name="Cols">数据集行数</param>
/// <returns></returns>
private bool AddDatasetToSQL(DataTable pds, int Cols)
{
string result = string.Empty;
int ic, ir;
ic = pds.Columns.Count;
if (ic < Cols)
{
ShowNotify("导入Excel格式错误!Excel只有" + ic.ToString().Trim() + "列", MessageBoxIcon.Warning);
return false;
}
ir = pds.Rows.Count;
if (pds != null && ir > 0)
{
for (int i = 0; i < ir; i++)
{
string row0 = pds.Rows[i][0].ToString();
if (!string.IsNullOrEmpty(row0))
{
try
{
Int32 num = Convert.ToInt32(row0.Trim());
}
catch (Exception)
{
result += (i + 3).ToString() + "," + "序号" + "," + "[" + row0 + "]错误!不是数字格式!" + "|";
}
}
else
{
result += (i + 3).ToString() + "," + "序号为必填项,不能为空!" + "|";
}
}
if (!string.IsNullOrEmpty(result))
{
result = result.Substring(0, result.LastIndexOf("|"));
}
errorInfos.Clear();
if (!string.IsNullOrEmpty(result))
{
string results = result;
List<string> errorInfoList = results.Split('|').ToList();
foreach (var item in errorInfoList)
{
string[] errors = item.Split(',');
Model.ErrorInfo errorInfo = new Model.ErrorInfo();
errorInfo.Row = errors[0];
errorInfo.Column = errors[1];
errorInfo.Reason = errors[2];
errorInfos.Add(errorInfo);
}
if (errorInfos.Count > 0)
{
this.gvErrorInfo.DataSource = errorInfos;
this.gvErrorInfo.DataBind();
}
}
else
{
ShowNotify("审核完成,请点击导入!", MessageBoxIcon.Success);
}
}
else
{
ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
}
return true;
}
#endregion
#endregion
#region
/// <summary>
/// 导入
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnImport_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(hdCheckResult.Text))
{
if (errorInfos.Count <= 0)
{
string rootPath = Server.MapPath("~/");
ImportXlsToData2(rootPath + initPath + this.hdFileName.Text);
hdCheckResult.Text = string.Empty;
ShowNotify("导入成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
else
{
ShowNotify("请先将错误数据修正,再重新导入提交!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify("请先审核要导入的文件!", MessageBoxIcon.Warning);
}
}
#region Excel提取数据
/// <summary>
/// 从Excel提取数据--》Dataset
/// </summary>
/// <param name="filename">Excel文件路径名</param>
private void ImportXlsToData2(string fileName)
{
try
{
string oleDBConnString = String.Empty;
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
DataSet ds = new DataSet();
oleDBConn = new OleDbConnection(oleDBConnString);
oleDBConn.Open();
m_tableName = oleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (m_tableName != null && m_tableName.Rows.Count > 0)
{
m_tableName.TableName = m_tableName.Rows[0]["TABLE_NAME"].ToString().Trim();
}
string sqlMaster;
sqlMaster = " SELECT * FROM [" + m_tableName.TableName + "]";
oleAdMaster = new OleDbDataAdapter(sqlMaster, oleDBConn);
oleAdMaster.Fill(ds, "m_tableName");
oleAdMaster.Dispose();
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL2(ds.Tables[0], 6);
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region Dataset的数据导入数据库
/// <summary>
/// 将Dataset的数据导入数据库
/// </summary>
/// <param name="pds">数据集</param>
/// <param name="Cols">数据集列数</param>
/// <returns></returns>
private bool AddDatasetToSQL2(DataTable pds, int Cols)
{
int ic, ir;
ic = pds.Columns.Count;
if (ic < Cols)
{
ShowNotify("导入Excel格式错误!Excel只有" + ic.ToString().Trim() + "列", MessageBoxIcon.Warning);
}
var goodsModels = from x in Funs.DB.DriverGoods_GoodsModel where x.ProjectId == this.CurrUser.LoginProjectId select x;
string result = string.Empty;
ir = pds.Rows.Count;
if (pds != null && ir > 0)
{
List<Model.DriverGoods_GoodsModel> list = new List<Model.DriverGoods_GoodsModel>();
for (int i = 0; i < ir; i++)
{
//查询第一列,没查到的情况下作导入处理
var modelOnly = goodsModels.FirstOrDefault(x => x.Code == Funs.GetNewIntOrZero(pds.Rows[i][0].ToString().Trim()));
if (modelOnly == null)
{
Model.DriverGoods_GoodsModel model = new Model.DriverGoods_GoodsModel();
model.GoodsModelId = Guid.NewGuid().ToString();
model.ProjectId = CurrUser.LoginProjectId;
model.Code = Convert.ToInt32(pds.Rows[i][0].ToString().Trim());
model.Purpose = pds.Rows[i][1].ToString().Trim();
model.Description = pds.Rows[i][2].ToString().Trim();
model.Quantity = pds.Rows[i][3].ToString().Trim();
model.Attachment = pds.Rows[i][4].ToString().Trim();
model.Remark = pds.Rows[i][5].ToString().Trim();
list.Add(model);
}
else
{
//修改
modelOnly.Purpose = pds.Rows[i][1].ToString().Trim();
modelOnly.Description = pds.Rows[i][2].ToString().Trim();
modelOnly.Quantity = pds.Rows[i][3].ToString().Trim();
modelOnly.Attachment = pds.Rows[i][4].ToString().Trim();
modelOnly.Remark = pds.Rows[i][5].ToString().Trim();
Funs.DB.SubmitChanges();
}
}
if (list.Count > 0)
{
Funs.DB.DriverGoods_GoodsModel.InsertAllOnSubmit(list);
Funs.DB.SubmitChanges();
}
}
else
{
ShowNotify("导入数据为空!", MessageBoxIcon.Warning);
}
return true;
}
#endregion
#endregion
#region
/// <summary>
/// 下载模板按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDownLoad_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Confirm.GetShowReference("确定下载导入模板吗?", String.Empty, MessageBoxIcon.Question, PageManager1.GetCustomEventReference(false, "Confirm_OK"), PageManager1.GetCustomEventReference("Confirm_Cancel")));
}
/// <summary>
/// 下载导入模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
{
if (e.EventArgument == "Confirm_OK")
{
string rootPath = Server.MapPath("~/");
string uploadfilepath = rootPath + "File\\Excel\\TestRun\\试车物资材料库导入模板.xls";
string filePath = "File\\Excel\\DataIn\\试车物资材料库导入模板.xls";
string fileName = Path.GetFileName(filePath);
FileInfo info = new FileInfo(uploadfilepath);
long fileSize = info.Length;
Response.ClearContent();
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.ContentType = "excel/plain";
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AddHeader("Content-Length", fileSize.ToString().Trim());
Response.TransmitFile(uploadfilepath, 0, fileSize);
Response.End();
}
}
#endregion
}
}
@@ -0,0 +1,123 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.DriverGoods {
public partial class GoodsModelDataIn {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// hdFileName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdFileName;
/// <summary>
/// btnAudit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAudit;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnDownLoad 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDownLoad;
/// <summary>
/// hdCheckResult 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdCheckResult;
/// <summary>
/// fuAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FileUpload fuAttachUrl;
/// <summary>
/// gvErrorInfo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvErrorInfo;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
}
}
@@ -0,0 +1,98 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GoodsModelEdit.aspx.cs" Inherits="FineUIPro.Web.TestRun.DriverGoods.GoodsModelEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" OnClick="btnSave_Click" Icon="SystemSave" runat="server" ToolTip="保存" ValidateForms="SimpleForm1">
</f:Button>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
<f:HiddenField ID="hdId" runat="server"></f:HiddenField>
</Items>
</f:Toolbar>
</Toolbars>
<Rows>
<f:FormRow>
<Items>
<f:ContentPanel ID="ContentPanel2" Title="开车物资库" ShowBorder="true"
BodyPadding="10px" EnableCollapse="true" ShowHeader="false" AutoScroll="true"
runat="server">
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtCode" NoDecimal="true" ShowRedStar="true" Required="true" NoNegative="true" Label="序号" LabelAlign="Right" LabelWidth="130px"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtPurpose" runat="server" Label="用途" LabelAlign="Right" LabelWidth="130px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtDescription" runat="server" Label="设备(材料)名称及规格" LabelAlign="Right" LabelWidth="130px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtQuantity" runat="server" Label="数量" LabelAlign="Right" LabelWidth="130px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtAttachment" runat="server" Label="附件(详细清单/图纸等)" LabelAlign="Right" LabelWidth="130px">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtRemark" runat="server" Label="备注" LabelAlign="Right" LabelWidth="130px">
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow runat="server">
<Items>
<f:Panel ID="Panel3" Width="300px" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
<Items>
<f:Label ID="lblAttach" runat="server" Label="上传附件"
LabelWidth="130px">
</f:Label>
<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" Text="附件" runat="server" OnClick="btnAttach_Click">
</f:Button>
</Items>
</f:Panel>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</f:ContentPanel>
</Items>
</f:FormRow>
</Rows>
</f:Form>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,100 @@
using BLL;
using System;
namespace FineUIPro.Web.TestRun.DriverGoods
{
public partial class GoodsModelEdit : PageBase
{
#region
/// <summary>
/// 页面加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string id = Request.Params["GoodsModelId"];
if (!string.IsNullOrEmpty(id))
{
Model.DriverGoods_GoodsModel goodsModel = BLL.GoodsModelService.GetGoodsModelById(id);
if (goodsModel != null)
{
this.hdId.Text = id;
if (goodsModel.Code != null)
{
this.txtCode.Text = goodsModel.Code.ToString();
}
this.txtPurpose.Text = goodsModel.Purpose;
this.txtDescription.Text = goodsModel.Description;
this.txtQuantity.Text = goodsModel.Quantity;
this.txtAttachment.Text = goodsModel.Attachment;
this.txtRemark.Text = goodsModel.Remark;
}
}
else
{
}
}
}
#endregion
#region
/// <summary>
/// 附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttach_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.hdId.Text)) //新增记录
{
this.hdId.Text = SQLHelper.GetNewID(typeof(Model.DriverGoods_GoodsModel));
}
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/TestRun/DriverGoods/GoodsModel&menuId={1}", this.hdId.Text, BLL.Const.GoodsModelMenuId)));
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
string id = Request.Params["GoodsModelId"];
Model.DriverGoods_GoodsModel newgoodsModel = new Model.DriverGoods_GoodsModel();
newgoodsModel.Code = Funs.GetNewInt(this.txtCode.Text.Trim());
newgoodsModel.Purpose = this.txtPurpose.Text.Trim();
newgoodsModel.Description = this.txtDescription.Text.Trim();
newgoodsModel.Quantity = this.txtQuantity.Text.Trim();
newgoodsModel.Attachment = this.txtAttachment.Text.Trim();
newgoodsModel.Remark = this.txtRemark.Text.Trim();
newgoodsModel.ProjectId = this.CurrUser.LoginProjectId;
if (!string.IsNullOrEmpty(id))
{
newgoodsModel.GoodsModelId = id;
BLL.GoodsModelService.UpdateGoodsModel(newgoodsModel);
}
else
{
if (!string.IsNullOrEmpty(this.hdId.Text))
{
newgoodsModel.GoodsModelId = this.hdId.Text.Trim();
}
else
{
newgoodsModel.GoodsModelId = SQLHelper.GetNewID(typeof(Model.DriverGoods_GoodsModel));
this.hdId.Text = newgoodsModel.GoodsModelId;
}
BLL.GoodsModelService.AddGoodsModel(newgoodsModel);
}
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
}
}
@@ -0,0 +1,195 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun.DriverGoods {
public partial class GoodsModelEdit {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdAttachUrl;
/// <summary>
/// hdId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdId;
/// <summary>
/// ContentPanel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel2;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// txtCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtCode;
/// <summary>
/// txtPurpose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPurpose;
/// <summary>
/// txtDescription 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtDescription;
/// <summary>
/// txtQuantity 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtQuantity;
/// <summary>
/// txtAttachment 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAttachment;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
/// <summary>
/// Panel3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel3;
/// <summary>
/// lblAttach 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lblAttach;
/// <summary>
/// btnAttach 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttach;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}
@@ -6,10 +6,25 @@
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>开车保运管理</title>
<style type="text/css">
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
.f-grid-row.yellow {
background-color: yellow;
background-image: none;
}
.f-grid-row.red {
background-color: red;
}
</style>
</head>
<body>
<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"
ShowHeader="false" Layout="HBox" BoxConfigAlign="Stretch">
<Items>
@@ -21,6 +36,8 @@
<f:Toolbar ID="ToolSearch" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DropDownList ID="drpUnitId" runat="server" Label="单位名称" LabelAlign="Right" LabelWidth="130px" Width="400px"></f:DropDownList>
<f:DropDownList ID="drpStatus" runat="server" Label="实施状态" LabelAlign="Right" LabelWidth="100px"></f:DropDownList>
<f:DropDownList ID="drpPriority" runat="server" Label="优先级" LabelAlign="Right" LabelWidth="100px"></f:DropDownList>
<f:Button ID="btnSearch" Icon="SystemSearch" ToolTip="搜索"
EnablePostBack="true" runat="server" OnClick="btnSearch_Click">
</f:Button>
@@ -44,7 +61,7 @@
FieldType="String" HeaderText="内容" HeaderTextAlign="Center" Width="300px" ExpandUnusedSpace="true">
</f:RenderField>
<f:RenderField ColumnID="Objective" DataField="Objective"
FieldType="String" HeaderText="目的" HeaderTextAlign="Center" Width="200px" >
FieldType="String" HeaderText="目的" HeaderTextAlign="Center" Width="200px">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="NeedCompletedDate" DataField="NeedCompletedDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="需完成时间" TextAlign="Center" HeaderTextAlign="Center">
@@ -52,6 +69,12 @@
<f:RenderField Width="120px" ColumnID="RealCompletedDate" DataField="RealCompletedDate"
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="实际完成时间" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="Status" DataField="Status"
FieldType="String" HeaderText="实施状态" HeaderTextAlign="Center" Width="100px">
</f:RenderField>
<f:RenderField ColumnID="Priority" DataField="Priority"
FieldType="String" HeaderText="优先级" HeaderTextAlign="Center" Width="80px">
</f:RenderField>
<f:TemplateField ColumnID="State" Width="150px" HeaderText="审批状态" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
@@ -88,7 +111,7 @@
</f:Panel>
<f:Window ID="Window1" Title="开车保运管理" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
Width="900px" Height="620px">
Width="900px" Height="650px">
</f:Window>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
@@ -18,6 +18,24 @@ namespace FineUIPro.Web.TestRun.DriverRun
BindGrid();
btnNew.OnClientClick = Window1.GetShowReference("DriverRunEdit.aspx") + "return false;";
BLL.UnitService.InitUnitDownList(this.drpUnitId, this.CurrUser.LoginProjectId, true);
ListItem[] list1 = new ListItem[3];
list1[0] = new ListItem("未开始", "1");
list1[1] = new ListItem("进行中", "2");
list1[2] = new ListItem("已完成", "3");
this.drpStatus.DataTextField = "Text";
this.drpStatus.DataValueField = "Value";
this.drpStatus.DataSource = list1;
this.drpStatus.DataBind();
Funs.FineUIPleaseSelect(this.drpStatus);
ListItem[] list2 = new ListItem[3];
list2[0] = new ListItem("低", "1");
list2[1] = new ListItem("中", "2");
list2[2] = new ListItem("高", "3");
this.drpPriority.DataTextField = "Text";
this.drpPriority.DataValueField = "Value";
this.drpPriority.DataSource = list2;
this.drpPriority.DataBind();
Funs.FineUIPleaseSelect(this.drpPriority);
}
}
#endregion
@@ -39,6 +57,8 @@ namespace FineUIPro.Web.TestRun.DriverRun
driverRun.Objective,
driverRun.NeedCompletedDate,
driverRun.RealCompletedDate,
case driverRun.Status when '1' then '未开始' when '2' then '进行中' when '3' then '已完成' else '' end as Status,
case driverRun.Priority when '1' then '低' when '2' then '中' when '3' then '高' else '' end as Priority,
driverRun.Remark,
Unit.UnitName AS UnitName"
+ @" FROM DriverRun_DriverRun AS driverRun"
@@ -50,6 +70,16 @@ namespace FineUIPro.Web.TestRun.DriverRun
strSql += " AND driverRun.UnitId=@unitId";
listStr.Add(new SqlParameter("@unitId", this.drpUnitId.SelectedValue));
}
if (!string.IsNullOrEmpty(this.drpStatus.SelectedValue) && this.drpStatus.SelectedValue != BLL.Const._Null)
{
strSql += " AND driverRun.Status=@Status";
listStr.Add(new SqlParameter("@Status", this.drpStatus.SelectedValue));
}
if (!string.IsNullOrEmpty(this.drpPriority.SelectedValue) && this.drpPriority.SelectedValue != BLL.Const._Null)
{
strSql += " AND driverRun.Priority=@Priority";
listStr.Add(new SqlParameter("@Priority", this.drpPriority.SelectedValue));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
@@ -57,6 +87,21 @@ namespace FineUIPro.Web.TestRun.DriverRun
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
for (int i = 0; i < Grid1.Rows.Count; i++)
{
Model.DriverRun_DriverRun driverRun = BLL.DriverRunService.GetDriverRunById(Grid1.Rows[i].DataKeys[0].ToString());
if (driverRun != null)
{
if (driverRun.Priority == "2")
{
Grid1.Rows[i].RowCssClass = "yellow";
}
else if (driverRun.Priority == "3")
{
Grid1.Rows[i].RowCssClass = "red";
}
}
}
}
#endregion
@@ -66,6 +66,24 @@ namespace FineUIPro.Web.TestRun.DriverRun {
/// </remarks>
protected global::FineUIPro.DropDownList drpUnitId;
/// <summary>
/// drpStatus 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpStatus;
/// <summary>
/// drpPriority 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpPriority;
/// <summary>
/// btnSearch 控件。
/// </summary>
@@ -64,6 +64,12 @@
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpStatus" runat="server" Label="实施状态" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true"></f:DropDownList>
<f:DropDownList ID="drpPriority" runat="server" Label="优先级" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="txtNeedCompletedDate" ShowRedStar="true" runat="server" Label="需完成时间" LabelWidth="150px" Required="true" LabelAlign="Right"
@@ -31,6 +31,24 @@ namespace FineUIPro.Web.TestRun.DriverRun
if (!IsPostBack)
{
BLL.UnitService.InitUnitDownList(this.drpUnitId, this.CurrUser.LoginProjectId, true);
ListItem[] list1 = new ListItem[3];
list1[0]= new ListItem("未开始","1");
list1[1] = new ListItem("进行中", "2");
list1[2] = new ListItem("已完成", "3");
this.drpStatus.DataTextField = "Text";
this.drpStatus.DataValueField = "Value";
this.drpStatus.DataSource = list1;
this.drpStatus.DataBind();
Funs.FineUIPleaseSelect(this.drpStatus);
ListItem[] list2 = new ListItem[3];
list2[0] = new ListItem("低", "1");
list2[1] = new ListItem("中", "2");
list2[2] = new ListItem("高", "3");
this.drpPriority.DataTextField = "Text";
this.drpPriority.DataValueField = "Value";
this.drpPriority.DataSource = list2;
this.drpPriority.DataBind();
Funs.FineUIPleaseSelect(this.drpPriority);
BLL.UnitWorkService.InitUnitWorkDropDownList(this.drpUnitWorkIds, this.CurrUser.LoginProjectId, true);
plApprove1.Hidden = true;
plApprove2.Hidden = true;
@@ -63,6 +81,14 @@ namespace FineUIPro.Web.TestRun.DriverRun
{
this.txtRealCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", data.RealCompletedDate);
}
if (!string.IsNullOrEmpty(data.Status))
{
this.drpStatus.SelectedValue = data.Status;
}
if (!string.IsNullOrEmpty(data.Priority))
{
this.drpPriority.SelectedValue = data.Priority;
}
if (!string.IsNullOrEmpty(data.State))
{
State = data.State;
@@ -167,6 +193,16 @@ namespace FineUIPro.Web.TestRun.DriverRun
Alert.ShowInTop("请选择区域!", MessageBoxIcon.Warning);
return;
}
if (this.drpStatus.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择实施状态!", MessageBoxIcon.Warning);
return;
}
if (this.drpPriority.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择优先级!", MessageBoxIcon.Warning);
return;
}
if (State == BLL.Const.DriverRun_Audit4 && string.IsNullOrEmpty(this.txtRealCompletedDate.Text.Trim()))
{
Alert.ShowInTop("请选择实际完成时间!", MessageBoxIcon.Warning);
@@ -189,6 +225,16 @@ namespace FineUIPro.Web.TestRun.DriverRun
Alert.ShowInTop("请选择区域!", MessageBoxIcon.Warning);
return;
}
if (this.drpStatus.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择实施状态!", MessageBoxIcon.Warning);
return;
}
if (this.drpPriority.SelectedValue == BLL.Const._Null)
{
Alert.ShowInTop("请选择优先级!", MessageBoxIcon.Warning);
return;
}
if (State == BLL.Const.DriverRun_Audit4 && string.IsNullOrEmpty(this.txtRealCompletedDate.Text.Trim()))
{
Alert.ShowInTop("请选择实际完成时间!", MessageBoxIcon.Warning);
@@ -227,6 +273,14 @@ namespace FineUIPro.Web.TestRun.DriverRun
}
newData.Descriptions = this.txtDescriptions.Text.Trim();
newData.Objective = this.txtObjective.Text.Trim();
if (this.drpStatus.SelectedValue != BLL.Const._Null)
{
newData.Status = this.drpStatus.SelectedValue;
}
if (this.drpPriority.SelectedValue != BLL.Const._Null)
{
newData.Priority = this.drpPriority.SelectedValue;
}
newData.NeedCompletedDate = Funs.GetNewDateTime(this.txtNeedCompletedDate.Text.Trim());
newData.ProjectId = this.CurrUser.LoginProjectId;
newData.RealCompletedDate = Funs.GetNewDateTime(this.txtRealCompletedDate.Text.Trim());
@@ -156,6 +156,24 @@ namespace FineUIPro.Web.TestRun.DriverRun {
/// </remarks>
protected global::FineUIPro.TextArea txtObjective;
/// <summary>
/// drpStatus 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpStatus;
/// <summary>
/// drpPriority 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpPriority;
/// <summary>
/// txtNeedCompletedDate 控件。
/// </summary>
@@ -60,6 +60,12 @@
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpStatus" runat="server" Label="实施状态" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true" Readonly="true"></f:DropDownList>
<f:DropDownList ID="drpPriority" runat="server" Label="优先级" LabelAlign="Right" LabelWidth="150px" Required="true" ShowRedStar="true" Readonly="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="txtNeedCompletedDate" ShowRedStar="true" runat="server" Label="需完成时间" Readonly="true" LabelWidth="150px" Required="true" LabelAlign="Right"
@@ -31,6 +31,24 @@ namespace FineUIPro.Web.TestRun.DriverRun
if (!IsPostBack)
{
BLL.UnitService.InitUnitDownList(this.drpUnitId, this.CurrUser.LoginProjectId, true);
ListItem[] list1 = new ListItem[3];
list1[0] = new ListItem("未开始", "1");
list1[1] = new ListItem("进行中", "2");
list1[2] = new ListItem("已完成", "3");
this.drpStatus.DataTextField = "Text";
this.drpStatus.DataValueField = "Value";
this.drpStatus.DataSource = list1;
this.drpStatus.DataBind();
Funs.FineUIPleaseSelect(this.drpStatus);
ListItem[] list2 = new ListItem[3];
list2[0] = new ListItem("低", "1");
list2[1] = new ListItem("中", "2");
list2[2] = new ListItem("高", "3");
this.drpPriority.DataTextField = "Text";
this.drpPriority.DataValueField = "Value";
this.drpPriority.DataSource = list2;
this.drpPriority.DataBind();
Funs.FineUIPleaseSelect(this.drpPriority);
BLL.UnitWorkService.InitUnitWorkDropDownList(this.drpUnitWorkIds, this.CurrUser.LoginProjectId, true);
string id = Request.Params["id"];
if (!string.IsNullOrEmpty(id))
@@ -58,6 +76,14 @@ namespace FineUIPro.Web.TestRun.DriverRun
{
this.txtRealCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", data.RealCompletedDate);
}
if (!string.IsNullOrEmpty(data.Status))
{
this.drpStatus.SelectedValue = data.Status;
}
if (!string.IsNullOrEmpty(data.Priority))
{
this.drpPriority.SelectedValue = data.Priority;
}
if (!string.IsNullOrEmpty(data.State))
{
State = data.State;
@@ -138,6 +138,24 @@ namespace FineUIPro.Web.TestRun.DriverRun {
/// </remarks>
protected global::FineUIPro.TextArea txtObjective;
/// <summary>
/// drpStatus 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpStatus;
/// <summary>
/// drpPriority 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpPriority;
/// <summary>
/// txtNeedCompletedDate 控件。
/// </summary>
+3 -3
View File
@@ -59,11 +59,11 @@
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="UnitWorkIds" Width="120px" DataField="UnitWorkIds"
FieldType="String" HeaderText="单位工程" TextAlign="Center"
FieldType="String" HeaderText="装置" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="70px" ColumnID="CNProfessionalCodes" DataField="CNProfessionalCodes"
FieldType="String" HeaderText="专业" TextAlign="Center" HeaderTextAlign="Center">
<f:RenderField Width="70px" ColumnID="System" DataField="System"
FieldType="String" HeaderText="系统" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<%--<f:TemplateField ColumnID="SolutionTempleteTypeName" Width="120px" HeaderText="方案类别" HeaderTextAlign="Center" TextAlign="Center"
+36 -23
View File
@@ -100,7 +100,7 @@ namespace FineUIPro.Web.TestRun
{
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,"
+ @" unit.UnitName,u.userName as CompileManName,chec.SpecialSchemeTypeId,"
+ @" unit.UnitName,u.userName as CompileManName,chec.SpecialSchemeTypeId,chec.System,"
+ @" t.SpecialSchemeTypeName"
+ @" FROM Solution_TestRunConstructSolution chec "
+ @" left join Base_Unit unit on unit.unitId=chec.UnitId "
@@ -113,30 +113,43 @@ namespace FineUIPro.Web.TestRun
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
Grid1.RecordCount = tb.Rows.Count;
var CNProfessional = CNProfessionalService.GetList();
var uniWork = UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
if (tb.Rows.Count > 0)
{
for (int i = 0; i < tb.Rows.Count; i++)
{
if (tb.Rows[i]["CNProfessionalCodes"] != null)
{
var code = tb.Rows[i]["CNProfessionalCodes"].ToString().Split(',');
var listf = CNProfessional.Where(p => code.Contains(p.CNProfessionalId)).Select(p => p.ProfessionalName).ToArray();
tb.Rows[i]["CNProfessionalCodes"] = string.Join(",", listf);
}
if (tb.Rows[i]["UnitWorkIds"] != null)
{
var code = tb.Rows[i]["UnitWorkIds"].ToString().Split(',');
var workid = uniWork.Where(p => code.Contains(p.UnitWorkId)).Select(p => p.UnitWorkName + BLL.UnitWorkService.GetProjectType(p.ProjectType)).ToArray();
tb.Rows[i]["UnitWorkIds"] = string.Join(",", workid);
}
}
}
//var CNProfessional = CNProfessionalService.GetList();
//var uniWork = UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
//if (tb.Rows.Count > 0)
//{
// for (int i = 0; i < tb.Rows.Count; i++)
// {
// if (tb.Rows[i]["CNProfessionalCodes"] != null)
// {
// var code = tb.Rows[i]["CNProfessionalCodes"].ToString().Split(',');
// var listf = CNProfessional.Where(p => code.Contains(p.CNProfessionalId)).Select(p => p.ProfessionalName).ToArray();
// tb.Rows[i]["CNProfessionalCodes"] = string.Join(",", listf);
// }
// if (tb.Rows[i]["UnitWorkIds"] != null)
// {
// var code = tb.Rows[i]["UnitWorkIds"].ToString().Split(',');
// var workid = uniWork.Where(p => code.Contains(p.UnitWorkId)).Select(p => p.UnitWorkName + BLL.UnitWorkService.GetProjectType(p.ProjectType)).ToArray();
// tb.Rows[i]["UnitWorkIds"] = string.Join(",", workid);
// }
// }
//}
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
if (this.tvDataTypeInit.SelectedNodeID.Length > 1)
{
if (this.tvDataTypeInit.SelectedNodeID == "12")
{
this.Grid1.Columns[4].Hidden = true;
this.Grid1.Columns[5].Hidden = true;
}
else
{
this.Grid1.Columns[4].Hidden = false;
this.Grid1.Columns[5].Hidden = false;
}
}
}
#endregion
@@ -257,7 +270,7 @@ namespace FineUIPro.Web.TestRun
Model.Solution_TestRunConstructSolution constructSolution = TestRunConstructSolutionService.GetConstructSolutionByConstructSolutionId(id);
if (constructSolution.State == Const.TestRunConstructSolution_Complete)
{
Alert.ShowInTop("该方案已经审批完成,无法操作,请右键查看!", MessageBoxIcon.Warning);
Alert.ShowInTop("该方案已经发布,无法操作,请右键查看!", MessageBoxIcon.Warning);
return;
}
else if (constructSolution.State == Const.TestRunConstructSolution_Compile)
@@ -273,7 +286,7 @@ namespace FineUIPro.Web.TestRun
return;
}
}
else if (constructSolution.State == Const.TestRunConstructSolution_Audit || constructSolution.State == Const.TestRunConstructSolution_ReCompile)
else if (constructSolution.State == Const.TestRunConstructSolution_Audit || constructSolution.State == Const.TestRunConstructSolution_ReCompile || constructSolution.State == Const.TestRunConstructSolution_Audit2)
{
var approve = TestRunConstructSolutionApproveService.GetThisApproveByConstructSolutionId(id);
if (approve != null && approve.ApproveMan == this.CurrUser.UserId)
@@ -0,0 +1,72 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DriverSchemeChart.aspx.cs" Inherits="FineUIPro.Web.TestRun.DriverSchemeChart" %>
<%@ Register Src="~/Controls/ChartControl.ascx" TagName="ChartControl" TagPrefix="uc1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1" AjaxAspnetControls="divAccidentUnit,divAccidentTime" />
<f:Panel ID="Panel3" CssClass="blockpanel" runat="server" EnableCollapse="false"
BodyPadding="10px" ShowBorder="true" ShowHeader="false">
<Items>
<f:Form ID="Form2" ShowHeader="false" ShowBorder="false" runat="server">
<Rows>
<f:FormRow ColumnWidths="20% 3% 20% 30% 15% 10%">
<Items>
<f:DatePicker ID="txtStartTime" runat="server" Label="时间" LabelAlign="Right"
LabelWidth="80px">
</f:DatePicker>
<f:Label ID="Label3" runat="server" Text="至" Width="5px">
</f:Label>
<f:DatePicker ID="txtEndTime" runat="server">
</f:DatePicker>
<f:DropDownList ID="drpChartType" runat="server" Label="图形类型" AutoPostBack="true"
OnSelectedIndexChanged="drpChartType_SelectedIndexChanged" Width="300px" LabelWidth="80px">
<f:ListItem Value="Column" Text="柱形图"></f:ListItem>
<f:ListItem Value="Line" Text="折线图"></f:ListItem>
<f:ListItem Value="Pie" Text="饼形图"></f:ListItem>
<f:ListItem Value="StackedArea" Text="堆积面积图"></f:ListItem>
<f:ListItem Value="Spline" Text="样条图"></f:ListItem>
<f:ListItem Value="SplineArea" Text="样条面积图"></f:ListItem>
<f:ListItem Value="StepLine" Text="阶梯线图"></f:ListItem>
<f:ListItem Value="Stock" Text="股价图"></f:ListItem>
<f:ListItem Value="Radar" Text="雷达图"></f:ListItem>
</f:DropDownList>
<f:CheckBox ID="ckbShow" runat="server" LabelWidth="80px" Label="三维效果" AutoPostBack="true"
OnCheckedChanged="ckbShow_CheckedChanged" Width="110px">
</f:CheckBox>
<f:Button ID="BtnAnalyse" Text="统计" Icon="ChartPie" runat="server" OnClick="BtnAnalyse_Click">
</f:Button>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:Panel>
<f:Panel ID="Panel4" CssClass="blockpanel" runat="server" EnableCollapse="false"
BodyPadding="10px" ShowBorder="true" ShowHeader="false">
<Items>
<f:TabStrip ID="TabStrip1" CssClass="f-tabstrip-theme-simple" Height="600px" ShowBorder="true"
TabPosition="Top" MarginBottom="5px" EnableTabCloseMenu="false" runat="server">
<Tabs>
<f:Tab ID="Tab2" Title="图形" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server"
TitleToolTip="图形">
<Items>
<f:ContentPanel ShowHeader="false" runat="server" ID="cpAccidentTime" Margin="0 0 0 0">
<div id="divAccidentTime">
<uc1:ChartControl ID="ChartAccidentTime" runat="server" />
</div>
</f:ContentPanel>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>
</f:Panel>
</form>
</body>
</html>
@@ -0,0 +1,128 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using BLL;
namespace FineUIPro.Web.TestRun
{
public partial class DriverSchemeChart : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
}
#endregion
#region
/// <summary>
/// 统计分析
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BtnAnalyse_Click(object sender, EventArgs e)
{
this.AnalyseData();
}
/// <summary>
/// 统计方法
/// </summary>
private void AnalyseData()
{
var forms = from x in Funs.DB.Solution_TestRunConstructSolution
where x.ProjectId == this.CurrUser.LoginProjectId
select x;
if (!string.IsNullOrEmpty(this.txtStartTime.Text.Trim()))
{
forms = forms.Where(x => x.CompileDate >= Funs.GetNewDateTime(this.txtStartTime.Text.Trim()));
}
if (!string.IsNullOrEmpty(this.txtEndTime.Text.Trim()))
{
forms = forms.Where(x => x.CompileDate <= Funs.GetNewDateTime(this.txtEndTime.Text.Trim()));
}
#region
if (this.drpChartType.SelectedValue != "Pie") //非饼形图
{
DataTable dtTime = new DataTable();
dtTime.Columns.Add("状态", typeof(string));
dtTime.Columns.Add("数量", typeof(string));
DataRow rowTime1 = dtTime.NewRow();
rowTime1["状态"] = "编制";
rowTime1["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Compile).Count();
dtTime.Rows.Add(rowTime1);
DataRow rowTime2 = dtTime.NewRow();
rowTime2["状态"] = "审核";
rowTime2["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit).Count();
dtTime.Rows.Add(rowTime2);
DataRow rowTime3 = dtTime.NewRow();
rowTime3["状态"] = "审批";
rowTime3["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit2).Count();
dtTime.Rows.Add(rowTime3);
DataRow rowTime4 = dtTime.NewRow();
rowTime4["状态"] = "发布";
rowTime4["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Complete).Count();
dtTime.Rows.Add(rowTime4);
DataRow rowTime5 = dtTime.NewRow();
rowTime5["状态"] = "重报";
rowTime5["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_ReCompile).Count();
dtTime.Rows.Add(rowTime5);
this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "试车方案统计", this.drpChartType.SelectedValue, 1300, 550, this.ckbShow.Checked));
}
else //饼形图
{
DataTable dtTime = new DataTable();
dtTime.Columns.Add("状态", typeof(string));
dtTime.Columns.Add("数量", typeof(string));
DataRow rowTime1 = dtTime.NewRow();
rowTime1["状态"] = "编制";
rowTime1["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Compile).Count();
dtTime.Rows.Add(rowTime1);
DataRow rowTime2 = dtTime.NewRow();
rowTime2["状态"] = "审核";
rowTime2["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit).Count();
dtTime.Rows.Add(rowTime2);
DataRow rowTime3 = dtTime.NewRow();
rowTime3["状态"] = "审批";
rowTime3["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Audit2).Count();
dtTime.Rows.Add(rowTime3);
DataRow rowTime4 = dtTime.NewRow();
rowTime4["状态"] = "发布";
rowTime4["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_Complete).Count();
dtTime.Rows.Add(rowTime4);
DataRow rowTime5 = dtTime.NewRow();
rowTime5["状态"] = "重报";
rowTime5["数量"] = forms.Where(x => x.State == Const.TestRunConstructSolution_ReCompile).Count();
dtTime.Rows.Add(rowTime5);
this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "试车方案统计", this.drpChartType.SelectedValue, 1300, 550, this.ckbShow.Checked));
}
#endregion
}
#endregion
#region
/// <summary>
/// 图形变换
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void drpChartType_SelectedIndexChanged(object sender, EventArgs e)
{
this.AnalyseData();
}
protected void ckbShow_CheckedChanged(object sender, CheckedEventArgs e)
{
this.AnalyseData();
}
#endregion
}
}
@@ -0,0 +1,150 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.TestRun {
public partial class DriverSchemeChart {
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel3;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// txtStartTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtStartTime;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label3;
/// <summary>
/// txtEndTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtEndTime;
/// <summary>
/// drpChartType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpChartType;
/// <summary>
/// ckbShow 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.CheckBox ckbShow;
/// <summary>
/// BtnAnalyse 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button BtnAnalyse;
/// <summary>
/// Panel4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel4;
/// <summary>
/// TabStrip1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TabStrip TabStrip1;
/// <summary>
/// Tab2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tab Tab2;
/// <summary>
/// cpAccidentTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel cpAccidentTime;
/// <summary>
/// ChartAccidentTime 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::Web.Controls.ChartControl ChartAccidentTime;
}
}
+38 -118
View File
@@ -36,7 +36,7 @@
<Rows>
<f:FormRow>
<Items>
<f:ContentPanel ID="ContentPanel2" Title="施工方案" ShowBorder="true"
<f:ContentPanel ID="ContentPanel2" Title="试车方案" ShowBorder="true"
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
@@ -58,54 +58,21 @@
<f:FormRow ColumnWidths="25% 25% 25% 25%">
<Items>
<f:DropDownList ID="drpUnit" ShowRedStar="true" LabelWidth="120px"
runat="server" Required="true" Label="施工单位" EmptyText="--请选择--" AutoSelectFirstItem="false" LabelAlign="Right" EnableEdit="true">
runat="server" Required="true" Label="编制单位" EmptyText="--请选择--" AutoSelectFirstItem="false" LabelAlign="Right" EnableEdit="true">
</f:DropDownList>
<f:Label runat="server" ID="txtSolutionType" Label="方案类别" LabelWidth="120px" LabelAlign="Right"></f:Label>
<f:DropDownBox runat="server" Label="单位工程" ShowRedStar="true" LabelWidth="120px"
Required="true" ID="txtUnitWork" EmptyText="--请选择--" EnableMultiSelect="true" MatchFieldWidth="false">
<PopPanel>
<f:Grid ID="gvUnitWork" DataIDField="UnitWorkId" DataTextField="UnitWorkName" DataKeyNames="UnitWorkId"
EnableMultiSelect="true" KeepCurrentSelection="true" Height="300px" Hidden="true"
ShowBorder="true" ShowHeader="false" ForceFit="true"
runat="server" EnableCheckBoxSelect="true">
<Columns>
<f:BoundField Width="100px" DataField="UnitWorkId" SortField="UnitWorkId" DataFormatString="{0}" Hidden="true" />
<f:BoundField Width="100px" DataField="UnitWorkName" SortField="UnitWorkName" DataFormatString="{0}"
HeaderText="工程名称" />
</Columns>
</f:Grid>
</PopPanel>
</f:DropDownBox>
<f:DropDownList ID="drpSpecialType" EmptyText="--请选择--" AutoSelectFirstItem="false" ShowRedStar="true" runat="server" Width="350px" Label="分部分项工程" LabelAlign="Right" EnableEdit="true" LabelWidth="120px">
</f:DropDownList>
<f:TextBox ID="txtCode" runat="server" Required="true" ShowRedStar="true" Label="编号" LabelAlign="Right" MaxLength="50" LabelWidth="120px">
</f:TextBox>
<f:NumberBox ID="txtEdition" Label="版次" runat="server" NoDecimal="true" Readonly="true" NoNegative="true" ShowRedStar="true" MaxLength="3" Required="true" LabelWidth="120px">
</f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow ColumnWidths="25% 25% 25%">
<Items>
<f:TextBox ID="txtCode" runat="server" Required="true" ShowRedStar="true" Label="编号" LabelAlign="Right" MaxLength="50" LabelWidth="120px">
<f:TextBox ID="txtUnitWork" runat="server" Label="装置" LabelAlign="Right" LabelWidth="120px">
</f:TextBox>
<f:TextBox ID="txtSystem" runat="server" Label="系统" LabelAlign="Right" LabelWidth="120px">
</f:TextBox>
<f:NumberBox ID="txtEdition" Label="版次" runat="server" NoDecimal="true" Readonly="true" NoNegative="true" ShowRedStar="true" MaxLength="3" Required="true" LabelWidth="120px">
</f:NumberBox>
<f:DropDownBox runat="server" Label="专业" ShowRedStar="true" Required="true" ID="txtCNProfessional" EmptyText="--请选择--" DataControlID="txtCNProfessional" EnableMultiSelect="true" MatchFieldWidth="true" LabelWidth="120px">
<PopPanel>
<f:Grid ID="gvCNPro" BoxFlex="1"
DataIDField="CNProfessionalId" DataTextField="ProfessionalName" EnableMultiSelect="true" KeepCurrentSelection="true"
ShowBorder="true" ShowHeader="false" ForceFit="true"
runat="server" EnableCheckBoxSelect="true" DataKeyNames="CNProfessionalId" Hidden="true">
<Columns>
<%--<f:RowNumberField />--%>
<f:BoundField Width="100px" DataField="CNProfessionalId" SortField="CNProfessionalId" DataFormatString="{0}" Hidden="true" />
<f:BoundField Width="100px" DataField="ProfessionalName" SortField="ProfessionalName" DataFormatString="{0}"
HeaderText="名称" />
</Columns>
</f:Grid>
</PopPanel>
</f:DropDownBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="txtCompileDate" ShowRedStar="true" Required="true" runat="server" Label="编制时间" LabelAlign="Right" EnableEdit="true" LabelWidth="120px">
</f:DatePicker>
</Items>
@@ -148,81 +115,34 @@
</f:ContentPanel>
</Items>
</f:FormRow>
<f:FormRow runat="server">
<Items>
<f:TextBox runat="server" ID="txtCopyMan" Label="总包会签人员" Readonly="True" Enabled="False"/>
</Items>
</f:FormRow>
<f:FormRow>
<f:FormRow>
<Items>
<f:Panel ID="Panel2" IsFluid="true" CssClass="mytable blockpanel" runat="server" AutoScroll="true" ShowBorder="true"
Layout="Table" TableConfigColumns="3" ShowHeader="true" Title="总包会签">
<Items>
<f:Panel ID="Panel1" Title="Panel1" Width="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false" Height="200px">
<Items>
<f:Tree runat="server" ID="trOne" ShowHeader="false" AutoScroll="true" ShowBorder="false" OnNodeCheck="trOne_NodeCheck" EnableArrows="true">
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel3" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false" Hidden="True">
<Items>
<f:Tree runat="server" ID="trTwo" ShowHeader="false" ShowBorder="false" OnNodeCheck="trTwo_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
<f:Panel ID="Panel4" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trThree" ShowHeader="false" ShowBorder="false" OnNodeCheck="trThree_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel5" Title="Panel1" Width="200px" AutoScroll="true" Height="200px" Hidden="True"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trFour" ShowHeader="false" ShowBorder="false" OnNodeCheck="trFour_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
<f:Panel ID="Panel6" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trFive" ShowHeader="false" ShowBorder="false" OnNodeCheck="trFive_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel7" Title="Panel1" Width="200px" AutoScroll="true" Height="200px" Hidden="True"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trSixe" ShowHeader="false" ShowBorder="false" OnNodeCheck="trSixe_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
</Items>
</f:Panel>
</Items>
</f:FormRow>
<f:FormRow ID="agree">
<Items>
<f:RadioButtonList runat="server" ID="rblIsAgree" Label="是否同意" ShowRedStar="true" AutoPostBack="true">
<f:RadioItem Text="同意" Value="true" Selected="true" />
<f:RadioItem Text="不同意" Value="false" />
</f:RadioButtonList>
<f:Label runat="server" CssStyle="display:none"></f:Label>
<f:ContentPanel ID="ContentPanel5" Title="试车方案审批流程设置" runat="server" ShowHeader="true" EnableCollapse="true"
BodyPadding="0px">
<f:Form ID="Form5" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:RadioButtonList runat="server" ID="rblIsAgree" Label="是否同意" ShowRedStar="true" AutoPostBack="true" OnSelectedIndexChanged="rblIsAgree_SelectedIndexChanged">
<f:RadioItem Text="同意" Value="true" Selected="true" />
<f:RadioItem Text="不同意" Value="false" />
</f:RadioButtonList>
<f:Label runat="server" CssStyle="display:none"></f:Label>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpHandleType" OnSelectedIndexChanged="drpHandleType_SelectedIndexChanged" Readonly="true"
AutoPostBack="true" runat="server" Label="办理步骤" LabelAlign="Right" EnableEdit="true">
</f:DropDownList>
<f:DropDownList ID="drpHandleMan" runat="server" Label="办理人员" Required="true" LabelAlign="Right" EnableEdit="true">
</f:DropDownList>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</f:ContentPanel>
</Items>
</f:FormRow>
<f:FormRow ID="options">
@@ -251,7 +171,7 @@
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<f:Grid ID="gvApprove" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false"
DataKeyNames="ConstructSolutionApproveId" EnableColumnLines="true" OnRowCommand="gvApprove_RowCommand" ForceFit="true">
DataKeyNames="ConstructSolutionApproveId" EnableColumnLines="true" OnRowCommand="gvApprove_RowCommand">
<Columns>
<f:RowNumberField Width="40px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center" />
<f:TemplateField ColumnID="ApproveType" Width="150px" HeaderText="办理类型" HeaderTextAlign="Center" TextAlign="Center"
@@ -273,7 +193,7 @@
</ItemTemplate>
</f:TemplateField>
<f:BoundField Width="100px" DataField="ApproveDate" HeaderTextAlign="Center" TextAlign="Center" DataFormatString="{0:yyyy-MM-dd}" HeaderText="办理时间" />
<f:BoundField Width="180px" DataField="ApproveIdea" HeaderTextAlign="Center" TextAlign="Center" HeaderText="办理意见" />
<f:BoundField Width="380px" DataField="ApproveIdea" HeaderTextAlign="Center" TextAlign="Center" HeaderText="办理意见" ExpandUnusedSpace="true" />
<f:LinkButtonField HeaderText="附件" ColumnID="download" Width="60px" Icon="ArrowDown" CommandName="download" />
</Columns>
</f:Grid>
File diff suppressed because it is too large Load Diff
+26 -98
View File
@@ -93,33 +93,6 @@ namespace FineUIPro.Web.TestRun {
/// </remarks>
protected global::FineUIPro.Label txtSolutionType;
/// <summary>
/// txtUnitWork 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownBox txtUnitWork;
/// <summary>
/// gvUnitWork 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvUnitWork;
/// <summary>
/// drpSpecialType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpSpecialType;
/// <summary>
/// txtCode 控件。
/// </summary>
@@ -139,22 +112,22 @@ namespace FineUIPro.Web.TestRun {
protected global::FineUIPro.NumberBox txtEdition;
/// <summary>
/// txtCNProfessional 控件。
/// txtUnitWork 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownBox txtCNProfessional;
protected global::FineUIPro.TextBox txtUnitWork;
/// <summary>
/// gvCNPro 控件。
/// txtSystem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid gvCNPro;
protected global::FineUIPro.TextBox txtSystem;
/// <summary>
/// txtCompileDate 控件。
@@ -193,85 +166,22 @@ namespace FineUIPro.Web.TestRun {
protected global::FineUIPro.HtmlEditor txtDocContent;
/// <summary>
/// txtCopyMan 控件。
/// ContentPanel5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCopyMan;
protected global::FineUIPro.ContentPanel ContentPanel5;
/// <summary>
/// Panel2 控件。
/// Form5 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// trOne 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trOne;
/// <summary>
/// Panel4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel4;
/// <summary>
/// trThree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trThree;
/// <summary>
/// Panel6 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel6;
/// <summary>
/// trFive 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trFive;
/// <summary>
/// agree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FormRow agree;
protected global::FineUIPro.Form Form5;
/// <summary>
/// rblIsAgree 控件。
@@ -282,6 +192,24 @@ namespace FineUIPro.Web.TestRun {
/// </remarks>
protected global::FineUIPro.RadioButtonList rblIsAgree;
/// <summary>
/// drpHandleType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpHandleType;
/// <summary>
/// drpHandleMan 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpHandleMan;
/// <summary>
/// options 控件。
/// </summary>
@@ -35,7 +35,7 @@
<Rows>
<f:FormRow>
<Items>
<f:ContentPanel ID="ContentPanel2" Title="施工方案" ShowBorder="true"
<f:ContentPanel ID="ContentPanel2" Title="试车方案" ShowBorder="true"
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true"
@@ -55,7 +55,7 @@
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="drpUnit" runat="server" Readonly="true" Label="施工单位" LabelAlign="Right"
<f:TextBox ID="drpUnit" runat="server" Readonly="true" Label="编制单位" LabelAlign="Right"
MaxLength="50">
</f:TextBox>
<f:TextBox ID="txtSolutionName" runat="server" ShowRedStar="true" Readonly="true" Required="true" Label="方案名称" LabelAlign="Right"
@@ -63,7 +63,7 @@
</f:TextBox>
<%-- <f:DropDownList ID="drpUnit" ShowRedStar="true"
runat="server" Required="true" Label="施工单位" LabelAlign="Right" EnableEdit="true">
runat="server" Required="true" Label="编制单位" LabelAlign="Right" EnableEdit="true">
</f:DropDownList>
<f:DropDownList ID="drpModelType" ShowRedStar="true" Required="true" runat="server" Width="350px" Label="方案类别" LabelAlign="Right" EnableEdit="true">
@@ -79,7 +79,10 @@
<f:TextBox ID="drpModelType" runat="server" Readonly="true" Label="方案类别" LabelAlign="Right"
MaxLength="50">
</f:TextBox>
<f:TextBox ID="txtSpecialType" runat="server" Readonly="true" Label="分部分项工程" LabelAlign="Right"
<f:TextBox ID="txtUnitWork" runat="server" Readonly="true" Label="装置" LabelAlign="Right"
MaxLength="50">
</f:TextBox>
<f:TextBox ID="txtSystem" runat="server" Readonly="true" Label="系统" LabelAlign="Right"
MaxLength="50" LabelWidth="120px">
</f:TextBox>
@@ -99,51 +102,6 @@
</f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtCNProfessional" runat="server" Readonly="true" Label="专业" LabelAlign="Right"
MaxLength="50">
</f:TextBox>
<%-- <f:DropDownBox runat="server" Label="专业" ShowRedStar="true" Required="true" ID="txtCNProfessional" EmptyText="--请选择--" DataControlID="txtCNProfessional" EnableMultiSelect="true" MatchFieldWidth="true">
<PopPanel>
<f:Grid ID="gvCNPro" BoxFlex="1"
DataIDField="CNProfessionalCode" DataTextField="ProfessionalName" EnableMultiSelect="true" KeepCurrentSelection="true"
ShowBorder="true" ShowHeader="false"
runat="server" EnableCheckBoxSelect="true" DataKeyNames="CNProfessionalCode" Hidden="true">
<Columns>
<f:RowNumberField />
<f:BoundField Width="100px" DataField="CNProfessionalCode" SortField="CNProfessionalCode" DataFormatString="{0}" Hidden="true" />
<f:BoundField Width="100px" DataField="ProfessionalName" SortField="ProfessionalName" DataFormatString="{0}"
ExpandUnusedSpace="true" HeaderText="名称" />
</Columns>
</f:Grid>
</PopPanel>
</f:DropDownBox>--%>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtUnitWork" runat="server" Readonly="true" Label="单位工程" LabelAlign="Right"
MaxLength="50">
</f:TextBox>
<%-- <f:DropDownBox runat="server" Label="单位工程" ShowRedStar="true"
Required="true" ID="txtUnitWork" EmptyText="--请选择--" EnableMultiSelect="true" MatchFieldWidth="false">
<PopPanel>
<f:Grid ID="gvUnitWork" DataIDField="UnitWorkId" DataTextField="UnitWorkName" DataKeyNames="UnitWorkId"
EnableMultiSelect="true" KeepCurrentSelection="true" Height="300px" Hidden="true"
ShowBorder="true" ShowHeader="false"
runat="server" EnableCheckBoxSelect="true">
<Columns>
<f:BoundField Width="100px" DataField="UnitWorkId" SortField="UnitWorkId" DataFormatString="{0}" Hidden="true" />
<f:BoundField Width="100px" DataField="UnitWorkName" SortField="UnitWorkName" DataFormatString="{0}"
ExpandUnusedSpace="true" HeaderText="工程名称" />
</Columns>
</f:Grid>
</PopPanel>
</f:DropDownBox>--%>
</Items>
</f:FormRow>
<f:FormRow runat="server">
<Items>
<f:TabStrip ID="TabStrip1" IsFluid="true" Height="500px" ShowBorder="true" TabPosition="Top"
@@ -187,68 +145,6 @@
</f:ContentPanel>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Panel ID="Panel2" IsFluid="true" CssClass="mytable blockpanel" runat="server" AutoScroll="true" ShowBorder="true"
Layout="Table" TableConfigColumns="3" ShowHeader="true" Title="总包会签">
<Items>
<f:Panel ID="Panel1" Title="Panel1" Width="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false" Height="200px">
<Items>
<f:Tree runat="server" ID="trOne" ShowHeader="false" AutoScroll="true" ShowBorder="false" EnableArrows="true">
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel3" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false" Hidden="True">
<Items>
<f:Tree runat="server" ID="trTwo" ShowHeader="false" ShowBorder="false" OnNodeCheck="trTwo_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
<f:Panel ID="Panel4" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trThree" ShowHeader="false" ShowBorder="false">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel5" Title="Panel1" Width="200px" AutoScroll="true" Height="200px" Hidden="True"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trFour" ShowHeader="false" ShowBorder="false" OnNodeCheck="trFour_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
<f:Panel ID="Panel6" Title="Panel1" Width="200px" AutoScroll="true" Height="200px"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trFive" ShowHeader="false" ShowBorder="false">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>
<%--<f:Panel ID="Panel7" Title="Panel1" Width="200px" AutoScroll="true" Height="200px" Hidden="True"
TableRowspan="5" runat="server" BodyPadding="10px" ShowBorder="false" ShowHeader="false">
<Items>
<f:Tree runat="server" ID="trSixe" ShowHeader="false" ShowBorder="false" OnNodeCheck="trSixe_NodeCheck">
<Nodes>
</Nodes>
</f:Tree>
</Items>
</f:Panel>--%>
</Items>
</f:Panel>
</Items>
</f:FormRow>
<f:FormRow ID="plApprove2">
<Items>
@@ -256,7 +152,7 @@
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<f:Grid ID="gvApprove" IsFluid="true" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" runat="server" EnableCollapse="false"
DataKeyNames="ConstructSolutionApproveId" EnableColumnLines="true" OnRowCommand="gvApprove_RowCommand" ForceFit="true">
DataKeyNames="ConstructSolutionApproveId" EnableColumnLines="true" OnRowCommand="gvApprove_RowCommand">
<Columns>
<f:RowNumberField Width="40px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center" />
<f:TemplateField ColumnID="ApproveType" Width="150px" HeaderText="办理类型" HeaderTextAlign="Center" TextAlign="Center"
@@ -278,7 +174,7 @@
</ItemTemplate>
</f:TemplateField>
<f:BoundField Width="100px" DataField="ApproveDate" HeaderTextAlign="Center" TextAlign="Center" DataFormatString="{0:yyyy-MM-dd}" HeaderText="办理时间" />
<f:BoundField Width="180px" DataField="ApproveIdea" HeaderTextAlign="Center" TextAlign="Center" HeaderText="办理意见" />
<f:BoundField Width="380px" DataField="ApproveIdea" HeaderTextAlign="Center" TextAlign="Center" HeaderText="办理意见" ExpandUnusedSpace="true" />
<f:LinkButtonField HeaderText="附件" ColumnID="download" Width="60px" Icon="ArrowDown" CommandName="download" />
</Columns>
</f:Grid>
@@ -48,10 +48,12 @@ namespace FineUIPro.Web.TestRun
{
drpModelType.Text = TestRunConstructSolutionService.ConvertSolutionType(constructSolution.SolutionType);
}
if (!string.IsNullOrEmpty(constructSolution.SpecialSchemeTypeId))
if (constructSolution.SolutionType == "12")
{
txtSpecialType.Text = BLL.SpecialSchemeTypeService.GetSpecialSchemeTypeById(constructSolution.SpecialSchemeTypeId).SpecialSchemeTypeName;
this.txtUnitWork.Hidden = true;
this.txtSystem.Hidden = true;
}
txtSystem.Text = constructSolution.System;
if (constructSolution.CompileDate != null)
{
txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", constructSolution.CompileDate);
@@ -59,13 +61,9 @@ namespace FineUIPro.Web.TestRun
txtSolutionName.Text = constructSolution.SolutionName;
if (!string.IsNullOrWhiteSpace(constructSolution.UnitWorkIds))
{
txtUnitWork.Text = UnitWorkService.GetUnitWorkName(constructSolution.UnitWorkIds);
txtUnitWork.Text = constructSolution.UnitWorkIds;
}
if (!string.IsNullOrWhiteSpace(constructSolution.CNProfessionalCodes))
{
txtCNProfessional.Text = TestRunConstructSolutionService.GetProfessionalName(constructSolution.CNProfessionalCodes);
}
if (constructSolution.Edition != null)
{
txtEdition.Text = constructSolution.Edition.ToString();
@@ -73,25 +71,7 @@ namespace FineUIPro.Web.TestRun
txtDocContent.Text = HttpUtility.HtmlDecode(constructSolution.Content);
bindApprove();
BindZYRole();
BindAQRole();
BindSGRole();
//BindXMRole();
var zyUserIds = TestRunConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "ZY");
if (zyUserIds.Count > 0)
{
SetCheck(trOne, zyUserIds);
}
var aqUserIds = TestRunConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "AQ");
if (aqUserIds.Count > 0)
{
SetCheck(trThree, aqUserIds);
}
var sgUserIds = TestRunConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "SG");
if (sgUserIds.Count > 0)
{
SetCheck(trFive, sgUserIds);
}
//var xmUserIds = TestRunConstructSolutionApproveService.GetUserIdsApprovesBySignType(ConstructSolutionId, "XM");
//if (xmUserIds.Count > 0)
//{
@@ -130,41 +110,6 @@ namespace FineUIPro.Web.TestRun
}
}
/// 加载角色树:动态加载
/// </summary>
private void BindZYRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "专业工程师";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.EnableCheckEvent = true;
trOne.Nodes.Add(rootNode);
trOne.EnableCheckBox = true;
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var userList = from x in db.Sys_User
join y in db.Project_ProjectUnit
on x.UnitId equals y.UnitId
join p in db.Project_ProjectUser
on x.UserId equals p.UserId
where p.RoleId.Contains(Const.ZBCNEngineer)
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
select x;
//var ss = LINQToDataTable(userList);
foreach (var u in userList)
{
TreeNode Node = new TreeNode();
Node.Text = u.UserName;
Node.NodeID = u.UserId;
Node.EnableCheckEvent = true;
rootNode.Nodes.Add(Node);
}
}
}
/// <summary>
/// 判断是否有选择
/// </summary>
@@ -187,67 +132,6 @@ namespace FineUIPro.Web.TestRun
return res;
}
private void BindAQRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "HSE组";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.EnableCheckEvent = true;
trThree.Nodes.Add(rootNode);
trThree.EnableCheckBox = true;
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var userList = from x in db.Sys_User
join y in db.Project_ProjectUnit
on x.UnitId equals y.UnitId
join p in db.Project_ProjectUser
on x.UserId equals p.UserId
where (p.RoleId.Contains(Const.HSSEManager) || p.RoleId.Contains(Const.HSSEEngineer))
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
orderby x.UserCode
select x;
foreach (var u in userList)
{
TreeNode roleNode = new TreeNode();
roleNode.Text = u.UserName;
roleNode.NodeID = u.UserId;
rootNode.Nodes.Add(roleNode);
}
}
}
private void BindSGRole()
{
TreeNode rootNode = new TreeNode();//定义根节点
rootNode.Text = "施工经理";
rootNode.NodeID = "0";
rootNode.Expanded = true;
rootNode.EnableCheckEvent = true;
trFive.Nodes.Add(rootNode);
trFive.EnableCheckBox = true;
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var userList = from x in db.Sys_User
join y in db.Project_ProjectUnit
on x.UnitId equals y.UnitId
join p in db.Project_ProjectUser
on x.UserId equals p.UserId
where (p.RoleId.Contains(Const.ConstructionManager) || p.RoleId.Contains(Const.ConstructionAssistantManager))
&& y.UnitType == Const.ProjectUnitType_1 && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId
orderby x.UserCode
select x;
foreach (var u in userList)
{
TreeNode roleNode = new TreeNode();
roleNode.Text = u.UserName;
roleNode.NodeID = u.UserId;
rootNode.Nodes.Add(roleNode);
}
}
}
//private void BindXMRole()
//{
+11 -83
View File
@@ -103,13 +103,22 @@ namespace FineUIPro.Web.TestRun {
protected global::FineUIPro.TextBox drpModelType;
/// <summary>
/// txtSpecialType 控件。
/// txtUnitWork 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSpecialType;
protected global::FineUIPro.TextBox txtUnitWork;
/// <summary>
/// txtSystem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSystem;
/// <summary>
/// txtCompileDate 控件。
@@ -129,24 +138,6 @@ namespace FineUIPro.Web.TestRun {
/// </remarks>
protected global::FineUIPro.NumberBox txtEdition;
/// <summary>
/// txtCNProfessional 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCNProfessional;
/// <summary>
/// txtUnitWork 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUnitWork;
/// <summary>
/// TabStrip1 控件。
/// </summary>
@@ -174,69 +165,6 @@ namespace FineUIPro.Web.TestRun {
/// </remarks>
protected global::FineUIPro.HtmlEditor txtDocContent;
/// <summary>
/// Panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// trOne 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trOne;
/// <summary>
/// Panel4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel4;
/// <summary>
/// trThree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trThree;
/// <summary>
/// Panel6 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel6;
/// <summary>
/// trFive 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trFive;
/// <summary>
/// plApprove2 控件。
/// </summary>