BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 24 июн 2025, 00:51

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
 Заголовок сообщения: [РЕШЕНО]Закрытый период
СообщениеДобавлено: 13 ноя 2012, 05:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
Хочу сделать "Перемещение в группу через 3 месяца если не было движения денег в наработке" и сразу на первом пункте вики застрял что значит закрытый период? (простым языком) что бы не получилось так что договора будут перемещаться и закрываться


Последний раз редактировалось zavndw 15 ноя 2012, 08:57, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 05:37 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
а в какой статье? просто у меня там есть скриптик который переводил в группу, ну и ещё закрывал договор

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 05:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
http://wiki.bgbilling.ru/index.php/%D0% ... 0%BA%D0%B5


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 06:52 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
о, точно мой ))) выставляет вторую дату действия договора, закрывая его, если это необходимо то его немного поправить нада, если нет, просто закоментить сторочку где скулем это выполняется

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 06:54 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
Код:
sqlDate = calendar.clone();
вот эту?
мне надо его адаптировать под простой перенос в другую группу и мес снизить до 2х три много:)
нашел
Код:
(mounth > 3 )

и сразу вопрос куда этот скрипт ложить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 08:26 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
import java.math.BigDecimal;
import java.sql.*;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import bitel.billing.server.tariff.*;
import bitel.billing.common.TimeUtils;
import bitel.billing.server.util.*;
import ru.bitel.bgbilling.server.util.DefaultServerSetup;
import ru.bitel.bgbilling.server.util.ServerUtils;
import bitel.billing.common.KernelConst;
import bitel.billing.server.contract.bean.*;
 
 
public void main( setup, con, conSlave )
{
   Calendar calendar = new GregorianCalendar();
   nowDate = calendar.clone();//клонируем дату для дальнейшей работы
   nowDate.get(Calendar.DATE);
   sqlDate = calendar.clone();
   Date dateSql = TimeUtils.convertCalendarToSqlDate(sqlDate);
   Date dateNow = TimeUtils.convertCalendarToDate(nowDate);//переводим дату в тип Date с типа Calendar
   String query = "select id from contract where gr&(1<<19)=0";
   PreparedStatement contractPs = con.prepareStatement( query );
   ResultSet contractRs = contractPs.executeQuery();
   int cid;
   int i = 0;
    while ( contractRs.next() )
    {
      cid = contractRs.getInt( 1 );
 
 
      contract = new ContractManager(con);
      BalanceUtils balance = new BalanceUtils(con);
      Contract ct = contract.getContractByID(cid);
      Date contract_balance = balance.getLastBalanceMonth(ct);
      if( contract_balance == null)
      {
         contract_balance = new Date();
      } 
      int mounth = TimeUtils.monthsDelta(contract_balance,dateNow);
 
      if (mounth > 2 )
      {
         print ("Контракт с сидом " + cid);
         String update_query = "update contract set gr=0 where id = "+ cid;
         PreparedStatement ps = con.prepareStatement( update_query );
         ps.executeUpdate() ;
         //String close_query = "update contract set date2 = '" + dateSql + "' where id = "+ cid;
         //PreparedStatement rs = con.prepareStatement( close_query );
         //rs.executeUpdate() ;
         cpu = new ContractParamUtils( con );
         cpu.setGroup( cid, 19 );
         i++;
      }
   }
    print("кол-во " +i );
    contractRs.close();
    contractPs.close();   
}

глобальные скрипты

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 08:32 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
номер группы тут
cpu.setGroup( cid, 19 );
и тут
String query = "select id from contract where gr&(1<<19)=0";


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 09:44 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
Не верьте скубу. Дебильный скрипт не закрывающий сущности договора :-!
У него есть более новый но он им не делится :D

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 10:35 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
WARNINGS:
Перемещение в группу через 3 месяца: using deprecated method [public bitel.billing.server.contract.bean.Contract bitel.billing.server.contract.bean.ContractManager.getContractByID(int)]
вот че пишет


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 11:21 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
http://bit.ly/TFORQg

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 11:23 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 29 мар 2010, 23:11
Сообщения: 5854
Карма: 472
google.ru выдает первую же ссылку на исправление ошибки.
google.com - третью помоему

_________________
Цитаты великих людей :umnik:
Напишите в helpdesk © stark
повторяю: => хелпдеск => доработка => профит © dimOn
свершилось... © skn
Мой код изящен, лёгок, оригинален, краток. Как прохладный весенний ветерок, как звонкий ручей! © dimOn
Вежливый разработчик © Artur
Эти баги тоже исправлены, как и те, которые еще не написаны © Artur
ну т.е. существует воркэраунд, ок © dimOn


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 13 ноя 2012, 14:58 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
zavndw у вас 5.1 или 5.2

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 14 ноя 2012, 03:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
вер. 5.1 сборка 815


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Закрытый период
СообщениеДобавлено: 15 ноя 2012, 08:57 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
Поправил на вики код для 5,1


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [РЕШЕНО]Закрытый период
СообщениеДобавлено: 15 ноя 2012, 10:40 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Код:
package ru.skyb.scripts.global;

import ru.bitel.bgbilling.kernel.script.server.dev.GlobalScriptBase;
import ru.bitel.bgbilling.server.util.Setup;
import ru.bitel.common.sql.ConnectionSet;
import java.sql.*;
import java.util.*;
import java.util.Date;

import bitel.billing.common.TimeUtils;
import bitel.billing.server.contract.bean.*;

public class archive extends GlobalScriptBase {
   @Override
   public void execute(Setup setup1, ConnectionSet connectionSet2)
         throws Exception {

      Connection con = connectionSet2.getConnection();
      Calendar calendar = Calendar.getInstance();
      GregorianCalendar nowDate = (GregorianCalendar) calendar.clone();// клонируем
                                                         // дату
                                                         // для
                                                         // дальнейшей
                                                         // работы
      nowDate.get(Calendar.DATE);
      GregorianCalendar sqlDate = (GregorianCalendar) calendar.clone();
      Date dateSql = TimeUtils.convertCalendarToSqlDate(sqlDate);
      Date dateNow = TimeUtils.convertCalendarToDate(nowDate);// переводим
                                                // дату в тип
                                                // Date с типа
                                                // Calendar
      String query = "select id from contract where gr&(1<<3)>0";
      PreparedStatement contractPs = con.prepareStatement(query);
      ResultSet contractRs = contractPs.executeQuery();
      int cid;
      int i = 0;
      while (contractRs.next()) {
         cid = contractRs.getInt(1);
         
         ContractManager contract = new ContractManager(con);
         Contract ct = contract.getContractById(cid);
         /*
          * getLastBalanceMonth public
          * java.util.Date getLastBalanceMonth(Contract contract) возращает
          * самый старший месяц, за который есть данные по Балансу
          */
         BalanceUtils balance = new BalanceUtils(con);
         Date contract_balance = (Date) balance.getLastBalanceMonth(ct);
         if (contract_balance == null) {
            continue;
         }
         // ==========================close==============================//
         int mounth = TimeUtils.monthsDelta(contract_balance, dateNow);
         if (mounth > 6) {
            print("Контракт с сидом " + cid);
            /*
             * String update_query = "update contract set gr=0 where id = "+
             * cid; PreparedStatement ps = con.prepareStatement(
             * update_query ); ps.executeUpdate() ; String close_query =
             * "update contract set date2 = '" + dateSql + "' where id = "+
             * cid; PreparedStatement rs = con.prepareStatement( close_query
             * ); rs.executeUpdate() ;
             */
            contract.closeContract(cid);
            ContractParameterManager cpu = new ContractParameterManager(con);
            cpu.setGroup(cid, 19);
            cpu.unsetGroup(cid, 3);
            cpu.unsetGroup(cid, 0);
            i++;
         }

      }
      print("кол-во " + i);
   }

}


это правильное выставление закрытого периода, в вики исправил

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.050s | 47 Queries | GZIP : On ]