예제 #1
0
        public JournalDTO ToDTO(JournalEntity journal)
        {
            JournalDTO jourDTO = new JournalDTO();

            jourDTO.ID             = journal.ID;
            jourDTO.UserID         = journal.UserID;
            jourDTO.JournalType    = journal.JournalType;
            jourDTO.InAmount       = journal.InAmount;
            jourDTO.OutAmount      = journal.OutAmount;
            jourDTO.BalanceAmount  = journal.BalanceAmount;
            jourDTO.JournalDate    = journal.JournalDate;
            jourDTO.Journal01      = journal.Journal01;
            jourDTO.Journal02      = journal.Journal02;
            jourDTO.Journal03      = journal.Journal03;
            jourDTO.Journal04      = journal.Journal04;
            jourDTO.Journal05      = journal.Journal05;
            jourDTO.Journal06      = journal.Journal06;
            jourDTO.Journal07      = journal.Journal07;
            jourDTO.UserCode       = journal.Users.UserCode;
            jourDTO.TrueName       = journal.Users.TrueName;
            jourDTO.CurrencyName   = journal.Currencys.CurrencyName;
            jourDTO.CurrencyNameEn = journal.Currencys.CurrencyNameEn;

            return(jourDTO);
        }
예제 #2
0
        public void Execute(ActionExecutionContext context)
        {
            var proxy = ServiceFactory.CreateMoneyService();

            proxy.GetJournalCompleted += (sender, args) =>
            {
                if (args.Error != null)
                {
                    Caliburn.Micro.Execute.OnUIThread(
                        () => Completed(this, new ResultCompletionEventArgs
                    {
                        Error = args.Error
                    }));
                }
                else
                {
                    Transaction = args.Result;
                    Caliburn.Micro.Execute.OnUIThread(
                        () => Completed(this, new ResultCompletionEventArgs()));
                }

                EventAggregator.Publish(new AsyncOperationCompleteMessage());
            };
            proxy.GetJournalAsync(accountId, transactionId);
            EventAggregator.Publish(new AsyncOperationStartedMessage {
                OperationName = "Downloading posting #" + transactionId
            });
        }
예제 #3
0
        public JournalDTO ToDTO(JournalEntity entity)
        {
            JournalDTO dto = new JournalDTO();

            dto.Amount                 = entity.Amount;
            dto.CreateTime             = entity.CreateTime;
            dto.Description            = entity.Description;
            dto.Id                     = entity.Id;
            dto.InIntegral             = entity.InIntegral;
            dto.Integral               = entity.Integral;
            dto.IntegralTypeId         = entity.IntegralTypeId;
            dto.JournalTypeId          = entity.JournalTypeId;
            dto.JournalTypeName        = entity.JournalType.Name;
            dto.OutIntegral            = entity.OutIntegral;
            dto.Tip                    = entity.Tip;
            dto.FromPlatformUserId     = entity.FormPlatformUserId;
            dto.FromPlatformUserMobile = entity.FormPlatformUser.Mobile;
            dto.ToPlatformUserId       = entity.ToPlatformUserId;
            dto.ToPlatformUserMobile   = entity.ToPlatformUser.Mobile;
            dto.IntegralTypeName       = entity.IntegralType.Name;
            dto.ToIntegralTypeName     = entity.ToIntegralType.Name;
            dto.Journal01              = entity.Journal01;
            dto.PlatformUserId         = entity.PlatformUserId;
            dto.PlatformUserMobile     = entity.PlatformUser.Mobile;
            dto.ToPlatformUserCode     = entity.ToPlatformUser.Code;
            dto.FormPlatformUserCode   = entity.FormPlatformUser.Code;
            return(dto);
        }
예제 #4
0
        public async Task DeleteJournalAsync(int journalId)
        {
            JournalDTO journal = await service.GetByIdAsync(journalId);

            service.Delete(journal);
            await service.SaveChangesAsync();
        }
예제 #5
0
        public JournalDTO getJournal(int index = 0)
        {
            //var result = repo.List(w => (id  == 0 ||w.id ==id)).OrderByDescending(r=>r.index).FirstOrDefault();//如果没有First()前端收到的JSON是数组形式[]
            var result = jPo.List(w => (index == 0 || w.index == index)).OrderByDescending(r => r.index).FirstOrDefault();
            var dto    = new JournalDTO();

            if (result == null)
            {
                return(dto);
            }
            var like = lPo.List(l => l.Jornal_Id == result.index).ToList();

            //var like = lPo.List(l => l.Jornal_Id>0).ToList();

            dto.id          = result.id;
            dto.like_id     = like.Where(r => r.Member_Id == 1).Select(r => r.Id).FirstOrDefault();//这个id实际上是点赞用的ID
            dto.image       = result.image;
            dto.content     = result.content;
            dto.index       = result.index.ConvertToNotNull();
            dto.pubdate     = result.pubdate.ConvertToString();
            dto.title       = result.title;
            dto.type        = result.type;
            dto.like_status = like.Count(r => r.Member_Id == 1);
            dto.fav_nums    = like.Count();
            return(dto);
        }
예제 #6
0
        public async Task UpdateJournalAsync(EditViewModel viewModel)
        {
            JournalDTOBuilderData builderData    = new JournalDTOBuilderData(viewModel);
            JournalDTO            updatedJournal = dtoFactory.CreateDTO <JournalDTOBuilderData, JournalDTO>(builderData);

            service.UpdateYear(updatedJournal);
            await service.SaveChangesAsync();
        }
예제 #7
0
 public void Add(JournalDTO DTO)
 {
     using (var container = new InventoryContainer())
     {
         AccJournalEntry gur = new AccJournalEntry();
         container.AccJournalEntries.AddObject((AccJournalEntry)DTOMapper.DTOObjectConverter(DTO, gur));
         container.SaveChanges();
     }
 }
예제 #8
0
        public async Task <int> CreateJournalAsync(CreateViewModel viewModel)
        {
            JournalDTOBuilderData builderData = new JournalDTOBuilderData(viewModel);
            JournalDTO            newJournal  = dtoFactory.CreateDTO <JournalDTOBuilderData, JournalDTO>(builderData);

            service.Create(newJournal);
            await service.SaveChangesAsync();

            return(newJournal.Id);
        }
예제 #9
0
        public async Task CreateWorkDayAsync(WorkDaysCreateViewModel viewModel)
        {
            JournalDTO journal = await service.GetByIdAsync(viewModel.JournalId);

            WorkDayDTOBuilderData builderData = new WorkDayDTOBuilderData(viewModel);
            WorkDayDTO            newWorkDay  = dtoFactory.CreateDTO <WorkDayDTOBuilderData, WorkDayDTO>(builderData);

            journal.WorkDays.Add(newWorkDay);
            await service.SaveChangesAsync();
        }
예제 #10
0
        public void ShowContextMenu(IViewItem viewItem, Point popupLocation)
        {
            if (viewItem == null)
            {
                viewItem = new JournalDTO();
            }

            var contextMenu = _viewItemContextMenuFactory.CreateFor(viewItem, this);

            contextMenu.Show(_view, popupLocation);
        }
예제 #11
0
        public async Task <DeleteViewModel> GetDeleteJournalViewModelAsync(int journalId)
        {
            JournalDTO journal = await service.GetByIdAsync(journalId);

            if (journal == null)
            {
                return(null);
            }
            DeleteViewData  viewModelData = new DeleteViewData(journal);
            DeleteViewModel viewModel     = viewFactory.CreateView <DeleteViewData, DeleteViewModel>(viewModelData);

            return(viewModel);
        }
예제 #12
0
        // edit for journal update page
        public void Edit_JournalUpdate(JournalDTO DTO)
        {
            using (var container = new InventoryContainer())
            {
                var Comp = new AccJournalEntry();
                Comp = container.AccJournalEntries.FirstOrDefault(o => o.JournalId.Equals(DTO.JournalId));

                Comp.JournalId         = DTO.JournalId;
                Comp.PostLeadgerStatus = DTO.PostLeadgerStatus;
                Comp = (AccJournalEntry)DTOMapper.DTOObjectConverter(DTO, Comp);
                container.SaveChanges();
            }
        }
예제 #13
0
        // edit for journal update page
        public void Edit_Journal_Due_Payment(JournalDTO DTO)
        {
            using (var container = new InventoryContainer())
            {
                var Comp = new AccJournalEntry();
                Comp = container.AccJournalEntries.FirstOrDefault(o => o.JournalId.Equals(DTO.JournalId));

                Comp.JournalId = DTO.JournalId;
                Comp.CRAmount  = DTO.CRAmount;
                Comp           = (AccJournalEntry)DTOMapper.DTOObjectConverter(DTO, Comp);
                container.SaveChanges();
            }
        }
예제 #14
0
        public async Task <DetailsViewModel> GetJournalDetailsViewModelAsync(int journalId)
        {
            JournalDTO journal = await service.GetByIdAsyncWithMentor(journalId);

            if (journal == null)
            {
                return(null);
            }
            var viewModelData          = new DetailsViewData(journal);
            DetailsViewModel viewModel = viewFactory.CreateView <DetailsViewData, DetailsViewModel>(viewModelData);

            return(viewModel);
        }
예제 #15
0
        public async Task <FillViewModel> GetFillViewModelAsync(int journalId)
        {
            JournalDTO journal = await service.GetByIdAsyncWithWorkDaysAndMentor(journalId);

            if (journal == null)
            {
                return(null);
            }
            var           viewModelData = new FillViewData(journal);
            FillViewModel viewModel     = viewFactory.CreateView <FillViewData, FillViewModel>(viewModelData);

            return(viewModel);
        }
예제 #16
0
        public async Task <EditViewModel> GetEditJournalViewModelAsync(int journalId)
        {
            JournalDTO journal = await service.GetByIdAsyncWithMentor(journalId);

            if (journal == null)
            {
                return(null);
            }

            EditViewData  viewModelData = new EditViewData(journal);
            EditViewModel viewModel     = viewFactory.CreateView <EditViewData, EditViewModel>(viewModelData);

            return(viewModel);
        }
예제 #17
0
        public JournalDTO ToDTO(JournalEntity journal)
        {
            JournalDTO jourDTO = new JournalDTO();

            jourDTO.Id                     = journal.Id;
            jourDTO.CreateTime             = journal.CreateTime;
            jourDTO.HolderId               = journal.HolderId;
            jourDTO.HolderName             = journal.Holder.Name;
            jourDTO.JournalTypeId          = journal.JournalTypeId;
            jourDTO.JournalTypeName        = journal.JournalType.Name;
            jourDTO.Remark                 = journal.Remark;
            jourDTO.InAmount               = journal.InAmount;
            jourDTO.OutAmount              = journal.OutAmount;
            jourDTO.BalanceAmount          = journal.BalanceAmount;
            jourDTO.JournalTypeDescription = journal.JournalType.Description;

            return(jourDTO);
        }
예제 #18
0
 public static Result <Journal> ToTransaction(this JournalDTO dto, Guid?journalGuid = null)
 {
     return(JournalBuilder
            .Init()
            .WithTransactionId(journalGuid ?? Guid.Parse(dto.Id))
            .WithDate(dto.Date)
            .WithTransactionLines(dto.Lines.Select(l => JournalLineBuilder
                                                   .Init()
                                                   .WithDebitCreditAmount(l.AmountDebit, l.AmountCredit)
                                                   .WithDate(dto.Date)
                                                   .WithAccountSourceId(l.AccountId)
                                                   .WithAccountCode(l.AccountCode)
                                                   .WithAccountName(l.AccountName)
                                                   .WithDescription(l.Description)))
            .WithNumber(dto.Number)
            .WithReference(dto.Reference)
            .Build());
 }
예제 #19
0
        public JournalDTO ToDTO(JournalEntity entity)
        {
            JournalDTO dto = new JournalDTO();

            dto.BalanceAmount   = entity.BalanceAmount;
            dto.CreateTime      = entity.CreateTime;
            dto.Id              = entity.Id;
            dto.InAmount        = entity.InAmount;
            dto.JournalTypeId   = entity.JournalTypeId;
            dto.JournalTypeName = "";
            dto.OutAmount       = entity.OutAmount;
            dto.Remark          = entity.Remark;
            dto.RemarkEn        = entity.RemarkEn;
            dto.UserId          = entity.UserId;
            //dto.Name = entity.User.Name;
            dto.Enabled   = entity.Enabled;
            dto.TaskId    = entity.TaskId;
            dto.ForwardId = entity.ForwardId;
            return(dto);
        }
        public HttpResponseMessage Update(HttpRequestMessage request, JournalDTO item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }

            var dbObject = Mapper.Map <Journal>(item);

            _journalRepository.Update(dbObject);
            _db.SaveChanges();

            var path = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/data.csv");
            var jobs = new JournalsJobs(dbObject, path);

            jobs.Start();

            var mapped = Mapper.Map <JournalDTO>(dbObject);

            return(request.CreateResponse(HttpStatusCode.NoContent, mapped));
        }
예제 #21
0
        public JournalDTO ToDTO(JournalEntity entity)
        {
            JournalDTO dto = new JournalDTO();

            dto.BalanceAmount   = entity.BalanceAmount;
            dto.CreateTime      = entity.CreateTime;
            dto.Id              = entity.Id;
            dto.InAmount        = entity.InAmount;
            dto.JournalTypeId   = entity.JournalTypeId;
            dto.JournalTypeName = entity.JournalType.Name;
            dto.OutAmount       = entity.OutAmount;
            dto.Remark          = entity.Remark;
            dto.RemarkEn        = entity.RemarkEn;
            dto.UserId          = entity.UserId;
            dto.Mobile          = entity.User.Mobile;
            dto.NickName        = entity.User.NickName;
            dto.OrderCode       = entity.OrderCode;
            dto.IsEnabled       = entity.IsEnabled;
            dto.LevelId         = entity.LevelId;
            dto.GoodsId         = entity.GoodsId;
            return(dto);
        }
예제 #22
0
 public void Edit(JournalDTO DTO)
 {
     using (var container = new InventoryContainer())
     {
         var Comp = new AccJournalEntry();
         Comp                   = container.AccJournalEntries.FirstOrDefault(o => o.JournalId.Equals(DTO.JournalId));
         Comp.SubCode2Id        = DTO.SubCode2Id;
         Comp.COAId             = DTO.COAId;
         Comp.SubVoucherId      = DTO.SubVoucherId;
         Comp.TransectionNo     = DTO.TransectionNo;
         Comp.DRAmount          = DTO.DRAmount;
         Comp.CRAmount          = DTO.CRAmount;
         Comp.TransectionDate   = DTO.TransectionDate;
         Comp.JournalType       = DTO.JournalType;
         Comp.VONO              = DTO.VONO;
         Comp.Remarks           = DTO.Remarks;
         Comp.PostLeadgerStatus = DTO.PostLeadgerStatus;
         Comp.UpdateDate        = DTO.UpdateDate;
         Comp.UpdateBy          = DTO.UpdateBy;
         Comp                   = (AccJournalEntry)DTOMapper.DTOObjectConverter(DTO, Comp);
         container.SaveChanges();
     }
 }
        public static async Task <Result <JournalDTO> > AddJournal(
            [ActivityTrigger] JournalDTO dto,
            [CosmosDB(
                 databaseName: "FreedomFriday",
                 collectionName: "journals",
                 ConnectionStringSetting = "freedomfridayserverless_DOCUMENTDB")] IAsyncCollector <JournalDTO> journalStore,
            ILogger log)
        {
            log.LogInformation("DurableFunctionsOrchestration_Journal function processed a request.");

            var result = JournalBuilder
                         .Init()
                         .WithTransactionId(Guid.NewGuid())
                         .WithDate(dto.Date)
                         .WithTransactionLines(dto.Lines.Select(l => JournalLineBuilder
                                                                .Init()
                                                                .WithDebitCreditAmount(l.AmountDebit, l.AmountCredit)
                                                                .WithDate(dto.Date)
                                                                .WithAccountSourceId(l.AccountId)
                                                                .WithAccountCode(l.AccountCode)
                                                                .WithAccountName(l.AccountName)
                                                                .WithDescription(l.Description)))
                         .WithNumber(dto.Number)
                         .WithReference(dto.Reference)
                         .WithDateUpdated(DateTime.UtcNow)
                         .Build()
                         .OnSuccess(journal => Result.Ok(journal.ToJournalDto()));

            if (result.IsFailure)
            {
                return(result);
            }

            await journalStore.AddAsync(result.Value);

            return(result);
        }
예제 #24
0
 public AddTransactionRecordBaseResult(JournalDTO journal, ICategoriesRepository repository)
 {
     Journal = journal;
     categoriesRepository = repository;
     TransactionRecord    = new PostingRecord();
 }
예제 #25
0
 protected override AddTransactionRecordBaseResult CreateTransactionRecordResult(JournalDTO r)
 {
     return(new AddTransactionRecordResult(r, categoriesRepository, prevBalance));
 }
예제 #26
0
 public DetailsViewData(JournalDTO journal)
 {
     Journal = journal;
 }
예제 #27
0
 protected virtual AddTransactionRecordBaseResult CreateTransactionRecordResult(JournalDTO r)
 {
     return(new AddTransactionRecordBaseResult(r, categoriesRepository));
 }
예제 #28
0
 // edit for journal update page
 public void Edit_Journal_Due_Payment(JournalDTO DTO)
 {
     dal.Edit_Journal_Due_Payment(DTO);
 }
예제 #29
0
 // edit for journal update page
 public void Edit_JournalUpdate(JournalDTO DTO)
 {
     dal.Edit_JournalUpdate(DTO);
 }
예제 #30
0
 public void Edit(JournalDTO DTO)
 {
     dal.Edit(DTO);
 }