테스트 사이트 - 개발 중인 베타 버전입니다

주문후 관리자가 정해놓은 설정일 후에 자동으로 배송인것을 완료로 넘기기

· 16년 전 · 603 · 7

오랫동안 도움만 받다가 찾는분이 계신것 같아 공유하고자 합니다.
제목 그대로,,, 배송처리된 제품을 정해진 시간후에 자동으로 완료로 넘기는 프로그램입니다.

1.날짜를 관리자가 쉽게 변경할 수 있도록 [쇼핑몰기본정보]에 변경하고자 하는 날짜를 추가합니다.
=====> sql에서 [yc4_default ] 테이블에 [de_besong_day] 필드를 int 값으로 추가합니다.

======> /adm/shop_admin/configform.php 파일에 아래의 내용을 적당한 곳에 삽입합니다.

배송완료 자동이동 <input type=text name=de_besong_day value='<?=$default[de_besong_day]?>' size=5 class=ed>일
   <?=help("설정기간이 지나면 자동으로 배송중인 주문건이 완료로 이동됩니다. 0으로 설정하면 이 기능을 사용하지 않습니다.");?>

======>  /adm/shop_admin/configformupdate.php 문서의 update 하는 부분에 아래의 내용을 추가합니다.

de_besong_day           = '$de_besong_day',

2. [yc4_cart] 테이블에 [ct_status_b_date]필드를 datetime 으로 추가합니다.
======>  /adm/shop_admin/ordercartupdate.php 문서에서 주문제품의 상태를 변경할때마다 날짜를 삽입하도록 변경해 줍니다. 나중에 이것을 비교하여 [완료]로 넘기게 됩니다. update 하는 부분에 ct_status_b_date = '$g4[time_ymdhis]', 를 추가합니다.

3. 저는 관리자 페이지를 실행할때마다 관리자가 정해놓은 날짜가 지난 배송건에 대하여 자동 처리하도록 하였습니다.
/adm/shop_admin/index.php 화면의 상단에 아래의 쿼리를 추가하면 됩니다.

$real_time_imsi = $g4[server_time] - (int)(86400 * $default[de_besong_day]);
$real_time_imsi = date("Y-m-d H:i:s", $real_time_imsi); 

        $sql = " update $g4[yc4_cart_table]
                    set ct_status  = '완료'
                  where ct_status = '배송'
                    and ct_status_b_date <= '$real_time_imsi' ";
        sql_query($sql);

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 7개

와우 감사합니다.
15년 전
좋은팁 감사합니다
15년 전
감사합니다.
영카트 배송후 자동 완료
감사합니다.
잘 활용하겠습니다.
12년 전
아직 오류가 없는지요~
12년 전
오늘 적용 중..

게시글 목록

번호 제목
810
807
789
779
769
723
722
720
716
713
714
707
706
687
690
685
673
672
671
661