예제 #1
0
        public void Change()
        {
            //1 change type

            var     wt        = new WorkorderFieldWoType(_woID);
            dynamic oldWoType = wt.FieldValue;

            wt.Update(_woID, _woType);

            //2 accessary
            var wda = new WorkorderDeleteAccessary(_woID);

            wda.Delete();

            var wsc = new WorkorderSitecheckPurpose(_woID);

            if (_woType == (int)NWorkorderType.Sitecheck)
            {
                wsc.Insert();
            }
            else
            {
                wsc.Delete();
            }
            //3 Items

            ChangeItemsTitleToNewItem(oldWoType);

            //4.
            DeleteSpecialProcedures();

            UpdateSpecialProcedure();
        }
예제 #2
0
        public override int Validate()
        {
            var v = (int)NWorkorderValidationError.Validated;

            var fWoType = new WorkorderFieldWoType(_woID);
            int woType  = Convert.ToInt32(fWoType.FieldValue);

            if (woType == (int)NWorkorderType.Production | woType == (int)NWorkorderType.Service)
            {
                var  wpc        = new WorkorderPropertyChecklist(0, _woID);
                bool applicable = wpc.ChecklistApplicable;
                if (applicable)
                {
                    if (!IsThereChecklist())
                    {
                        v = (int)NWorkorderValidationError.ChecklistDocumentsAttachedRequired;
                    }
                }
            }

            return(v);
        }