Exemplo n.º 1
0
        public string Create(Billing mo)
        {
            try
            {
                // 1. 主表部分
                // 1.1 创建人
                //if (Session["LoginUser"] != null)
                //{
                //    mo.Creator = (SysUser)Session["loginUser"];
                //}
                // 1.2 报销时间
                mo.CreateDate = DateTime.Now;

                // 2. 明细表
                mo.BillingItemList = new List <BillingItem>();
                var allBillingItemType = Container.Instance.Resolve <BillingItemTypeService>().GetAll();
                // 最大行数
                int detailRowCount = int.Parse(Request["detailRowCount"]);
                // 关于行循环
                for (int i = 1; i <= detailRowCount; i++)
                {
                    // 检查明细行是否存在
                    if (Request["BillingItemType" + i] == null)
                    {
                        continue;
                    }
                    // 处理明细行输入
                    BillingItem bi = new BillingItem();
                    if (Request["ID" + i] != null)
                    {
                        // 原有行
                        bi.ID = int.Parse(Request["ID" + i]);
                    }

                    bi.Fee    = decimal.Parse(Request["Fee" + i]);
                    bi.Remark = Request["Remark" + i];
                    int billingItemTypeId = int.Parse(Request["BillingItemType" + i]);
                    bi.BillingItemType = (from m in allBillingItemType
                                          where m.ID == billingItemTypeId
                                          select m).FirstOrDefault();
                    // 关联主表与从表
                    bi.Billing = mo;
                    mo.BillingItemList.Add(bi);
                }

                // 3. 提交主表(级联提交明细表)
                Container.Instance.Resolve <BillingService>().Create(mo);
                // 4. 更新托运单状态
                DeliveryForm   deliveryForm   = Container.Instance.Resolve <DeliveryFormService>().GetEntity(mo.DeliveryForm.ID);
                TransportOrder transportOrder = deliveryForm.TransportOrder;
                transportOrder.Status = 3; // 已报账
                Container.Instance.Resolve <TransportOrderService>().Edit(transportOrder);

                return("ok");
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
Exemplo n.º 2
0
        public ActionResult Edit(int transportOrderId)
        {
            // 1.准备实体
            // 根据托运单ID确定调度单
            DeliveryForm mo = Container.Instance.Resolve <DeliveryFormService>().Query(new List <ICriterion>()
            {
                Expression.Eq("TransportOrder.ID", transportOrderId)
            }).FirstOrDefault();
            //mo.TransportOrder = Container.Instance.Resolve<TransportOrderService>().GetEntity(transportOrderId);

            // 2.返回前预处理
            int driverId = mo.Driver == null ? 0 : mo.Driver.ID;

            ViewBag.ddlDriver = InitDDLForDriver(driverId);

            int vehicleId = mo.Vehicle == null ? 0 : mo.Vehicle.ID;

            ViewBag.ddlVehicle = InitDDLForVehicle(vehicleId);

            int deliveryTypeId = mo.TransportOrder.DeliveryType == null || mo.TransportOrder.DeliveryType == null ? 0 : mo.TransportOrder.DeliveryType.ID;

            ViewBag.rblDeliveryType = InitRBLForDeliveryType(deliveryTypeId);

            // 3.返回视图
            return(View(mo));
        }
Exemplo n.º 3
0
        private void btnDelivery_Click(object sender, EventArgs e)
        {
            this.Hide();
            DeliveryForm deliveryForm = new DeliveryForm();

            deliveryForm.Location      = this.Location;
            deliveryForm.StartPosition = this.StartPosition;
            deliveryForm.FormClosing  += delegate { this.Show(); };
            deliveryForm.ShowDialog();
        }
Exemplo n.º 4
0
        public void PrintDelivery(object obj)
        {
            var myReport = new DeliveryForm();

            myReport.SetDataSource(GetListDataSet());

            var report = new ReportViewerCommon(myReport);

            report.Show();
        }
Exemplo n.º 5
0
        public ActionResult Create(int transportOrderId)
        {
            // 1.准备实体
            DeliveryForm mo = new DeliveryForm();

            mo.TransportOrder = Container.Instance.Resolve <TransportOrderService>().GetEntity(transportOrderId);
            // 2.返回前预处理
            int driverId = mo.Driver == null ? 0 : mo.Driver.ID;

            ViewBag.ddlDriver = InitDDLForDriver(driverId);

            int vehicleId = mo.Vehicle == null ? 0 : mo.Vehicle.ID;

            ViewBag.ddlVehicle = InitDDLForVehicle(vehicleId);

            int deliveryTypeId = mo.TransportOrder.DeliveryType == null || mo.TransportOrder.DeliveryType == null ? 0 : mo.TransportOrder.DeliveryType.ID;

            ViewBag.rblDeliveryType = InitRBLForDeliveryType(deliveryTypeId);

            // 3.返回视图
            return(View(mo));
        }
Exemplo n.º 6
0
        public string Create(DeliveryForm mo)
        {
            try
            {
                // 1.提交前预处理
                mo.CreateTime = DateTime.Now;
                mo.Creator    = (SysUser)Session["loginUser"];
                // 2.提交数据库
                // 2.1 保存调度单
                Container.Instance.Resolve <DeliveryFormService>().Create(mo);
                // 2.2 修改托运单状态
                TransportOrder transportOrder = Container.Instance.Resolve <TransportOrderService>().GetEntity(mo.TransportOrder.ID);
                transportOrder.Status = 1;
                Container.Instance.Resolve <TransportOrderService>().Edit(transportOrder);

                // 3.保存成功返回
                return("ok");
            }
            catch (Exception ex)
            {
                // 4.保存失败返回异常
                return(ex.Message);
            }
        }