Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import pl.com.mds.gus.sms.gxt.model.mmm.MetadataObjectDTO;//import biblioteki
- def kopiuj_warunki_przylaczenia(){
- def parentRelation = model.getRelationInfo();
- def nazwa_rodzica=null;
- if (parentModel != null){
- parentObject = api.getObjectService().findObjectById(parentRelation.sourceObjectId)
- nazwa_rodzica=parentObject.name;
- if(nazwa_rodzica.equals('Sprawa')){
- def api = C3Api.getInstance();//pobiera referencje do C3Api
- MetadataObjectDTO wniosek= api.getObjectService().findObjectByUuid('eece523a-7bfb-465e-9003-4c16b2b1d0b0');//Uuid wniosek
- MetadataObjectDTO sprawa= api.getObjectService().findObjectByUuid('06fdd8ae-01ae-4e3f-b77a-653f8fe6b706');//Uuid sprawa
- MetadataObjectDTO warunki_przylaczenia= api.getObjectService().findObjectByUuid('a8060162-00c8-4dd1-bbda-79a9d6d47907'); //Uuid warunki przyłączenia
- ModelProxy newInstance = api.getInstanceServices().createNewInstance(wniosek.id);//model proxy to typ który rozszerza hashmap, tutaj id wniosku
- newInstance.gmina = model.gmina;//pododawać wszystkie atrybuty z warunki przyłaczenia do wniosku
- newInstance.obiekt___gmina = model.o_gmina;
- newInstance.kraj2 = model.kraj;
- def HashMap<String,Object> paramsHql = new HashMap<String,Object>();
- where = "select a from " +wniosek.tableName+ " a where a.usuniety=:falseValue and cast(a.aktywny as int)=1";
- paramsHql.put("falseValue",false);
- def instanceWniosek = api.getInstanceServices().findInstanceUsingHql(where,wniosek.getOwnerModel(),paramsHql);
- api.getInstanceServices().quickSaveModel(wniosek.id, instanceWniosek.get(0));
- }
- }
- }
- /* Anna Wójcik, 03.06.2015 generowanie czteroznakowego cyfrowego hasła dla Wniosku i Wniosku WZD
- */
- def generowanieHasla(){
- def haslo = "";
- Random rand = new Random();
- for(int i=0;i<4;i++){
- haslo += (rand.nextInt(9));
- }
- return haslo;
- }
- /*
- Marcel Różański, napisano dn 03.06.2015, Metoda pobiera kod jednostki pge na podstawie pol adresu z formularza reo
- */
- def pobierzKodPge(ModelProxy model){
- // throw new Exception("test " + model.gmina)
- def kodJednostki="A0";
- def api = C3Api.getInstance();
- def instanceService= api.getInstanceServices();
- def objectService= api.getObjectService();
- reonizacjaObject=objectService.findObjectByUuid("b07627c1-7525-41f3-b950-a386b7c5dff0");
- hql="select a from "+reonizacjaObject.getTableName() + " a where ";
- boolean create = false;
- log.debug("gmina:" + model.gmina + " miejscowosc: " +model.miejscowosc )
- if(model.gmina ) {
- hql +="gmina like '" + model.gmina+ "'" ;
- create= true;
- }
- if(model.miejscowosc){
- hql += " and miasto like '" +model.miejscowosc+ "'";
- create= true;
- }
- if(model.ulica){
- hql += " and ulica like '" +model.ulica+ "'";
- create= true;
- }
- if(create){
- def instancesRejonizacji= instanceService.findInstanceUsingHql( hql, reonizacjaObject, null);
- //kod_jednostki_pge
- log.debug("znaleziono" + instancesRejonizacji.toString())
- if(instancesRejonizacji){
- def instanceRejonizacja=instancesRejonizacji.get(0);
- kodJednostki=instanceRejonizacja.kod_jednostki_pge;
- // throw new Exception("test "+ instanceRejonizacja.kod_jednostki_pge);
- }
- }
- log.debug("kod jednostki" + kodJednostki)
- return kodJednostki;
- }
- /*
- Marcel Różański, napisano dn 23.06.2015, Metoda ma zwraca datę z odpowiednim przesunięciem liczby dni wolnych
- w oparciu o obiekt Kalendarz dni wolnych
- */
- def dniWolne(Integer liczbaDni, Date data){
- data = data.clearTime()
- def api = C3Api.getInstance();
- def instanceService=api.getInstanceServices();
- def objectService= api.getObjectService();
- kalendarzObject=objectService.findObjectByUuid("f25288c9-8409-4610-af56-f0ad3086363d");
- hql="select a from "+kalendarzObject.getTableName() + " a where a.dzien_ = :data_param and a.usuniety = :falseValue";
- while(liczbaDni !=0){
- paramsHql = [:]
- paramsHql.falseValue = false
- paramsHql.data_param = data
- def znalezioneInstancjeDlaDaty = instanceService.findInstanceUsingHql(hql, kalendarzObject, paramsHql)
- if(znalezioneInstancjeDlaDaty || data.getDay()==6 || data.getDay()==0){
- data += 1
- } else {
- --liczbaDni
- data += 1
- }
- }
- return data
- }
- //Dawid Kuczer, metoda przyjmuje instancje sprawy, oraz napis do identyfikacji typu zlecenia
- // metoda tworzy nowe instancje zlecenia oraz instancje pozycji do tego zlecenia
- def tworzenieZlecenSprzedazy(ModelProxy sprawa, String typZlecenia){
- def zleceniaSprzedazy_uuid = "678bb814-c77b-41bd-b465-16381c8eb22b"
- def sprawa_uuid = "06fdd8ae-01ae-4e3f-b77a-653f8fe6b706"
- def pozycjaZleceniaSprzedazy_uuid = "28eb81d3-3775-4e9b-8ec0-cb12736bce02"
- def relation_zleceniaSprzedazy_uuid = "e653f497-e04b-48f3-8dee-4b4cbea13538"
- def relation_pozycjeZleceniaSprzedazy_uuid = "7262e86c-2693-4b1b-b150-d1c17f506df3"
- def relation_wniosek_uuid = "8d7bf0be-6da2-414e-b693-060ed7126eeb"
- def relation_umowa_uuid = "cf67856f-ab44-4878-9e33-d5f7d35d4814"
- def relation_faktura_uuid = "9fd30746-cc0f-4d34-a0a9-ef0a47e51156"
- c3 = C3Api.getInstance()
- def findTheLatestInstance = { lista ->
- def max = lista.first()
- lista.each{
- if(max.id < it.id) max = it
- }
- max
- }
- def relation_wniosek_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_wniosek_uuid)
- def wniosek_instancesList = sprawa.getRelationDtoInstances(relation_wniosek_obj)
- def wniosek_instance
- if(wniosek_instancesList) wniosek_instance = wniosek_instancesList.find{ it.aktywny }
- if(!wniosek_instance){
- showInfo("blad", "Nie znaleziono aktywnej instancji wniosku")
- log.error("Nie znaleziono aktywnej instancji wniosku")
- return null
- }
- def relation_umowa_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_umowa_uuid)
- def umowa_instancesList = sprawa.getRelationDtoInstances(relation_umowa_obj)
- def umowa_instance
- if(umowa_instancesList) umowa_instance = umowa_instancesList.find{ it.aktualny }
- if(!umowa_instance){
- showInfo("blad", "Nie znaleziono aktywnej instancji umowy")
- log.error("Nie znaleziono aktywnej instancji umowy")
- return null
- }
- def mapa = [:]
- def zleceniaSprzedazy_obj = c3.getObjectService().findObjectByUuid(zleceniaSprzedazy_uuid)
- def zleceniaSprzedazy_instance = c3.getInstanceServices().createNewInstance(zleceniaSprzedazy_obj.id)
- zleceniaSprzedazy_instance = quickSaveModel(zleceniaSprzedazy_obj.id, zleceniaSprzedazy_instance)
- def relation_pozycjeZleceniaSprzedazy_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_pozycjeZleceniaSprzedazy_uuid)
- def pozycjeZleceniaSprzedazy_instancesList
- switch(typZlecenia){
- case "Zlecenie wystawienia faktury zaliczkowej":
- mapa.znacznik = "N"
- mapa.numer_dok_ref = ""
- mapa.rodzaj_dok_sprz = "ZJED"
- def pozycjaZleceniaSprzedazy_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy_obj.id)
- pozycjaZleceniaSprzedazy_instance.nr_pozycji = "1"
- pozycjaZleceniaSprzedazy_instance.rodzaj_warunku = "ZPB0"
- pozycjaZleceniaSprzedazy_instance.nr_materialu = "80000188"
- if(wniosek_instance) pozycjaZleceniaSprzedazy_instance.kwota = wniosek_instance.kwota_wplaconych_zaliczek
- pozycjaZleceniaSprzedazy_instance.ilosc_zleceni_w_jednos_sprzeda = new BigDecimal("1")
- pozycjaZleceniaSprzedazy_instance.grupa_cenowa_klienta = "02"
- quickSaveModel(pozycjaZleceniaSprzedazy_obj.id, pozycjaZleceniaSprzedazy_instance)
- def pozycjaZleceniaSprzedazy_list = []
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- quickSaveModel(zleceniaSprzedazy_obj.id, zleceniaSprzedazy_instance)
- case "Zlecenia wystawienia korekty do faktury zaliczkowej":
- mapa.znacznik = "K"
- mapa.rodzaj_dok_sprz = "ZRKF"
- def relation_zleceniaSprzedazy_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_zleceniaSprzedazy_uuid)
- def zleceniaSprzedazy_instancesList = sprawa.getRelationDtoInstances(relation_zleceniaSprzedazy_obj)
- if(zleceniaSprzedazy_instancesList) zleceniaSprzedazy_instance = findTheLatestInstance(zleceniaSprzedazy_instancesList)
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji zlecen sprzedazy")
- break
- }
- pozycjeZleceniaSprzedazy_instancesList = zleceniaSprzedazy_instance.getRelationDtoInstances(relation_pozycjeZleceniaSprzedazy_obj)
- if(pozycjeZleceniaSprzedazy_instancesList) pozycjeZleceniaSprzedazy_OldInstance = pozycjeZleceniaSprzedazy_instancesList.first()
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji pozycji zlecen sprzedazy")
- break
- }
- def relation_faktura_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_faktura_uuid)
- def faktura_instancesList = zleceniaSprzedazy_instance.getRelationDtoInstances(relation_faktura_obj)
- if(faktura_instancesList) faktura_instance = faktura_instancesList.first()
- else{
- log.error("Nie znaleziono zadnych instancji faktur do poprzedniego zlecenia")
- break
- }
- mapa.numer_dok_ref = faktura_instance.numer_faktury
- def pozycjaZleceniaSprzedazy_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy_obj.id)
- pozycjaZleceniaSprzedazy_instance.nr_pozycji = pozycjeZleceniaSprzedazy_OldInstance.nr_pozycji
- pozycjaZleceniaSprzedazy_instance.rodzaj_warunku = pozycjeZleceniaSprzedazy_OldInstance.rodzaj_warunku
- pozycjaZleceniaSprzedazy_instance.nr_materialu = pozycjeZleceniaSprzedazy_OldInstance.nr_materialu
- pozycjaZleceniaSprzedazy_instance.kwota = pozycjeZleceniaSprzedazy_OldInstance.kwota
- pozycjaZleceniaSprzedazy_instance.ilosc_zleceni_w_jednos_sprzeda = pozycjeZleceniaSprzedazy_OldInstance.ilosc_zleceni_w_jednos_sprzeda
- pozycjaZleceniaSprzedazy_instance.grupa_cenowa_klienta = pozycjeZleceniaSprzedazy_OldInstance.grupa_cenowa_klienta
- quickSaveModel(pozycjaZleceniaSprzedazy_obj.id, pozycjaZleceniaSprzedazy_instance)
- def pozycjaZleceniaSprzedazy_list = []
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- case "Zlecenie wystawienia faktury za opłatę za przyłączenie":
- mapa.znacznik = "N"
- mapa.numer_dok_ref = ""
- mapa.rodzaj_dok_sprz = "ZJED"
- def pozycjaZleceniaSprzedazy_list = []
- def pozycjaZleceniaSprzedazy1_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy1_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy1_obj.id)
- pozycjaZleceniaSprzedazy1_instance.nr_pozycji = "1"
- pozycjaZleceniaSprzedazy1_instance.rodzaj_warunku = "ZNT1"
- if(sprawa.grupa_przylaczeniowa == "V" && wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000260"
- else if(sprawa.grupa_przylaczeniowa == "VI" && wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000261"
- else if(sprawa.grupa_przylaczeniowa == "II") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000171"
- else if(sprawa.grupa_przylaczeniowa == "III") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000172"
- else if(sprawa.grupa_przylaczeniowa == "IV") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000173"
- else if(sprawa.grupa_przylaczeniowa == "V") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000174"
- else if(sprawa.grupa_przylaczeniowa == "VI") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000175"
- else if(sprawa.grupa_przylaczeniowa == "IV" && sprawa.typ_kalkulacji == "ryczałt") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000118"
- else if(sprawa.grupa_przylaczeniowa == "V" && sprawa.typ_kalkulacji == "ryczałt") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000119"
- else if(sprawa.grupa_przylaczeniowa == "VI" && sprawa.typ_kalkulacji == "ryczałt") pozycjaZleceniaSprzedazy1_instance.nr_materialu = "90000120"
- if(sprawa.typ_kalkulacji == "ryczałt") pozycjaZleceniaSprzedazy1_instance.kwota = umowa_instance.sp___stawka_oplaty__zl_kw_
- else if(wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy1_instance.kwota = umowa_instance.szacunkow_oplata_za_przylaczen
- if(sprawa.typ_kalkulacji == "ryczałt"){
- if(wniosek_instance.moc_docelowa_rez) pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = wniosek_instance.moc_docelowa_rez
- else if(wniosek_instance.moc_docelowa_podst) pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = wniosek_instance.moc_docelowa_podst
- }
- else if(wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = new BigDecimal("1")
- pozycjaZleceniaSprzedazy1_instance.grupa_cenowa_klienta = "01"
- def pozycjaZleceniaSprzedazy2_obj
- def pozycjaZleceniaSprzedazy2_instance
- if(sprawa.l___dlugosc_przylacza > 200){
- pozycjaZleceniaSprzedazy2_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- pozycjaZleceniaSprzedazy2_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy2_obj.id)
- pozycjaZleceniaSprzedazy2_instance.nr_pozycji = "2"
- pozycjaZleceniaSprzedazy2_instance.rodzaj_warunku = "ZNT1"
- if(grupa_przylaczeniowa == "IV") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000189"
- else if(grupa_przylaczeniowa == "V") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000220"
- else if(grupa_przylaczeniowa == "VI") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000221"
- pozycjaZleceniaSprzedazy2_instance.kwota = umowa_instance.szacunkow_oplata_za_przylaczen
- def stringLiczba = "" + (sprawa.l___dlugosc_przylacza - 200)
- pozycjaZleceniaSprzedazy2_instance.ilosc_zleceni_w_jednos_sprzeda = new BigDecimal(stringLiczba)
- pozycjaZleceniaSprzedazy2_instance.grupa_cenowa_klienta = "01"
- quickSaveModel(pozycjaZleceniaSprzedazy2_obj.id, pozycjaZleceniaSprzedazy2_instance)
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy2_instance
- }
- quickSaveModel(pozycjaZleceniaSprzedazy1_obj.id, pozycjaZleceniaSprzedazy1_instance)
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy1_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- case "Zlecenia wystawienia korekty do faktury za opłatę za przyłączenie":
- mapa.znacznik = "K"
- mapa.rodzaj_dok_sprz = "ZRKF"
- def pozycjaZleceniaSprzedazy1_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy1_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy1_obj.id)
- def relation_zleceniaSprzedazy_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_zleceniaSprzedazy_uuid)
- def zleceniaSprzedazy_instancesList = sprawa.getRelationDtoInstances(relation_zleceniaSprzedazy_obj)
- if(zleceniaSprzedazy_instancesList) zleceniaSprzedazy_instance = findTheLatestInstance(zleceniaSprzedazy_instancesList)
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji zlecen sprzedazy")
- break
- }
- mapa.numer_dok_ref = zleceniaSprzedazy_instance
- pozycjeZleceniaSprzedazy_instancesList = zleceniaSprzedazy_instance.getRelationDtoInstances(relation_pozycjeZleceniaSprzedazy_obj)
- if(pozycjeZleceniaSprzedazy_instancesList){
- pozycjeZleceniaSprzedazy1_OldInstance = pozycjeZleceniaSprzedazy_instancesList.find{ it.nr_pozycji == 1 }
- pozycjeZleceniaSprzedazy2_OldInstance = pozycjeZleceniaSprzedazy_instancesList.find{ it.nr_pozycji == 2 }
- }
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji pozycji zlecen sprzedazy")
- return
- }
- def relation_faktura_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_faktura_uuid)
- def faktura_instancesList = zleceniaSprzedazy_instance.getRelationDtoInstances(relation_faktura_obj)
- if(faktura_instancesList) faktura_instance = faktura_instancesList.first()
- else{
- log.error("Nie znaleziono zadnych instancji faktur do poprzedniego zlecenia")
- break
- }
- mapa.numer_dok_ref = faktura_instance.numer_faktury
- pozycjaZleceniaSprzedazy1_instance.nr_pozycji = "1"
- pozycjaZleceniaSprzedazy1_instance.rodzaj_warunku = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.nr_materialu = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.kwota = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.grupa_cenowa_klienta = pozycjeZleceniaSprzedazy1_OldInstance
- def pozycjaZleceniaSprzedazy2_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy2_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy2_obj.id)
- pozycjaZleceniaSprzedazy2_instance.nr_pozycji = "2"
- pozycjaZleceniaSprzedazy2_instance.rodzaj_warunku = pozycjeZleceniaSprzedazy2_OldInstance.rodzaj_warunku
- pozycjaZleceniaSprzedazy2_instance.nr_materialu = pozycjeZleceniaSprzedazy2_OldInstance.nr_materialu
- pozycjaZleceniaSprzedazy2_instance.kwota = pozycjeZleceniaSprzedazy2_OldInstance.kwota
- pozycjaZleceniaSprzedazy2_instance.ilosc_zleceni_w_jednos_sprzeda = pozycjeZleceniaSprzedazy2_OldInstance.ilosc_zleceni_w_jednos_sprzeda
- pozycjaZleceniaSprzedazy2_instance.grupa_cenowa_klienta = pozycjeZleceniaSprzedazy2_OldInstance.grupa_cenowa_klienta
- quickSaveModel(pozycjaZleceniaSprzedazy1_obj.id, pozycjaZleceniaSprzedazy1_instance)
- quickSaveModel(pozycjaZleceniaSprzedazy2_obj.id, pozycjaZleceniaSprzedazy2_instance)
- def pozycjaZleceniaSprzedazy_list = []
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy1_instance
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy2_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- case "Zlecenie rozliczenia faktury zaliczkowej":
- mapa.znacznik = "R"
- mapa.numer_dok_ref = //tutaj z dokumentacji
- mapa.rodzaj_dok_sprz = "ZJED"
- def pozycjaZleceniaSprzedazy1_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy1_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy1_obj.id)
- pozycjaZleceniaSprzedazy1_instance.nr_pozycji = "1"
- pozycjaZleceniaSprzedazy1_instance.rodzaj_warunku = "ZPB0"
- pozycjaZleceniaSprzedazy1_instance.nr_materialu = "80000189"
- pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = new BigDecimal("1")
- pozycjaZleceniaSprzedazy1_instance.grupa_cenowa_klienta = "02"
- def pozycjaZleceniaSprzedazy2_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy2_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy2_obj.id)
- pozycjaZleceniaSprzedazy2_instance.nr_pozycji = "2"
- pozycjaZleceniaSprzedazy2_instance.rodzaj_warunku = "ZNT1"
- if(sprawa.grupa_przylaczeniowa == "IV" && wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000260"
- else if(sprawa.grupa_przylaczeniowa == "V" && wniosek_instance.zwiekszenie_poboru_mocy) pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000261"
- else if(sprawa.grupa_przylaczeniowa == "II") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000171"
- else if(sprawa.grupa_przylaczeniowa == "III") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000172"
- else if(sprawa.grupa_przylaczeniowa == "IV") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000173"
- else if(sprawa.grupa_przylaczeniowa == "V") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000174"
- else if(sprawa.grupa_przylaczeniowa == "VI") pozycjaZleceniaSprzedazy2_instance.nr_materialu = "90000175"
- pozycjaZleceniaSprzedazy2_instance.kwota = umowa_instance.szacunkow_oplata_za_przylaczen
- pozycjaZleceniaSprzedazy2_instance.ilosc_zleceni_w_jednos_sprzeda = new BigDecimal("1")
- pozycjaZleceniaSprzedazy2_instance.grupa_cenowa_klienta = "01"
- pozycjaZleceniaSprzedazy1_instance = quickSaveModel(pozycjaZleceniaSprzedazy1_obj.id, pozycjaZleceniaSprzedazy1_instance)
- pozycjaZleceniaSprzedazy2_instance = quickSaveModel(pozycjaZleceniaSprzedazy2_obj.id, pozycjaZleceniaSprzedazy2_instance)
- def pozycjaZleceniaSprzedazy_list = []
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy1_instance
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy2_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- case "Zlecenia wystawienia korekty do faktury rozliczającej zaliczkę":
- mapa.znacznik = "K"
- mapa.rodzaj_dok_sprz = "ZRKF"
- def pozycjaZleceniaSprzedazy1_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- def pozycjaZleceniaSprzedazy1_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy1_obj.id)
- def relation_zleceniaSprzedazy_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_zleceniaSprzedazy_uuid)
- def zleceniaSprzedazy_instancesList = sprawa.getRelationDtoInstances(relation_zleceniaSprzedazy_obj)
- if(zleceniaSprzedazy_instancesList) zleceniaSprzedazy_instance = findTheLatestInstance(zleceniaSprzedazy_instancesList)
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji zlecen sprzedazy")
- break
- }
- if(pozycjeZleceniaSprzedazy_instancesList){
- pozycjeZleceniaSprzedazy1_OldInstance = pozycjeZleceniaSprzedazy_instancesList.find{ it.nr_pozycji == 1 }
- pozycjeZleceniaSprzedazy2_OldInstance = pozycjeZleceniaSprzedazy_instancesList.find{ it.nr_pozycji == 2 }
- }
- else{
- log.error("Nie znaleziono zadnych poprzednich instancji pozycji zlecen sprzedazy")
- break
- }
- def relation_faktura_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_faktura_uuid)
- def faktura_instancesList = zleceniaSprzedazy_instance.getRelationDtoInstances(relation_faktura_obj)
- if(faktura_instancesList) faktura_instance = faktura_instancesList.first()
- else{
- log.error("Nie znaleziono zadnych instancji faktur do poprzedniego zlecenia")
- break
- }
- mapa.numer_dok_ref = faktura_instance.numer_faktury
- pozycjaZleceniaSprzedazy1_instance.nr_pozycji = "1"
- pozycjaZleceniaSprzedazy1_instance.rodzaj_warunku = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.nr_materialu = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.kwota = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.ilosc_zleceni_w_jednos_sprzeda = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy1_instance.grupa_cenowa_klienta = pozycjeZleceniaSprzedazy1_OldInstance
- pozycjaZleceniaSprzedazy2_obj = c3.getObjectService().findObjectByUuid(pozycjaZleceniaSprzedazy_uuid )
- pozycjaZleceniaSprzedazy2_instance = c3.getInstanceServices().createNewInstance(pozycjaZleceniaSprzedazy_obj.id)
- pozycjaZleceniaSprzedazy2_instance.nr_pozycji = "2"
- pozycjaZleceniaSprzedazy2_instance.rodzaj_warunku = pozycjeZleceniaSprzedazy2_OldInstance.rodzaj_warunku
- pozycjaZleceniaSprzedazy2_instance.nr_materialu = pozycjeZleceniaSprzedazy2_OldInstance.nr_materialu
- pozycjaZleceniaSprzedazy2_instance.kwota = pozycjeZleceniaSprzedazy2_OldInstance.kwota
- pozycjaZleceniaSprzedazy2_instance.ilosc_zleceni_w_jednos_sprzeda = pozycjeZleceniaSprzedazy2_OldInstance.ilosc_zleceni_w_jednos_sprzeda
- pozycjaZleceniaSprzedazy2_instance.grupa_cenowa_klienta = pozycjeZleceniaSprzedazy2_OldInstance.grupa_cenowa_klienta
- quickSaveModel(pozycjaZleceniaSprzedazy1_obj.id, pozycjaZleceniaSprzedazy1_instance)
- quickSaveModel(pozycjaZleceniaSprzedazy2_obj.id, pozycjaZleceniaSprzedazy2_instance)
- def pozycjaZleceniaSprzedazy_list = []
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy1_instance
- pozycjaZleceniaSprzedazy_list << pozycjaZleceniaSprzedazy2_instance
- zleceniaSprzedazy_instance.putRelationsDto(relation_pozycjeZleceniaSprzedazy_obj, pozycjaZleceniaSprzedazy_list)
- default:
- log.error("nie rozpoznano rodzaju zlecenia")
- break
- }
- def date = new Date()
- rok = new SimpleDateFormat("yy")
- zleceniaSprzedazy_instance.kod_jednostki_pge = "" + date + sprawa.kod_jednostki_pge[0] + "R" + sprawa.numer_sprawy
- zleceniaSprzedazy_instance.data_zamowienia = date
- zleceniaSprzedazy_instance.numer_zamowienia = sprawa.kod_jednostki_pge
- def relation_zleceniaSprzedazy_obj = C3Api.getInstance().getRelationService().findMetadataObjectRelationJoinTableNameByUUID(relation_zleceniaSprzedazy_uuid)
- quickSaveModel(zleceniaSprzedazy_obj.id, zleceniaSprzedazy_instance)
- sprawa_obj = c3.getObjectService().findObjectByUuid(sprawa_uuid)
- def zleceniaSprzedazyRelation_list = []
- zleceniaSprzedazyRelation_list << zleceniaSprzedazy_instance
- sprawa.putRelationsDto(relation_zleceniaSprzedazy_obj, zleceniaSprzedazyRelation_list)
- quickSaveModel(sprawa_obj.id, sprawa)
- return mapa
- }
- //Krzysztof Gurak - metoda wyświetla MOW'a otwierającego formularz dodawania nowej instancji na obiekcie Lista kontrahentów modelu PNO_techniczne,
- //dodaje do relacji Kontrahent SAP pomocniczy, kontrahentów z listy instancji podanej jako parametr metody.
- def showKontrahentListFromSap(kontrahentList){
- def api = C3Api.getInstance();
- // po wykonaniu skryptu ma pojawić się formatka
- mow.form = true;
- mow.showRejectWindow = false;
- modelName = "PNO_techniczne"; //model
- objectName = "Lista kontrahentów"; //objekt
- def objId = api.getObjectService().findMetadataObjectByModelAndObjectName(modelName, objectName).getId();
- mow.metadataObjectFormId = objId;
- // mapka z parametrami, które mają się pojawić w polach na formatce
- def formParams = [ : ];
- formParams.hideCustomActionsButtons = false;
- mow.formParams = formParams;
- // nabijanie relacji z parametru
- if(kontrahentList && kontrahentList.size()>0){
- mow.formParams.putRelationsDto("PNOTE_li_kon_kon_sa_kl",kontrahentList);
- }
- // wywołanie mow
- outputParam.put("mow",mow);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement