Пример #1
0
        public static void 自动生成全部票费用(ArchiveOperationForm masterForm)
        {
            if (!MessageForm.ShowYesNo("是否要自动生成全部票费用?", "确认"))
            {
                return;
            }

            ProgressForm progressForm = new ProgressForm();

            progressForm.Start(masterForm, "生成");

            Feng.Async.AsyncHelper asyncHelper = new Feng.Async.AsyncHelper(
                new Feng.Async.AsyncHelper.DoWork(delegate()
            {
                foreach (object obj in masterForm.DisplayManager.Items)
                {
                    费用实体 entity = obj as 费用实体;
                    if (entity == null)
                    {
                        throw new ArgumentException("费用实体 is null!");
                    }

                    生成票费用(entity);
                }
                return(null);
            }),
                new Feng.Async.AsyncHelper.WorkDone(delegate(object result)
            {
                Feng.Grid.BoundGridExtention.ReloadData(masterForm.MasterGrid as IBoundGrid);
                progressForm.Stop();
            }));
        }
Пример #2
0
        /// <summary>
        /// 与“自动生成全部费用”功能一样
        /// 当2个不同window,用DetailWindow配置时,用这个函数
        /// </summary>
        /// <param name="masterForm"></param>
        public static void 自动生成全部费用DetailWindow(ArchiveOperationForm masterForm)
        {
            if (!MessageForm.ShowYesNo("是否要自动生成全部费用?", "确认"))
            {
                return;
            }
            ProgressForm progressForm = new ProgressForm();

            progressForm.Start(masterForm, "生成");

            Feng.Async.AsyncHelper asyncHelper = new Feng.Async.AsyncHelper(
                new Feng.Async.AsyncHelper.DoWork(delegate()
            {
                费用实体 entity = (masterForm.ParentForm as ArchiveOperationForm).DisplayManager.CurrentItem as 费用实体;
                if (entity == null)
                {
                    throw new ArgumentException("请选择要生成费用的票!");
                }

                生成票费用(entity);
                return(null);
            }),
                new Feng.Async.AsyncHelper.WorkDone(delegate(object result)
            {
                Feng.Grid.BoundGridExtention.ReloadData((masterForm.ParentForm as ArchiveOperationForm).MasterGrid as IBoundGrid);
                progressForm.Stop();
            }));
        }
Пример #3
0
        public static void 自动生成全部费用(ArchiveOperationForm masterForm)
        {
            if (!ServiceProvider.GetService <IMessageBox>().ShowYesNo("是否要自动全部生成费用?", "确认"))
            {
                return;
            }
            ProgressForm progressForm = new ProgressForm();

            progressForm.Start(masterForm, "生成");

            Feng.Async.AsyncHelper asyncHelper = new Feng.Async.AsyncHelper(
                new Feng.Async.AsyncHelper.DoWork(delegate()
            {
                费用实体 entity = masterForm.DisplayManager.CurrentItem as 费用实体;
                if (entity == null)
                {
                    throw new ArgumentException("请选择要生成费用的产值!");
                }
                using (IRepository rep = ServiceProvider.GetService <IRepositoryFactory>().GenerateRepository <车辆产值>())
                {
                    车辆产值 piao = rep.Get <车辆产值>(entity.ID);
                    rep.Initialize(piao.任务, piao);
                    process_fy_yw.批量生成费用(rep, piao, piao.任务, null, null);
                }

                return(null);
            }),
                new Feng.Async.AsyncHelper.WorkDone(delegate(object result)
            {
                masterForm.ControlManager.OnCurrentItemChanged();
                progressForm.Stop();
            }));
        }
Пример #4
0
 public static void 生成票费用(费用实体 entity, bool service)
 {
     if (entity.费用实体类型编号 == 11)
     {
         using (IRepository rep = ServiceProvider.GetService <IRepositoryFactory>().GenerateRepository <进口票>())
         {
             进口票 piao = rep.Get <进口票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 15)
     {
         using (IRepository rep = ServiceProvider.GetService <IRepositoryFactory>().GenerateRepository <内贸出港票>())
         {
             内贸出港票 piao = rep.Get <内贸出港票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 45)
     {
         using (IRepository rep = ServiceProvider.GetService <IRepositoryFactory>().GenerateRepository <进口其他业务票>())
         {
             进口其他业务票 piao = rep.Get <进口其他业务票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 13)
     {
         using (IRepository rep = ServiceProvider.GetService <IRepositoryFactory>().GenerateRepository <出口票>())
         {
             出口票 piao = rep.Get <出口票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
 }
Пример #5
0
        public static void 添加新建非业务费用(ArchiveOperationForm masterForm)
        {
            IControlManager <凭证费用明细> detailCm = (((IArchiveDetailFormWithDetailGrids)masterForm.ArchiveDetailForm).DetailGrids[0] as IArchiveGrid).ControlManager as IControlManager <凭证费用明细>;
            //IDao masterDao = masterForm.ControlManager.Dao;
            //MemoryDao<凭证费用明细> memoryBll = (masterDao.GetSubDao(0) as IMasterDao).DetailMemoryDao as MemoryDao<凭证费用明细>;
            //MemoryDao<费用> memoryBll2 = (((masterDao.GetSubDao(0) as IMasterDao).DetailDao as IBaseDao).GetSubDao(0) as IMasterDao).DetailMemoryDao as MemoryDao<费用>;

            ArchiveDetailForm form = Feng.Windows.Utils.ArchiveFormFactory.GenerateArchiveDetailForm(ADInfoBll.Instance.GetWindowInfo("非业务财务_借贷"), null);

            form.ControlManager.AddNew();

            form.UpdateContent();
            if (form.ShowDialog() == DialogResult.OK)
            {
                费用实体 entity = form.ControlManager.DisplayManager.CurrentItem as 费用实体;
                if (entity == null)
                {
                    throw new ArgumentNullException("invalid 费用实体");
                }
                AddFees(masterForm.DisplayManager.CurrentItem as 凭证, entity.费用, detailCm);
            }
        }
Пример #6
0
 public static void 生成票费用(费用实体 entity)
 {
     生成票费用(entity, false);
 }
Пример #7
0
 public static void 生成票费用(费用实体 entity, bool service)
 {
     if (entity.费用实体类型编号 == 11)
     {
         using (IRepository rep = ServiceProvider.GetService<IRepositoryFactory>().GenerateRepository<进口票>())
         {
             进口票 piao = rep.Get<进口票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 15)
     {
         using (IRepository rep = ServiceProvider.GetService<IRepositoryFactory>().GenerateRepository<内贸出港票>())
         {
             内贸出港票 piao = rep.Get<内贸出港票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 45)
     {
         using (IRepository rep = ServiceProvider.GetService<IRepositoryFactory>().GenerateRepository<进口其他业务票>())
         {
             进口其他业务票 piao = rep.Get<进口其他业务票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
     else if (entity.费用实体类型编号 == 13)
     {
         using (IRepository rep = ServiceProvider.GetService<IRepositoryFactory>().GenerateRepository<出口票>())
         {
             出口票 piao = rep.Get<出口票>(entity.ID);
             rep.Initialize(piao.箱, piao);
             process_fy_yw.批量生成费用(rep, entity.费用实体类型编号, piao, piao.箱, null, null, service);
         }
     }
 }
Пример #8
0
 public static void 生成票费用(费用实体 entity)
 {
     生成票费用(entity, false);
 }