MyTetra Share
Делитесь знаниями!
Скрипт по ключевым словам
Время создания: 19.10.2020 01:41
Раздел: INFO - JOB - rtneo - Работа над задачами - Категоризация
Запись: wwwlir/Tetra/master/base/160304286240xu6i9l0m/text.html на raw.githubusercontent.com

import com.haulmont.cuba.core.global.*;

import com.groupstp.rtneo.entity.*

import java.text.DateFormat;

import java.text.SimpleDateFormat;

import com.haulmont.cuba.core.global.ViewRepository;

import com.haulmont.cuba.core.global.View;

import com.groupstp.rtneo.core.bean.*


ViewRepository vRep = AppBeans.get(ViewRepository.NAME)


View creView = vRep.getView(ContragentRealEstate.class, "_minimal")

.addProperty("category", vRep.getView(RealEstateCategory.class, "_minimal"))

.addProperty("type", vRep.getView(RealEstateType.class, "_minimal"))

.addProperty("realEstate", vRep.getView(RealEstate.class, "_minimal")

.addProperty("name")

)


HashMap<Object, List<String>> list = [

// "Квартира, комната, жилое помещение":["%%квартир%%","%%кватира%%","%%комнат%%","%%жилое помещение%%","%%помещение в квартире%%","%%часть жилого%%","помещение",

// "секция","картира","кваритра","этаж квартиры","кварира","квартита","жилое пемещение","%%квварт%%","%%кварт%%","кваритира","%%жилого помещения%%","%%кватрира%%","%%каврт%%"],

// "Административные здания, учреждения, конторы":["%%административ%%","%%офис%%","%%проходная%%","%%контора%%","%%учрежде%%"],

// "Предприятия торговли (без разделения по виду)":["%%магазин%%","%%супермаркет%%"],

// "Складские помещения":["%%склад%%","%%хранилище%%"],

// "Автомастерские, шиномонтажные мастерские, станции тех. обслуживания":["%%автосервис%%","%%шиномонтаж%%","сто","%%автоцентр%%"],

// "Железнодорожные и автовокзалы, аэропорты, речные порты":["%%вокзал%%","%%аэропорт%%"],

// "Гаражи, парковки закрытого типа":["%%гараж%%","%%гораж%%","%%парковка зак%%","%%плая стоянка%%","%%плая автостоянка%%","%%подземная стоян%%","%%ежилое помещение (автостоянка)%%", "%%паркинг%%","%%автогараж%%","%%бокс%%"],

// "Образовательные организации":["%%детского сада%%","%%школы%%","%%школа%%","%%детский сад%%","%%учебный корпус%%","%%лицей%%","училище","%%университ%%","%%интернат%%","%%гимнази%%","%%ясли%%","%%колледж%%"],

// "Организации для детей-сирот и детей оставшихся без попечения родителей":["%%сирот%%","%%детский дом%%", "%%приют%%","%%интернат%%"],

// "Кинотеатры, концертные залы, театры, цирки, спортивные арены, стадионы, клубы":["%%цирк%%","%%клуб%%","%%театр%%","%%стадион%%","%%бильард%%","%%спортзал%%","%%бассейн%%","%%батут%%","%%фитнес%%"],

// "Музеи, выставочный зал":["%%музей%%","%%выставк%%"],

// "Кафе, рестораны, бары, закусочные, столовые":["%%кафе%%","%%ресторан%%","%%закусоч%%","%%столов%%"],

// "Ремонтная мастерская":["%%ателье%%","%%пошив%%","%%ремонт бытов%%","мастерская"],

// "Химчистки и прачечные":["%%химчист%%","%%прачеч%%"],

// "Парикмахерские, косметические салоны, салоны красоты":["%%парикма%%","%%салон красот%%","%%маникюр%%"],

// "Гостиницы":["%%общежит%%","%%казарм%%","%%гостин%%","%%лагер%%","%%отель%%","%%спальный корпус%%","%%гостевой двор%%","%%гостевой двор%%","%%база отдыха%%","%%дом обсл%%","%%турбаза%%"],

// "Бани, сауны":["%%баня%%","%%сауна%%"],

// "Кладбища":["%%кладби%%"],

// "СНТ, ДНТ":["%%дачный дом%%","%%садов%%"],

// "Иные предприятия и организации (медицинские)" :["%%больниц%%"],

// "Индивидуальные жилые дома (другие)":["жилой дом%%","%%жилой дом%%","%%жилой индивидуальный дом%%", "%%дача%%", "%%времянка%%","%%флигель%%",

// "%%садовый%%","%%дом%%","%%объект индивидуального%%", "%%коттедж%%","%%таунхаус%%","здание","объект жилищного строительства","часть жилого здания","%%котедж%%","%%жилищное строение%%","%%пристрой%%"],

// "Общежития, гостинницы":["%%общежит%%","%%казарм%%","%%гостини%%","%%лагер%%","%%служебные жилые%%","%%база отдыха%%"],

// "Иные предприятия и организации":["%%изолятор%%"],

// "Автостоянки, автомойки и парковки":["%%мойка%%","%%стоянка%%","парковка"],

// "Многоквартирные дома (другие)":["%%многокварти%%","%%многоэтаж%%"],

// "Нежилые помещения":["нежилое помещение","помещение","подвал","помещение подвала","подвальное помещение"],

// "Нежилые здания":["нежилое здание","здание"],

// "Торговля продовольственными товарами":["%%родовольственный магазин%%"],

// "Административные здания, учреждения, конторы":["%%административно%%","%%административны%%"],

// "Медицинские учреждения":["%%больница%%","%%лечебно%%"]

"Технические и вспомогательные сооружения":["Беседка", "%%водонапор%%", "%%колонка%%", "%%Фонтан%%", "%%Насос%%"],

"Производственные и иные":["%%цех%%","%%производств%%", "%%коров%%", "%%свин%%"],

"Многоквартирные дома (другие)":["%%многокварти%%","%%многоэтаж%%", "%%квартира%%"],

"Торговля специализированными товарами":["%%заправ%%"]

]



//List<ContragentRealEstate> creList = dataManager.load(ContragentRealEstate.class)

// .query('select c from rtneo$ContragentRealEstate c where c.category is null order by c.id')

// .view(creView)

// .list()

List<RealEstateCategory> categoryEntities = dataManager.load(RealEstateCategory.class)

.query('select c from rtneo$RealEstateCategory c where (c.blocked is null or c.blocked = false) and (c.isLiving is null or c.isLiving = false)')

.view("_local")

.list()

def count = 0

def CommitContext ctx = new CommitContext()

for(def category : categoryEntities){

if(list.containsKey(category.getName())){

def keywords = list.get(category.getName())

for(def keyword : keywords){

List<ContragentRealEstate> cres = dataManager.load(ContragentRealEstate.class)

.query('select c from rtneo$ContragentRealEstate c where c.category is null and upper(c.realEstate.name) like upper(\''+keyword+'\')')

.view(creView)

.list()

for(def cre : cres){

// cre.setCategory(category)

// ctx.addInstanceToCommit(cre)

}

count += cres.size()

}

// def temp = list.remove(category.getName())

// list.put(category, temp)

}

}

dataManager.commit(ctx)

_(count)

list.each {_(it)}

//for (def i=0; i<=10; i++) {

//

//}

/**

* Логирование

*/

import com.haulmont.cuba.core.app.serialization.EntitySerializationAPI;

import com.groupstp.rtneo.util.JsonUtil;

import java.text.DateFormat;

import java.text.SimpleDateFormat;

private _(Object obj, String... options){

if(obj == null){log("LOG.ERROR: Object is null!!!");return}

if(options.size() == 0){log(obj)}

for(def option : options){

if(option.equals("str")){log(obj)}

if(option.equals("for")){obj.each({_(it)})}

if(option.equals("json")){

EntitySerializationAPI entitySerializationAPI = AppBeans.get(EntitySerializationAPI.NAME)

try{log(entitySerializationAPI.toJson(obj))}

catch(Exception e){log("LOG.ERROR: JSON entity serialization failed")}

}

if(option.equals("objJson")){

JsonUtil jsonUtil = AppBeans.get(JsonUtil.NAME)

try{log.(jsonUtil.toJson(obj))}

catch(Exception e){log("LOG.ERROR: JSON object serialization failed")}

}

if(option.equals("date")){

DateFormat df = new SimpleDateFormat("dd.MM.yyyy");

try{log(df.format(obj))}

catch(Exception e){log("LOG.ERROR: Failed date format")}

}

}

}

private log(Object obj){log.debug(obj)}

 
MyTetra Share v.0.59
Яндекс индекс цитирования