2023-10-09

This commit is contained in:
李鹏飞 2023-10-09 12:00:54 +08:00
parent 1a9f22da3f
commit f285d8e3d0
10 changed files with 136 additions and 45 deletions

Binary file not shown.

View File

@ -0,0 +1,7 @@
alter table dbo.PHTGL_Quantity
add SerialNumber nvarchar(50)
go
exec sp_addextendedproperty 'MS_Description', N'ÐòºÅ', 'SCHEMA', 'dbo', 'TABLE', 'PHTGL_Quantity', 'COLUMN',
'SerialNumber'
go

View File

@ -1396,6 +1396,8 @@ namespace BLL
client.Timeout = -1; client.Timeout = -1;
var request = new RestRequest(Method.GET); var request = new RestRequest(Method.GET);
request.AddHeader("token", Token); request.AddHeader("token", Token);
request.AddHeader("ClientId", SysConstSetService.ClientId);
request.AddHeader("OperationCode", Baseurl.Substring(Baseurl.LastIndexOf("/", StringComparison.Ordinal) + 1));
IRestResponse response = client.Execute(request); IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content); Console.WriteLine(response.Content);
return response.Content; return response.Content;
@ -1409,7 +1411,7 @@ namespace BLL
var request = new RestRequest(Method.POST); var request = new RestRequest(Method.POST);
request.AddHeader("token", Token); request.AddHeader("token", Token);
request.AddHeader("ClientId", SysConstSetService.ClientId); request.AddHeader("ClientId", SysConstSetService.ClientId);
request.AddHeader("OperationCode", Baseurl.Substring(Baseurl.LastIndexOf("/", StringComparison.Ordinal)+1)); request.AddHeader("OperationCode", Baseurl.Substring(Baseurl.LastIndexOf("/", StringComparison.Ordinal) + 1));
if (!string.IsNullOrEmpty(JsonBody)) if (!string.IsNullOrEmpty(JsonBody))
{ {
request.AddJsonBody(JsonBody); request.AddJsonBody(JsonBody);

View File

@ -38,7 +38,8 @@ namespace BLL
WorkContent = newtable.WorkContent, WorkContent = newtable.WorkContent,
Remarks = newtable.Remarks, Remarks = newtable.Remarks,
IsTemplate = newtable.IsTemplate, IsTemplate = newtable.IsTemplate,
ParentId = newtable.ParentId ParentId = newtable.ParentId,
SerialNumber = newtable.SerialNumber
}; };
Funs.DB.PHTGL_Quantity.InsertOnSubmit(table); Funs.DB.PHTGL_Quantity.InsertOnSubmit(table);
Funs.DB.SubmitChanges(); Funs.DB.SubmitChanges();
@ -68,7 +69,8 @@ namespace BLL
WorkContent = newtable.WorkContent, WorkContent = newtable.WorkContent,
Remarks = newtable.Remarks, Remarks = newtable.Remarks,
IsTemplate = false, IsTemplate = false,
ParentId = parentId ParentId = parentId,
SerialNumber = newtable.SerialNumber
}; };
Funs.DB.PHTGL_Quantity.InsertOnSubmit(table); Funs.DB.PHTGL_Quantity.InsertOnSubmit(table);
Funs.DB.SubmitChanges(); Funs.DB.SubmitChanges();
@ -96,6 +98,7 @@ namespace BLL
table.Remarks = newtable.Remarks; table.Remarks = newtable.Remarks;
table.IsTemplate = newtable.IsTemplate; table.IsTemplate = newtable.IsTemplate;
table.ParentId = newtable.ParentId; table.ParentId = newtable.ParentId;
table.SerialNumber = newtable.SerialNumber;
Funs.DB.SubmitChanges(); Funs.DB.SubmitChanges();
} }
} }
@ -278,34 +281,37 @@ namespace BLL
public static List<PHTGL_Quantity> GetPHTGL_QuantityByModle(PHTGL_Quantity table) public static List<PHTGL_Quantity> GetPHTGL_QuantityByModle(PHTGL_Quantity table)
{ {
var q = from x in Funs.DB.PHTGL_Quantity var q = from x in Funs.DB.PHTGL_Quantity
where where
(string.IsNullOrEmpty(table.Id) || x.Id.Contains(table.Id)) && (string.IsNullOrEmpty(table.Id) || x.Id.Contains(table.Id)) &&
(string.IsNullOrEmpty(table.Major) || x.Major.Contains(table.Major)) && (string.IsNullOrEmpty(table.Major) || x.Major.Contains(table.Major)) &&
(string.IsNullOrEmpty(table.SubProject) || x.SubProject.Contains(table.SubProject)) && (string.IsNullOrEmpty(table.SubProject) || x.SubProject.Contains(table.SubProject)) &&
(string.IsNullOrEmpty(table.SubItemProject) || (string.IsNullOrEmpty(table.SubItemProject) ||
x.SubItemProject.Contains(table.SubItemProject)) && x.SubItemProject.Contains(table.SubItemProject)) &&
(string.IsNullOrEmpty(table.ProjectCode) || x.ProjectCode.Contains(table.ProjectCode)) && (string.IsNullOrEmpty(table.ProjectCode) || x.ProjectCode.Contains(table.ProjectCode)) &&
(string.IsNullOrEmpty(table.ProjectName) || x.ProjectName.Contains(table.ProjectName)) && (string.IsNullOrEmpty(table.ProjectName) || x.ProjectName.Contains(table.ProjectName)) &&
(string.IsNullOrEmpty(table.ProjectDescription) || (string.IsNullOrEmpty(table.ProjectDescription) ||
x.ProjectDescription.Contains(table.ProjectDescription)) && x.ProjectDescription.Contains(table.ProjectDescription)) &&
(string.IsNullOrEmpty(table.UnitOfMeasurement) || (string.IsNullOrEmpty(table.UnitOfMeasurement) ||
x.UnitOfMeasurement.Contains(table.UnitOfMeasurement)) && x.UnitOfMeasurement.Contains(table.UnitOfMeasurement)) &&
(string.IsNullOrEmpty(table.Quantity) || x.Quantity.Contains(table.Quantity)) && (string.IsNullOrEmpty(table.Quantity) || x.Quantity.Contains(table.Quantity)) &&
(string.IsNullOrEmpty(table.TotalCostFixedComprehensiveUnitPrice) || (string.IsNullOrEmpty(table.TotalCostFixedComprehensiveUnitPrice) ||
x.TotalCostFixedComprehensiveUnitPrice.Contains(table.TotalCostFixedComprehensiveUnitPrice)) && x.TotalCostFixedComprehensiveUnitPrice.Contains(table.TotalCostFixedComprehensiveUnitPrice)) &&
(string.IsNullOrEmpty(table.MainMaterialCost) || (string.IsNullOrEmpty(table.MainMaterialCost) ||
x.MainMaterialCost.Contains(table.MainMaterialCost)) && x.MainMaterialCost.Contains(table.MainMaterialCost)) &&
(string.IsNullOrEmpty(table.TotalPrice) || x.TotalPrice.Contains(table.TotalPrice)) && (string.IsNullOrEmpty(table.TotalPrice) || x.TotalPrice.Contains(table.TotalPrice)) &&
(string.IsNullOrEmpty(table.CalculationRule) || (string.IsNullOrEmpty(table.CalculationRule) ||
x.CalculationRule.Contains(table.CalculationRule)) && x.CalculationRule.Contains(table.CalculationRule)) &&
(string.IsNullOrEmpty(table.WorkContent) || x.WorkContent.Contains(table.WorkContent)) && (string.IsNullOrEmpty(table.WorkContent) || x.WorkContent.Contains(table.WorkContent)) &&
(string.IsNullOrEmpty(table.Remarks) || x.Remarks.Contains(table.Remarks)) && (string.IsNullOrEmpty(table.Remarks) || x.Remarks.Contains(table.Remarks)) &&
x.IsTemplate == table.IsTemplate && x.IsTemplate == table.IsTemplate &&
(string.IsNullOrEmpty(table.ParentId) || x.ParentId.Contains(table.ParentId)) (string.IsNullOrEmpty(table.ParentId) || x.ParentId.Contains(table.ParentId))
select x
; select new { x ,IntSerialNumber= Funs.GetNewIntOrZero(x.SerialNumber.Replace(".", ""))
}
return q.ToList(); ;
var model = q.ToList().OrderBy(x => x.IntSerialNumber).Select(itemx => itemx.x).ToList();
return model;
} }
/// 获取分页列表 /// 获取分页列表
@ -324,6 +330,7 @@ namespace BLL
select new select new
{ {
x.Id, x.Id,
x.SerialNumber,
x.Major, x.Major,
x.SubProject, x.SubProject,
x.SubItemProject, x.SubItemProject,
@ -348,7 +355,7 @@ namespace BLL
public class PHTGL_QuantityDtoIn public class PHTGL_QuantityDtoIn
{ {
[ExcelColumnIndex("A")] public string Major { get; set; } [ExcelColumnIndex("A")] public string SerialNumber { get; set; }
[ExcelColumnIndex("B")] public string SubProject { get; set; } [ExcelColumnIndex("B")] public string SubProject { get; set; }
[ExcelColumnIndex("C")] public string SubItemProject { get; set; } [ExcelColumnIndex("C")] public string SubItemProject { get; set; }

View File

@ -62,7 +62,7 @@
<f:RenderField Width="120px" ColumnID="ContactPhone" DataField="ContactPhone" FieldType="String" <f:RenderField Width="120px" ColumnID="ContactPhone" DataField="ContactPhone" FieldType="String"
HeaderText="联系人电话" HeaderTextAlign="Center" TextAlign="Center"> HeaderText="联系人电话" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="120px" ColumnID="PersonName" DataField="PersonName" FieldType="String" <f:RenderField Width="120px" ColumnID="ReceiveMan" DataField="ReceiveMan" FieldType="String"
HeaderText="接收人" HeaderTextAlign="Center" TextAlign="Center"> HeaderText="接收人" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField> </f:RenderField>
<f:RenderField Width="120px" ColumnID="ReceiveDate" DataField="ReceiveDate" FieldType="String" <f:RenderField Width="120px" ColumnID="ReceiveDate" DataField="ReceiveDate" FieldType="String"

View File

@ -14,6 +14,10 @@
<Toolbars> <Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Right"> <f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Right">
<Items> <Items>
<f:Button ID="btnAttachUrl" Text="详情" ToolTip="附件上传及查看" Icon="TableCell" runat="server"
OnClick="btnAttachUrl_Click" ValidateForms="SimpleForm1">
</f:Button>
<f:ToolbarFill runat="server"/>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpForm" OnClick="btnSave_Click"> <f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpForm" OnClick="btnSave_Click">
</f:Button> </f:Button>
</Items> </Items>
@ -185,6 +189,10 @@
EnableMaximize="true" Target="Top" EnableResize="false" runat="server" EnableMaximize="true" Target="Top" EnableResize="false" runat="server"
IsModal="true" Width="1200px" Height="620px" OnClose="Window1_Close"> IsModal="true" Width="1200px" Height="620px" OnClose="Window1_Close">
</f:Window> </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>
</form> </form>
</body> </body>
</html> </html>

View File

@ -1,4 +1,5 @@
using BLL; using BLL;
using FineUIPro.Web.HSSE.Meeting;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
@ -22,7 +23,18 @@ namespace FineUIPro.Web.HJGL.WeldingManage
ViewState["PipelineId"] = value; ViewState["PipelineId"] = value;
} }
} }
public string WeldJointId
{
get
{
return (string)ViewState["WeldJointId"];
}
set
{
ViewState["WeldJointId"] = value;
}
}
protected void Page_Load(object sender, EventArgs e) protected void Page_Load(object sender, EventArgs e)
{ {
@ -52,7 +64,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
this.drpDetectionTypeId.DataTextField = "DetectionTypeCode"; this.drpDetectionTypeId.DataTextField = "DetectionTypeCode";
//Funs.FineUIPleaseSelect(this.drpDetectionTypeId); //Funs.FineUIPleaseSelect(this.drpDetectionTypeId);
string flag = Request.Params["flag"]; string flag = Request.Params["flag"];
string weldJointId = Request.Params["WeldJointId"]; WeldJointId = Request.Params["WeldJointId"];
string isTwoJoint = Request.Params["IsTwoJoint"]; string isTwoJoint = Request.Params["IsTwoJoint"];
@ -66,9 +78,9 @@ namespace FineUIPro.Web.HJGL.WeldingManage
GroupPanel2.Hidden = true; GroupPanel2.Hidden = true;
IsReadOnly(false); IsReadOnly(false);
} }
if (!string.IsNullOrEmpty(weldJointId)) if (!string.IsNullOrEmpty(WeldJointId))
{ {
Model.HJGL_WeldJoint joint = BLL.WeldJointService.GetWeldJointByWeldJointId(weldJointId); Model.HJGL_WeldJoint joint = BLL.WeldJointService.GetWeldJointByWeldJointId(WeldJointId);
Model.WPQ_WPQList list = BLL.WPQListServiceService.GetWPQById(joint.WPQId); Model.WPQ_WPQList list = BLL.WPQListServiceService.GetWPQById(joint.WPQId);
this.txtWpqId.Text = joint.WPQId; this.txtWpqId.Text = joint.WPQId;
@ -82,7 +94,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
} }
if (Request.Params["Type"] == "add") //插入焊口 if (Request.Params["Type"] == "add") //插入焊口
{ {
var baseWeldJoints = BLL.WeldJointService.GetBaseWeldJointsByWeldJointId(weldJointId); var baseWeldJoints = BLL.WeldJointService.GetBaseWeldJointsByWeldJointId(WeldJointId);
this.txtWeldJointCode.Text = joint.WeldJointCode + "Z-" + (baseWeldJoints.Count + 1).ToString(); this.txtWeldJointCode.Text = joint.WeldJointCode + "Z-" + (baseWeldJoints.Count + 1).ToString();
} }
else else
@ -287,7 +299,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
weldJointCode = this.txtWeldJointCode.Text; weldJointCode = this.txtWeldJointCode.Text;
} }
if (BLL.WeldJointService.IsExistWeldJointCode(weldJointCode, this.PipelineId, Request.Params["WeldJointId"])) if (BLL.WeldJointService.IsExistWeldJointCode(weldJointCode, this.PipelineId, WeldJointId))
{ {
Alert.ShowInTop("该管线焊口已存在!", MessageBoxIcon.Warning); Alert.ShowInTop("该管线焊口已存在!", MessageBoxIcon.Warning);
return; return;
@ -318,7 +330,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
return; return;
} }
Model.HJGL_WeldJoint joint = new Model.HJGL_WeldJoint(); Model.HJGL_WeldJoint joint = new Model.HJGL_WeldJoint();
string weldJointId = Request.Params["WeldJointId"]; string weldJointId = WeldJointId;
joint.PipelineId = this.PipelineId; joint.PipelineId = this.PipelineId;
joint.PipelineCode = txtPipelineCode.Text.Trim(); joint.PipelineCode = txtPipelineCode.Text.Trim();
joint.ProjectId = this.CurrUser.LoginProjectId; joint.ProjectId = this.CurrUser.LoginProjectId;
@ -435,6 +447,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
string newId = SQLHelper.GetNewID(typeof(Model.HJGL_WeldJoint)); string newId = SQLHelper.GetNewID(typeof(Model.HJGL_WeldJoint));
joint.WeldJointId = newId; joint.WeldJointId = newId;
joint.BaseWeldJointId = weldJointId; joint.BaseWeldJointId = weldJointId;
WeldJointId = joint.WeldJointId;
BLL.WeldJointService.AddWeldJoint(joint); BLL.WeldJointService.AddWeldJoint(joint);
} }
} }
@ -442,6 +455,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
{ {
string newId = SQLHelper.GetNewID(typeof(Model.HJGL_WeldJoint)); string newId = SQLHelper.GetNewID(typeof(Model.HJGL_WeldJoint));
joint.WeldJointId = newId; joint.WeldJointId = newId;
WeldJointId = joint.WeldJointId;
if (Request.Params["IsTwoJoint"] == "1") if (Request.Params["IsTwoJoint"] == "1")
{ {
joint.IsTwoJoint = true; joint.IsTwoJoint = true;
@ -854,5 +868,14 @@ namespace FineUIPro.Web.HJGL.WeldingManage
// } // }
// } // }
//} //}
protected void btnAttachUrl_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.WeldJointId))
{
SaveData();
}
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/WeldJoint&menuId={1}", WeldJointId, BLL.Const.HJGL_WeldJointMenuId)));
}
} }
} }

View File

@ -50,6 +50,15 @@ namespace FineUIPro.Web.HJGL.WeldingManage
/// </remarks> /// </remarks>
protected global::FineUIPro.Toolbar Toolbar1; protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttachUrl;
/// <summary> /// <summary>
/// btnSave 控件。 /// btnSave 控件。
/// </summary> /// </summary>
@ -382,5 +391,14 @@ namespace FineUIPro.Web.HJGL.WeldingManage
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks> /// </remarks>
protected global::FineUIPro.Window Window1; protected global::FineUIPro.Window Window1;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
} }
} }

View File

@ -34,7 +34,7 @@
<Items> <Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true" runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id" ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="SerialNumber"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableTextSelection="true" AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" EnableTextSelection="true"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick"> EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick">
@ -66,7 +66,9 @@
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label> <asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate> </ItemTemplate>
</f:TemplateField> </f:TemplateField>
<f:RenderField Width="150px" ColumnID="SerialNumber" DataField="SerialNumber" SortField="SerialNumber"
FieldType="String" HeaderText="序号" TextAlign="Left" HeaderTextAlign="Center" >
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Major" DataField="Major" SortField="Major" Hidden="True" <f:RenderField Width="150px" ColumnID="Major" DataField="Major" SortField="Major" Hidden="True"
FieldType="String" HeaderText="专业" TextAlign="Left" HeaderTextAlign="Center" > FieldType="String" HeaderText="专业" TextAlign="Left" HeaderTextAlign="Center" >
</f:RenderField> </f:RenderField>

View File

@ -11708,7 +11708,7 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveIdea", DbType="NVarChar(2000)")] [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveIdea", DbType="NVarChar(200)")]
public string ApproveIdea public string ApproveIdea
{ {
get get
@ -151035,7 +151035,7 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttentPerson", DbType="NVarChar(3000)")] [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttentPerson", DbType="NVarChar(500)")]
public string AttentPerson public string AttentPerson
{ {
get get
@ -182430,7 +182430,7 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackageEstimate", DbType="Decimal(18,3)")] [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackageEstimate", DbType="Decimal(18,2)")]
public System.Nullable<decimal> WorkPackageEstimate public System.Nullable<decimal> WorkPackageEstimate
{ {
get get
@ -182899,6 +182899,8 @@ namespace Model
private string _ParentId; private string _ParentId;
private string _SerialNumber;
#region #region
partial void OnLoaded(); partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action); partial void OnValidate(System.Data.Linq.ChangeAction action);
@ -182937,6 +182939,8 @@ namespace Model
partial void OnIsTemplateChanged(); partial void OnIsTemplateChanged();
partial void OnParentIdChanging(string value); partial void OnParentIdChanging(string value);
partial void OnParentIdChanged(); partial void OnParentIdChanged();
partial void OnSerialNumberChanging(string value);
partial void OnSerialNumberChanged();
#endregion #endregion
public PHTGL_Quantity() public PHTGL_Quantity()
@ -183284,6 +183288,26 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SerialNumber", DbType="NVarChar(50)")]
public string SerialNumber
{
get
{
return this._SerialNumber;
}
set
{
if ((this._SerialNumber != value))
{
this.OnSerialNumberChanging(value);
this.SendPropertyChanging();
this._SerialNumber = value;
this.SendPropertyChanged("SerialNumber");
this.OnSerialNumberChanged();
}
}
}
public event PropertyChangingEventHandler PropertyChanging; public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged; public event PropertyChangedEventHandler PropertyChanged;
@ -292128,7 +292152,7 @@ namespace Model
} }
} }
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(50)")] [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(81)")]
public string Name public string Name
{ {
get get