Example #1
0
        public async Task <ActionMessage> createAnalyzer2(AnalyzerInfo _Analyzer, string _userI)
        {
            ActionMessage        ret           = new ActionMessage();
            int                  insetId       = -1;
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    //insetId = AnalyzerDataLayer.GetInstance().InsertAnalyzer(connection, _Analyzer, _userI);
                    //TODO: insert member
                    // ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                if (insetId > -1)
                {
                    ret.id        = insetId;
                    ret.isSuccess = true;
                }
                else
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "lỗi thêm tài sản";
                    ret.err.msgString = "lỗi thêm tài sản";
                }
                return(ret);
            }
        }
Example #2
0
        public static AnalyzerDependencyResults ComputeDependencyConflicts(IEnumerable <string> analyzerFilePaths, IEnumerable <IIgnorableAssemblyList> ignorableAssemblyLists, IBindingRedirectionService bindingRedirectionService = null, CancellationToken cancellationToken = default)
        {
            List <AnalyzerInfo> analyzerInfos = new List <AnalyzerInfo>();

            foreach (var analyzerFilePath in analyzerFilePaths)
            {
                cancellationToken.ThrowIfCancellationRequested();

                AnalyzerInfo info = TryReadAnalyzerInfo(analyzerFilePath);

                if (info != null)
                {
                    analyzerInfos.Add(info);
                }
            }

            var allIgnorableAssemblyLists = new List <IIgnorableAssemblyList>(ignorableAssemblyLists);

            allIgnorableAssemblyLists.Add(new IgnorableAssemblyIdentityList(analyzerInfos.Select(info => info.Identity)));

            // First check for analyzers with the same identity but different
            // contents (that is, different MVIDs).

            ImmutableArray <AnalyzerDependencyConflict> conflicts = FindConflictingAnalyzers(analyzerInfos, cancellationToken);

            // Then check for missing references.

            ImmutableArray <MissingAnalyzerDependency> missingDependencies = FindMissingDependencies(analyzerInfos, allIgnorableAssemblyLists, bindingRedirectionService, cancellationToken);

            return(new AnalyzerDependencyResults(conflicts, missingDependencies));
        }
        public AnalyzerDependencyResults Run(CancellationToken cancellationToken = default(CancellationToken))
        {
            List <AnalyzerInfo> analyzerInfos = new List <AnalyzerInfo>();

            foreach (var analyzerFilePath in _analyzerFilePaths)
            {
                cancellationToken.ThrowIfCancellationRequested();

                AnalyzerInfo info = TryReadAnalyzerInfo(analyzerFilePath);

                if (info != null)
                {
                    analyzerInfos.Add(info);
                }
            }

            _ignorableAssemblyLists.Add(new IgnorableAssemblyIdentityList(analyzerInfos.Select(info => info.Identity)));

            // First check for analyzers with the same identity but different
            // contents (that is, different MVIDs).

            ImmutableArray <AnalyzerDependencyConflict> conflicts = FindConflictingAnalyzers(analyzerInfos, cancellationToken);

            // Then check for missing references.

            ImmutableArray <MissingAnalyzerDependency> missingDependencies = FindMissingDependencies(analyzerInfos, cancellationToken);

            return(new AnalyzerDependencyResults(conflicts, missingDependencies));
        }
Example #4
0
        public SingleResponeMessage <AnalyzerInfo> Get(int id)
        {
            SingleResponeMessage <AnalyzerInfo> ret = new SingleResponeMessage <AnalyzerInfo>();

            try
            {
                AnalyzerInfo item = AnalyzerService.GetInstance().getAnalyzer(id);
                if (item == null)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "001";
                    ret.err.msgString = "no Analyzer found";
                    return(ret);
                }
                ret.item      = item;
                ret.isSuccess = true;
            }
            catch (Exception ex)
            {
                ret.isSuccess     = false;
                ret.err.msgCode   = "Internal Error !!!";
                ret.err.msgString = ex.ToString();
            }
            return(ret);
        }
Example #5
0
        /// <summary>
        /// Hàm lấy tài sản theo Code
        /// </summary>
        /// <param AnalyzerCode="_code"></param>
        /// <returns>Return List<AnalyzerInfo></returns>
        ///
        public AnalyzerInfo GetAnalyzerByCode(SqlConnection connection, string _code)
        {
            AnalyzerInfo result = null;

            using (var command = new SqlCommand(
                       "Select AN.*, DR.DepartmentCode as DepartmentRootCode, DR.DepartmentName as DepartmentRootName, D.DepartmentCode as DepartmentCode, D.DepartmentName as DepartmentName  " +
                       " from (Select AN.* from tbl_Analyzer AN where AN.AnalyzerCode = @AnalyzerCode) " +
                       "as AN    " +
                       " LEFT JOIN tbl_department DR  on DR.DepartmentID  = AN.DepartmentRootID " +
                       " LEFT JOIN tbl_department D  on D.DepartmentID  = AN.DepartmentID "
                       , connection))
            {
                AddSqlParameter(command, "@AnalyzerCode", _code, System.Data.SqlDbType.NVarChar);
                WriteLogExecutingCommand(command);
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        result                        = new AnalyzerInfo();
                        result.AnalyzerID             = GetDbReaderValue <int>(reader["AnalyzerID"]);
                        result.AnalyzerCode           = GetDbReaderValue <string>(reader["AnalyzerCode"]);
                        result.AnalyzerAccountantCode = GetDbReaderValue <string>(reader["AnalyzerAccountantCode"]);
                        result.AnalyzerName           = GetDbReaderValue <string>(reader["AnalyzerName"]);
                        result.QuoteItemID            = GetDbReaderValue <int>(reader["QuoteItemID"]);
                        result.Description            = GetDbReaderValue <string>(reader["Description"]);
                        result.Amount                 = GetDbReaderValue <double>(reader["Amount"]);
                        result.ItemPrice              = GetDbReaderValue <double>(reader["ItemPrice"]);
                        result.TotalPrice             = GetDbReaderValue <double>(reader["TotalPrice"]);
                        result.AnalyzerType           = GetDbReaderValue <int>(reader["AnalyzerType"]);

                        result.DepartmentRootID   = GetDbReaderValue <int>(reader["DepartmentRootID"]);
                        result.DepartmentRootCode = GetDbReaderValue <string>(reader["DepartmentRootCode"]);
                        result.DepartmentRootName = GetDbReaderValue <string>(reader["DepartmentRootName"]);
                        result.DepartmentID       = GetDbReaderValue <int>(reader["DepartmentID"]);
                        result.DepartmentCode     = GetDbReaderValue <string>(reader["DepartmentCode"]);
                        result.DepartmentName     = GetDbReaderValue <string>(reader["DepartmentName"]);

                        result.ContractCode  = GetDbReaderValue <string>(reader["ContractCode"]);
                        result.UserIContract = GetDbReaderValue <string>(reader["UserIContract"]);

                        result.CustomerID   = GetDbReaderValue <int>(reader["CustomerID"]);
                        result.CustomerName = GetDbReaderValue <string>(reader["CustomerName"]);

                        result.Serial            = GetDbReaderValue <string>(reader["Serial"]);
                        result.ExpirationDate    = GetDbReaderValue <DateTime?>(reader["ExpirationDate"]);
                        result.DateIn            = GetDbReaderValue <DateTime>(reader["DateIn"]);
                        result.DeliveryReceiptID = GetDbReaderValue <int>(reader["DeliveryReceiptID"]);

                        result.UserI      = GetDbReaderValue <string>(reader["UserI"]);
                        result.InTime     = GetDbReaderValue <DateTime?>(reader["InTime"]);
                        result.UserU      = GetDbReaderValue <string>(reader["UserU"]);
                        result.UpdateTime = GetDbReaderValue <DateTime>(reader["UpdateTime"]);
                    }
                }
                return(result);
            }
        }
Example #6
0
        /// <summary>
        /// Hàm Insert Tài sản
        /// </summary>
        /// <param AnalyzerInfo="_Analyzer"></param>
        /// <param userInput="_userI"></param>
        /// <returns>Return List<AnalyzerInfo></returns>
        ///
        public int InsertAnalyzer(SqlConnection connection, AnalyzerInfo _Analyzer, int seq, string _userI)
        {
            int lastestInserted = 0;
            var currenttime     = DateTime.Now.Date;

            if (_Analyzer.AnalyzerCode == null || _Analyzer.AnalyzerCode == "")
            {
                _Analyzer.AnalyzerCode = DateTime.Now.ToString("yyMMddHHmmssfff");
            }
            using (var command = new SqlCommand("Insert into [dbo].[tbl_Analyzer] " +
                                                "(AnalyzerCode,AnalyzerAccountantCode,AnalyzerName, QuoteItemID, Description,Amount, ItemPrice, TotalPrice" +
                                                ", DepartmentRootID, DepartmentID, ContractCode, UserIContract, CustomerID, CustomerName, ExpirationDate, DateIn" +
                                                ", DeliveryReceiptID, Serial, UserI, UserU, UpdateTime, Seq, AnalyzerType)" +
                                                "VALUES(@AnalyzerCode,@AnalyzerAccountantCode, @AnalyzerName, @QuoteItemID , @Description,@Amount, @ItemPrice, @TotalPrice" +
                                                ", @DepartmentRootID, @DepartmentID, @ContractCode, @UserIContract, @CustomerID, @CustomerName, @ExpirationDate, @DateIn" +
                                                ", @DeliveryReceiptID, @Serial, @UserI, @UserI, Getdate(), @Seq, @AnalyzerType) " +
                                                "select IDENT_CURRENT('dbo.tbl_Analyzer') as LastInserted ", connection))
            {
                AddSqlParameter(command, "@AnalyzerCode", "", System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@AnalyzerAccountantCode", _Analyzer.AnalyzerAccountantCode, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@AnalyzerName", _Analyzer.AnalyzerName, System.Data.SqlDbType.NVarChar);
                AddSqlParameter(command, "@AnalyzerType", _Analyzer.AnalyzerType, System.Data.SqlDbType.Int);

                AddSqlParameter(command, "@QuoteItemID", _Analyzer.QuoteItemID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@Description", _Analyzer.Description, System.Data.SqlDbType.NVarChar);

                AddSqlParameter(command, "@Amount", _Analyzer.Amount, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@ItemPrice", _Analyzer.ItemPrice, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@TotalPrice", _Analyzer.TotalPrice, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@DepartmentRootID", _Analyzer.DepartmentRootID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@DepartmentID", _Analyzer.DepartmentID, System.Data.SqlDbType.Int);

                AddSqlParameter(command, "@ContractCode", _Analyzer.ContractCode, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@UserIContract", _Analyzer.UserIContract, System.Data.SqlDbType.VarChar);

                AddSqlParameter(command, "@CustomerID", _Analyzer.CustomerID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@CustomerName", _Analyzer.CustomerName, System.Data.SqlDbType.NVarChar);

                AddSqlParameter(command, "@ExpirationDate", _Analyzer.ExpirationDate, System.Data.SqlDbType.DateTime);
                AddSqlParameter(command, "@DateIn", _Analyzer.DateIn, System.Data.SqlDbType.DateTime);
                AddSqlParameter(command, "@DeliveryReceiptID", _Analyzer.DeliveryReceiptID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@Serial", _Analyzer.Serial, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@UserI", _userI, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@Seq", seq, System.Data.SqlDbType.Int);
                WriteLogExecutingCommand(command);

                var lastInsertedRaw = command.ExecuteScalar();
                if (lastInsertedRaw != null && !DBNull.Value.Equals(lastInsertedRaw))
                {
                    lastestInserted = Convert.ToInt32(lastInsertedRaw);
                }
            }

            return(lastestInserted);
        }
Example #7
0
        /// <summary>
        /// Hàm lấy tất cả tài sản
        /// </summary>
        /// <param name="connection"> </param>
        /// <returns>Return List<AnalyzerInfo></returns>
        ///
        public List <AnalyzerInfo> GetAllAnalyzer(SqlConnection connection)
        {
            var result = new List <AnalyzerInfo>();

            using (var command = new SqlCommand("Select AN.*, DR.DepartmentCode as DepartmentRootCode, DR.DepartmentName as DepartmentRootName, D.DepartmentCode as DepartmentCode, D.DepartmentName as DepartmentName  " +
                                                " from tbl_Analyzer AN  " +
                                                " LEFT JOIN tbl_department DR  on DR.DepartmentID  = AN.DepartmentRootID " +
                                                " LEFT JOIN tbl_department D  on D.DepartmentID  = AN.DepartmentID " +
                                                " where  1 = 1 order by AN.UpdateTime Desc ", connection))
            {
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var info = new AnalyzerInfo();
                        info.AnalyzerID             = GetDbReaderValue <int>(reader["AnalyzerID"]);
                        info.AnalyzerCode           = GetDbReaderValue <string>(reader["AnalyzerCode"]);
                        info.AnalyzerAccountantCode = GetDbReaderValue <string>(reader["AnalyzerAccountantCode"]);
                        info.AnalyzerName           = GetDbReaderValue <string>(reader["AnalyzerName"]);
                        info.QuoteItemID            = GetDbReaderValue <int>(reader["QuoteItemID"]);
                        info.Description            = GetDbReaderValue <string>(reader["Description"]);
                        info.Amount       = GetDbReaderValue <double>(reader["Amount"]);
                        info.ItemPrice    = GetDbReaderValue <double>(reader["ItemPrice"]);
                        info.TotalPrice   = GetDbReaderValue <double>(reader["TotalPrice"]);
                        info.AnalyzerType = GetDbReaderValue <int>(reader["AnalyzerType"]);

                        info.DepartmentRootID   = GetDbReaderValue <int>(reader["DepartmentRootID"]);
                        info.DepartmentRootCode = GetDbReaderValue <string>(reader["DepartmentRootCode"]);
                        info.DepartmentRootName = GetDbReaderValue <string>(reader["DepartmentRootName"]);
                        info.DepartmentID       = GetDbReaderValue <int>(reader["DepartmentID"]);
                        info.DepartmentCode     = GetDbReaderValue <string>(reader["DepartmentCode"]);
                        info.DepartmentName     = GetDbReaderValue <string>(reader["DepartmentName"]);

                        info.ContractCode  = GetDbReaderValue <string>(reader["ContractCode"]);
                        info.UserIContract = GetDbReaderValue <string>(reader["UserIContract"]);

                        info.CustomerID   = GetDbReaderValue <int>(reader["CustomerID"]);
                        info.CustomerName = GetDbReaderValue <string>(reader["CustomerName"]);

                        info.Serial            = GetDbReaderValue <string>(reader["Serial"]);
                        info.ExpirationDate    = GetDbReaderValue <DateTime?>(reader["ExpirationDate"]);
                        info.DateIn            = GetDbReaderValue <DateTime>(reader["DateIn"]);
                        info.DeliveryReceiptID = GetDbReaderValue <int>(reader["DeliveryReceiptID"]);

                        info.UserI      = GetDbReaderValue <string>(reader["UserI"]);
                        info.InTime     = GetDbReaderValue <DateTime?>(reader["InTime"]);
                        info.UserU      = GetDbReaderValue <string>(reader["UserU"]);
                        info.UpdateTime = GetDbReaderValue <DateTime>(reader["UpdateTime"]);
                        result.Add(info);
                    }
                }
                return(result);
            }
        }
Example #8
0
        protected IAnalyzer CreateAnalyzer(Type type)
        {
            var analyzerName = type.Name;

            var analyzerInfo = new AnalyzerInfo
            {
                Name = analyzerName,
                Type = type
            };

            return(analyzerInfo);
        }
Example #9
0
        public AnalyzerInfo getAnalyzer(int _ID)
        {
            AnalyzerInfo         record        = new AnalyzerInfo();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                record = AnalyzerDataLayer.GetInstance().getAnalyzer(connection, _ID);
                if (record == null)
                {
                    return(null);
                }
                return(record);
            }
        }
Example #10
0
        public async Task <ActionMessage> Put(int id, [FromBody] AnalyzerInfo _Analyzer)
        {
            ActionMessage ret = new ActionMessage();

            try
            {
                ret = await AnalyzerService.GetInstance().editAnalyzer(id, _Analyzer, GetUserId());
            }
            catch (Exception ex)
            {
                ret.isSuccess     = false;
                ret.err.msgCode   = "Internal Error !!!";
                ret.err.msgString = ex.ToString();
            }
            return(ret);
        }
Example #11
0
        public ActionMessage Post([FromBody] AnalyzerInfo _Analyzer)
        {
            ActionMessage ret = new ActionMessage();

            try
            {
                ret = AnalyzerService.GetInstance().createAnalyzer(_Analyzer, GetUserId());
            }
            catch (Exception ex)
            {
                ret.isSuccess     = false;
                ret.err.msgCode   = "Internal Error !!!";
                ret.err.msgString = ex.ToString();
            }
            return(ret);
        }
Example #12
0
        public AnalyzerInfo GetAnalyzerByCode(string code)
        {
            AnalyzerInfo         record        = new AnalyzerInfo();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                record = AnalyzerDataLayer.GetInstance().GetAnalyzerByCode(connection, code);
                if (record == null)
                {
                    return(null);
                }

                return(record);
            }
        }
Example #13
0
        /// <summary>
        /// Hàm Update Tài sản
        /// </summary>
        /// <param AnalyzerInfo="_Analyzer"></param>
        /// <param userInput="_userI"></param>
        /// <returns>Return List<AnalyzerInfo></returns>
        ///
        public void UpdateAnalyzer(SqlConnection connection, int _id, AnalyzerInfo _Analyzer, string _userU)
        {
            using (var command = new SqlCommand("UPDATE tbl_Analyzer \n" +
                                                " SET  AnalyzerCode = @AnalyzerCode ,AnalyzerAccountantCode = @AnalyzerAccountantCode " +
                                                ",  AnalyzerName = @AnalyzerName , QuoteItemID= @QuoteItemID,Description = @Description  " +
                                                ", Amount=@Amount ,ItemPrice = @ItemPrice ,TotalPrice = @TotalPrice " +
                                                ", DepartmentRootID=@DepartmentRootID ,DepartmentID = @DepartmentID ,ContractCode = @ContractCode ,UserIContract = @UserIContract " +
                                                ", CustomerID=@CustomerID ,ExpirationDate = @ExpirationDate" +
                                                ", DateIn=@DateIn , DeliveryReceiptID = @DeliveryReceiptID " +
                                                ", Serial=@Serial , UserU=@UserU,UpdateTime=getdate()" +
                                                ", AnalyzerType = @AnalyzerType  \n" +
                                                " WHERE (AnalyzerID = @AnalyzerID) ", connection))

            {
                AddSqlParameter(command, "@AnalyzerID", _id, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@AnalyzerCode", _Analyzer.AnalyzerCode, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@AnalyzerAccountantCode", _Analyzer.AnalyzerAccountantCode, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@AnalyzerName", _Analyzer.AnalyzerName, System.Data.SqlDbType.NVarChar);
                AddSqlParameter(command, "@AnalyzerType", _Analyzer.AnalyzerType, System.Data.SqlDbType.Int);

                AddSqlParameter(command, "@QuoteItemID", _Analyzer.QuoteItemID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@Description", _Analyzer.Description, System.Data.SqlDbType.NVarChar);

                AddSqlParameter(command, "@Amount", _Analyzer.Amount, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@ItemPrice", _Analyzer.ItemPrice, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@TotalPrice", _Analyzer.TotalPrice, System.Data.SqlDbType.Float);
                AddSqlParameter(command, "@DepartmentRootID", _Analyzer.DepartmentRootID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@DepartmentID", _Analyzer.DepartmentID, System.Data.SqlDbType.Int);

                AddSqlParameter(command, "@ContractCode", _Analyzer.ContractCode, System.Data.SqlDbType.VarChar);
                AddSqlParameter(command, "@UserIContract", _Analyzer.UserIContract, System.Data.SqlDbType.VarChar);

                AddSqlParameter(command, "@CustomerID", _Analyzer.CustomerID, System.Data.SqlDbType.Int);

                AddSqlParameter(command, "@ExpirationDate", _Analyzer.ExpirationDate, System.Data.SqlDbType.DateTime);
                AddSqlParameter(command, "@DateIn", _Analyzer.DateIn, System.Data.SqlDbType.DateTime);
                AddSqlParameter(command, "@DeliveryReceiptID", _Analyzer.DeliveryReceiptID, System.Data.SqlDbType.Int);
                AddSqlParameter(command, "@Serial", _Analyzer.Serial, System.Data.SqlDbType.VarChar);

                AddSqlParameter(command, "@UserU", _userU, System.Data.SqlDbType.VarChar);
                WriteLogExecutingCommand(command);

                command.ExecuteScalar();
            }
        }
Example #14
0
        public ActionMessage createAnalyzer(AnalyzerInfo _Analyzer, string _userI)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    //ret.id = AnalyzerDataLayer.GetInstance().InsertAnalyzer(connection, _Analyzer, _userI);
                    ret.isSuccess = true;
                }
                catch (Exception ex)
                {
                    ret.isSuccess     = false;
                    ret.err.msgCode   = "123";
                    ret.err.msgString = ex.Message;
                }
            }
            return(ret);
        }
Example #15
0
        public async Task <ActionMessage> editAnalyzer(int id, AnalyzerInfo _Analyzer, string _userU)
        {
            ActionMessage        ret           = new ActionMessage();
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                var chkAnalyzerInfo = AnalyzerDataLayer.GetInstance().getAnalyzer(connection, id);
                if (chkAnalyzerInfo != null)
                {
                    try
                    {
                        AnalyzerDataLayer.GetInstance().UpdateAnalyzer(connection, id, _Analyzer, _userU);
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }
                ret.isSuccess = true;
                return(ret);
            }
        }
Example #16
0
        private static void Main(string[] args)
        {
            if (args == null || args.Length == 0)
            {
#if DEBUG
                args = new string[] { @"..\..\..\.." };
#else
                args = new string[] { Environment.CurrentDirectory };
#endif
            }

            string dirPath = args[0];

            SortRefactoringsInFile(Path.Combine(dirPath, @"Refactorings\Refactorings.xml"));

            var generator = new Generator();

            foreach (RefactoringInfo refactoring in RefactoringInfo
                     .LoadFromFile(Path.Combine(dirPath, @"Refactorings\Refactorings.xml"))
                     .OrderBy(f => f.Identifier, StringComparer.InvariantCulture))
            {
                generator.Refactorings.Add(refactoring);
            }

            Console.WriteLine($"number of refactorings: {generator.Refactorings.Count}");

            foreach (AnalyzerInfo analyzer in AnalyzerInfo
                     .LoadFromFile(Path.Combine(dirPath, @"Analyzers\Analyzers.xml"))
                     .OrderBy(f => f.Id, StringComparer.InvariantCulture))
            {
                generator.Analyzers.Add(analyzer);
            }

            Console.WriteLine($"number of analyzers: {generator.Analyzers.Count}");

            var writer = new CodeFileWriter();

            writer.SaveCode(
                Path.Combine(dirPath, @"Analyzers\Analyzers.xml"),
                generator.CreateAnalyzersXml());

            writer.SaveCode(
                Path.Combine(dirPath, @"VisualStudio\description.txt"),
                generator.CreateAnalyzersExtensionDescription());

            writer.SaveCode(
                Path.Combine(dirPath, @"VisualStudio.Refactorings\description.txt"),
                generator.CreateRefactoringsExtensionDescription());

            writer.SaveCode(
                Path.Combine(Path.GetDirectoryName(dirPath), @"README.md"),
                generator.CreateReadMeMarkDown());

            foreach (string imagePath in generator.FindMissingImages(Path.Combine(Path.GetDirectoryName(dirPath), @"images\refactorings")))
            {
                Console.WriteLine($"missing image: {imagePath}");
            }

            writer.SaveCode(
                Path.Combine(dirPath, @"Refactorings\README.md"),
                generator.CreateRefactoringsMarkDown());

            writer.SaveCode(
                Path.Combine(dirPath, @"Analyzers\README.md"),
                generator.CreateAnalyzersMarkDown());

            writer.SaveCode(
                Path.Combine(dirPath, @"Analyzers\AnalyzersByCategory.md"),
                generator.CreateAnalyzersByCategoryMarkDown());

#if DEBUG
            Console.WriteLine("DONE");
            Console.ReadKey();
#endif
        }
Example #17
0
        public string CreateAnalyzersXml()
        {
            FieldInfo[] fieldInfos = typeof(DiagnosticDescriptors).GetFields(BindingFlags.Public | BindingFlags.Static);

            var doc = new XDocument();

            var root = new XElement("Analyzers");

            foreach (FieldInfo fieldInfo in fieldInfos.OrderBy(f => ((DiagnosticDescriptor)f.GetValue(null)).Id))
            {
                if (fieldInfo.Name.EndsWith("FadeOut"))
                {
                    continue;
                }

                var descriptor = (DiagnosticDescriptor)fieldInfo.GetValue(null);

                AnalyzerInfo analyzer = Analyzers.FirstOrDefault(f => string.Equals(f.Id, descriptor.Id, StringComparison.CurrentCulture));

                string extensionVersion = "0.0.0";
                string nugetVersion     = "0.0.0";

                if (analyzer != null)
                {
                    extensionVersion = analyzer.ExtensionVersion;
                    nugetVersion     = analyzer.NuGetVersion;
                }

                analyzer = new AnalyzerInfo(
                    fieldInfo.Name,
                    descriptor.Title.ToString(),
                    descriptor.Id,
                    descriptor.Category,
                    descriptor.DefaultSeverity.ToString(),
                    extensionVersion,
                    nugetVersion,
                    descriptor.IsEnabledByDefault,
                    descriptor.CustomTags.Contains(WellKnownDiagnosticTags.Unnecessary),
                    fieldInfos.Any(f => f.Name == fieldInfo.Name + "FadeOut"));

                root.Add(new XElement(
                             "Analyzer",
                             new XAttribute("Identifier", analyzer.Identifier),
                             new XAttribute("ExtensionVersion", analyzer.ExtensionVersion),
                             new XAttribute("NuGetVersion", analyzer.NuGetVersion),
                             new XElement("Id", analyzer.Id),
                             new XElement("Title", analyzer.Title),
                             new XElement("Category", analyzer.Category),
                             new XElement("DefaultSeverity", analyzer.DefaultSeverity),
                             new XElement("IsEnabledByDefault", analyzer.IsEnabledByDefault),
                             new XElement("SupportsFadeOut", analyzer.SupportsFadeOut),
                             new XElement("SupportsFadeOutAnalyzer", analyzer.SupportsFadeOutAnalyzer)
                             ));
            }

            doc.Add(root);

            using (var sw = new Utf8StringWriter())
            {
                doc.Save(sw);

                return(sw.ToString());
            }
        }
Example #18
0
        /// <summary>
        /// Hàm lấy danh sách tài sản
        /// </summary>
        /// <param Criteria="_criteria"> </param>
        /// <returns>Return List<AnalyzerInfo></returns>
        ///
        public List <AnalyzerInfo> getAnalyzer(SqlConnection connection, AnalyzerSeachCriteria _criteria)
        {
            var result = new List <AnalyzerInfo>();

            using (var command = new SqlCommand(" Select AN.*, DR.DepartmentCode as DepartmentRootCode, DR.DepartmentName as DepartmentRootName, D.DepartmentCode as DepartmentCode, D.DepartmentName as DepartmentName " +
                                                " from (Select " +
                                                "AN.* " +
                                                " from tbl_Analyzer AN where  1 = 1 and AN.InTime between @FromDate and @ToDate", connection))
            {
                AddSqlParameter(command, "@FromDate", _criteria.FromDate.Value.ToString("yyyy-MM-dd 00:00:00"), System.Data.SqlDbType.DateTime);
                AddSqlParameter(command, "@ToDate", _criteria.ToDate.Value.ToString("yyyy-MM-dd 23:59:59"), System.Data.SqlDbType.DateTime);

                if (!string.IsNullOrEmpty(_criteria.AnalyzerCode))
                {
                    command.CommandText += " and AN.AnalyzerCode = @AnalyzerCode";
                    AddSqlParameter(command, "@AnalyzerCode", _criteria.AnalyzerCode, System.Data.SqlDbType.NVarChar);
                }

                if (!string.IsNullOrEmpty(_criteria.DepartmentID))
                {
                    command.CommandText += " and AN.DepartmentID = @DepartmentID";
                    AddSqlParameter(command, "@DepartmentID", _criteria.DepartmentID, System.Data.SqlDbType.Int);
                }

                if (!string.IsNullOrEmpty(_criteria.CustomerID))
                {
                    command.CommandText += " and AN.CustomerID = @CustomerID";
                    AddSqlParameter(command, "@CustomerID", _criteria.CustomerID, System.Data.SqlDbType.Int);
                }

                command.CommandText += " ) as AN " +
                                       " LEFT JOIN tbl_department DR  on DR.DepartmentID  = AN.DepartmentRootID " +
                                       " LEFT JOIN tbl_department D  on D.DepartmentID  = AN.DepartmentID " +
                                       " where  1 = 1 ";

                command.CommandText += " order by AN.UpdateTime Desc ";
                WriteLogExecutingCommand(command);
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var info = new AnalyzerInfo();
                        info.AnalyzerID             = GetDbReaderValue <int>(reader["AnalyzerID"]);
                        info.AnalyzerCode           = GetDbReaderValue <string>(reader["AnalyzerCode"]);
                        info.AnalyzerAccountantCode = GetDbReaderValue <string>(reader["AnalyzerAccountantCode"]);
                        info.AnalyzerName           = GetDbReaderValue <string>(reader["AnalyzerName"]);
                        info.QuoteItemID            = GetDbReaderValue <int>(reader["QuoteItemID"]);
                        info.Description            = GetDbReaderValue <string>(reader["Description"]);
                        info.Amount       = GetDbReaderValue <double>(reader["Amount"]);
                        info.ItemPrice    = GetDbReaderValue <double>(reader["ItemPrice"]);
                        info.TotalPrice   = GetDbReaderValue <double>(reader["TotalPrice"]);
                        info.AnalyzerType = GetDbReaderValue <int>(reader["AnalyzerType"]);

                        info.DepartmentRootID   = GetDbReaderValue <int>(reader["DepartmentRootID"]);
                        info.DepartmentRootCode = GetDbReaderValue <string>(reader["DepartmentRootCode"]);
                        info.DepartmentRootName = GetDbReaderValue <string>(reader["DepartmentRootName"]);
                        info.DepartmentID       = GetDbReaderValue <int>(reader["DepartmentID"]);
                        info.DepartmentCode     = GetDbReaderValue <string>(reader["DepartmentCode"]);
                        info.DepartmentName     = GetDbReaderValue <string>(reader["DepartmentName"]);

                        info.ContractCode  = GetDbReaderValue <string>(reader["ContractCode"]);
                        info.UserIContract = GetDbReaderValue <string>(reader["UserIContract"]);

                        info.CustomerID   = GetDbReaderValue <int>(reader["CustomerID"]);
                        info.CustomerName = GetDbReaderValue <string>(reader["CustomerName"]);

                        info.Serial            = GetDbReaderValue <string>(reader["Serial"]);
                        info.ExpirationDate    = GetDbReaderValue <DateTime?>(reader["ExpirationDate"]);
                        info.DateIn            = GetDbReaderValue <DateTime>(reader["DateIn"]);
                        info.DeliveryReceiptID = GetDbReaderValue <int>(reader["DeliveryReceiptID"]);

                        info.UserI      = GetDbReaderValue <string>(reader["UserI"]);
                        info.InTime     = GetDbReaderValue <DateTime?>(reader["InTime"]);
                        info.UserU      = GetDbReaderValue <string>(reader["UserU"]);
                        info.UpdateTime = GetDbReaderValue <DateTime>(reader["UpdateTime"]);
                        result.Add(info);
                    }
                }
                return(result);
            }
        }
Example #19
0
        //Analyzer by date
        //Nguyen Minh Hoang
        public List <AnalyzerInfo> GetAnalyzerByDate(SqlConnection connection, AnalyzerSeachCriteria _criteria)
        {
            List <AnalyzerInfo> result = new List <AnalyzerInfo>();

            using (var command = new SqlCommand(
                       " select *,D.DepartmentName as CurentDepartment, DR.DeliveryReceiptDate from " +
                       " tbl_Analyzer A left join tbl_Department D on A.DepartmentID = D.DepartmentID  " +
                       " left join tbl_DeliveryReceipt DR on A.DeliveryReceiptID = DR.DeliveryReceiptID " +
                       " where 1=1 "
                       , connection))
            {
                command.CommandText += " and A.DateIn between @start and @end ";
                AddSqlParameter(command, "@start", _criteria.FromDate, System.Data.SqlDbType.Date);
                AddSqlParameter(command, "@end", _criteria.ToDate, System.Data.SqlDbType.Date);

                if (!string.IsNullOrEmpty(_criteria.DepartmentName))
                {
                    command.CommandText += " and D.DepartmentName like N'%" + _criteria.DepartmentName + "%' ";
                }
                if (!string.IsNullOrEmpty(_criteria.CustomerName))
                {
                    command.CommandText += " and D.CustomerName like N'%" + _criteria.CustomerName + "%' ";
                }

                WriteLogExecutingCommand(command);
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var info = new AnalyzerInfo();
                        info.AnalyzerID             = GetDbReaderValue <int>(reader["AnalyzerID"]);
                        info.AnalyzerCode           = GetDbReaderValue <string>(reader["AnalyzerCode"]);
                        info.AnalyzerAccountantCode = GetDbReaderValue <string>(reader["AnalyzerAccountantCode"]);
                        info.AnalyzerName           = GetDbReaderValue <string>(reader["AnalyzerName"]);
                        info.AnalyzerGroupID        = GetDbReaderValue <int>(reader["AnalyzerGroupID"]);
                        info.QuoteItemID            = GetDbReaderValue <int>(reader["QuoteItemID"]);
                        info.Description            = GetDbReaderValue <string>(reader["Description"]);
                        info.Amount              = GetDbReaderValue <double>(reader["Amount"]);
                        info.ItemPrice           = GetDbReaderValue <double>(reader["ItemPrice"]);
                        info.TotalPrice          = GetDbReaderValue <double>(reader["TotalPrice"]);
                        info.DepartmentRootID    = GetDbReaderValue <int>(reader["DepartmentRootID"]);
                        info.DepartmentID        = GetDbReaderValue <int>(reader["DepartmentID"]);
                        info.DepartmentName      = GetDbReaderValue <string>(reader["CurentDepartment"]);
                        info.ContractCode        = GetDbReaderValue <string>(reader["ContractCode"]);
                        info.UserIContract       = GetDbReaderValue <string>(reader["UserIContract"]);
                        info.CustomerName        = GetDbReaderValue <string?>(reader["CustomerName"]);
                        info.ExpirationDate      = GetDbReaderValue <DateTime>(reader["ExpirationDate"]);
                        info.DateIn              = GetDbReaderValue <DateTime>(reader["DateIn"]);
                        info.DeliveryReceiptID   = GetDbReaderValue <int>(reader["DeliveryReceiptID"]);
                        info.Serial              = GetDbReaderValue <string>(reader["Serial"]);
                        info.UserI               = GetDbReaderValue <string>(reader["UserI"]);
                        info.InTime              = GetDbReaderValue <DateTime?>(reader["InTime"]);
                        info.UserU               = GetDbReaderValue <string>(reader["UserU"]);
                        info.UpdateTime          = GetDbReaderValue <DateTime>(reader["UpdateTime"]);
                        info.DeliveryReceiptDate = GetDbReaderValue <DateTime>(reader["DeliveryReceiptDate"]);
                        info.AnalyzerType        = GetDbReaderValue <int>(reader["AnalyzerType"]);
                        result.Add(info);
                    }
                }
                return(result);
            }
        }
Example #20
0
 public void Reset()
 {
     AnalyzerInfo.Clear();
 }
        public async Task <ActionMessage> Create(DeliveryReceiptInfo obj, [FromForm] List <IFormFile> files, string _userI, string _userID)
        {
            ActionMessage        ret           = new ActionMessage();
            int                  insetId       = -1;
            SqlConnectionFactory sqlConnection = new SqlConnectionFactory();

            using (SqlConnection connection = sqlConnection.GetConnection())
            {
                try
                {
                    insetId = DeliveryReceiptDataLayer.GetInstance().Create(connection, obj, _userI);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            if (insetId > -1)
            {
                ret.id = insetId;
                using (SqlConnection connection = sqlConnection.GetConnection())
                {
                    try
                    {
                        if (obj.Items != null)
                        {
                            // insertEmployees(insetId, obj.Employees);
                            foreach (DeliveryReceiptItemInfoNew item in obj.Items)
                            {
                                item.DeliveryReceiptID = insetId;
                                if (item.Amount > 0)
                                {
                                    //input tai san
                                    DeliveryReceiptWithDepartment deliveryReceipt = DeliveryReceiptDataLayer.GetInstance().getItemCreateAna(connection, item.DeliveryReceiptID, _userID);
                                    AnalyzerInfo analyzerInfo = new AnalyzerInfo()
                                    {
                                        AnalyzerAccountantCode = "",
                                        AnalyzerName           = item.ItemName,
                                        AnalyzerType           = 0,

                                        QuoteItemID = item.QuoteItemID,
                                        Description = "",

                                        Amount           = item.Amount,
                                        ItemPrice        = item.ItemPrice,
                                        TotalPrice       = item.TotalPrice,
                                        DepartmentRootID = deliveryReceipt.DepartmentID,
                                        DepartmentID     = deliveryReceipt.DepartmentID,

                                        ContractCode  = deliveryReceipt.ContractCode,
                                        UserIContract = deliveryReceipt.UserIContract,
                                        CustomerID    = deliveryReceipt.CustomerID,
                                        CustomerName  = deliveryReceipt.CustomerName,

                                        ExpirationDate    = DateTime.Now,
                                        DateIn            = obj.DeliveryReceiptDate,
                                        DeliveryReceiptID = item.DeliveryReceiptID,
                                        Serial            = "",
                                    };

                                    int seq      = AnalyzerDataLayer.GetInstance().GetMaxPropCode(connection, analyzerInfo.DateIn.Year);
                                    int insertID = AnalyzerDataLayer.GetInstance().InsertAnalyzer(connection, analyzerInfo, seq, _userI);

                                    string[] _anaNamesSplit = analyzerInfo.AnalyzerName.Split(' ');
                                    string   _anaNameSplit  = "";
                                    for (int i = 0; i < _anaNamesSplit.Count(); i++)
                                    {
                                        if (i == 4)
                                        {
                                            break;
                                        }
                                        else
                                        {
                                            _anaNameSplit += (_anaNamesSplit[i][0]).ToString().ToUpper();
                                        }
                                    }
                                    string anacode = _anaNameSplit + "." + analyzerInfo.DateIn.Year + "." + String.Format("{0:000000}", seq);
                                    AnalyzerDataLayer.GetInstance().UpdateAnalyzer(connection, insertID, anacode);
                                    // end insert
                                    DeliveryReceiptDataLayer.GetInstance().CreateDeliveryReceiptItem(connection, item, _userI);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }

                using (SqlConnection connection = sqlConnection.GetConnection())
                {
                    try
                    {
                        if (obj.Employees != null)
                        {
                            foreach (DeliveryReceiptEmployeeInfo item in obj.Employees)
                            {
                                item.DeliveryReceiptID = insetId;
                                DeliveryReceiptDataLayer.GetInstance().CreateDeliveryReceiptItemUser(connection, item, _userI);
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }

                foreach (var item in files)
                {
                    DocumentInfo documentInfo = new DocumentInfo();
                    documentInfo.TableName = TableFile.DeliveryReceipt.ToString();
                    documentInfo.PreferId  = insetId.ToString();
                    documentInfo.Link      = DateTime.Now.ToString("yyMMddHHmmssfff") + "-" + Utils.ChuyenTVKhongDau(item.FileName);
                    documentInfo.FileName  = item.FileName;
                    documentInfo.Length    = item.Length.ToString();
                    documentInfo.Type      = item.ContentType;
                    ret = await FilesHelpers.UploadFile(TableFile.DeliveryReceipt.ToString(), insetId.ToString(), item, documentInfo.Link);

                    DocumentService.GetInstance().InsertDocument(documentInfo, _userI.ToString());
                }
                ret.isSuccess = true;
            }
            else
            {
                ret.isSuccess     = false;
                ret.err.msgCode   = "lỗi thêm phiếu nghiệm thu";
                ret.err.msgString = "lỗi thêm phiếu nghiệm thu";
            }
            return(ret);
        }
Example #22
0
 public void AddAnalyzerInfoToSnapShot(AnalyzerEngine.AnalyzerInstanceInfo info)
 {
     AnalyzerInfo.AddOrUpdate(info.Name, info, (key, oldValue) => info);
 }