Esempio n. 1
0
        protected void edit_Click(object sender, DirectEventArgs e)
        {
            string data = e.ExtraParams["data"];

            System.Web.Script.Serialization.JavaScriptSerializer Serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            List <XMLogisticsFeeBranchNew> list = Serializer.Deserialize <List <XMLogisticsFeeBranchNew> >(data);

            if (list.Count <= 0)
            {
                Ext.Net.ExtNet.Msg.Alert("提示", "你没有选择任何记录").Show();
                return;
            }
            else if (list.Count > 1)
            {
                Ext.Net.ExtNet.Msg.Alert("提示", "只允许单选").Show();
                return;
            }

            dataBind();
            Window1.Show();
            fromPanel1.Reset();

            BusinessLogic.ManageProject.XMLogisticsFeeBranch entity = XMLogisticsFeeBranchService.GetXMLogisticsFeeBranchByID(list[0].ID);
            selectID.Value          = list[0].ID;
            cbProject.Value         = entity.ProjectID;
            cbLogistics.Value       = entity.LogisticsID;
            cbProductCategory.Value = entity.ProductCategoryID;
            numPrice.Value          = entity.Fee;
            btnEdit.Hidden          = false;
            btnSave.Hidden          = true;
        }
Esempio n. 2
0
        protected void btnEdit_Click(object sender, DirectEventArgs e)
        {
            int ID = int.Parse(selectID.Text);

            BusinessLogic.ManageProject.XMLogisticsFeeBranch entity = XMLogisticsFeeBranchService.GetXMLogisticsFeeBranchByID(ID);
            entity.ProjectID         = int.Parse(cbProject.Text);
            entity.LogisticsID       = int.Parse(cbLogistics.Text);
            entity.ProductCategoryID = int.Parse(cbProductCategory.Text);
            entity.Fee = decimal.Parse(numPrice.Text);
            XMLogisticsFeeBranchService.UpdateXMLogisticsFeeBranch(entity);
        }
Esempio n. 3
0
        protected void btnDeleteClick(object sender, DirectEventArgs e)
        {
            string data = e.ExtraParams["data"];

            System.Web.Script.Serialization.JavaScriptSerializer Serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            List <XMLogisticsFeeBranchNew> list = Serializer.Deserialize <List <XMLogisticsFeeBranchNew> >(data);

            if (list.Count <= 0)
            {
                Ext.Net.ExtNet.Msg.Alert("提示", "你没有选择任何记录").Show();
                return;
            }

            foreach (var item in list)
            {
                XMLogisticsFeeBranchService.DeleteXMLogisticsFeeBranch(item.ID, false);
            }

            XMLogisticsFeeBranchService.SaveChanges();
        }
Esempio n. 4
0
        protected void btnSave_Click(object sender, DirectEventArgs e)
        {
            int     projectID         = int.Parse(cbProject.Text);
            int     LogisticsID       = int.Parse(cbLogistics.Text);
            decimal fee               = decimal.Parse(numPrice.Text);
            int     ProductCategoryID = int.Parse(cbProductCategory.Text);

            BusinessLogic.ManageProject.XMLogisticsFeeBranch entity = XMLogisticsFeeBranchService.getSingle(a => a.ProjectID == projectID && a.LogisticsID == LogisticsID && a.ProductCategoryID == ProductCategoryID);
            if (entity != null)
            {
                ExtNet.Msg.Alert("提示", "已有相同记录存在").Show();
                return;
            }

            BusinessLogic.ManageProject.XMLogisticsFeeBranch model = new BusinessLogic.ManageProject.XMLogisticsFeeBranch();
            model.ProjectID         = projectID;
            model.LogisticsID       = LogisticsID;
            model.ProductCategoryID = ProductCategoryID;
            model.Fee        = fee;
            model.CreateID   = HozestERPContext.Current.User.CustomerID;
            model.CreateDate = DateTime.Now;
            XMLogisticsFeeBranchService.InsertXMLogisticsFeeBranch(model);
        }
        protected void btnCalculate_Click(object sender, DirectEventArgs e)
        {
            string OrderID = CommonHelper.QueryString("ID");

            XMOrderInfo entity_Order = XMOrderInfoService.GetXMOrderInfoByID(int.Parse(OrderID));

            if (entity_Order == null)
            {
                ExtNet.Msg.Alert("提示", "订单信息不存在").Show();
                return;
            }

            XMProject entity_Project = XMProjectService.GetXMProjectById(entity_Order.ProjectId);

            if (entity_Project == null)
            {
                ExtNet.Msg.Alert("提示", "项目信息不存在").Show();
                return;
            }

            if (entity_Project.ProjectName == "曲美")
            {
                //干线费用
                decimal mainMoney = 0;
                //支线费用
                decimal  branchMoney = 0;
                string   province    = entity_Order.Province;
                string   city        = entity_Order.City;
                string   region      = entity_Order.County;
                string[] mes         = entity_Order.CustomerServiceRemark.Split(new string[] { "///" }, StringSplitOptions.RemoveEmptyEntries);
                if (mes.Count() <= 0)
                {
                    ExtNet.Msg.Alert("提示", "解析错误").Show();
                    return;
                }
                string[] mes1 = mes[0].Split(new string[] { "+" }, StringSplitOptions.RemoveEmptyEntries);
                if (mes1.Count() <= 0)
                {
                    ExtNet.Msg.Alert("提示", "解析错误").Show();
                    return;
                }
                //查询干线物流公司信息
                List <CodeList> codeList = CodeService.GetCodeListInfoByCodeTypeIDAndCodeName(243, mes1[0]);
                if (codeList.Count <= 0)
                {
                    ExtNet.Msg.Alert("提示", "找不到干线物流公司信息").Show();
                    return;
                }

                int logisticsMainID = codeList[0].CodeID;
                //查询干线物流单价费率
                BusinessLogic.ManageProject.XMLogisticsFeeMain entityMain = XMLogisticsFeeMainService.
                                                                            getSingle(a => a.ProjectID == entity_Project.Id && a.WareHouseID == 758 && province.StartsWith(a.Province) && city.StartsWith(a.City) && region.StartsWith(a.Area) && a.LogisticsID == logisticsMainID);
                if (entityMain == null)
                {
                    ExtNet.Msg.Alert("提示", "找不到对应干线单价费率").Show();
                    return;
                }

                //只计算干线费用
                if (mes1.Count() == 1)
                {
                    //对应干线单价费率
                    decimal main = (decimal)entityMain.Fee;

                    List <XMOrderInfoProductDetails> list_OrderProductDetails = XMOrderInfoProductDetailsService.GetXMOrderInfoProductDetailsList(entity_Order.ID);
                    foreach (var item in list_OrderProductDetails)
                    {
                        string ProductVolume = string.IsNullOrEmpty(item.ProductVolume) ? "0" : item.ProductVolume;
                        mainMoney = mainMoney + main * decimal.Parse(ProductVolume) * (int)item.ProductNum;
                    }
                }
                //计算干线和支线费用
                else if (mes1.Count() == 2)
                {
                    //对应干线单价费率
                    decimal main = (decimal)entityMain.Fee;
                    //查询支线物流公司信息
                    List <CodeList> codeList1 = CodeService.GetCodeListInfoByCodeTypeIDAndCodeName(244, mes1[1]);
                    if (codeList.Count <= 0)
                    {
                        ExtNet.Msg.Alert("提示", "找不到支线物流公司信息").Show();
                        return;
                    }

                    List <XMOrderInfoProductDetails> list_OrderProductDetails = XMOrderInfoProductDetailsService.GetXMOrderInfoProductDetailsList(entity_Order.ID);
                    foreach (var item in list_OrderProductDetails)
                    {
                        //对应支线单价费率
                        decimal          Branch               = 0;
                        XMProduct        entityProduct        = XMProductService.getXMProductByManufacturersCode(item.TManufacturersCode);
                        XMProductDetails entityProductDetails = XMProductDetailsService.GetXMProductDetailsListByProductId(entityProduct.Id)[0];
                        //查询支线物流单价费率
                        int logisticsBranchID = codeList1[0].CodeID;
                        BusinessLogic.ManageProject.XMLogisticsFeeBranch entityBranch = XMLogisticsFeeBranchService.
                                                                                        getSingle(a => a.ProjectID == entity_Project.Id && a.LogisticsID == logisticsBranchID && a.ProductCategoryID == entityProductDetails.ProductTypeId);
                        if (entityBranch == null)
                        {
                            ExtNet.Msg.Alert("提示", "找不到对应支线单价费率").Show();
                            return;
                        }

                        Branch = (decimal)entityBranch.Fee;
                        //商品体积
                        string ProductVolume = string.IsNullOrEmpty(entityProduct.ProductVolume) ? "0" : entityProduct.ProductVolume;
                        mainMoney   = mainMoney + main * decimal.Parse(ProductVolume) * (int)item.ProductNum;
                        branchMoney = branchMoney + Branch * (int)item.ProductNum;
                    }
                }
                //事务
                using (TransactionScope scope = new TransactionScope())
                {
                    List <BusinessLogic.ManageProject.XMLogisticsFeeDetail> list = XMLogisticsFeeDetailService.getList(a => a.Type != 3);
                    foreach (var item in list)
                    {
                        XMLogisticsFeeDetailService.delete(item);
                    }

                    if (mainMoney >= 0)
                    {
                        XMLogisticsFeeDetailService.InsertXMLogisticsFeeDetail(new BusinessLogic.ManageProject.XMLogisticsFeeDetail()
                        {
                            OrderID    = entity_Order.ID,
                            Type       = 1,
                            Fee        = mainMoney,
                            CreateID   = HozestERPContext.Current.User.CustomerID,
                            CreateDate = DateTime.Now,
                        });
                    }
                    if (branchMoney >= 0)
                    {
                        XMLogisticsFeeDetailService.InsertXMLogisticsFeeDetail(new BusinessLogic.ManageProject.XMLogisticsFeeDetail()
                        {
                            OrderID    = entity_Order.ID,
                            Type       = 2,
                            Fee        = branchMoney,
                            CreateID   = HozestERPContext.Current.User.CustomerID,
                            CreateDate = DateTime.Now,
                        });
                    }

                    scope.Complete();
                }
            }
            else
            {
                ExtNet.Msg.Alert("提示", "不在计算范围内").Show();
                return;
            }
        }