상품옵션재고관리 페이지 추가
This commit is contained in:
@ -13,6 +13,7 @@ $menu['menu400'] = array (
|
||||
array('400650', '사용후기', G4_ADMIN_URL.'/shop_admin/itempslist.php', 'scf_ps'),
|
||||
array('400620', '상품재고관리', G4_ADMIN_URL.'/shop_admin/itemstocklist.php', 'scf_item_stock'),
|
||||
array('400610', '상품유형관리', G4_ADMIN_URL.'/shop_admin/itemtypelist.php', 'scf_item_type'),
|
||||
array('400500', '상품옵션재고관리', G4_ADMIN_URL.'/shop_admin/optionstocklist.php', 'scf_item_option'),
|
||||
array('400500', '배송일괄처리', G4_ADMIN_URL.'/shop_admin/deliverylist.php', 'scf_deli', 1),
|
||||
array('400740', '배송업체관리', G4_ADMIN_URL.'/shop_admin/deliverycodelist.php', 'scf_deli_co', 1),
|
||||
array('400630', '이벤트관리', G4_ADMIN_URL.'/shop_admin/itemevent.php', 'scf_event'),
|
||||
|
||||
@ -131,13 +131,19 @@ if ($search) // 검색 결과일 때만 처음 버튼을 보여줌
|
||||
{
|
||||
$href = G4_SHOP_URL."/item.php?it_id={$row['it_id']}";
|
||||
|
||||
$sql1 = " select SUM(ct_qty) as sum_qty
|
||||
from {$g4['shop_cart_table']}
|
||||
where it_id = '{$row['it_id']}'
|
||||
and ct_stock_use = '0'
|
||||
and ct_status in ('주문', '준비') ";
|
||||
$row1 = sql_fetch($sql1);
|
||||
$wait_qty = $row1['sum_qty'];
|
||||
// 선택옵션이 있을 경우 주문대기 수량 계산하지 않음
|
||||
$sql2 = " select count(*) as cnt from {$g4['shop_item_option_table']} where it_id = '{$row['it_id']}' and io_type = '0' and io_use = '1' ";
|
||||
$row2 = sql_fetch($sql2);
|
||||
|
||||
if(!$row2['cnt']) {
|
||||
$sql1 = " select SUM(ct_qty) as sum_qty
|
||||
from {$g4['shop_cart_table']}
|
||||
where it_id = '{$row['it_id']}'
|
||||
and ct_stock_use = '0'
|
||||
and ct_status in ('주문', '준비') ";
|
||||
$row1 = sql_fetch($sql1);
|
||||
$wait_qty = $row1['sum_qty'];
|
||||
}
|
||||
|
||||
// 가재고 (미래재고)
|
||||
$temporary_qty = $row['it_stock_qty'] - $wait_qty;
|
||||
@ -154,7 +160,7 @@ if ($search) // 검색 결과일 때만 처음 버튼을 보여줌
|
||||
<td class="td_num"><?php echo number_format($temporary_qty); ?></td>
|
||||
<td class="td_num"><input type="text" name="it_stock_qty[<?php echo $i; ?>]" value="<?php echo $row['it_stock_qty']; ?>" class="frm_input" size="10" autocomplete="off"></td>
|
||||
<td class="td_chk"><input type="checkbox" name="it_use[<?php echo $i; ?>]" value="1" <?php echo ($row['it_use'] ? "checked" : ""); ?>></td>
|
||||
<td class="td_smallmng"><a href="./itemform.php?w=u&it_id=<?php echo $row['it_id']; ?>&ca_id=<?php echo $row['ca_id']; ?>&$qstr">수정</a></td>
|
||||
<td class="td_smallmng"><a href="./itemform.php?w=u&it_id=<?php echo $row['it_id']; ?>&ca_id=<?php echo $row['ca_id']; ?>&<?php echo $qstr; ?>">수정</a></td>
|
||||
</tr><tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
207
adm/shop_admin/optionstocklist.php
Normal file
207
adm/shop_admin/optionstocklist.php
Normal file
@ -0,0 +1,207 @@
|
||||
<?php
|
||||
$sub_menu = '400500';
|
||||
include_once('./_common.php');
|
||||
|
||||
auth_check($auth[$sub_menu], "r");
|
||||
|
||||
$g4['title'] = '상품옵션재고관리';
|
||||
include_once (G4_ADMIN_PATH.'/admin.head.php');
|
||||
|
||||
$sql_search = " where 1 ";
|
||||
if ($search != "") {
|
||||
if ($sel_field != "") {
|
||||
$sql_search .= " and $sel_field like '%$search%' ";
|
||||
}
|
||||
}
|
||||
|
||||
if ($sel_ca_id != "") {
|
||||
$sql_search .= " and b.ca_id like '$sel_ca_id%' ";
|
||||
}
|
||||
|
||||
if ($sel_field == "") $sel_field = "b.it_name";
|
||||
if ($sort1 == "") $sort1 = "a.io_stock_qty";
|
||||
if ($sort2 == "") $sort2 = "asc";
|
||||
|
||||
$sql_common = " from {$g4['shop_item_option_table']} a left join {$g4['shop_item_table']} b on ( a.it_id = b.it_id ) ";
|
||||
$sql_common .= $sql_search;
|
||||
|
||||
// 테이블의 전체 레코드수만 얻음
|
||||
$sql = " select count(*) as cnt " . $sql_common;
|
||||
$row = sql_fetch($sql);
|
||||
$total_count = $row['cnt'];
|
||||
|
||||
$rows = $config['cf_page_rows'];
|
||||
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
|
||||
if ($page == "") { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
|
||||
$from_record = ($page - 1) * $rows; // 시작 열을 구함
|
||||
|
||||
$sql = " select a.it_id,
|
||||
a.io_id,
|
||||
a.io_type,
|
||||
a.io_stock_qty,
|
||||
a.io_noti_qty,
|
||||
a.io_use,
|
||||
b.it_name,
|
||||
b.it_option_subject
|
||||
$sql_common
|
||||
order by $sort1 $sort2
|
||||
limit $from_record, $rows ";
|
||||
$result = sql_query($sql);
|
||||
|
||||
$qstr1 = 'sel_ca_id='.$sel_ca_id.'&sel_field='.$sel_field.'&search='.$search;
|
||||
$qstr = $qstr1.'&sort1='.$sort1.'&sort2='.$sort2.'&page='.$page;
|
||||
|
||||
$listall = '';
|
||||
if ($search) // 검색 결과일 때만 처음 버튼을 보여줌
|
||||
$listall = '<a href="'.$_SERVER['PHP_SELF'].'">전체목록</a>';
|
||||
?>
|
||||
|
||||
<form name="flist">
|
||||
<input type="hidden" name="doc" value="<?php echo $doc; ?>">
|
||||
<input type="hidden" name="sort1" value="<?php echo $sort1; ?>">
|
||||
<input type="hidden" name="sort2" value="<?php echo $sort2; ?>">
|
||||
<input type="hidden" name="page" value="<?php echo $page; ?>">
|
||||
|
||||
<fieldset>
|
||||
<legend>상품재고 검색</legend>
|
||||
|
||||
<span>
|
||||
<?php echo $listall; ?>
|
||||
전체 상품 <?php echo $total_count; ?>개
|
||||
</span>
|
||||
|
||||
<?php // ##### // 웹 접근성 취약 지점 시작 - 지운아빠 2013-04-15 ?>
|
||||
<label for="sel_ca_id" class="sound_only">분류선택</label>
|
||||
<select name="sel_ca_id" id="sel_ca_id">
|
||||
<option value=''>전체분류</option>
|
||||
<?php
|
||||
$sql1 = " select ca_id, ca_name from {$g4['shop_category_table']} order by ca_id ";
|
||||
$result1 = sql_query($sql1);
|
||||
for ($i=0; $row1=mysql_fetch_array($result1); $i++) {
|
||||
$len = strlen($row1['ca_id']) / 2 - 1;
|
||||
$nbsp = "";
|
||||
for ($i=0; $i<$len; $i++) $nbsp .= " ";
|
||||
echo '<option value="'.$row1['ca_id'].'" '.get_selected($sel_ca_id, $row1['ca_id']).'>'.$nbsp.$row1['ca_name'].'</option>'.PHP_EOL;
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<?php // ##### // 웹 접근성 취약 지점 끝 ?>
|
||||
|
||||
<label for="sel_field" class="sound_only">검색대상</label>
|
||||
<select name="sel_field" id="sel_field">
|
||||
<option value="it_name" <?php echo get_selected($sel_field, 'b.it_name'); ?>>상품명</option>
|
||||
<option value="it_id" <?php echo get_selected($sel_field, 'a.it_id'); ?>>상품코드</option>
|
||||
</select>
|
||||
|
||||
<label for="search" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>
|
||||
<input type="text" name="search" value="<?php echo $search; ?>" required class="frm_input required">
|
||||
<input type="submit" value="검색" class="btn_submit">
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
<section class="cbox">
|
||||
<h2>상품옵션재고 목록</h2>
|
||||
<p>재고수정의 수치를 수정하시면 창고재고의 수치가 변경됩니다.</p>
|
||||
|
||||
<div id="btn_add">
|
||||
<a href="./itemsellrank.php" class="btn_add_optional">상품판매순위</a>
|
||||
</div>
|
||||
|
||||
<form name="fitemstocklist" action="./optionstocklistupdate.php" method="post">
|
||||
<input type="hidden" name="sort1" value="<?php echo $sort1; ?>">
|
||||
<input type="hidden" name="sort2" value="<?php echo $sort2; ?>">
|
||||
<input type="hidden" name="sel_ca_id" value="<?php echo $sel_ca_id; ?>">
|
||||
<input type="hidden" name="sel_field" value="<?php echo $sel_field; ?>">
|
||||
<input type="hidden" name="search" value="<?php echo $search; ?>">
|
||||
<input type="hidden" name="page" value="<?php echo $page; ?>">
|
||||
|
||||
<table class="frm_basic">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col"><a href="<?php echo title_sort("b.it_name") . "&$qstr1"; ?>">상품명<span class="sound_only"> 순 정렬</span></a></th>
|
||||
<th scope="col">옵션항목</th>
|
||||
<th scope="col">옵션타입</th>
|
||||
<th scope="col"><a href="<?php echo title_sort("a.io_stock_qty") . "&$qstr1"; ?>">창고재고<span class="sound_only"> 순 정렬</span></a></th>
|
||||
<th scope="col">주문대기</th>
|
||||
<th scope="col">가재고</th>
|
||||
<th scope="col">재고수정</th>
|
||||
<th scope="col"><a href="<?php echo title_sort("a.io_use") . "&$qstr1"; ?>">판매<span class="sound_only"> 순 정렬</span></a></th>
|
||||
<th scope="col">관리</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php
|
||||
for ($i=0; $row=mysql_fetch_array($result); $i++)
|
||||
{
|
||||
$href = G4_SHOP_URL."/item.php?it_id={$row['it_id']}";
|
||||
|
||||
$sql1 = " select SUM(ct_qty) as sum_qty
|
||||
from {$g4['shop_cart_table']}
|
||||
where it_id = '{$row['it_id']}'
|
||||
and io_id = '{$row['io_id']}'
|
||||
and ct_stock_use = '0'
|
||||
and ct_status in ('주문', '준비') ";
|
||||
$row1 = sql_fetch($sql1);
|
||||
$wait_qty = $row1['sum_qty'];
|
||||
|
||||
// 가재고 (미래재고)
|
||||
$temporary_qty = $row['io_stock_qty'] - $wait_qty;
|
||||
|
||||
$option = '';
|
||||
$nbsp = '';
|
||||
if($row['io_type']) {
|
||||
$opt = explode(chr(30), $row['io_id']);
|
||||
if($opt[0] && $opt[1])
|
||||
$option .= $opt[0].' : '.$opt[1];
|
||||
} else {
|
||||
$subj = explode(',', $row['it_option_subject']);
|
||||
$opt = explode(chr(30), $row['io_id']);
|
||||
for($k=0; $k<count($subj); $k++) {
|
||||
if($subj[$k] && $opt[$k]) {
|
||||
$option .= $nbsp.$subj[$k].' : '.$opt[$k];
|
||||
$nbsp = ' ';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$type = '선택옵션';
|
||||
if($row['io_type'])
|
||||
$type = '추가옵션';
|
||||
|
||||
?>
|
||||
<tr>
|
||||
<td class="td_bignum">
|
||||
<input type="hidden" name="it_id[<?php echo $i; ?>]" value="<?php echo $row['it_id']; ?>">
|
||||
<input type="hidden" name="io_id[<?php echo $i; ?>]" value="<?php echo $row['io_id']; ?>">
|
||||
<input type="hidden" name="io_type[<?php echo $i; ?>]" value="<?php echo $row['io_type']; ?>">
|
||||
<a href="<?php echo $href; ?>"><?php echo get_it_image($row['it_id'], 50, 50); ?><?php echo cut_str(stripslashes($row['it_name']), 60, "…"); ?></a>
|
||||
</td>
|
||||
<td><?php echo $option; ?></td>
|
||||
<td><?php echo $type; ?></td>
|
||||
<td class="td_num"><?php echo number_format($row['io_stock_qty']); ?></td>
|
||||
<td class="td_num"><?php echo number_format($wait_qty); ?></td>
|
||||
<td class="td_num"><?php echo number_format($temporary_qty); ?></td>
|
||||
<td class="td_num"><input type="text" name="io_stock_qty[<?php echo $i; ?>]" value="<?php echo $row['io_stock_qty']; ?>" class="frm_input" size="10" autocomplete="off"></td>
|
||||
<td class="td_chk"><input type="checkbox" name="io_use[<?php echo $i; ?>]" value="1" <?php echo ($row['io_use'] ? "checked" : ""); ?>></td>
|
||||
<td class="td_smallmng"><a href="./itemform.php?w=u&it_id=<?php echo $row['it_id']; ?>&ca_id=<?php echo $row['ca_id']; ?>&<?php echo $qstr; ?>">수정</a></td>
|
||||
</tr><tr>
|
||||
<?php
|
||||
}
|
||||
if (!$i)
|
||||
echo '<tr><td colspan="8" class="empty_table"><span>자료가 없습니다.</span></td></tr>';
|
||||
?>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" value="일괄수정" class="btn_submit">
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</section>
|
||||
|
||||
<?php echo get_paging($config['cf_write_pages'], $page, $total_page, "{$_SERVER['PHP_SELF']}?$qstr&page="); ?>
|
||||
|
||||
<?php
|
||||
include_once (G4_ADMIN_PATH.'/admin.tail.php');
|
||||
?>
|
||||
22
adm/shop_admin/optionstocklistupdate.php
Normal file
22
adm/shop_admin/optionstocklistupdate.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
$sub_menu = '400500';
|
||||
include_once('./_common.php');
|
||||
|
||||
check_demo();
|
||||
|
||||
auth_check($auth[$sub_menu], "w");
|
||||
|
||||
// 재고 일괄수정
|
||||
for ($i=0; $i<count($_POST['it_id']); $i++)
|
||||
{
|
||||
$sql = "update {$g4['shop_item_option_table']}
|
||||
set io_stock_qty = '{$_POST['io_stock_qty'][$i]}',
|
||||
io_use = '{$_POST['io_use'][$i]}'
|
||||
where it_id = '{$_POST['it_id'][$i]}'
|
||||
and io_id = '{$_POST['io_id'][$i]}'
|
||||
and io_type = '{$_POST['io_type'][$i]}' ";
|
||||
sql_query($sql);
|
||||
}
|
||||
|
||||
goto_url("./optionstocklist.php?sort1=$sort&sort2=$sort2&sel_ca_id=$sel_ca_id&sel_field=$sel_field&search=$search&page=$page");
|
||||
?>
|
||||
Reference in New Issue
Block a user