コード例 #1
0
        private static bool ValidateIncoming(GoodsStateEntity current, string hospitalId, out string errorCode)
        {
            errorCode = string.Empty;

            var form = IncomingFormRepository.Get(current.FutureFormId);

            if (form == null)
            {
                errorCode = GoodsStateValidateCodes.FutureFormNotExist;
                return(false);
            }

            if (string.Compare(form.HospitalId, hospitalId, true) != 0)
            {
                errorCode = GoodsStateValidateCodes.HospitalNoFutureForm;
                return(false);
            }

            if (!Enum.IsDefined(typeof(FormType), current.FutureFormType) ||
                (FormType)current.FutureFormType != FormType.Incoming)
            {
                errorCode = GoodsStateValidateCodes.NotValidState;
                return(false);
            }

            return(true);
        }
コード例 #2
0
        private static string CreateIncomingForm(ReceiveFormEntity form, ReceiveFormItemEntity formItem, Database db, DbTransaction trans)
        {
            var incoming = new IncomingFormEntity
            {
                OrderId       = form.OrderId,
                OrderFormNo   = form.OrderFormNo,
                OrderDetailId = form.OrderDetailId,
                ApplyUnitId   = form.ApplyUnitId,
                SerialId      = formItem.SerialId,
                ProductId     = form.ProductId,
                IncomingCount = formItem.ReceivedCount,
                HospitalId    = form.HospitalId,
                VendorId      = form.VendorId,
                IsConfirmed   = false,
                CreatedId     = formItem.ConfirmedId,
                CreatedTime   = formItem.ConfirmedTime
            };

            IncomingFormRepository.Create(incoming, db, trans);

            return(incoming.Id);
        }
コード例 #3
0
        private static string SaveIncomingForm(InspectionFormEntity entity, int scanCount, string userId, Database db, DbTransaction trans)
        {
            var incoming = new IncomingFormEntity
            {
                Id            = Guid.NewGuid().ToString(),
                IncomingCount = scanCount,
                OrderId       = entity.OrderId,
                OrderFormNo   = entity.OrderFormNo,
                OrderDetailId = entity.OrderDetailId,
                HospitalId    = entity.HospitalId,
                ApplyUnitId   = entity.ApplyUnitId,
                VendorId      = entity.VendorId,
                ProductId     = entity.ProductId,
                IsConfirmed   = entity.ScanOver,
                CreatedId     = userId,
                CreatedTime   = DateTime.Now
            };

            IncomingFormRepository.Create(incoming, db, trans);

            return(incoming.Id);
        }
コード例 #4
0
        public static bool CanFormValidate(string formId, FormType formType, string hospitalId, out string errorCode)
        {
            errorCode = string.Empty;
            if (string.IsNullOrEmpty(formId))
            {
                errorCode = GoodsStateValidateCodes.NotValidState;
                return(false);
            }

            bool   noForm;
            string formHospitalId;

            switch (formType)
            {
            case FormType.Receive:
                var receive = ReceiveFormRepository.Get(formId);
                noForm         = receive == null;
                formHospitalId = noForm ? string.Empty : receive.HospitalId;
                break;

            case FormType.Inspection:
                var inspection = InspectionFormRepository.Get(formId);
                noForm         = inspection == null;
                formHospitalId = noForm ? string.Empty : inspection.HospitalId;
                break;

            case FormType.Incoming:
                var incoming = IncomingFormRepository.Get(formId);
                noForm         = incoming == null;
                formHospitalId = noForm ? string.Empty : incoming.HospitalId;
                break;

            case FormType.Apply:
                var apply = ApplyFormRepository.Get(formId);
                noForm         = apply == null;
                formHospitalId = noForm ? string.Empty : apply.HospitalId;
                break;

            case FormType.Return:
                var @return = ReturnFormRepository.Get(formId);
                noForm         = @return == null;
                formHospitalId = noForm ? string.Empty : @return.HospitalId;
                break;

            default:
                errorCode      = GoodsStateValidateCodes.NotValidState;
                noForm         = true;
                formHospitalId = string.Empty;
                break;
            }

            if (!string.IsNullOrEmpty(errorCode))
            {
                return(false);
            }

            if (noForm)
            {
                errorCode = GoodsStateValidateCodes.FutureFormNotExist;
                return(false);
            }

            if (string.Compare(formHospitalId, hospitalId, true) != 0)
            {
                errorCode = GoodsStateValidateCodes.HospitalNoFutureForm;
                return(false);
            }

            return(true);
        }