1. Список говнокодов пользователя svetkeen

    Всего: 3

  2. C# / Говнокод #18089

    +142

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    public List<MainTZInfoVO> GetMyJobs(bool flag1, bool flag2, bool flag3, bool flag4, string date1, string date2)
    {
        List<MainTZInfoVO> ulist = new List<MainTZInfoVO>();  // список заданий пользователя
        string sIdUser = usr.GetUserOrAssistansID().ToString();   // ID пользователя
        
        //выданы мне задания
        string sql1 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '1' as NOT_RECEIVED from tz_all_jobs where (trim(id_ispol) like '%,'||'" + sIdUser + "'||',%' or trim(id_ispol) like '" + sIdUser + "'||',%') and (status='Выдано' or status = 'Отклонено частично') and nvl(id_prin,' ') not like  '%,'||'" + sIdUser + "'||',%' and  nvl(id_prin,' ') not like '" + sIdUser + "'||',%' and nvl(id_otkl,' ') not like  '%,'||'" + sIdUser + "'||',%' and  nvl(id_otkl,' ') not like '" + sIdUser + "'||',%'";
        //принятые мной, не рассмотренные другими
        string sql2 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '0' as NOT_RECEIVED from tz_all_jobs where (status='Выдано' or status = 'Отклонено частично') and (nvl(id_prin,' ')  like  '%,'||'" + sIdUser + "'||',%' or  nvl(id_prin,' ')  like '" + sIdUser + "'||',%' or nvl(id_otkl,' ')  like  '%,'||'" + sIdUser + "'||',%' or  nvl(id_otkl,' ')  like '" + sIdUser + "'||',%')";
        //выданные мне в статусе отклонено
        string sql3 = "select ID_TZ as ID, DATE_VYD, DESCR, SODER, STATUS||' '||CASE WHEN NVL(LAST_TZ,'0')=1 THEN chr(10)||' !Последнее' END as STATUS, '2' as NOT_RECEIVED from tz_all_jobs where  (id_ispol like '%,'||'" + sIdUser + "'||',%' or id_ispol like '" + sIdUser + "'||',%') and (status='Отклонено' or status='Аннулировано')";
        //ограничение по дате
        string sql4 = "date_vyd between to_date('" + date1 + "','DD.MM.YYYY') and to_date('" + date2 + "','DD.MM.YYYY')";
        string sql = " ";
        //формируем sql-ку по флажкам, которые передаем в функцию
        if (flag1 == true)
        {
            sql = sql1;
        }
        if (flag2 == true)
        {
            if (sql.Length > 1)
            {
                sql = sql + " union " + sql2;
            }
            else
            {
                sql = sql2;
            }
        }
        if (flag3 == true)
        {
            if (sql.Length > 1)
            {
                sql = sql + " union " + sql3;
            }
            else
            {
                sql = sql3;
            }
        }
        if ((flag4 == true) & (sql.Length > 1))
        {
            sql = "select * from (" + sql + ") tabl where " + sql4;
        }
        sql = sql + " order by date_vyd desc";
    
        OracleCommand cmd = new OracleCommand(sql, connection);
        OracleDataReader reader = cmd.ExecuteReader();
        //ТУТ ПЕРЕДЕЛАТЬ ВСЕ
        /*заполнение полей из ридера*/
        while (reader.Read())
        {
            //...
        }
        return ulist; 
    }

    в этом коде прекрасно все (имена и типы переменных, жестокое обращение с датами, чуть менее жестокое обращения с "флажками", соединение с Ораклом, которое открывается где-то за пределами вселенной и не закрывается нигде, и еще много всего)...
    дочитав этот шедевр до строчки //ТУТ ПЕРЕДЕЛАТЬ ВСЕ, просто невозможно не прослезиться...

    svetkeen, 29 Апреля 2015

    Комментарии (0)
  3. C# / Говнокод #18000

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    try
    {
        if (!InitConnectionString())
            throw new Exception("Не инициализирована строка подключения");
        oraConnection.Open();
        // еще какой-то код, в котором тоже может быть исключение
    }
    catch
    {
        // запись в лог сообщения об ошибке
        oraConnection.Close();
        oraConnection.Open();
        OracleConnection.ClearPool(oraConnection);
    }

    так с OracleConnection еще никто не обращался((

    svetkeen, 15 Апреля 2015

    Комментарии (8)
  4. C# / Говнокод #17999

    +890

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Int64 iObjectId;
    
    public Int64 ObjectId
    {
        get { return iObjectId; }
        set {
             if (iObjectId == null) { value = 0; } else value = iObjectId;
        }
    }

    Помимо того, что условие (iObjectId == null) никогда не выполняется, сеттер еще и делает свойство ObjectId фактически readonly.
    (Авторское форматирование кода сохранено.)

    svetkeen, 15 Апреля 2015

    Комментарии (11)