Exemplo n.º 1
0
 public static void UpdateExportContract(ShippingExportDC contract)
 {
     using (BasicChannel channel = new BasicChannel())
     {
         channel.UpdateExportContract(contract);
     }
 }
Exemplo n.º 2
0
        static public Guid OpenExportProcess(Guid tenantId, ShippingExportDC dc)
        {
            if (GetExportProcessbyContractId(dc.Id) != null)
            {
                return(Guid.Empty);
            }
            Dictionary <string, object> parameters = new Dictionary <string, object>();

            parameters.Add("TenantId", tenantId);
            parameters.Add("ObjectId", dc.Id);
            parameters.Add("Number", dc.Number);
            string textUpn = AuthenticationLogic.GetUpnByUserId((Guid)dc.Creator);

            parameters.Add("Creator", textUpn);

            WorkflowDefinition workflowDef = WorkflowLogic.GetWorkflowDefinition(tenantId, (int)ProcessTypes.ShippingExport);

            parameters.Add("InternalWorkflowType", (int)ProcessTypes.ShippingExport);
            System.Xml.XmlReader xomlReader  = System.Xml.XmlReader.Create(new StringReader(workflowDef.Xoml));
            System.Xml.XmlReader rulesReader = string.IsNullOrEmpty(workflowDef.Rules)?null:System.Xml.XmlReader.Create(new StringReader(workflowDef.Rules));

            WorkflowInstance workflowInstance = Runtime.CreateWorkflow(xomlReader, rulesReader, parameters);

            workflowInstance.Start();
            RunWorkflowInScheduler(workflowInstance.InstanceId);
            return(workflowInstance.InstanceId);
        }
Exemplo n.º 3
0
 public static ShippingExportDC[] FindExportContractList(Guid tenantId, string numberToMatch, int?status, Guid?owner)
 {
     using (ExtensibleObjectContext context = new ExtensibleObjectContext(Constants.Database.TenantData))
     {
         List <ShippingExportDC> dcList      = new List <ShippingExportDC>();
         StringBuilder           queryClause = new StringBuilder();
         queryClause.Append(string.Format("TenantId='{0}'", tenantId.ToString()));
         queryClause.Append(string.Format(" AND Number LIKE '{0}%'", numberToMatch == null?string.Empty:numberToMatch.Trim().Replace("'", "''")));
         if (status != null)
         {
             queryClause.Append(string.Format(" AND Status = {0}", (int)status));
         }
         if (owner != null)
         {
             queryClause.Append(string.Format(" AND Creator = '{0}'", ((Guid)owner).ToString()));
         }
         queryClause.Append(" ORDER BY Number");
         EntityQuery <ShippingExportContract> query = context.GetQuery <ShippingExportContract>(queryClause.ToString());
         foreach (ShippingExportContract exportContract in query)
         {
             ShippingExportDC dc = new ShippingExportDC();
             EntityExchanger.WriteEntityToDC(exportContract, dc);
             dcList.Add(dc);
         }
         return(dcList.ToArray());
     }
 }
Exemplo n.º 4
0
 static public Guid OpenExportProcess(ShippingExportDC dc)
 {
     using (BasicChannel channel = new BasicChannel())
     {
         return(channel.OpenExportProcess(dc));
     }
 }
Exemplo n.º 5
0
        public static Guid CreateExportContract(Guid tenantId, string number, Guid creator)
        {
            ShippingExportDC contractDC = null;

            using (ExtensibleObjectContext context = new ExtensibleObjectContext(Constants.Database.TenantData))
            {
                KeyValuePair <string, object>        keyValueTenantId = new KeyValuePair <string, object>("TenantId", tenantId);
                KeyValuePair <string, object>        keyValueNumber   = new KeyValuePair <string, object>("Number", number);
                EntityQuery <ShippingExportContract> query            = context.GetQuery <ShippingExportContract>(keyValueTenantId, keyValueNumber);
                if (query.GetCount() > 0)
                {
                    throw new ExportContractExcepiton(string.Format("The export contract with number {0} has already existed!"));
                }

                contractDC            = new ShippingExportDC();
                contractDC.Id         = Guid.NewGuid();
                contractDC.TenantId   = tenantId;
                contractDC.Number     = number;
                contractDC.CreateDate = DateTime.Now;
                contractDC.Creator    = creator;
                ShippingExportContract contract = new ShippingExportContract();
                EntityExchanger.WriteDCToEntity(contractDC, contract);
                context.AddObject(contract);
                context.SaveAllChanges();
            }
            ExportProcessLogic.OpenExportProcess(tenantId, contractDC);
            return(contractDC.Id);
        }
Exemplo n.º 6
0
 public static ShippingExportDC GetExportContractById(Guid id)
 {
     using (ExtensibleObjectContext context = new ExtensibleObjectContext(Constants.Database.TenantData))
     {
         KeyValuePair <string, object>[] keyValue = new KeyValuePair <string, object>[] { new KeyValuePair <string, object>("Id", id) };
         EntityKey key = context.CreateKey(typeof(ExtensibleObjectContext), keyValue);
         ShippingExportContract exportContract = context.GetObjectByKey <ShippingExportContract>(key);
         ShippingExportDC       dc             = new ShippingExportDC();
         EntityExchanger.WriteEntityToDC(exportContract, dc);
         return(dc);
     }
 }
Exemplo n.º 7
0
 public static void UpdateExportContract(ShippingExportDC dc)
 {
     using (ExtensibleObjectContext context = new ExtensibleObjectContext(Constants.Database.TenantData))
     {
         string         entityDefName = ExtensibleDC.GetEntityClassName(dc.GetType());
         EntityMetadata metadata      = DataModelWorkspace.Current.GetEntityMetadata(entityDefName);
         KeyValuePair <string, object>[] keyValues = new KeyValuePair <string, object>[] { new KeyValuePair <string, object>("Id", dc.Id) };
         EntityKey key = context.CreateKey(typeof(ShippingExportContract), keyValues);
         ShippingExportContract exportContract = context.GetObjectByKey <ShippingExportContract>(key);
         EntityExchanger.WriteDCToEntity(dc, exportContract);
         context.SaveAllChanges();
     }
 }
Exemplo n.º 8
0
 public static ShippingExportDC GetExportContractByNumber(Guid tenantId, string number)
 {
     using (ExtensibleObjectContext context = new ExtensibleObjectContext(Constants.Database.TenantData))
     {
         KeyValuePair <string, object>        keyValueTenantId = new KeyValuePair <string, object>("TenantId", tenantId);
         KeyValuePair <string, object>        keyValueNumber   = new KeyValuePair <string, object>("Number", number);
         EntityQuery <ShippingExportContract> query            = context.GetQuery <ShippingExportContract>(keyValueTenantId, keyValueNumber);
         foreach (ShippingExportContract exportContract in query)
         {
             ShippingExportDC dc = new ShippingExportDC();
             EntityExchanger.WriteEntityToDC(exportContract, dc);
             return(dc);
         }
         return(null);
     }
 }
Exemplo n.º 9
0
 public void UpdateExportContract(ShippingExportDC contract)
 {
     if (RequestContext.Current.TenantId == Guid.Empty)
     {
         throw new ArgumentNullException("tenantId");
     }
     if (contract == null || contract.Id == Guid.Empty)
     {
         throw new ArgumentNullException("contract");
     }
     try
     {
         DataModelContext.Initialize(RequestContext.Current.TenantId);
         ExportLogic.UpdateExportContract(contract);
     }
     catch (Exception ex)
     {
         throw new ExportContractExcepiton(ex.Message, ex);
     }
     finally
     {
         DataModelContext.Clear();
     }
 }
Exemplo n.º 10
0
 public void UpdateExportContract(ShippingExportDC contract)
 {
     base.Channel.UpdateExportContract(contract);
 }
Exemplo n.º 11
0
 public Guid OpenExportProcess(ShippingExportDC dc)
 {
     return(base.Channel.OpenExportProcess(dc));
 }
Exemplo n.º 12
0
 public Guid OpenExportProcess(ShippingExportDC dc)
 {
     return(ExportProcessLogic.OpenExportProcess(RequestContext.Current.TenantId, dc));
 }