Exemplo n.º 1
0
        public HttpResponseMessage NextAllowedSupportStates(int id)
        {
            var work           = _IWkflowinstanceService.GetWkflowinstance(id);
            var currentStateId = work.CurrWkflowStatId;

            var supportRequestTypes = _IWkflowdefService.GetWkflowdefs().Find(p => p.Id == work.WkflowDefId).WkflowDefWkflowStats.Where(q => q.WkflowStat.Id == currentStateId).FirstOrDefault().WkflowDefWkflowStatWkflowStats.Select(r => new { id = r.WkflowStat.Id, Name = r.WkflowStat.Descript }).ToList();

            if (supportRequestTypes == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }

            return(Request.CreateResponse <object>(HttpStatusCode.OK, supportRequestTypes));
        }
Exemplo n.º 2
0
        public HttpResponseMessage GetWkflowInstance(int id)
        {
            var wkflowInstance = _IWkflowinstanceService.GetWkflowinstance(id);
            var result         = PlatformMappingHelper.Map <WkflowInstance, WkflowInstanceDTO>(wkflowInstance);

            if (result == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
            return(Request.CreateResponse <WkflowInstanceDTO>(HttpStatusCode.OK, result));
        }
Exemplo n.º 3
0
        public HttpResponseMessage detail(int id)
        {
            var document = _IWkflowinstanceService.GetWkflowinstance(id);

            var result = PlatformMappingHelper.Map <WkflowInstance, DPWorkflowDTO>(document);

            if (result == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
            return(Request.CreateResponse <DPWorkflowDTO>(HttpStatusCode.OK, result));
        }
Exemplo n.º 4
0
        public HttpResponseMessage detail(int id)
        {
            var uploadactivity = _IWkflowinstanceService.GetWkflowinstance(id);

            var result = PlatformMappingHelper.Map <WkflowInstance, BatchProcessingWorkflowDTO>(uploadactivity);

            var storageAccess    = _IPortsettingService.GetPortsettings().Where(p => p.PortId == 1 && p.Setting.Name == "StorageAccess").FirstOrDefault().PortSettingValues.FirstOrDefault().Value;
            var storageContainer = uploadactivity.WkflowInstanceDocs.FirstOrDefault().Doc.soStorageContainer;
            var versionData      = new VersionData();

            versionData.container  = storageContainer;
            versionData.accountKey = storageAccess;
            int imageType = 0;

            try
            {
                if (result.FileName.ToUpper().Contains(".PDF"))
                {
                    imageType = 1;
                    var pdfimage = BlobImage.GetImage(uploadactivity.WkflowInstanceDocs.FirstOrDefault().Doc.soStorageKey, versionData, imageType);
                    result.image = pdfimage[0];
                }
                else
                {
                    imageType      = 2;
                    result.preview = BlobImage.GetImage(uploadactivity.WkflowInstanceDocs.FirstOrDefault().Doc.soStorageKey, versionData, imageType);
                }
            }
            catch (Exception e)
            {
            }


            if (result == null)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
            return(Request.CreateResponse <BatchProcessingWorkflowDTO>(HttpStatusCode.OK, result));
        }
Exemplo n.º 5
0
        public HttpResponseMessage Update(SOWDTO requestInfo)
        {
            try
            {
                var SOWWorkflow =
                    _IWkflowdefService.GetWkflowdefs().Find(p => p.Code == "SOW");

                int userID = int.Parse(Request.Headers.GetValues("userId").FirstOrDefault());

                var CreatedstatusID = SOWWorkflow.WkflowDefWkflowStats.Where(p => p.WkflowStat.Code.Contains("Created")).FirstOrDefault().WkflowStatId;

                int?orgid;

                if (requestInfo.OrgId != null)
                {
                    orgid = requestInfo.OrgId;
                }
                else
                {
                    orgid = _IUserService.GetUser(userID).OrgUsers.Where(p => p.Type == null || p.Type.Contains("Primary")).FirstOrDefault().OrgId;
                }


                var org      = _IOrgService.GetOrg((int)orgid);
                int?ccuserid = org.OrgUsers.Where(p => p.Type == "CustomerCare").Count() > 0 ? (int?)org.OrgUsers.Where(p => p.Type == "CustomerCare").FirstOrDefault().UserId : null;

                var WKflow = _IWkflowinstanceService.GetWkflowinstance(requestInfo.WkflowInstanceId);

                var sowWkflow = new SowWkflow
                {
                    WkflowInstance    = WKflow,
                    ProjectName       = requestInfo.ProjectName,
                    Amend             = requestInfo.AmentId,
                    EffectiveDate     = DateTime.UtcNow,
                    NextReviewDate    = DateTime.UtcNow.AddMonths(6),
                    MonthlyCommitment = requestInfo.Commitment
                };
                if (requestInfo.RebateOverride)
                {
                    var reseller = org.OrgOrgs1.FirstOrDefault().Org.OrgReseller;
                    sowWkflow.SOWWkflowOrgResellerDiscOverrides.Add(new SOWWkflowOrgResellerDiscOverride {
                        Discount = requestInfo.ResellerRebate, EffectiveDate = DateTime.UtcNow, SowWkflow = sowWkflow, OrgReseller = reseller
                    });
                }

                foreach (var attrib in requestInfo.Attribs)
                {
                    //var newatt = new SowWklowSowAttribute() { SowAttributeId = attrib.Id, SowWkflow = sowWkflow };
                    //newatt.SowAttributeValueHists.Add(new SowAttributeValueHist() { SowWklowSowAttribute = newatt, EffectiveDate = DateTime.UtcNow, SowAttributeId = attrib.Id, Qty = attrib.Qty, UnitPrice = attrib.UnitPrice, ExtendedPrice = attrib.ExtendedPrice });
                    //sowWkflow.SowWklowSowAttributes.Add(newatt);

                    var newatt = new SowWklowSowAttribute()
                    {
                        SowAttributeId = attrib.Id, SowWkflow = sowWkflow
                    };
                    newatt.SowAttributeValueHists.Add(new SowAttributeValueHist()
                    {
                        SowWklowSowAttribute = newatt, EffectiveDate = DateTime.UtcNow, Qty = attrib.Qty, UnitPrice = attrib.UnitPrice, ExtendedPrice = attrib.ExtendedPrice
                    });
                    sowWkflow.SowWklowSowAttributes.Add(newatt);
                }

                foreach (var docSetup in requestInfo.DocSetups)
                {
                    sowWkflow.SowWkflowDocSetups.Add(new SowWkflowDocSetup()
                    {
                        SowWkflow = sowWkflow, NoIndexes = docSetup.NoIndexes, NoDataFields = docSetup.NoDataFields, SLA = docSetup.SLA, Volume = docSetup.CommitVolume, ListPrice = docSetup.UnitPrice
                    });
                }

                WKflow.SowWkflows.Add(sowWkflow);
                _IWkflowinstanceService.AddWkflowinstance(WKflow);
                return(Request.CreateResponse <bool>(HttpStatusCode.OK, true));
            }
            catch (Exception e)
            {
                throw new HttpResponseException(HttpStatusCode.NotFound);
            }
        }