...
Deck of Cards |
---|
|
Card |
---|
| Bloco de código |
---|
language | c# |
---|
title | Exemplo - Código |
---|
linenumbers | true |
---|
collapse | true |
---|
| using RM.Eai.TotvsMessage.Adapter;
using RM.Eai.TotvsMessage.IService;
using RM.Eai.TotvsMessage.Lib;
using RM.Lib;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace RM.Prj.TotvsMessage.Adapter.Projeto
{
/// <summary> |
/// Adapter Envio de Projeto |
[AdapterAttr("PROJECT", "2.000", TransactionDescription = "Project")] |
public class Project_Send_2000 : AdapterWebServiceBase |
{
protected override void DoInitializeAdapter() |
{
{
this.AdapterName = "PROJECT"; |
base.DoInitializeAdapter(); |
}
/// <param name="parms"></param> |
protected override EAITransformMessageResult DoTransformMessage(EAITransformMessageParam parms) |
{ EAITransformMessageResult result = new
{
EAITransformMessageResult result = new EAITransformMessageResult(null, null); |
Project_Model_V2_BusinessContent businessContentObj = new Project_Model_V2_BusinessContent(); | DataSet dsMPrj =
DataSet dsMPrj = ((DataSet)parms.ObjOriginal); | DataTable dtProject =
DataTable dtProject = dsMPrj.Tables["MPRJ"]; |
DataTable dtMPeriodo =
DataTable dtMPeriodo = dsMPrj.Tables["MPERIODO"]; | if
if (dtProject.Rows.Count != 1) |
throw new Exception
throw new RMSValidateException(Properties.Resources.sPrjValidacaoSendProject); | DataRow rowProject =
DataRow rowProject = dtProject.Rows[0]; |
businessContentObj.CompanyId = RMSConvert.ToString(rowProject["CODCOLIGADA"]); |
businessContentObj.BranchId = RMSConvert.ToString(rowProject["CODFILIAL"]); |
businessContentObj.CompanyInternalId = RMSConvert.ToString(rowProject["COMPANYINTERNALID"]); |
businessContentObj.InternalId = RMSConvert.ToString(rowProject["INTERNALID"]); |
businessContentObj.Code = RMSConvert.ToString(rowProject["CODPRJ"]); |
businessContentObj.Description = RMSConvert.ToString(rowProject["DESCRICAO"]); | if
if (rowProject["CODCCUSTO"] != DBNull.Value) |
businessContentObj.CostCenterCode = RMSConvert.ToString(rowProject["CODCCUSTO"]); | DataTable dtMprjStatusLog =
DataTable dtMprjStatusLog = dsMPrj.Tables["MPRJSTATUSLOG"]; | if
if (dtMprjStatusLog.Rows.Count > 0) |
{ DataRow rowDtStatusLog =
{
DataRow rowDtStatusLog = dtMprjStatusLog.Rows[0]; |
businessContentObj.RegisterDate = RMSConvert.ToDateTime(rowDtStatusLog["DATAMUDANCA"]); |
businessContentObj.StatusProject = RMSConvert.ToInt32(rowProject["POSICAO"]); |
} if
}
if (dtMPeriodo.Rows.Count > 0) |
{ DataRow rowMPeriodo =
{
DataRow rowMPeriodo = dtMPeriodo.Rows[0]; |
if
if (rowMPeriodo["DTINICIO"] != DBNull.Value) |
businessContentObj.BeginDate = RMSConvert.ToDateTime(rowMPeriodo["DTINICIO"]); |
if
if (rowMPeriodo["DTFIM"] != DBNull.Value) |
businessContentObj.FinalDate = RMSConvert.ToDateTime(rowMPeriodo["DTFIM"]);
}
if (rowProject["CNOPRJ"] != DBNull.Value)
businessContentObj.WorkCode = RMSConvert.ToString(rowProject["CNOPRJ"]).Replace(".", string.Empty).Replace("-", string.Empty).Replace("/", string.Empty);
if (rowProject["INDPRESTSRV"] != DBNull.Value && (RMSConvert.ToInt32(rowProject["INDPRESTSRV"]) != 0))
{
switch (RMSConvert.ToInt32(rowProject["INDPRESTSRV"]) | ; } return )
{
case 1:
businessContentObj.WorkId = 0;
break;
case 2:
businessContentObj.WorkId = 1;
break;
case 3:
businessContentObj.WorkId = 2;
break;
default:
break;
}
}
if (rowProject["CGCCFO"] != DBNull.Value)
businessContentObj.WorkGovernmentalId = RMSConvert.ToString(rowProject["CGCCFO"]).Replace(".", string.Empty).Replace("-", string.Empty).Replace("/", string.Empty);
if (rowProject["TPPRJ"] != DBNull.Value)
businessContentObj.WorkType = RMSConvert.ToString(rowProject["TPPRJ"]);
return base.DoTransformMessage(parms); |
}
protected override List<InfoTableDePara> DoGetInfoTableDePara() |
{ List<InfoTableDePara> tablesDePara = new
{
List<InfoTableDePara> tablesDePara = new List<InfoTableDePara>(); |
InfoTableDePara table = new
InfoTableDePara table = new InfoTableDePara("MPRJ", "PROJECT"); |
table.DescriptionName = "Projeto"; | InfoColumnDePara column = new
InfoColumnDePara column = new InfoColumnDePara(EAIConsts.ctINTERNALID, "CODCOLIGADA|IDPRJ", "MPRJ"); |
column.ForeignKeyDePara = false; |
column.ColumnCaptionCode = "CODPRJ"; |
column.ColumnCaption = Properties.Resources.sPrjCodPrj; |
table.ColumnsName.Add(column); | column = new
column = new InfoColumnDePara("CompanyInternalId", "CODCOLIGADA|CODFILIAL", "GFILIAL"); |
column.ForeignKeyDePara = true; |
column.ColumnCaptionCode = "CODCOLIGADA"; |
column.ColumnCaption = Properties.Resources.SPrjEmpProjeto; |
table.ColumnsName.Add(column); | column = new
column = new InfoColumnDePara("CostCenterInternalId", "CODCOLIGADA|CODCCUSTO", "GCCUSTO"); |
column.ForeignKeyDePara = true; |
column.ColumnCaptionCode = "CODCCUSTO"; |
column.ColumnCaption = Properties.Resources.SPrjCCustoProjeto; |
table.ColumnsName.Add(column); |
return tablesDePara; } }
return tablesDePara;
}
}
}
|
|
Card |
---|
| Bloco de código |
---|
language | c# |
---|
title | Model |
---|
linenumbers | true |
---|
collapse | true |
---|
| /// <summary>
/// Project Model
/// </summary>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(ElementName = "BusinessContent", IsNullable = false)]
[MessageContentTypeAttr("PROJECT", 2, MessageTypeEnum.tmBusinessMessage)]
public partial class Project_Model_V2_BusinessContent : EAIBusinessContentModelBase
{
/// <summary>
///
/// </summary>
public string CompanyId { get; set; }
/// <summary>
///
/// </summary>
public string BranchId { get; set; }
/// <summary>
///
/// </summary>
public string CompanyInternalId { get; set; }
/// <summary>
///
/// </summary>
public string ShortCode { get; set; }
/// <summary>
///
/// </summary>
public string Code { get; set; }
/// <summary>
///
/// </summary>
public string InternalId { get; set; }
/// <summary>
///
/// </summary>
public string Description { get; set; }
/// <summary>
///
/// </summary>
public string CostCenterCode { get; set; }
/// <summary>
///
/// </summary>
public string CostCenterInternalId { get; set; }
/// <summary>
///
/// </summary>
public DateTime RegisterDate { get; set; }
/// <summary>
///
/// </summary>
public DateTime BeginDate { get; set; }
/// <summary>
///
/// </summary>
public DateTime FinalDate { get; set; }
/// <summary>
///
/// </summary>
public int StatusProject { get; set; }
}
/// <summary>
///
/// </summary>
[System.SerializableAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(ElementName = "ReturnContent", IsNullable = false)]
[MessageContentTypeAttr("PROJECT", 2, MessageTypeEnum.tmResponseMessage)]
public partial class Project_Model_V2_ReturnContent : EAIReturnContentModelBase
{
} |
|
|
Dica gerar a model a partir do XML:
Image AddedDica gerar a classe a partir do XML: