Exemple #1
0
        private void CreateOutputDetailPanel(VLayoutPanel vPanel)
        {
            var hPanel = vPanel.Add(new HLayoutPanel(), new VLayoutOption(HorizontalAlign.Left));

            hPanel.Add(new LiteralControl("<h2>明细清单:</h2>"));
            if (CanSave)
            {
                hPanel.Add(new TSButton("载入明细")).Click += delegate
                {
                    GetFromUI();
                    Dmo.Details.Clear();
                    AddLoadDetailQy();
                    outputDetailGrid.DataBind();
                    AspUtil.Alert(this, "载入投入明细成功");
                };

                hPanel.Add(new SimpleLabel("选择存货"));
                var selectEmp = hPanel.Add(new ChoiceBox(B3UnitedInfosConsts.DataSources.存货)
                {
                    Width = Unit.Pixel(130), EnableInputArgument = true, AutoPostBack = true
                });
                selectEmp.SelectedValueChanged += delegate
                {
                    outputDetailGrid.GetFromUI();
                    if (!selectEmp.IsEmpty)
                    {
                        var empID = long.Parse(selectEmp.Value);
                        if (!Dmo.Details.Any(x => x.Goods_ID == empID))
                        {
                            var d = new ProduceInput_Detail()
                            {
                                Goods_ID = empID
                            };
                            DmoUtil.RefreshDependency(d, "Goods_ID");
                            Dmo.Details.Add(d);
                        }
                    }
                    selectEmp.Clear();
                    outputDetailGrid.DataBind();
                };
            }
            var detailEditor = new DFCollectionEditor <ProduceInput_Detail>(() => Dmo.Details)
            {
                AllowDeletionFunc = () => CanSave,
                CanDeleteFunc     = detail => CanSave,
                IsEditableFunc    = (field, detail) => CanSave
            };

            outputDetailGrid = vPanel.Add(new DFEditGrid(detailEditor)
            {
                Width = Unit.Percentage(100)
            });
            outputDetailGrid.Columns.Add(new DFEditGridColumn <DFValueLabel>("Goods_Name"));
            outputDetailGrid.Columns.Add(new DFEditGridColumn <DFValueLabel>("Goods_Code"));
            AddDetailColumn(outputDetailGrid);
        }
Exemple #2
0
        /// <summary>
        /// 载入明细
        /// </summary>
        /// <param name="dmo"></param>
        public void GetGoodsDetailList(ProduceInput dmo)
        {
            var goodsList = GetGoodsList(dmo);

            foreach (var goods in goodsList)
            {
                var detail = new ProduceInput_Detail();
                detail.Goods_ID         = goods.Goods_ID;
                detail.Goods_Name       = goods.Goods_Name;
                detail.Goods_Code       = goods.Goods_Code;
                detail.Goods_Spec       = goods.Goods_Spec;
                detail.Goods_MainUnit   = goods.Goods_MainUnit;
                detail.Goods_SecondUnit = goods.Goods_SecondUnit;
                detail.Number           = (Money <decimal>?)goods.Number;
                detail.SecondNumber     = (Money <decimal>?)goods.SecondNumber;

                dmo.Details.Add(detail);
            }
            ;
        }