[Ecshop] 给ecshop订单流程增加拣货状态,最新版本,支持ECSHOP3.6系统

[复制链接]
admin 发表于 2020-6-12 09:15:26 | 显示全部楼层 |阅读模式

登录后,购买下载资源更方便!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
针对ecshop订单中的物品,需要支持拣货的状态,比如未拣货、拣货中、拣货完成,以及显示拣货人姓名。
! R% V' l# l# |5 Y; }
. r" ?$ b' o6 `: e1.SQL操作:
# E: x6 C- u( U4 {- s% D
: r' p( A! @* o  j9 b! T8 k2.在文件languages\zh_cn\admin\order.php中增加:
$ l: c( j. ^2 m& A2 d/ c* u  [) t; ?4 g% ?) T, f
/* 拣货 */( {5 D# O2 i8 K' U. ^# G
$_LANG['order_picking_status'] = '拣货状态';0 l, @1 {' d& c
$_LANG['order_picking_status_none'] = '未拣货';. Z0 ~! H, D2 F
$_LANG['order_picking_status_processing'] = '拣货中';6 Q% T4 v. K* O, Q
$_LANG['order_picking_status_finish'] = '拣货完成';6 J0 |1 v) G: A( F6 V' E
$_LANG['invalid_order_picking_status'] = '拣货状态无效。0:未拣货;1:拣货中;2:拣货完成';8 q0 d) P/ d; p2 n( }' Z

9 e. {9 g* g5 q1 x( Y2 X1 n8 I1 W
3.文件admin\templates\order_list.htm中在一下两行之间:
6 T, c9 k/ m6 K, @$ o0 p    第一个地方* U% S1 T  j% @, u* f; o
<th>{$lang.all_status}</th>% ]5 m$ m6 c/ ~* G5 u
<th>{$lang.handler}</th>
* f+ g5 _7 ~9 S* J中间加上
( w' M  U- {$ k7 R<th>{$lang.order_picking_status}</th>
& x( A. \$ G6 r% Y( j  H1 P! T# e3 T% L- O
第二个地方1 P, t3 q5 r) p/ T% E( O3 p
在<td align="center" valign="top" nowrap="nowrap">{$lang.os[$order.order_status]},{$lang.ps[$order.pay_status]},{$lang.ss[$order.shipping_status]}</td>
) `+ J: p8 p$ j4 k  Z9 t: c: \后面加上2 E  ~( h0 z$ F/ l
<td align="right" valign="top"nowrap="nowrap"><span>{$order.user_name}【{if $order.order_picking_status == 1}{$lang.order_picking_status_processing}{elseif $order.order_picking_status ==2} {$lang.order_picking_status_finish} {else}{$lang.order_picking_status_none}{/if}】</span></td>
; c# }( p3 `( o
- u% ^: M0 f' E2 ?) _& E# z5 P& s
1 `# }( V5 N. ]8 l5 F
% W2 Q" N* }" l, C4.admin\js\listtable.js中,listTable.edit的响应函数修改如下:4 |$ @* J( V- k# x' r

& N# [. H, M. d& z
. h, @  [) v) C5 @/ @7 E

/**

* 创建一个可编辑区

*/

listTable.edit = function(obj, act, id)

{

  var tag =obj.firstChild.tagName;

  if (typeof(tag) !="undefined" && tag.toLowerCase() == "input")

  {

    return;

  }

  /* 保存原始的内容 */

  var org = obj.innerHTML;

  var val = Browser.isIE ?obj.innerText : obj.textContent;

  /* 创建一个输入框 */

  var txt =document.createElement("INPUT");

  txt.value = (val == 'N/A') ?'' : val;

  txt.style.width =(obj.offsetWidth + 12) + "px" ;

  /* 隐藏对象中的内容,并将输入框加入到对象中 */

  obj.innerHTML ="";

  obj.appendChild(txt);

  txt.focus();

  txt.select();

  /* 编辑区输入事件处理函数 */

  txt.onkeypress = function(e)

  {

    var evt =Utils.fixEvent(e);

    var obj =Utils.srcElement(e);

    if (evt.keyCode == 13)//www.zuimoban.com

    {

      obj.blur();

      return false;

    }

    if (evt.keyCode == 27)

    {

      obj.parentNode.innerHTML= org;

    }

  }

  /* 编辑区失去焦点的处理函数 */

  txt.onblur = function(e)

  {

    if(Utils.trim(txt.value).length > 0)

    {

      res =Ajax.call(listTable.url, "act="+act+"&val=" +encodeURIComponent(Utils.trim(txt.value)) + "&id=" +id, null,"POST", "JSON", false);

      if (res.message)

      {

        alert(res.message);

      }

      if(res.id &&(res.act == 'goods_auto' || res.act == 'article_auto'))

      {

         document.getElementById('del'+res.id).innerHTML = "<ahref=\""+ thisfile +"?goods_id="+ res.id+"&act=del\" onclick=\"returnconfirm('"+deleteck+"');\">"+deleteid+"</a>";

      }

      obj.innerHTML = (res.error== 0) ? res.content : org;

    }

    else

    {

      obj.innerHTML = org;

    }

   

    if (act =='edit_is_validated')

    {

         var content = obj.innerHTML.trim();

        

         if (content == '1' || content.indexOf("yes") >= 0)

         {

            obj.innerHTML = '<imgsrc="images/yes.gif">';

         }

         else

        {

            obj.innerHTML ='<img src="images/no.gif">';

        }

    }

    else if (act =='edit_order_picking_status')

    {

         if (org == obj.innerHTML)

         {

            return true;

         }

        

         if (obj.innerHTML == '1')

         {

            obj.innerHTML ="【拣货中】";

         }

         else if (obj.innerHTML == '2')

        {

            obj.innerHTML ="【拣货完成】";

        }

         else

         {

            obj.innerHTML ="【未拣货】";

         }

    }

    else

    {

        

    }

  }

* T* s! R% I/ D4 {! l9 E7 o

}


1 j7 A8 S2 X; a. x7 w6 J% c5.admin\order.php文件中增加下面的函数:
4 F. @- y8 G) Q. ?( k! _3 E( g

7 T5 @& U, c/ Q; F9 [6 W/*------------------------------------------------------ */- E( M- X: U' g" M2 J& \
//-- 订单拣货状态查询4 E9 K. Z6 P" ^( g5 u' T3 s
/*------------------------------------------------------ */
# f4 O2 \5 D) E; p9 T
' P1 o7 ^6 m2 F' y  Y* _, qif ($_REQUEST['act'] == 'edit_order_picking_status')
4 Z2 J% z+ \4 p$ J{
' e: V* l* S3 A0 K6 H- H    /* 检查权限 */
2 X  W! h3 |, z" C6 h   check_authz_json('users_manage');  }$ d6 V" k, M" b8 I

' [, v& r1 `- I; x. Q    $id =empty($_REQUEST['id']) ? 0 : intval($_REQUEST['id']);
) `+ b( \9 f' n& N    $order_picking_status =empty($_REQUEST['val']) ? '' : json_str_iconv(trim($_REQUEST['val']));
( m6 X+ P+ z3 I; ?- u * O. {) w' e* c, {7 J1 f" j. I
    $sql = "DELETE fromorder_picking_status WHERE order_id = '". $id ."' LIMIT 1";
5 W. l3 B* p: w/ y( i) I    $db->query($sql);+ b, w) |' y3 a9 t
   9 v$ k! p- }2 F7 a+ q) L
    $sql = "INSERT INTOorder_picking_status (order_id, user_name, order_picking_status) VALUES('". $id ."', '". $_SESSION['admin_name'] ."', '".$order_picking_status ."')";. I1 K) @. z4 \8 L& y+ c6 G
    $db->query($sql);0 R- b8 Y) }/ D2 C' d2 I$ t
   
7 o/ _2 y/ F2 Z  G% S1 _9 N    if ($order_picking_status> 2 || $order_picking_status < 0)/ `: t' c9 n& R! [; B. Z6 P
    {
  Y  t* e- M- z/ a) I1 V         make_json_error($GLOBALS['_LANG']['invalid_order_picking_status']);9 _9 X+ b9 d. v  p. s
    }
# l% E  _7 A# F7 Q    else  `7 B- i8 v$ i' H
    {
8 W2 S) U) U3 B; w, V+ ]         make_json_result($order_picking_status);! D  D2 x6 M; C4 r2 Q3 Y5 D
    }5 b/ R8 q% n4 F9 p' d& c
}
: f  |- Q- j& a: t: a, ~0 g0 F
/ V) w+ J- Y# ?6 K9 h
6、admin\order.php文件中增加下面的函数将以下代码4 I5 x+ Z2 U$ O  w: q
/* 查询 */
* J5 C) D9 [2 d0 M$sql = "SELECT o.*," .) W7 N& u, @  ?+ |
                    "o.pay_status, o.consignee, o.firstname, o.lastname, o.address, o.email, o.tel, o.extension_code, o.extension_id, " .
& t0 r9 j3 p$ l  f2 \. ~/ \. t                    "(" . order_amount_field('o.') . ") AS total_fee, " ./ }/ u0 s7 u  h; j0 k" `* k
                    "IFNULL(u.user_name, '" .$GLOBALS['_LANG']['anonymous']. "') AS buyer ".
9 O5 j" z/ A) l' Q. ^5 V! K                " FROM " . $GLOBALS['ecs']->table('order_info') . " AS o " .+ K+ q) I4 t7 C% q* `( H, k( y: m2 [
                " LEFT JOIN " .$GLOBALS['ecs']->table('users'). " AS u ON u.user_id=o.user_id ". $where .                        
% e; f3 ~5 g' ~. [! `                " ORDER BY $filter[sort_by] $filter[sort_order] ".% }. f! N# V% y; K
                " LIMIT " . ($filter['page'] - 1) * $filter['page_size'] . ",$filter[page_size]";  9 H) W& C+ `! v# L+ W. g) H. ?
修改为:
5 G$ Y# U4 m7 X! }- B% V8 J7 L //* 查询 */8 A9 U) S+ M5 ?3 @
      $sql = "SELECT o.*," .0 E/ T" M7 w) R
                    "o.pay_status, o.consignee, o.firstname, o.lastname, o.address, o.email, o.tel, o.extension_code, o.extension_id, " .( r' \' d% Z4 ?8 Y& g" ~4 v" k
                    "(" . order_amount_field('o.') . ") AS total_fee, " ., r! D$ w+ y$ n6 R$ f
                    "IFNULL(u.user_name, '" .$GLOBALS['_LANG']['anonymous']. "') AS buyer , p.user_name, p.order_picking_status, r.order_reply_status ".
+ u, t0 s* r/ E, D1 b) H/ m8 c                " FROM " . $GLOBALS['ecs']->table('order_info') . " AS o " .: l7 O% }3 R$ n  M  ?
                " LEFT JOIN " .$GLOBALS['ecs']->table('users'). " AS u ON u.user_id=o.user_id ".        
9 {' A+ c0 T, b# ~& U7 }        " LEFT JOIN order_reply_status AS r ON r.order_id = o.order_id ".
" V) O! ^* r! w! d" LEFT JOIN order_picking_status AS p ON p.order_id = o.order_id ". $where .
5 B; Y2 ~, i( d- I# h                " ORDER BY $filter[sort_by] $filter[sort_order] ".              + i# d! t# Y: {( d% j
                " LIMIT " . ($filter['page'] - 1) * $filter['page_size'] . ",$filter[page_size]";  w4 ?; M. e* y) o
" b; X( P/ X; g: D1 E  w" q8 Z

4 O  A+ l: ~2 D3 I, h; ~
# w) D" E0 f/ L5 U

SQL操作.zip

401 Bytes, 下载次数: 0, 下载积分: 科币 -1

售价: 20 科币  [记录]  [购买]

ecshop数据库操作指令

评论0

手机版|小黑屋|源码模版|全球支付|VISA信用卡|MASTER信用卡|科恒数字网-持续研发、集成、交付、运营方案资源库

GMT+8, 2025-11-13 18:19 , Processed in 0.181800 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.