[Tep-j-general] Re: ショップの業務&帳票管理フローどうされてますか?

Back to archive index

Tomoaki Fukurai lime****@lime*****
2004年 7月 3日 (土) 01:28:13 JST


To Margyさま

こんにちは
> なるほど、管理画面が支払方法で色分けされていると便利ですね。
> これはスタイルシートとoders.phpとに手を入れれば可能ですか?

実は、改造しすぎてどこがどこだかわからない状態になっていたりも
します。基本的にはMargyさんのおっしゃるとおりスタイルシートを
支払い方法の区分分つくり、支払い方法を変数から抽出して
スタイルを切り替えているということをやっています。

/*-------------------------------------------------------------------*/

//admin/orders.php
//376行 挿入

$bgcdata = dataTableRow;

switch ($orders['payment_method']){
 case ENTRY_HANTEI_CARD:
	$bgcdata = dataTableRowC;
      break;

 case ENTRY_HANTEI_BANK:
	$bgcdata = dataTableRowG;
      break;

 case ENTRY_HANTEI_DAIBIKI:
	$bgcdata = dataTableRowD;
      break;
}

//その下を以下のように書き換え

      if ( (is_object($oInfo)) && ($orders['orders_id'] == $oInfo->orders_id) ) {
        echo '              <tr class="dataTableRowSelected" onmouseover="this.style.cursor=\'hand\'"
onclick="window.open(\'' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID', 'action')) .
'oID=' . $oInfo->orders_id . '&action=edit') . '\')">' . "\n";
      } else {
        echo '              <tr class="' . $bgcdata . '" onmouseover="this.className=\'dataTableRowOver\'
;this.style.cursor=\'hand\'" onmouseout="this.className=\'' . $bgcdata . '\'" onclick="document.location.
href=\'' . tep_href_link(FILENAME_ORDERS, tep_get_all_get_params(array('oID')) . 'oID=' .
$orders['orders_id']) . '\'">' . "\n";
      }



//admin/includes/stylesheet.css
//追加

/* ---------------------------
.[TR]:一覧表データ(クレジット)
--------------------------- */
.dataTableRowC {
background-color: #FFC0C0;                      /* 背景色 */
}

/* ---------------------------
.[TR]:一覧表データ(代引き)
--------------------------- */
.dataTableRowD {
background-color: #C0FFC0;                      /* 背景色 */
}

/* ---------------------------
.[TR]:一覧表データ(銀行)
--------------------------- */
.dataTableRowG {
background-color: #C0C0FF;                      /* 背景色 */
}


//admin/includes/languages/japanese/orders.php
//追加
//支払い方法のDB上の登録名を書きます。

define('ENTRY_HANTEI_CARD', 'クレジットカード決済');
define('ENTRY_HANTEI_BANK', '銀行振込み');
define('ENTRY_HANTEI_DAIBIKI', '代金引換払い');

/*-------------------------------------------------------------------*/

たぶん、最後の判定用文字列定義はDBから抽出させて
作ることも可能でしょうけど、めんどくさいのでこのまま運用しています。
支払い方法が他にもある場合は、挿入のSWITCH分の追加とスタイルシート、
判定用の文字列定義を追加してやればできると思います。


> また、商品名の抽出というのは、「注文管理」の一覧で、個別の
> オーダーを選択した際、右手の「編集」「削除」「納品書」「配
> 送票」のボタンの下に注文日・更新日・支払方法が表示されてい
> ますが、ここに商品名も表示されるということでしょうか?
 いえそこではなくて、上の色分けした各注文毎のテーブル行に
出しています。ちょっと速度は落ちますが、実用に耐えれるので
採用しています。

/*-------------------------------------------------------------------*/
//admin/orders.php
//354行の次行に以下を挿入

<td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_PRODUCT_NAME; ?></td>


//387行を以下のように改造
 <td class="dataTableContent" align="center" STYLE="font-size:8pt;">
<?php $product_name = '';
      $orders_query2_raw = tep_db_query("select products_name
from " . TABLE_ORDERS_PRODUCTS . " where orders_id = '" .
$orders['orders_id'] . "'");
      while ($orders_name = tep_db_fetch_array($orders_query2_raw)) {
	$product_name .=  substr($orders_name['products_name'], 0, 18) . '<BR>';
      }
	echo $product_name;
		 ?></td>

/*-------------------------------------------------------------------*/


もっとスマートな方法があるかもしれませんけど、とりあえず
これで動作してるので・・・^^;

> ちなみに管理ソフトというのは、具体的に何を使っていらっしゃい
> ますか?(ExcelとかAccessとかのことでしょうか or 特定のアプリ
> でしょうか)
> 差し支えなければ教えてくださいませ。
 一応、イッツ通販を考えていますが、これはどうも
LAN(複数端末同時入力等)に対応していないみたいなので、
他をあたっています。
http://www.infotechnica.co.jp/product/tsuhan4/index.htm

 1管理だけでいいのなら上のアプリを使ってオーダーメールから
自動受注ができます。ただし送信Eメールのカスタマイズが必要ですが。

えっと・・・最後に
 たぶん、大丈夫かと思いますが、改造は自己責任にておねがいします。


    . . . .∴・ ・       TOMOAKI FUKURAI  
 _Д≡_Email:lime****@lime*****  From MAIN MACHINE PC "OMOIKANE9" 
―\……ノ ――――――――――――――――――――――
WEB PAGE ADDRESS:LIME STATION http://www.lirnet.mine.nu/~lime/
MSN:lime345




Tep-j-general メーリングリストの案内
Back to archive index