- 1
n^{{}*{}}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+132
n^{{}*{}}
LibreOffice Math. n и звёздочка.
+54
// Блок кода с выходом по break
#define BLOCK for (int _count = 1; _count--;)
bool Result::commit()
{
BLOCK {
mysql_query(db->mysql, "BEGIN");
if (!saveBasePart())
break;
if (getCategory() != NULL) {
if (!saveCustomValues())
break;
}
mysql_query(db->mysql, "COMMIT");
return true;
}
mysql_query(db->mysql, "ROLLBACK");
return false;
}
+129
.hidden {
display: block;
}
.visible {
display: none;
}
И это не шутка. Я полдня искал ошибку в логике в JS, пока случайно увидел, почему модалка не выпрыгивает. Эх... верстальщики
−125
ВЫБОР
КОГДА &ПоказыватьВсеПотребности
ТОГДА ВЫБОР
КОГДА ОсновнаяТаблица.КоличествоПлана <= 0
ТОГДА ОсновнаяТаблица.КоличествоПлана
ИНАЧЕ ОсновнаяТаблица.КоличествоПлана
КОНЕЦ
ИНАЧЕ ОсновнаяТаблица.КоличествоПлана
КОНЕЦ КАК КоличествоПлана
плана было больше количество, это уж точно
+51
class CHECKSTRUCTURE_API GroupOfDocs : public std::unordered_multimap<std::string, std::shared_ptr<Doc> > // структура, которую клиент заполняет и передает в качестве входных и выходных данных для process. Ключом является имя файла
{
public:
#ifdef _DEBUG
virtual ~GroupOfDocs() {};
#endif
+132
private Duplicate CheckForDuplicate(object name, object surname, object patronymic, object birthday, object oldSurname, out List<long> duplicateRowIDs)
{
duplicateRowIDs = new List<long>();
DataTable _idDuplicateRowTable = new DataTable();
//Проверка на полные дубликаты
_idDuplicateRowTable = SqlWrapper.ExecuteQuery(
@"
SELECT id
FROM [Физические лица]
WHERE [Физические лица].Фамилия=@param0
AND [Физические лица].Имя=@param1
AND [Физические лица].Отчество=@param2
AND [Физические лица].[Дата рождения]=@param3
AND (( @param4 IS NOT NULL AND [Физические лица].[Старая фамилия]=@param4 )
OR (@param4 IS NULL AND [Физические лица].[Старая фамилия] IS NULL ))
",
surname, name, patronymic, birthday, oldSurname
).Tables[0];
if (_idDuplicateRowTable.Rows.Count == 1)
{
duplicateRowIDs.Add((long)_idDuplicateRowTable.Rows[0]["id"]);
return Duplicate.Fully;
}
//Несколько полных дубликатов
if (_idDuplicateRowTable.Rows.Count > 1)
{
foreach (DataRow duplicate in _idDuplicateRowTable.Rows)
{
duplicateRowIDs.Add((long)duplicate["id"]);
}
return Duplicate.SomeFullyDuplicates;
}
//Проверяем только ФИО+дата рождения
_idDuplicateRowTable = SqlWrapper.ExecuteQuery(
@"
SELECT id, [Старая фамилия]
FROM [Физические лица]
WHERE [Физические лица].Фамилия=@param0
AND [Физические лица].Имя=@param1
AND [Физические лица].Отчествo=@param2
AND [Физические лица].[Дата рождения]=@param3
",
surname, name, patronymic, birthday
).Tables[0];
if (_idDuplicateRowTable.Rows.Count == 1)
{
if (_idDuplicateRowTable.Rows[0]["Старая фамилия"].Equals(DBNull.Value) && oldSurname is String)//Если стар. фамилия в БД == null & в файле != null
{
duplicateRowIDs.Add((long)_idDuplicateRowTable.Rows[0]["id"]);
return Duplicate.OldSurnameDiff;
}
duplicateRowIDs.Add((long)_idDuplicateRowTable.Rows[0]["id"]);
return Duplicate.ErrOldSurname;
}
else if (_idDuplicateRowTable.Rows.Count > 1)
{
foreach (DataRow row in _idDuplicateRowTable.Rows)
{
duplicateRowIDs.Add((long)row["id"]);
}
return Duplicate.SomeBaseDuplicates;
}
return Duplicate.NonDuplicate;
}
private bool IsPotentilaDuplicate(object name, object surname, object patronymic, object birthday, object oldSurname)
{
bool _isPotentilaDuplicate = false;
//Проверяем, не станет ли строка дубликатом, после изменения
//Только по ФИО+дате рождения
DataTable _ponentialDuplicates1 = SqlWrapper.ExecuteQuery(
@"
SELECT id
FROM [Физические лица]
WHERE [Физические лица].Фамилия=@param0
AND [Физические лица].Имя=@param1
AND [Физические лица].Отчество=@param2
AND [Физические лица].[Дата рождения]=@param3
",
oldSurname, name, patronymic, birthday
).Tables[0];
//Полное совпадение
DataTable _ponentialDuplicates2 = SqlWrapper.ExecuteQuery(
@"
SELECT id
FROM [Физические лица]
WHERE [Физические лица].Фамилия=@param0
AND [Физические лица].Имя=@param1
AND [Физические лица].Отчество=@param2
AND [Физические лица].[Дата родения]=@param3
AND [Физические лица].[Старая фамилия]=@param4
",
oldSurname, name, patronymic, birthday, surname
).Tables[0];
if (_ponentialDuplicates1.Rows.Count > 0 || _ponentialDuplicates2.Rows.Count > 0)
{
_isPotentilaDuplicate = true;
}
return _isPotentilaDuplicate;}
Ну.... Проверка на дубликаты перед вставкой в БД. Сляпал его я, по методологии "давай-давай-быстрее!!!!а-а-а не успеваем", для показа заказчикам будущей функциональности. Сейчас переделываю с помощью паттерна Декоратор (т.к. нужно опционально проверка по ФИО+Дата рождения или СНИЛС или и то, и другое)+ввел табличку История изменений фамилий вместо столбца Старая фамилия
+159
function decode_php_abbr($abbr){
if(strpos($abbr,'PHP')!==false){
$abbr=str_replace('PHP','PHP: Hypertext Preprocessor',$abbr);
decode_php_abbr($abbr);
}
else echo $abbr;
}
decode_php_abbr('PHP');
Расшифровываем аббревиатуру PHP или когда на работе немного скучно.
−124
print ("Программа вычисления номера подъезда.\nБудьте внимательны при вводе данных.\n")
n_kvartiry = input("Введите номер квартиры...\n")
n_kvartiry = int(n_kvartiry)
kol_etazhey = input("Введите количество этажей в доме...\n")
kol_etazhey = int(kol_etazhey)
kol_kvartir_etazh = input("Введите количество квартир на этаже...\n")
kol_kvartir_etazh = int(kol_kvartir_etazh)
kol_kvart_pod = kol_kvartir_etazh * kol_etazhey
result = n_kvartiry / kol_kvart_pod
if result <= 1:
print ("Номер подъезда 1")
x=1
elif result <= 2:
x=2
print ("Номер подъезда 2")
elif result <= 3:
x=3
print ("Номер подъезда 3")
elif result <= 4:
x=4
print ("Номер подъезда 4")
elif result <= 5:
x=5
print ("Номер подъезда 5")
elif result <= 6:
x=6
print ("Номер подъезда 6")
elif result <= 7:
x=7
print ("Номер подъезда 7")
elif result <= 8:
x=8
print ("Номер подъезда 8")
elif result <= 9:
x=9
print ("Номер подъезда 9")
elif result <= 10:
x=10
print ("Номер подъезда 10")
elif result <= 11:
x=11
print ("Номер подъезда 11")
elif result <= 12:
x=12
print ("Номер подъезда 12")
else:
print("Карлсон живет на крыше!!!")
print ("Все квартиры в этом подъезде:")
for n in range(1, kol_kvart_pod+1 ):
res = n + kol_kvart_pod*(x-1)
print (int(res), end=" ")
python 3
чисто поржать...
+166
define("DB_YESTERDAY",date('d/m/Y', time()-172800-86400-86400-86400
-86400-86400-86400-86400-86400-86400-86400-86400-86400-86400-86400
-86400-86400-86400-86400-86400-86400-86400-86400-86400-86400)); //если более 2 дней подряд были выходные, валюты не показывались. Дописано "-86400"
Дописано -86400? Забыли упомянуть, что 24 раза(
+158
/*...тут много строк...*/
if($arraySection[$section_id[$j]]=='0'){
echo '';
}
else{
echo '
<li><a href="/'.$arraySection[$section_id[$j]].'">'.$arraySection[$section_id[$j]].'</a></li>
';}
/*...тут много строк...*/
Любитель else