forum.bitel.ru http://forum.bitel.ru/ |
|
WEB-морда (редактирование) http://forum.bitel.ru/viewtopic.php?f=22&t=9105 |
Страница 1 из 1 |
Автор: | blizzard [ 31 мар 2014, 21:45 ] |
Заголовок сообщения: | WEB-морда (редактирование) |
Здравствуйте, захотелось мне в шапку вывести Договор(есть), статус и баланс, какие переменные? Код: <xsl:value-of select="contract/@balance"/> не работает |
Автор: | blizzard [ 31 мар 2014, 22:05 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
И статус тоже не могу вытащить <xsl:variable name="status" select="/data/@statusstr"/> |
Автор: | dimOn [ 01 апр 2014, 11:03 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Шаблоны отключаете кеширование? В xml то исходной есть такие balance и statusstr вообще? |
Автор: | blizzard [ 01 апр 2014, 11:34 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
dimOn писал(а): Шаблоны отключаете кеширование? В xml то исходной есть такие balance и statusstr вообще? кэш - офф, да есть:) |
Автор: | blizzard [ 02 апр 2014, 16:10 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Никак ?! |
Автор: | Amir [ 02 апр 2014, 16:18 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Попробуйте <xsl:value-of select="/data/contract/@balance"/> или <xsl:value-of select="//contract/@balance"/> |
Автор: | blizzard [ 02 апр 2014, 20:02 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Amir писал(а): Попробуйте <xsl:value-of select="/data/contract/@balance"/> или <xsl:value-of select="//contract/@balance"/> Пусто, тоже не работает:( |
Автор: | skn [ 02 апр 2014, 20:49 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
а на какой странице ЛК хотите вытащить? |
Автор: | blizzard [ 02 апр 2014, 21:13 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Хочу чтобы в шапке было, на всех страницах... чтобы абонент всегда знал свой статус и баланс, и былобы не плохо рассчитать сколько нужно доплатить, чтобы договор был Активен |
Автор: | skn [ 02 апр 2014, 22:18 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
покажите исходную xml-ку |
Автор: | blizzard [ 02 апр 2014, 22:20 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
layout.xsl <?xml version="1.0" encoding="UTF-8"?> ... <!-- title --> <div class="pageTitle"> <xsl:if test="$mode='login'">Договор № <xsl:value-of select="$contractTitle"/></xsl:if> баланс <xsl:value-of select="/data/contract/@balance"/> / <xsl:value-of select="//contract/@balance"/> <xsl:if test="$mode='pub'"><xsl:value-of select="$pageTitle"/></xsl:if> </div> <!-- end title --> |
Автор: | skn [ 02 апр 2014, 23:49 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
не xsl, а xml, из которой с помощью xsl генериться html |
Автор: | blizzard [ 03 апр 2014, 09:15 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
skn писал(а): не xsl, а xml, из которой с помощью xsl генериться html Какой файл ? |
Автор: | dimOn [ 03 апр 2014, 11:29 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
не файл, a xml из которой генерится конечная страница, про которую я выше спрашивал Цитата: В xml то исходной есть такие balance и statusstr вообще? (&ct=xml добавьте)иначе тогда вообще непонятно с чего вы взяли, что дописывание balance и statusstr что-то выведет вам в страницу? |
Автор: | blizzard [ 03 апр 2014, 23:32 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
dimOn писал(а): не файл, a xml из которой генерится конечная страница, про которую я выше спрашивал Цитата: В xml то исходной есть такие balance и statusstr вообще? (&ct=xml добавьте)иначе тогда вообще непонятно с чего вы взяли, что дописывание balance и statusstr что-то выведет вам в страницу? Я правлю хмл в layout.xsl, как же еще? а откуда взял переменные, это файлы webroot\xsl\main.xsl Код: <xsl:template name="ContractStatus"> Текущий статус: <b><xsl:value-of select="/data/@statusstr"/></b>. и debt_mail.xsl Код: Остаток вашего баланса опустился ниже допустимого уровня и составляет <xsl:value-of select="contract/@balance"/>. p.s.: нужно из xsl делать запросы к бд? |
Автор: | skn [ 04 апр 2014, 00:54 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
что по вашему означает строка Код: <xsl:value-of select="/data/@statusstr"/>
|
Автор: | blizzard [ 04 апр 2014, 01:09 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Не знаю я xsl, и не понимаю как переменные передаются из явы, вообщем сделал полный изврат средствами mysql Файл: layout.xsl Код: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:common="http://common.bitel.ru" xmlns:utils="ru.bitel.common.Utils" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xalan="http://xml.apache.org/xalan" xmlns:sql="bitel.billing.server.util.exslt.SQLQuery"> Код: <xsl:variable name="query">SELECT (`summa1`-`summa3`)+`summa2` as `balance` FROM `contract_balance` WHERE `mm` = (SELECT MAX(`mm`) FROM `contract_balance` WHERE `yy` = (SELECT MAX(`yy`) FROM `contract_balance`)) AND `cid` = '<xsl:value-of select="$CONTRACT_ID"/>'</xsl:variable> <xsl:variable name="contracts" select="sql:select($query)"/> [code]<xsl:variable name="balance"><xsl:value-of select="$contracts/row/@balance"/></xsl:variable>[/code] <!-- title --> <div class="pageTitle"> <xsl:if test="$mode='login'">Договор № <xsl:value-of select="$contractTitle"/></xsl:if>, Баланс: <xsl:value-of select="$balance"/> руб. <xsl:if test="$mode='pub'"><xsl:value-of select="$pageTitle"/></xsl:if> </div> <!-- end title --> p.s.: Но срабатывает xsl только на Пополнение через асист, и смена тарифного плана, на других страницах тупо пропадает... p.p.s.: придеться веб морду писать на php |
Автор: | skn [ 04 апр 2014, 02:58 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
часть страниц ЛК переделана на jsp, там xsl шаблоны не используются. P.S. sql запросы баланса при отображение каждой страницы в ЛК, неплохой способ положить БД на обе лопатки... удачи! |
Автор: | blizzard [ 04 апр 2014, 17:02 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
skn писал(а): часть страниц ЛК переделана на jsp, там xsl шаблоны не используются. P.S. sql запросы баланса при отображение каждой страницы в ЛК, неплохой способ положить БД на обе лопатки... удачи! это есть в КАЖДОМ НОРМАЛЬНОМ БИЛЛИНГЕ !) запрос езвращенский, ибо структура mysql баз очень кривая у вас |
Автор: | skyb [ 04 апр 2014, 17:06 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
вброс на вентелятор, будет срач, пятницца же )))))) девлоперы, если пост мой не вписывается, удалите, я не обижусь |
Автор: | skn [ 04 апр 2014, 18:57 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
blizzard писал(а): это есть в КАЖДОМ НОРМАЛЬНОМ БИЛЛИНГЕ !) запрос езвращенский, ибо структура mysql баз очень кривая у вас 1) а кто сказал, что наш биллинг относится к "НОРМАЛЬНЫМ"? 2) а так "select * from contract_balance where cid=<CID> order by yy desc, mm desc limit 1" слабо? |
Автор: | stark [ 04 апр 2014, 18:58 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Вроде бы так должно работать. Код: <xsl:value-of select="/data/contract_data/contract/@balance_rest"/> Код: <xsl:value-of select="/data/contract_data/contract/@status"/> Там по факту половина интерфейса уже переписана на jsp. Это там работать не будет, как и ваш код c sql. Для jsp надо отдельно делать. |
Автор: | blizzard [ 04 апр 2014, 20:11 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
skn писал(а): blizzard писал(а): это есть в КАЖДОМ НОРМАЛЬНОМ БИЛЛИНГЕ !) запрос езвращенский, ибо структура mysql баз очень кривая у вас 1) а кто сказал, что наш биллинг относится к "НОРМАЛЬНЫМ"? 2) а так "select * from contract_balance where cid=<CID> order by yy desc, mm desc limit 1" слабо? 1) все же не терял надежды 2) запросы все же идентичны для мускуля по нагрузке, я больше поклонник oracle, нежели mysql... |
Автор: | blizzard [ 04 апр 2014, 20:15 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
Цитата: увы, всё перепробывал( Договор № 123, Баланс: руб., Текущий статус: <c:if test="${not empty contract}">Договор № ${contract.title}</c:if>, Баланс: <xsl:value-of select="/data/contract_data/contract/@balance_rest"/> руб., Текущий статус: <xsl:value-of select="/data/contract_data/contract/@status"/> От stark: Прошу прощения, случайно поправил ваше сообщение вместо цитирования. Это гадание на кофейной гуще. Вы зайдите в любой модуль(например список сессий dialup), к url-сверху добавьте "&ct=xml" и увидите какая реальная xml к вам приходит . И на основе этой информации уже составите запрос. Почему в модуль а не новости, или баланс , потому что там это уже не работает - там на jsp перешли. Про &ct=xml написано тут |
Автор: | skn [ 04 апр 2014, 20:27 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
blizzard писал(а): skn писал(а): blizzard писал(а): это есть в КАЖДОМ НОРМАЛЬНОМ БИЛЛИНГЕ !) запрос езвращенский, ибо структура mysql баз очень кривая у вас 1) а кто сказал, что наш биллинг относится к "НОРМАЛЬНЫМ"? 2) а так "select * from contract_balance where cid=<CID> order by yy desc, mm desc limit 1" слабо? 1) все же не терял надежды 2) запросы все же идентичны для мускуля по нагрузке, я больше поклонник oracle, нежели mysql... 1) а можно узнать критерии "НОРМАЛЬНОСТИ", например для биллинга, человека, автомобиля? 2) ну если для вас это одинаково, то вопросов не имею.... Код: mysql> explain SELECT (`summa1`-`summa3`)+`summa2` as `balance` FROM `contract_balance` WHERE `mm` = (SELECT MAX(`mm`) FROM `contract_balance` WHERE `yy` = (SELECT MAX(`yy`) FROM `contract_balance`)) AND `cid` = 793; +----+-------------+------------------+-------+---------------+---------+---------+-------+-------+--------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+------------------+-------+---------------+---------+---------+-------+-------+--------------------------+ | 1 | PRIMARY | contract_balance | ref | PRIMARY,cid | PRIMARY | 4 | const | 69 | Using where | | 2 | SUBQUERY | contract_balance | index | NULL | cid | 4 | NULL | 26545 | Using where; Using index | | 3 | SUBQUERY | contract_balance | index | NULL | cid | 4 | NULL | 26545 | Using index | +----+-------------+------------------+-------+---------------+---------+---------+-------+-------+--------------------------+ 3 rows in set (0.01 sec) mysql> explain select * from contract_balance where cid=793 order by yy desc, mm desc limit 1; +----+-------------+------------------+------+---------------+---------+---------+-------+------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+------------------+------+---------------+---------+---------+-------+------+-------------+ | 1 | SIMPLE | contract_balance | ref | PRIMARY,cid | PRIMARY | 4 | const | 69 | Using where | +----+-------------+------------------+------+---------------+---------+---------+-------+------+-------------+ 1 row in set (0.00 sec) P.S. поэтому и не используем оракл... что бы народ головой думал, а не надеялся, что за него комп работать будет! |
Автор: | stark [ 07 апр 2014, 15:10 ] |
Заголовок сообщения: | Re: WEB-морда (редактирование) |
blizzard писал(а): 2) запросы все же идентичны для мускуля по нагрузке, я больше поклонник oracle, нежели mysql... mysql плохо переваривает подзапросы.. Во всяком случае раньше плохо переваривал, может в более свежих версиях что-то поменялось . До сих пор стараюсь их избегать. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |