您现在访问的是旧版页面,请您点击下面链接访问新版:新版素材猫
欢迎您来到素材猫
充值

ECSHOP一键发货插件安装说明

  • 时间:2020-05-18 14:57 编辑:素材猫 来源:素材猫 阅读:177
  • 扫一扫,手机访问
摘要:ECSHOP一键发货插件安装说明

安装步骤: (下面是以默认程序为例,具体根据您的程序文件修改)

一、打开/admin/templates/order_info.htm文件

找到如下代码:

<td   colspan="5">{if $operable_list.confirm}

   

将以上这段代码修改为:

    {if   $order.order_status == 1 && $order.pay_status == 2 &&   $order.shipping_status != 1 && $order.shipping_status != 2 or   $order.order_status == 1 && $order.pay_status == 0 && $order.shipping_status   != 1 && $order.shipping_status != 2}{if $order.shipping_name}{$lang.label_invoice_no}<input   name="invoice_no" type="text"   style="color:#00F" value="{$order.order_sn}"   />{/if}<input name="to_shipping" type="submit"   style="color:#F00" value="{$lang.op_fast_delivery}"/>{/if}

   

 

 

二、打开/admin/order.php文件

找到如下代码:

    /* 付款 */

    elseif (isset($_POST['pay']))

   

在以上这段代码的上面加:

      elseif (isset($_POST['to_shipping']))

      {

          $invoice_no = empty($_REQUEST['invoice_no']) ? '' :   trim($_REQUEST['invoice_no']);  //快递单号

          $order_finish = get_all_delivery_finish($order_id);

 

          //if (!empty($invoice_no))

          if ($order_finish != 1 && $order_finish != -1)

          {

            $order_id =   intval(trim($order_id));

            $action_note =   trim($action_note);

 

            /* 查询:根据订单id查询订单信息 */

            if (!empty($order_id))

            {

                $order =   order_info($order_id);

            }

            else

            {

                die('order does not exist');

            }

 

            /* 查询:根据订单是否完成   检查权限 */

            if (order_finished($order))

            {

                  admin_priv('order_view_finished');

            }

            else

            {

                admin_priv('order_view');

            }

 

            /* 查询:如果管理员属于某个办事处,检查该订单是否也属于这个办事处 */

            $sql = "SELECT agency_id   FROM " . $ecs->table('admin_user') . " WHERE user_id =   '$_SESSION[admin_id]'";

            $agency_id =   $db->getOne($sql);

            if ($agency_id > 0)

            {

                if ($order['agency_id'] !=   $agency_id)

                {

                      sys_msg($_LANG['priv_error'], 0);

                }

            }

 

            /* 查询:取得用户名 */

            if ($order['user_id'] > 0)

            {

                $user =   user_info($order['user_id']);

                if (!empty($user))

                {

                    $order['user_name'] =   $user['user_name'];

                  }

            }

 

            /* 查询:取得区域名 */

            $order['region'] =   $db->getOne($sql);

 

            /* 查询:其他处理 */

            $order['order_time']    = local_date($_CFG['time_format'],   $order['add_time']);

            $order['invoice_no']    =   $order['shipping_status'] == SS_UNSHIPPED || $order['shipping_status'] ==   SS_PREPARING ? $_LANG['ss'][SS_UNSHIPPED] : $order['invoice_no'];

 

            /* 查询:是否保价 */

            $order['insure_yn'] =   empty($order['insure_fee']) ? 0 : 1;

 

            /* 查询:是否存在实体商品 */

            $exist_real_goods =   exist_real_goods($order_id);

 

            /* 查询:取得订单商品 */

            $_goods =   get_order_goods(array('order_id' => $order['order_id'], 'order_sn'   =>$order['order_sn']));

 

            $attr = $_goods['attr'];

            $goods_list =   $_goods['goods_list'];

            unset($_goods);

 

            /* 查询:商品已发货数量   此单可发货数量 */

            if ($goods_list)

            {

                foreach ($goods_list as $key   => $value)

                {

                }

                  foreach ($goods_list   as $key=>$goods_value)

                {

                    if   (!$goods_value['goods_id'])

                    {

                        continue;

                    }

 

                    /* 超级礼包 */

                    if   (($goods_value['extension_code'] == 'package_buy') &&   (count($goods_value['package_goods_list']) > 0))

                    {

                          $goods_list[$key]['package_goods_list'] =   package_goods($goods_value['package_goods_list'], $goods_value['goods_number'],   $goods_value['order_id'], $goods_value['extension_code'],   $goods_value['goods_id']);

 

                        foreach   ($goods_list[$key]['package_goods_list'] as $pg_key => $pg_value)

                        {

                            $goods_list[$key]['package_goods_list'][$pg_key]['readonly']   = '';

                            /* 使用库存 是否缺货 */

                            if   ($pg_value['storage'] <= 0 && $_CFG['use_storage'] == '1'   && $_CFG['stock_dec_time'] == SDT_SHIP)

                            {

                                  $goods_list[$key]['package_goods_list'][$pg_key]['send'] =   $_LANG['act_good_vacancy'];

                                  $goods_list[$key]['package_goods_list'][$pg_key]['readonly'] =   'readonly="readonly"';

                              }

                            /* 将已经全部发货的商品设置为只读 */

                            elseif   ($pg_value['send'] <= 0)

                            {

                                  $goods_list[$key]['package_goods_list'][$pg_key]['send'] =   $_LANG['act_good_delivery'];

                                  $goods_list[$key]['package_goods_list'][$pg_key]['readonly'] =   'readonly="readonly"';

                            }

                        }

                    }

                    else

                    {

                          $goods_list[$key]['sended'] =   $goods_value['send_number'];

                          $goods_list[$key]['sended'] = $goods_value['goods_number'];

                          $goods_list[$key]['send'] = $goods_value['goods_number'] -   $goods_value['send_number'];

 

                          $goods_list[$key]['readonly'] = '';

                        /* 是否缺货 */

                        if   ($goods_value['storage'] <= 0 && $_CFG['use_storage'] == '1'  && $_CFG['stock_dec_time'] ==   SDT_SHIP)

                        {

                              $goods_list[$key]['send'] = $_LANG['act_good_vacancy'];

                              $goods_list[$key]['readonly'] = 'readonly="readonly"';

                        }

                        elseif   ($goods_list[$key]['send'] <= 0)

                        {

                              $goods_list[$key]['send'] = $_LANG['act_good_delivery'];

                              $goods_list[$key]['readonly'] = 'readonly="readonly"';

                        }

                    }

                  }

            }

 

            $suppliers_id = 0;

 

            $delivery['order_sn'] =   trim($order['order_sn']);

            $delivery['add_time'] =   trim($order['order_time']);

            $delivery['user_id'] =   intval(trim($order['user_id']));

            $delivery['how_oos'] =   trim($order['how_oos']);

            $delivery['shipping_id'] =   trim($order['shipping_id']);

            $delivery['shipping_fee'] =   trim($order['shipping_fee']);

            $delivery['consignee'] =   trim($order['consignee']);

            $delivery['address'] =   trim($order['address']);

            $delivery['country'] =   intval(trim($order['country']));

            $delivery['province'] =   intval(trim($order['province']));

            $delivery['city'] =   intval(trim($order['city']));

            $delivery['district'] =   intval(trim($order['district']));

            $delivery['sign_building'] =   trim($order['sign_building']);

            $delivery['email'] =   trim($order['email']);

            $delivery['zipcode'] =   trim($order['zipcode']);

            $delivery['tel'] =   trim($order['tel']);

            $delivery['mobile'] =   trim($order['mobile']);

            $delivery['best_time'] =   trim($order['best_time']);

            $delivery['postscript'] =   trim($order['postscript']);

              $delivery['how_oos'] =   trim($order['how_oos']);

            $delivery['insure_fee'] =   floatval(trim($order['insure_fee']));

            $delivery['shipping_fee'] =   floatval(trim($order['shipping_fee']));

            $delivery['agency_id'] = intval(trim($order['agency_id']));

            $delivery['shipping_name'] =   trim($order['shipping_name']);

 

            /* 查询订单信息 */

            $order = order_info($order_id);

 

            /* 检查能否操作 */

            $operable_list =   operable_list($order);

 

              /* 初始化提示信息 */

            $msg = '';

 

            /* 取得订单商品 */

            $_goods =   get_order_goods(array('order_id' => $order_id, 'order_sn' =>   $delivery['order_sn']));

            $goods_list =   $_goods['goods_list'];

 

            /* 检查此单发货商品库存缺货情况 */

            /* $goods_list已经过处理 超值礼包中商品库存已取得 */

            $virtual_goods = array();

            $package_virtual_goods = array();

 

            /* 生成发货单 */

            /* 获取发货单号和流水号 */

            $delivery['delivery_sn'] =   get_delivery_sn();

              $delivery_sn =   $delivery['delivery_sn'];

            /* 获取当前操作员 */

            $delivery['action_user'] =   $_SESSION['admin_name'];

            /* 获取发货单生成时间 */

            define('GMTIME_UTC', gmtime());

            $delivery['update_time'] =   GMTIME_UTC;

            $delivery_time =   $delivery['update_time'];

            $sql ="SELECT add_time FROM   ". $GLOBALS['ecs']->table('order_info') ." WHERE order_sn =   '" . $delivery['order_sn'] . "'";

            $delivery['add_time'] =  $GLOBALS['db']->GetOne($sql);

            /* 获取发货单所属供应商 */

            $delivery['suppliers_id'] =   $suppliers_id;

            /* 设置默认值 */

            $delivery['status'] = 2; // 正常

            $delivery['order_id'] =   $order_id;

            /* 过滤字段项 */

            $filter_fileds = array(

                                     'order_sn', 'add_time', 'user_id', 'how_oos', 'shipping_id',   'shipping_fee',

                                     'consignee', 'address', 'country', 'province', 'city', 'district',   'sign_building',

                                   'email', 'zipcode', 'tel',   'mobile', 'best_time', 'postscript', 'insure_fee',

                                     'agency_id', 'delivery_sn', 'action_user', 'update_time',

                                     'suppliers_id', 'status', 'order_id', 'shipping_name'

                                   );

            $_delivery = array();

            foreach ($filter_fileds as   $value)

            {

                $_delivery[$value] =   $delivery[$value];

            }

            /* 发货单入库 */

            $query =   $db->autoExecute($ecs->table('delivery_order'), $_delivery, 'INSERT',   '', 'SILENT');

            $delivery_id =   $db->insert_id();

            if ($delivery_id)

            {

                $delivery_goods = array();

 

                //发货单商品入库

                  if   (!empty($goods_list))

                {

                    foreach ($goods_list as   $value)

                    {

                        // 商品(实货)(虚货)

                        if   (empty($value['extension_code']) || $value['extension_code'] ==   'virtual_card')

                        {

                            $delivery_goods =   array('delivery_id' => $delivery_id,

                                                      'goods_id' => $value['goods_id'],

                                                    'product_id' =>   $value['product_id'],

                                                      'product_sn' => $value['product_sn'],

                                                      'goods_id' => $value['goods_id'],

                                                    'goods_name' =>   addslashes($value['goods_name']),

                                                      'brand_name' => addslashes($value['brand_name']),

                                                      'goods_sn' => $value['goods_sn'],

                                                      'send_number' => $value['goods_number'],

                                                      'parent_id' => 0,

                                                      'is_real' => $value['is_real'],

                                                      'goods_attr'   => addslashes($value['goods_attr'])

                                                      );

 

                            /* 如果是货品 */

                            if   (!empty($value['product_id']))

                              {

                                  $delivery_goods['product_id'] = $value['product_id'];

                            }

 

                            $query =   $db->autoExecute($ecs->table('delivery_goods'), $delivery_goods,   'INSERT', '', 'SILENT');

                            $sql =   "UPDATE ".$GLOBALS['ecs']->table('order_goods'). " SET   send_number = " . $value['goods_number'] . " WHERE order_id =   '" . $value['order_id'] . "' AND goods_id = '" .   $value['goods_id'] . "' ";

                            $GLOBALS['db']->query($sql,   'SILENT');

                        }

                        // 商品(超值礼包)

                        elseif   ($value['extension_code'] == 'package_buy')

                        {

                            foreach ($value['package_goods_list']   as $pg_key => $pg_value)

                            {

                                  $delivery_pg_goods = array('delivery_id' => $delivery_id,

                                                          'goods_id' => $pg_value['goods_id'],

                                                          'product_id' => $pg_value['product_id'],

                                                          'product_sn' => $pg_value['product_sn'],

                                                          'goods_name' =>   $pg_value['goods_name'],

                                                          'brand_name' => '',

                                                          'goods_sn' => $pg_value['goods_sn'],

                                                        'send_number' =>   $value['goods_number'],

                                                          'parent_id' => $value['goods_id'], // 礼包ID

                                                          'extension_code' => $value['extension_code'], // 礼包

                                                          'is_real' =>   $pg_value['is_real']

                                                          );

                                $query =   $db->autoExecute($ecs->table('delivery_goods'), $delivery_pg_goods,   'INSERT', '', 'SILENT');

                                $sql = "UPDATE   ".$GLOBALS['ecs']->table('order_goods'). " SET send_number =   " . $value['goods_number'] . " WHERE order_id = '" .   $value['order_id'] . "' AND goods_id = '" . $pg_value['goods_id'] .   "' ";

                                $GLOBALS['db']->query($sql,   'SILENT');

                            }

                        }

                    }

                }

            }

            else

            {

                /* 操作失败 */

                $links[] = array('text' =>   $_LANG['order_info'], 'href' => 'order.php?act=info&order_id=' .   $order_id);

                sys_msg($_LANG['act_false'],   1, $links);

            }

            unset($filter_fileds, $delivery,   $_delivery, $order_finish);

 

            /* 定单信息更新处理 */

            if (true)

            {

                /* 标记订单为已确认 “发货中” */

                /* 更新发货时间 */

                $order_finish =   get_order_finish($order_id);

                $shipping_status =   SS_SHIPPED_ING;

                if ($order['order_status'] !=   OS_CONFIRMED && $order['order_status'] != OS_SPLITED &&   $order['order_status'] != OS_SPLITING_PART)

                {

                    $arr['order_status']    = OS_CONFIRMED;

                    $arr['confirm_time']    = GMTIME_UTC;

                }

                $arr['order_status'] =   $order_finish ? OS_SPLITED : OS_SPLITING_PART; // 全部分单、部分分单

                $arr['shipping_status']     = $shipping_status;

                update_order($order_id,   $arr);

            }

 

            /* 记录log */

            order_action($order['order_sn'],   $arr['order_status'], $shipping_status, $order['pay_status'], $action_note);

 

            /* 清除缓存 */

            clear_cache_files();

 

            /* 根据发货单id查询发货单信息 */

            if (!empty($delivery_id))

            {

                $delivery_order =   delivery_order_info($delivery_id);

            }

            elseif (!empty($order_sn))

            {

                $delivery_id =   $GLOBALS['db']->getOne("SELECT delivery_id FROM " .   $ecs->table('delivery_order') . " WHERE order_sn = " . $order_sn   );

                $delivery_order =   delivery_order_info($delivery_id);

            }

            else

            {

                die('order does not exist');

            }

 

            /* 如果管理员属于某个办事处,检查该订单是否也属于这个办事处 */

            $sql = "SELECT agency_id   FROM " . $ecs->table('admin_user') . " WHERE user_id = '" .   $_SESSION['admin_id'] . "'";

            $agency_id =   $db->getOne($sql);

            if ($agency_id > 0)

              {

                if   ($delivery_order['agency_id'] != $agency_id)

                {

                      sys_msg($_LANG['priv_error']);

                }

 

                /* 取当前办事处信息 */

                $sql = "SELECT   agency_name FROM " . $ecs->table('agency') . " WHERE agency_id =   '$agency_id' LIMIT 0, 1";

                $agency_name =   $db->getOne($sql);

                  $delivery_order['agency_name'] = $agency_name;

            }

 

            /* 取得用户名 */

            if ($delivery_order['user_id']   > 0)

            {

                $user =   user_info($delivery_order['user_id']);

                if (!empty($user))

                {

                      $delivery_order['user_name'] = $user['user_name'];

                }

            }

 

            /* 取得区域名 */

            $sql = "SELECT   concat(IFNULL(c.region_name, ''), '  ',   IFNULL(p.region_name, ''), " .

                        "'  ', IFNULL(t.region_name, ''), '  ', IFNULL(d.region_name, '')) AS region   " .

                    "FROM " .   $ecs->table('order_info') . " AS o " .

                        "LEFT JOIN   " . $ecs->table('region') . " AS c ON o.country = c.region_id   " .

                        "LEFT JOIN   " . $ecs->table('region') . " AS p ON o.province = p.region_id   " .

                        "LEFT JOIN "   . $ecs->table('region') . " AS t ON o.city = t.region_id " .

                        "LEFT JOIN   " . $ecs->table('region') . " AS d ON o.district = d.region_id   " .

                    "WHERE o.order_id =   '" . $delivery_order['order_id'] . "'";

              $delivery_order['region'] =   $db->getOne($sql);

 

            /* 是否保价 */

            $order['insure_yn'] =   empty($order['insure_fee']) ? 0 : 1;

 

            /* 取得发货单商品 */

            $goods_sql = "SELECT * FROM   " . $ecs->table('delivery_goods') . " WHERE delivery_id = "   . $delivery_order['delivery_id'];

            $goods_list =   $GLOBALS['db']->getAll($goods_sql);

 

            /* 是否存在实体商品 */

            $exist_real_goods = 0;

            if ($goods_list)

            {

                foreach ($goods_list as   $value)

                {

                    if ($value['is_real'])

                    {

                        $exist_real_goods++;

                    }

                }

            }

 

            /* 取得订单操作记录 */

            $act_list = array();

            $sql = "SELECT * FROM "   . $ecs->table('order_action') . " WHERE order_id = '" .   $delivery_order['order_id'] . "' AND action_place = 1 ORDER BY log_time   DESC, action_id DESC";

            $res = $db->query($sql);

            while ($row =   $db->fetchRow($res))

            {

                $row['order_status']    = $_LANG['os'][$row['order_status']];

                $row['pay_status']      = $_LANG['ps'][$row['pay_status']];

                $row['shipping_status'] =   ($row['shipping_status'] == SS_SHIPPED_ING) ?   $_LANG['ss_admin'][SS_SHIPPED_ING] : $_LANG['ss'][$row['shipping_status']];

                $row['action_time']     = local_date($_CFG['time_format'],   $row['log_time']);

                $act_list[] = $row;

            }

 

            /*同步发货*/

            /*判断支付方式是否支付宝*/

            $alipay    = false;

            $order     =   order_info($delivery_order['order_id']);    //根据订单ID查询订单信息,返回数组$order

            $payment   = payment_info($order['pay_id']);           //取得支付方式信息

 

            /* 定义当前时间 */

            define('GMTIME_UTC', gmtime());   // 获取 UTC 时间戳

 

            /* 根据发货单id查询发货单信息 */

            if (!empty($delivery_id))

            {

                $delivery_order =   delivery_order_info($delivery_id);

            }

            else

            {

                die('order does not exist');

              }

 

            /* 查询订单信息 */

            $order = order_info($order_id);

 

            /* 检查此单发货商品库存缺货情况 */

            $virtual_goods = array();

            $delivery_stock_sql =   "SELECT DG.goods_id, DG.is_real, DG.product_id, SUM(DG.send_number) AS sums,   IF(DG.product_id > 0, P.product_number, G.goods_number) AS storage,   G.goods_name, DG.send_number FROM " .   $GLOBALS['ecs']->table('delivery_goods') . " AS DG, " .   $GLOBALS['ecs']->table('goods') . " AS G, " . $GLOBALS['ecs']->table('products')   . " AS P WHERE DG.goods_id = G.goods_id AND DG.delivery_id =   '$delivery_id' AND DG.product_id = P.product_id GROUP BY DG.product_id";

            $delivery_stock_result =   $GLOBALS['db']->getAll($delivery_stock_sql);

 

            /* 如果商品存在规格就查询规格,如果不存在规格按商品库存查询 */

              if(!empty($delivery_stock_result))

            {

                foreach   ($delivery_stock_result as $value)

                {

                    if (($value['sums'] >   $value['storage'] || $value['storage'] <= 0) &&   (($_CFG['use_storage'] == '1'    && $_CFG['stock_dec_time'] == SDT_SHIP) ||   ($_CFG['use_storage'] == '0' && $value['is_real'] == 0)))

                    {

                        /* 操作失败 */

                        $links[] =   array('text' => $_LANG['order_info'], 'href' => 'order.php?act=delivery_info&delivery_id='   . $delivery_id);

                          sys_msg(sprintf($_LANG['act_good_vacancy'], $value['goods_name']), 1,   $links);

                        break;

                    }

 

                    /* 虚拟商品列表 virtual_card*/

                      if   ($value['is_real'] == 0)

                    {

                        $virtual_goods[] =   array('goods_id' => $value['goods_id'], 'goods_name' =>   $value['goods_name'], 'num' => $value['send_number']);

                    }

                }

            }

            else

            {

                $delivery_stock_sql =   "SELECT DG.goods_id, DG.is_real, SUM(DG.send_number) AS sums,   G.goods_number, G.goods_name, DG.send_number FROM " .   $GLOBALS['ecs']->table('delivery_goods') . " AS DG, " .   $GLOBALS['ecs']->table('goods') . " AS G WHERE DG.goods_id =   G.goods_id AND DG.delivery_id = '$delivery_id' GROUP BY DG.goods_id";

                $delivery_stock_result =   $GLOBALS['db']->getAll($delivery_stock_sql);

                foreach ($delivery_stock_result   as $value)

                {

                    if (($value['sums'] >   $value['goods_number'] || $value['goods_number'] <= 0) &&   (($_CFG['use_storage'] == '1'    && $_CFG['stock_dec_time'] == SDT_SHIP) ||   ($_CFG['use_storage'] == '0' && $value['is_real'] == 0)))

                    {

                        /* 操作失败 */

                        $links[] =   array('text' => $_LANG['order_info'], 'href' =>   'order.php?act=delivery_info&delivery_id=' . $delivery_id);

                        sys_msg(sprintf($_LANG['act_good_vacancy'],   $value['goods_name']), 1, $links);

                        break;

                    }

 

                    /* 虚拟商品列表 virtual_card*/

                    if ($value['is_real'] ==   0)

                    {

                        $virtual_goods[] =   array('goods_id' => $value['goods_id'], 'goods_name' =>   $value['goods_name'], 'num' => $value['send_number']);

                    }

                }

            }

 

            /* 发货 */

            /* 处理虚拟卡   商品(虚货) */

            if (is_array($virtual_goods)   && count($virtual_goods) > 0)

            {

                foreach ($virtual_goods as   $virtual_value)

                {

                      virtual_card_shipping($virtual_value,$order['order_sn'], $msg,   'split');

                }

            }

 

            /* 如果使用库存,且发货时减库存,则修改库存 */

            if ($_CFG['use_storage'] == '1'   && $_CFG['stock_dec_time'] == SDT_SHIP)

            {

                foreach   ($delivery_stock_result as $value)

                {

                    /* 商品(实货)、超级礼包(实货) */

                    if ($value['is_real'] !=   0)

                    {

                        //(货品)

                        if   (!empty($value['product_id']))

                        {

                            $minus_stock_sql   = "UPDATE " . $GLOBALS['ecs']->table('products') . " SET   product_number = product_number - " . $value['sums'] . " WHERE   product_id = " . $value['product_id'];

                              $GLOBALS['db']->query($minus_stock_sql, 'SILENT');

                        }

 

                          $minus_stock_sql =   "UPDATE " . $GLOBALS['ecs']->table('goods') . " SET   goods_number = goods_number - " . $value['sums'] . " WHERE goods_id   = " . $value['goods_id'];

                          $GLOBALS['db']->query($minus_stock_sql, 'SILENT');

                    }

                }

            }

 

            /* 修改发货单信息 */

            $invoice_no = trim($invoice_no);

            $_delivery['invoice_no'] =   $invoice_no;

            $_delivery['status'] = 0; // 0,为已发货

            $query = $db->autoExecute($ecs->table('delivery_order'),   $_delivery, 'UPDATE', "delivery_id = $delivery_id", 'SILENT');

            if (!$query)

            {

                /* 操作失败 */

                $links[] = array('text' =>   $_LANG['delivery_sn'] . $_LANG['detail'], 'href' =>   'order.php?act=delivery_info&delivery_id=' . $delivery_id);

                sys_msg($_LANG['act_false'],   1, $links);

            }

 

            /* 标记订单为已确认   “已发货” */

            /* 更新发货时间 */

            $order_finish =   get_all_delivery_finish($order_id);

            $shipping_status = ($order_finish   == 1) ? SS_SHIPPED : SS_SHIPPED_PART;

            $arr['shipping_status']     = $shipping_status;

            $arr['shipping_time']       = GMTIME_UTC; // 发货时间

            $arr['invoice_no']          = trim($order['invoice_no'] .   '<br>' . $invoice_no, '<br>');

            update_order($order_id, $arr);

 

            /* 发货单发货记录log */

            order_action($order['order_sn'],   OS_CONFIRMED, $shipping_status, $order['pay_status'], $action_note, null, 1);

 

            /* 如果当前订单已经全部发货 */

            if ($order_finish)

            {

                /* 如果订单用户不为空,计算积分,并发给用户;发红包 */

                if ($order['user_id'] > 0)

                {

                    /* 取得用户信息 */

                    $user = user_info($order['user_id']);

 

                    /* 计算并发放积分 */

                    $integral =   integral_to_give($order);

 

                      log_account_change($order['user_id'], 0, 0,   intval($integral['rank_points']), intval($integral['custom_points']),   sprintf($_LANG['order_gift_integral'], $order['order_sn']));

 

                    /* 发放红包 */

                      send_order_bonus($order_id);

                }

 

                /* 发送邮件 */

                $cfg =   $_CFG['send_ship_email'];

                if ($cfg == '1')

                {

                    $order['invoice_no'] =   $invoice_no;

                    $tpl =   get_mail_template('deliver_notice');

                      $smarty->assign('order', $order);

                      $smarty->assign('send_time', local_date($_CFG['time_format']));

                      $smarty->assign('shop_name', $_CFG['shop_name']);

                      $smarty->assign('send_date', local_date($_CFG['date_format']));

                      $smarty->assign('sent_date', local_date($_CFG['date_format']));

                      $smarty->assign('confirm_url', $ecs->url() . 'receive.php?id=' .   $order['order_id'] . '&con=' . rawurlencode($order['consignee']));

                      $smarty->assign('send_msg_url',$ecs->url() .   'user.php?act=message_list&order_id=' . $order['order_id']);

                    $content =   $smarty->fetch('str:' . $tpl['template_content']);

                    if   (!send_mail($order['consignee'], $order['email'], $tpl['template_subject'],   $content, $tpl['is_html']))

                    {

                        $msg =   $_LANG['send_mail_fail'];

                    }

                }

 

                /* 如果需要,发短信 */

                if   ($GLOBALS['_CFG']['sms_order_shipped'] == '1' && $order['mobile'] !=   '')

                {

                    include_once('../includes/cls_sms.php');

                    $sms = new sms();

                      $sms->send($order['mobile'],   sprintf($GLOBALS['_LANG']['order_shipped_sms'], $order['order_sn'],

                      local_date($GLOBALS['_LANG']['sms_time_format']),   $GLOBALS['_CFG']['shop_name']), 0);

                }

            }

 

            /* 清除缓存 */

            clear_cache_files();

 

            /* 操作成功 */

            $links[] = array('text' =>   $_LANG['09_delivery_order'], 'href' => 'order.php?act=delivery_list');

            $links[] = array('text' =>   $_LANG['delivery_sn'] . $_LANG['detail'], 'href' =>   'order.php?act=delivery_info&delivery_id=' . $delivery_id);

            sys_msg($_LANG['act_ok'], 0,   $links);

          }

          else

          {

              sys_msg($_LANG['op_fast_delivery_fail'], 1, $links);

          }

      }

   

 

 

三、打开/languages/zh_cn/admin/order.php文件(三种语言文件,根据你网站使用的语言对应文件夹修改安装一种即可)

找到如下代码:

$_LANG['op_to_delivery']   = '去发货';

   

在以上这段代码的下面加:

$_LANG['op_fast_delivery']   = '一键发货';

$_LANG['op_fast_delivery_fail']   = '该笔订单已完成发货,请勿重复操作';

   



  • 全部评论(0)
最新发布的资讯信息
【计算机/互联网|】你不知道的windows小秘密——上帝模式 在Win7/10中都有。(2020-06-18 15:41)
【好东西分享|】本月ProductHunt上当天排名第一的产品 - Pose Animator(2020-06-18 12:14)
【计算机/互联网|PC操作系统】微PE工具箱时隔 3 年再更新(2020-06-10 07:06)
【计算机/互联网|】Proxmox Linux 测试架设流程(2020-06-06 18:01)
【技术支持|】720云VR全景系统网站源码安装说明(2020-06-06 17:48)
【计算机/互联网|】Python 直接嵌入到 Linux 内核还感觉有些惊讶(2020-06-06 17:30)
【技术支持|】CRMEB商城搭建说明(2020-06-06 16:14)
【技术支持|】免xp框架监听短信使用教程(2020-06-05 10:51)
【计算机/互联网|】eps免费版详细装说明(2020-05-27 12:04)
【计算机/互联网|】在 Tomcat 里面部署 Web 项目的几种方式(2020-05-24 11:14)
联系我们
工作时间:8:00-23:30
客服 QQ:116622333
邮 箱:sucaimao#qq.com