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

    Всего: 101

  2. Java / Говнокод #9644

    +70

    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
    public boolean getSuccessSubmitted() {
        for (ReportDto report : getReports()) {
           if (!(report.getOrder().getReceiptDate() != null && report.getReportReceived())) {
               return false;
           }
        }
        return !(getReports().isEmpty());
    }
    
    public boolean getUnSuccessSubmitted(){
        for (ReportDto report : getReports()) {
            if (!(report.getOrder().getOrderDate() != null && !(report.getReportReceived()))) {
                return false;
            }
        }
        return !(getReports().isEmpty());
    }

    для классического трио нехватает лишь getFailSubmitted()

    roman-kashitsyn, 11 Марта 2012

    Комментарии (6)
  3. Java / Говнокод #9588

    +67

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public static boolean areEquals(Object [] ... paires){
            for(Object [] paire : paires){
                if(paire[0] == null || !paire[0].equals(paire[1])){
                    return false;
                }
            }
            return true;
        }

    Целый день убил из-за этого говна

    roman-kashitsyn, 02 Марта 2012

    Комментарии (12)
  4. Java / Говнокод #9530

    +82

    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
    private static final String QUERY = 
            new StringBuffer("SELECT p.id FROM policysummary p ") 
                .append(" WHERE p.currentRevisionInd     = 1 ") 
                .append("AND p.policyStatusCd          IN ('issued') ") 
                .append("AND p.timedPolicyStatusCd     IN ('inForce') ") 
                .append("AND p.txType                  IN ('policy','renewal','endorsement','reinstatement') ") 
                .append("AND p.expiration <= :requestDate ") 
                .append("AND :requestDate <= (p.expiration + :requestTo) ") 
                .append("AND NOT EXISTS ") 
                .append("  (SELECT prs.id ") 
                .append("  FROM PolicyReportStatus prs ") 
                .append("  WHERE prs.policyId  = p.id ") 
                .append("  AND prs.mvrOrderDt IS NOT NULL ") 
                .append("  )") 
                .toString();

    Недавно выдавили заграничные коллеги

    roman-kashitsyn, 24 Февраля 2012

    Комментарии (27)
  5. JavaScript / Говнокод #9308

    +145

    1. 1
    2. 2
    3. 3
    if($('headerForm:topCancelLink')){
        $('headerForm:topCancelLink').style.display='block';
    }

    Зачем использовать CSS, если есть prototype?

    roman-kashitsyn, 03 Февраля 2012

    Комментарии (6)
  6. Java / Говнокод #9295

    +73

    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
    if (!policyIds.isEmpty()) {
        AtomicInteger recordCount = new AtomicInteger(0);  // <- WTF?!!!!
        try {
            for (final BigDecimal policyId : policyIds) {
                helper.processPolicy(policyId.longValue(), /* ещё 7 параметров */ recordCount);
            }
        } catch (IOException e) {
                    // код обработки исключения опущен
        }
        saveToFile(ctx, fileName, outputStream.toByteArray(), recordCount);
    }
    
    // А вот что делает helper.processPolicy
    if (selector.matches(policy)) {
        if (processRequestImpl(policy, ctx, fileName, outputStream, ioService, outputDir, applicationContext)) {
            recordCount.getAndAdd(1);
        }
    }

    Integer иммутабелен? Не проблема!

    roman-kashitsyn, 02 Февраля 2012

    Комментарии (18)
  7. Java / Говнокод #9217

    +64

    1. 1
    2. 2
    3. 3
    if (MaritalStatus.S == prevMaritalStatus && MaritalStatus.M == maritalStatus) {
        studentOver100MilesFromHome = false;
    }

    Философский код

    roman-kashitsyn, 25 Января 2012

    Комментарии (10)
  8. Java / Говнокод #9089

    +81

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public void getApplicationContext(ApplicationContext applicationContext ) {
        applicationContext.setUserId(currentUserService.getCurrentUser().getName());
        applicationContext.setTransactionType(transactionType);
        applicationContext.setApplication(applicationName);
        applicationContext.setSubSystem(subSystemName);
        applicationContext.setAddress(ipAddress);
        applicationContext.setCorrelationId(correlationIDGenerator.getRandomGUID());
    }

    *facepalm*

    roman-kashitsyn, 12 Января 2012

    Комментарии (8)
  9. Java / Говнокод #8904

    +78

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    while (entityIterator.hasNext()) {
        Object[] results = entityIterator.next();
        Long policyId = ((PolicyEntity) results[0]).getId();
        PolicyEntity policy = (PolicyEntity) policyDao.findById(policyId);
        processPolicy(policy);
    }

    Спецально не рефакторил этот шедевр, ждал, пока ГК поднимется.

    roman-kashitsyn, 05 Января 2012

    Комментарии (44)
  10. Java / Говнокод #8836

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private static final BigDecimal $150 = BigDecimal.valueOf(150);
    private static final BigDecimal $500 = BigDecimal.valueOf(500);
    private static final BigDecimal $751 = BigDecimal.valueOf(751);
    
    // rule example
    all(
        paymentOfType(COMPREHENSIVE, greaterOrEqual($500)),
        noPaymentsButComprehensive
    ).mapTo(result(ACTIVITY_TYPE_ACC, COMPREHENSIVE_OVER_500))

    Код мой. Есть таблица правил (в Excel), по которой нужно классифицировать некие объекты. Все правила собраны в одном классе и представляют из себя конструкции наподобие той, что в топике.
    У меня с остальной частью команды возник конфликт по поводу наименования констант: все считают, что называть константы как $500 - сущее зло, а правильно называть MAX_AMOUNT_FOR_COMP_OVER_500. Я считаю, что $500 - это 500 долларов, блеать, а константа нужна только в одном месте и для читаемости. Мне по сути пофигу, как называется константа, интересно узнать ваше мнение.
    наболело

    roman-kashitsyn, 15 Декабря 2011

    Комментарии (35)
  11. Java / Говнокод #8799

    +84

    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
    private enum FolderType{inbound, outbound, archive, rejected}
    
    private String inboundName = "inbound";
    private String outboundName = "outbound";
    private String archiveName = "archive";
    private String rejectedName = "rejected";
    
    // чуть ниже....
    private String getFolderTypeName(FolderType type){
        switch (type){
            case inbound:
                return inboundName;
            case outbound:
                return outboundName;
            case archive:
                return archiveName;
            case rejected:
                return rejectedName;
            default:
                throw new IllegalArgumentException(type.toString());
        }
    }

    Похоже, кто-то так и не въехал в жабьи енумы.

    roman-kashitsyn, 12 Декабря 2011

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