コード例 #1
0
        private void buttonArrivalDocAddDb_Click(object sender, EventArgs e)
        {
            ArrivalDoc arrivalDoc = new ArrivalDoc
            {
                ArrivalDocName     = textBoxArrivalDocName.Text,
                ArrivalDocProvider = textBoxArrivalDocProvider.Text,
                ArrivalDocDate     = dateTimePickerArrivalDocDate.Value
            };

            db.ArrivalDocs.Add(arrivalDoc);
            db.SaveChanges();
            this.Close();
            MainForm form = new MainForm();

            form.MainForm_Load(sender, e);
        }
コード例 #2
0
        public void Notify(params object[] args)
        {
            if (args != null && args.Length != 0 && args[0] is EntityEvent)
            {
                BusinessEntity.EntityKey key = ((EntityEvent)args[0]).EntityKey;
                if (!(key == null))
                {
                    ArrivalDoc entity = key.GetEntity() as ArrivalDoc;

                    if (entity != null
                        )
                    {
                        DateTime docDate     = entity.BusinessDate;
                        string   oldSuptCode = string.Empty;
                        string   newSuptCode = string.Empty;

                        if (entity.SysState != UFSoft.UBF.PL.Engine.ObjectState.Inserted &&
                            entity.OriginalData != null &&
                            entity.OriginalData.Supplier != null
                            )
                        {
                            oldSuptCode = entity.OriginalData.Supplier.Code;
                        }

                        if (entity.Supplier != null)
                        {
                            newSuptCode = entity.Supplier.Code;
                        }

                        foreach (ArrivalDocLine docline in entity.ArrivalDocLines)
                        {
                            string oldItemCode = string.Empty;
                            string newItemCode = string.Empty;

                            if (docline.SysState != UFSoft.UBF.PL.Engine.ObjectState.Inserted &&
                                docline.OriginalData != null &&
                                docline.OriginalData.ItemInfo != null &&
                                docline.OriginalData.ItemInfo.ItemID != null
                                )
                            {
                                oldItemCode = docline.OriginalData.ItemInfo.ItemID.Code;
                            }

                            if (docline.ItemInfo != null &&
                                docline.ItemInfo.ItemID != null
                                )
                            {
                                newItemCode = docline.ItemInfo.ItemID.Code;
                            }

                            if (newSuptCode.IsNotNullOrWhiteSpace() &&
                                newItemCode.IsNotNullOrWhiteSpace()
                                // 新旧不一致,才重取
                                && (oldSuptCode != newSuptCode ||
                                    oldItemCode != newItemCode
                                    )
                                )
                            {
                                /*
                                 * 货源表  1
                                 *
                                 * 标准采购:9
                                 * 标准收货:2
                                 * 到货:2
                                 * 质检单:6
                                 */
                                POLine srcPOLine = null;
                                if (docline.SrcDocInfo != null &&
                                    docline.SrcDocInfo.SrcDocLine != null &&
                                    docline.SrcDocInfo.SrcDocLine.EntityID > 0
                                    )
                                {
                                    srcPOLine = POLine.Finder.FindByID(docline.SrcDocInfo.SrcDocLine.EntityID);
                                }

                                if (srcPOLine != null)
                                {
                                    docline.DescFlexField.PrivateDescSeg2 = srcPOLine.DescFlexSegments.PrivateDescSeg9;
                                }
                                else
                                {
                                    SupplySource suptSource = PurchaseOrder_BeforeDefaultValue.GetSupplySource(docDate, newSuptCode, newItemCode);
                                    if (suptSource != null)
                                    {
                                        /*
                                         * 货源表  1
                                         *
                                         * 标准采购:9
                                         * 标准收货:2
                                         * 到货:2
                                         * 质检单:6
                                         */
                                        docline.DescFlexField.PrivateDescSeg2 = suptSource.DescFlexField.PrivateDescSeg1;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }