Beispiel #1
0
        //Laws Lu,2005/12/28,比对版本
        private Messages CheckSoftVersion(object vc, string strVer, SoftwareActionEventArgs e, ProductInfo product)
        {
            Messages msg = new Messages();

            if (e.CurrentMO == null)
            {
                e.CurrentMO = (new MOModel.MOFacade(DataProvider)).GetMO(product.LastSimulation.MOCode) as Domain.MOModel.MO;
            }

            if (e.CurrentMO.MOBIOSVersion != strVer)
            {
                msg.Add(new UserControl.Message(MessageType.Error, "$CS_VERSION_COMPARE_NOT_PASS $CS_MO_VERSION="
                                                + e.CurrentMO.MOBIOSVersion + " $CS_CURRENT_VERSION=" + strVer));

                DataCollectFacade dcf = new DataCollectFacade(DataProvider);
                Domain.DataCollect.VersionError ve = dcf.CreateNewVersionError();
                ve.PKID          = System.Guid.NewGuid().ToString();
                ve.MoVersionInfo = e.CurrentMO.MOBIOSVersion;
                ve.Mocode        = e.CurrentMO.MOCode;
                ve.Rcard         = e.RunningCard;
                ve.VersionInfo   = strVer;
                //Laws Lu,2006/11/13 uniform system collect date
                DBDateTime dbDateTime;

                dbDateTime = FormatHelper.GetNowDBDateTime(DataProvider);


                ve.MDate = dbDateTime.DBDate;
                ve.MTime = dbDateTime.DBTime;
                ve.MUser = e.UserCode;

                DataProvider.BeginTransaction();
                try
                {
                    dcf.AddVersionError(ve);
                    dcf.DeleteVersionCollect(vc as Domain.DataCollect.VersionCollect);

                    DataProvider.CommitTransaction();
                }
                catch (Exception E)
                {
                    msg.Add(new UserControl.Message(E));
                    DataProvider.RollbackTransaction();
                }
                finally
                {
                    ((BenQGuru.eMES.Common.DomainDataProvider.SQLDomainDataProvider)DataProvider).PersistBroker.CloseConnection();
                }
            }
            return(msg);
        }