1、关键事项新增时,邮件提醒抄送人;

2、施工技术交底、培训记录,补充附件上传功能;
This commit is contained in:
夏菊 2025-09-20 16:45:17 +08:00
parent dfa0aefa0a
commit 76668143e5
14 changed files with 361 additions and 112 deletions

View File

@ -4188,7 +4188,7 @@ namespace BLL
public const string MajorPlanApprovalMenuId = "fd116c94-714b-4b92-a3c9-cc83d358e2b3";
/// <summary>
/// 设计交底管理
/// 施工技术交底管理
/// </summary>
public const string ConTechnologyDisclosureMenuId = "A16CFA9D-2783-4573-95F9-EBA2B682B7EA";

View File

@ -24,11 +24,11 @@ namespace BLL
//public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 关键事项通知提醒责任人
/// 关键事项通知提醒责任人、抄送人
/// </summary>
/// <param name="userId"></param>
/// <param name="userIds"></param>
/// <param name="gjsxId"></param>
public static void GJSXNoticeSendEmail(string userId, string gjsxId)
public static void GJSXNoticeSendEmail(List<string> userIds, string gjsxId)
{
string strSql = $@"select
DATEDIFF(DAY, CompleteDate, isnull(CloseDate,getdate())) AS DateDiffDays
@ -87,17 +87,28 @@ namespace BLL
}).ToList();
var gItem = lstOverdue.FirstOrDefault();
var user = UserService.GetUserByUserId(userId);
if (gItem != null && !string.IsNullOrWhiteSpace(user.Email))
if (gItem != null)
{
MailMessage mail = new MailMessage();
//邮件主题
mail.Subject = $"你有新的关键事项了——{gItem.ProjectName}";
mail.To.Add(user.Email);
//mail.To.Add("test@test.com");
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
//邮件正文
string bodyStr = $@"<html>
foreach (var userId in userIds)
{
var user = UserService.GetUserByUserId(userId);
if (!string.IsNullOrWhiteSpace(user.Email))
{
MailMessage mail = new MailMessage();
//邮件主题
if (userId == gItem.User_AcceptanceUserId)
{
mail.Subject = $"你有新的关键事项了——{gItem.ProjectName}";
}
else
{
mail.Subject = $"有新的关键事项抄送你了——{gItem.ProjectName}";
}
mail.To.Add(user.Email);
//mail.To.Add("test@test.com");
mail.IsBodyHtml = true;//确保邮件正文被当作HTML解析
//邮件正文
string bodyStr = $@"<html>
<head>
<style>
@ -125,16 +136,18 @@ namespace BLL
</body>
</html>";
//< p > 登录密码:{ user.RawPassword}</ p >
mail.Body = bodyStr;
//< p > 登录密码:{ user.RawPassword}</ p >
mail.Body = bodyStr;
try
{
bool send = PushEmail(mail);
}
catch (Exception ex)
{
ErrLogInfo.WriteLog($"关键事项通知提醒责任人;项目名称:{gItem.ProjectName},事项编号:{gItem.GJSXID}", ex);
try
{
bool send = PushEmail(mail);
}
catch (Exception ex)
{
ErrLogInfo.WriteLog($"关键事项通知提醒责任人;项目名称:{gItem.ProjectName},事项编号:{gItem.GJSXID}", ex);
}
}
}
}
}

View File

@ -76,6 +76,12 @@
<f:RenderField ColumnID="AttendMan" DataField="AttendMan" FieldType="String" HeaderText="参加人员" TextAlign="Center"
HeaderTextAlign="Center" Width="130px">
</f:RenderField>
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left">
<ItemTemplate>
<asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink"
Text='<%# BLL.AttachFileService.GetBtnFileUrl(Eval("ConTechnologyDisclosureId")) %>' ToolTip="附件查看"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@ -96,16 +102,16 @@
</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="430px">
Width="900px" Height="600px">
</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="1200px" Height="660px">
</f:Window>
<%--<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true"
<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:Window>
<f:Menu ID="Menu1" runat="server">
<Items>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click" Hidden="true">

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.CQMS.Comprehensive {
public partial class ConTechnologyDisclosure {
namespace FineUIPro.Web.CQMS.Comprehensive
{
public partial class ConTechnologyDisclosure
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// ToolSearch 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar ToolSearch;
/// <summary>
/// sdrpUnitId 控件。
/// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList sdrpUnitId;
/// <summary>
/// drpProfessionalId 控件。
/// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpProfessionalId;
/// <summary>
/// txtCode 控件。
/// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCode;
/// <summary>
/// btnSearch 控件。
/// </summary>
@ -92,7 +94,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnNew 控件。
/// </summary>
@ -101,7 +103,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnImport 控件。
/// </summary>
@ -110,7 +112,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnOut 控件。
/// </summary>
@ -119,7 +121,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
@ -128,7 +130,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// Label2 控件。
/// </summary>
@ -137,7 +139,16 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label2;
/// <summary>
/// lbtnFileUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
@ -146,7 +157,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
@ -155,7 +166,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
@ -164,7 +175,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
@ -173,7 +184,16 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
/// <summary>
/// Menu1 控件。
/// </summary>
@ -182,7 +202,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuModify 控件。
/// </summary>
@ -191,7 +211,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
/// <summary>
/// btnMenuDel 控件。
/// </summary>

View File

@ -41,26 +41,39 @@
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox ID="txtDisclosurePersonNum" runat="server" Label="交底人数" LabelAlign="Right" LabelWidth="130px" MinValue="0" NoDecimal="true" NoNegative="true"></f:NumberBox>
<f:NumberBox ID="txtDisclosurePersonNum" runat="server" Label="交底人数" LabelAlign="Right" LabelWidth="130px" MinValue="0" NoDecimal="true" NoNegative="true"></f:NumberBox>
<f:TextBox ID="txtAttendMan" runat="server" Label="参加人员" MaxLength="100" LabelAlign="Right" LabelWidth="130px"></f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
<Items>
<f:Label ID="Label1" runat="server" Label="上传附件"
LabelAlign="Right" LabelWidth="140px">
</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>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<%--<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>--%>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存" ToolTip="保存" ValidateForms="SimpleForm1" OnClick="btnSave_Click" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<%--<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px">
</f:Window>--%>
</f:Window>
</form>
</body>
</html>

View File

@ -1,4 +1,5 @@
using BLL;
using FineUIPro.Web.Comprehensive;
using System;
using System.Collections.Generic;
using System.Linq;
@ -47,6 +48,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
if (con != null)
{
this.ConTechnologyDisclosureId = con.ConTechnologyDisclosureId;
this.hdAttachUrl.Text = this.ConTechnologyDisclosureId;
if (!string.IsNullOrEmpty(con.CNProfessionalId))
{
this.drpCNProfessionalId.SelectedValue = con.CNProfessionalId;
@ -124,11 +126,18 @@ namespace FineUIPro.Web.CQMS.Comprehensive
newCon.AttendMan = this.txtAttendMan.Text.Trim();
newCon.RemarkCode = Funs.GetNewInt(this.txtRemarkCode.Text.Trim());
newCon.DisclosurePersonNum = Funs.GetNewInt(this.txtDisclosurePersonNum.Text.Trim());
if (string.IsNullOrEmpty(this.ConTechnologyDisclosureId))
{
newCon.ConTechnologyDisclosureId = SQLHelper.GetNewID(typeof(Model.Comprehensive_ConTechnologyDisclosure));
if (!string.IsNullOrEmpty(this.hdAttachUrl.Text))
{
newCon.ConTechnologyDisclosureId = this.hdAttachUrl.Text;
}
else
{
newCon.ConTechnologyDisclosureId = SQLHelper.GetNewID(typeof(Model.Comprehensive_ConTechnologyDisclosure));
this.hdAttachUrl.Text = newCon.ConTechnologyDisclosureId;
}
newCon.CompileMan = this.CurrUser.UserId;
newCon.CompileDate = DateTime.Now;
BLL.ConTechnologyDisclosureService.AddConTechnologyDisclosure(newCon);
@ -165,5 +174,22 @@ namespace FineUIPro.Web.CQMS.Comprehensive
}
}
#endregion
#region
/// <summary>
/// 附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttach_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.hdAttachUrl.Text)) //新增记录
{
this.hdAttachUrl.Text = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignDetails));
}
Model.Comprehensive_ConTechnologyDisclosure con = BLL.ConTechnologyDisclosureService.GetConTechnologyDisclosureById(this.ConTechnologyDisclosureId);
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/ConTechnologyDisclosure&menuId={1}", this.hdAttachUrl.Text, BLL.Const.ConTechnologyDisclosureMenuId)));
}
#endregion
}
}

View File

@ -131,6 +131,33 @@ namespace FineUIPro.Web.CQMS.Comprehensive
/// </remarks>
protected global::FineUIPro.TextBox txtAttendMan;
/// <summary>
/// Panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// btnAttach 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttach;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -140,6 +167,15 @@ namespace FineUIPro.Web.CQMS.Comprehensive
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdAttachUrl;
/// <summary>
/// btnSave 控件。
/// </summary>
@ -148,5 +184,14 @@ namespace FineUIPro.Web.CQMS.Comprehensive
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}

View File

@ -234,8 +234,6 @@ namespace FineUIPro.Web.CQMS.Comprehensive
designDetails.DesignDetailsId = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignDetails));
this.hdAttachUrl.Text = designDetails.DesignDetailsId;
}
designDetails.CompileMan = this.CurrUser.UserId;
designDetails.CompileDate = DateTime.Now;
designDetails.Status = BLL.Const.Comprehensive_Compile;

View File

@ -64,6 +64,12 @@
<f:RenderField ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" TextAlign="Center"
HeaderTextAlign="Center" Width="120px" ExpandUnusedSpace="true">
</f:RenderField>
<f:TemplateField ColumnID="AttachFile" Width="150px" HeaderText="附件" HeaderTextAlign="Center" TextAlign="Left">
<ItemTemplate>
<asp:LinkButton ID="lbtnFileUrl" runat="server" CssClass="ItemLink"
Text='<%# BLL.AttachFileService.GetBtnFileUrl(Eval("TrainingRecordsId")) %>' ToolTip="附件查看"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@ -84,11 +90,15 @@
</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="800px" Height="500px">
Width="800px" Height="600px">
</f:Window>
<f:Window ID="Window2" Title="培训记录导入" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
Width="1200px" 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" Height="500px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<Items>

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.CQMS.Comprehensive {
public partial class TrainingRecords {
namespace FineUIPro.Web.CQMS.Comprehensive
{
public partial class TrainingRecords
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// ToolSearch 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar ToolSearch;
/// <summary>
/// drpCNProfessionalId 控件。
/// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCNProfessionalId;
/// <summary>
/// txtTrainingContents 控件。
/// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTrainingContents;
/// <summary>
/// btnSearch 控件。
/// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnNew 控件。
/// </summary>
@ -92,7 +94,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnImport 控件。
/// </summary>
@ -101,7 +103,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnOut 控件。
/// </summary>
@ -110,7 +112,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
@ -119,7 +121,16 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// lbtnFileUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton lbtnFileUrl;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
@ -128,7 +139,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
@ -137,7 +148,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
@ -146,7 +157,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
@ -155,7 +166,16 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
/// <summary>
/// Menu1 控件。
/// </summary>
@ -164,7 +184,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuModify 控件。
/// </summary>
@ -173,7 +193,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
/// <summary>
/// btnMenuDel 控件。
/// </summary>

View File

@ -52,16 +52,35 @@
<f:TextArea ID="txtRemark" runat="server" Label="备注" MaxLength="50" LabelAlign="Right" LabelWidth="130px"></f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Panel ID="Panel2" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
<Items>
<f:Label ID="Label1" runat="server" Label="上传附件"
LabelAlign="Right" LabelWidth="140px">
</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>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存" ToolTip="保存" ValidateForms="SimpleForm1" OnClick="btnSave_Click" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</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>

View File

@ -1,4 +1,5 @@
using BLL;
using FineUIPro.Web.Comprehensive;
using System;
using System.Linq;
@ -40,6 +41,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive
if (trainingRecords != null)
{
this.TrainingRecordsId = trainingRecords.TrainingRecordsId;
this.hdAttachUrl.Text = this.TrainingRecordsId;
this.txtTrainingContents.Text = trainingRecords.TrainingContents;
if (!string.IsNullOrEmpty(trainingRecords.CNProfessionalId))
{
@ -91,7 +93,15 @@ namespace FineUIPro.Web.CQMS.Comprehensive
}
else
{
trainingRecords.TrainingRecordsId = SQLHelper.GetNewID(typeof(Model.Comprehensive_TrainingRecords));
if (!string.IsNullOrEmpty(this.hdAttachUrl.Text))
{
trainingRecords.TrainingRecordsId = this.hdAttachUrl.Text;
}
else
{
trainingRecords.TrainingRecordsId = SQLHelper.GetNewID(typeof(Model.Comprehensive_TrainingRecords));
this.hdAttachUrl.Text = trainingRecords.TrainingRecordsId;
}
trainingRecords.ProjectId = this.CurrUser.LoginProjectId;
BLL.TrainingRecordsService.AddTrainingRecords(trainingRecords);
}
@ -122,5 +132,23 @@ namespace FineUIPro.Web.CQMS.Comprehensive
}
}
#endregion
#region
/// <summary>
/// 附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttach_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.hdAttachUrl.Text)) //新增记录
{
this.hdAttachUrl.Text = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignDetails));
}
Model.Comprehensive_TrainingRecords trainingRecords = BLL.TrainingRecordsService.GetTrainingRecordsById(this.TrainingRecordsId);
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/TrainingRecords&menuId={1}", this.hdAttachUrl.Text, BLL.Const.TrainingRecordsMenuId)));
}
#endregion
}
}

View File

@ -7,11 +7,13 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.CQMS.Comprehensive {
public partial class TrainingRecordsEdit {
namespace FineUIPro.Web.CQMS.Comprehensive
{
public partial class TrainingRecordsEdit
{
/// <summary>
/// form1 控件。
/// </summary>
@ -20,7 +22,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@ -29,7 +31,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
@ -38,7 +40,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtTrainingContents 控件。
/// </summary>
@ -47,7 +49,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTrainingContents;
/// <summary>
/// drpCNProfessionalId 控件。
/// </summary>
@ -56,7 +58,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpCNProfessionalId;
/// <summary>
/// txtTrainingObject 控件。
/// </summary>
@ -65,7 +67,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTrainingObject;
/// <summary>
/// txtTrainingAddress 控件。
/// </summary>
@ -74,7 +76,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTrainingAddress;
/// <summary>
/// txtHours 控件。
/// </summary>
@ -83,7 +85,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtHours;
/// <summary>
/// txtKeynoteSpeaker 控件。
/// </summary>
@ -92,7 +94,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtKeynoteSpeaker;
/// <summary>
/// txtRemarkCode 控件。
/// </summary>
@ -101,7 +103,7 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtRemarkCode;
/// <summary>
/// txtRemark 控件。
/// </summary>
@ -110,7 +112,34 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
/// <summary>
/// Panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label Label1;
/// <summary>
/// btnAttach 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttach;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -119,7 +148,16 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// hdAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdAttachUrl;
/// <summary>
/// btnSave 控件。
/// </summary>
@ -128,5 +166,14 @@ namespace FineUIPro.Web.CQMS.Comprehensive {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}

View File

@ -758,8 +758,10 @@ namespace FineUIPro.Web.PZHGL.GJSX
#endregion
List<string> userIds = new List<string>();
userIds.Add(DropUser_AcceptanceId);
userIds.AddRange(drpCsUsers.Values);
string EditType = Request.Params["EditType"];
string ID = Request.Params["ID"];
if (string.IsNullOrEmpty(ID))
{
@ -767,10 +769,11 @@ namespace FineUIPro.Web.PZHGL.GJSX
//勾选邮件即时通知责任人,邮箱通知提醒关键事项
if (rNotice == "1")
{
if (BLL.UserService.IsUserHaveEmail(DropUser_AcceptanceId))
{
GJSXMonitorService.GJSXNoticeSendEmail(DropUser_AcceptanceId, this.txtGJSXID.Text.Trim());
}
GJSXMonitorService.GJSXNoticeSendEmail(userIds, this.txtGJSXID.Text.Trim());
//if (BLL.UserService.IsUserHaveEmail(DropUser_AcceptanceId))
//{
// GJSXMonitorService.GJSXNoticeSendEmail(DropUser_AcceptanceId, this.txtGJSXID.Text.Trim());
//}
}
}
else
@ -783,10 +786,11 @@ namespace FineUIPro.Web.PZHGL.GJSX
//勾选邮件即时通知责任人,邮箱通知提醒关键事项
if (rNotice == "1")
{
if (BLL.UserService.IsUserHaveEmail(DropUser_AcceptanceId))
{
GJSXMonitorService.GJSXNoticeSendEmail(DropUser_AcceptanceId, this.txtGJSXID.Text.Trim());
}
GJSXMonitorService.GJSXNoticeSendEmail(userIds, this.txtGJSXID.Text.Trim());
//if (BLL.UserService.IsUserHaveEmail(DropUser_AcceptanceId))
//{
// GJSXMonitorService.GJSXNoticeSendEmail(DropUser_AcceptanceId, this.txtGJSXID.Text.Trim());
//}
}
}
else