getDeliveryGroupTypes(); $this->pagedata['orderTypes'] = $orderTypes; $data = app::get('wms')->getConf('wms.delivery.status.cfg'); $this->pagedata['setting'] = $this->options(); $this->pagedata['data'] = $data['set'] ? $data['set'] : array(); $cfgr = app::get('wms')->getConf('wms.delivery.cfg.radio'); $this->pagedata['basic_cfg'] = ($cfgr!=2) ? true : false; //[拆单]未处理的订单[部分拆分、部分发货] if($data['set']['split'] == '1') { $fields = "order_id, order_bn, shop_id, shop_type, process_status, ship_status, total_amount, last_modified"; $where = " WHERE (process_status='splitting' || ship_status='2') AND `status`='active' "; $order_num = kernel::database()->select("SELECT count(*) as num FROM ".DB_PREFIX."ome_orders ".$where); $order_list = kernel::database()->select("SELECT ".$fields." FROM ".DB_PREFIX."ome_orders ".$where." ORDER BY order_id DESC LIMIT 5"); #关联发货单_数量 if(!empty($order_list)) { //确认状态、发货状态 $ship_array = array (0 => '未发货', 1 => '已发货', 2 => '部分发货', 3 => '部分退货', 4 => '已退货'); $process_array = array('unconfirmed' => '未确认','confirmed' => '已确认','splitting' => '部分拆分', 'splited' => '已拆分完', 'cancel' => '取消', 'remain_cancel' =>'余单撤销'); //店铺 $shop_list = array(); $oShop = app::get('ome')->model('shop'); $data_shop = $oShop->getList('shop_id, name', null, 0, -1); foreach ($data_shop as $key => $val) { $sel_shop_id = $val['shop_id']; $shop_list[$sel_shop_id] = $val['name']; } $data_dly = array(); foreach ($order_list as $key => $val) { $sel_order_id = $val['order_id']; $sql = "SELECT dord.delivery_id, d.status FROM ".DB_PREFIX."ome_delivery_order AS dord LEFT JOIN ".DB_PREFIX."ome_delivery AS d ON (dord.delivery_id=d.delivery_id) WHERE dord.order_id=".$sel_order_id." AND (d.parent_id=0 OR d.is_bind='true') AND d.disabled='false' AND d.status NOT IN('failed','cancel','back','return_back')"; $data_dly = kernel::database()->select($sql); $order_list[$key]['dly_count'] = count($data_dly); $order_list[$key]['delivery'] = $data_dly; $order_list[$key]['dly_succ'] = 0; foreach ($data_dly as $key_j => $val_j) { if($val_j['status'] == 'succ') { $order_list[$key]['dly_succ']++;//已发货数量 } } $sel_shop_id = $val['shop_id']; $ship_status = $val['ship_status']; $process_status = $val['process_status']; $order_list[$key]['shop_name'] = $shop_list[$sel_shop_id]; $order_list[$key]['ship_status'] = $ship_array[$ship_status]; $order_list[$key]['process_status'] = $process_array[$process_status]; } } $this->pagedata['order_num'] = $order_num[0]['num']; $this->pagedata['order_list'] = $order_list; } $this->page('admin/delivery/delivery_cfg.html'); } /** * 保存发货配置 * * @return void * @author **/ public function save() { //获取_发货组配置 $opObj = app::get('ome')->model('operation_log'); $config_data = app::get('wms')->getConf('wms.delivery.status.cfg'); $post = kernel::single('base_component_request')->get_post(); $this->begin(); if ($post) { $post['set']['expre'] = '1'; # 验证数据 if ($post['set']['merge'] == 1 && $post['set']['wms_batch_print_nums'] < $post['set']['wms_eachgroup_print_count']) { $this->end(false,'联合分组数不能大于批量打印数量!'); } if ($post['set']['single']['merge'] == 1 && $post['set']['single']['wms_batch_print_nums'] < $post['set']['single']['wms_eachgroup_print_count']) { $this->end(false,'联合分组数不能大于批量打印数量!'); } if ($post['set']['multi']['merge'] == 1 && $post['set']['multi']['wms_batch_print_nums'] < $post['set']['multi']['wms_eachgroup_print_count']) { $this->end(false,'联合分组数不能大于批量打印数量!'); } app::get('wms')->setConf('wms.delivery.status.cfg',$post); } $this->end(true,'保存成功'); } /** * undocumented function * * @return void * @author **/ private function options() { $set = array( 'stock' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'wms_delivery_is_printstock' => array( 'options' => array( '1' => $this->app->_('前台'), '2' => $this->app->_('后台'), ), ), 'delie' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'wms_delivery_is_printdelivery' => array( 'options' => array( '1' => $this->app->_('前台'), '2' => $this->app->_('后台'), ), ), 'merge' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'wms_delivery_merge_print' => array( 'options' => array( '1' => $this->app->_('前台'), '2' => $this->app->_('后台'), ), ), 'expre' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'wms_delivery_is_printship' => array( 'options' => array( '1' => $this->app->_('前台'), '2' => $this->app->_('后台'), ), ), 'verify' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'consign' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'print_merge' => array( 'options' => array( '0' => $this->app->_('关闭'), '1' => $this->app->_('开启'), ), ), 'print_style'=>array( 'options'=>array( '0'=>$this->app->_('按销售清单'), '1'=>$this->app->_('按拣货格式'), ) ), 'print_devision'=>array( 'options'=>array( '0'=>$this->app->_('老版本'), '1'=>$this->app->_('新版本'), ) ), 'print_order'=>array( 'options'=>array( 0=>$this->app->_('自然排序'), 1=>$this->app->_('货位排序'), ) ), 'print_pkg_goods'=>array( 'options'=>array( 0=>$this->app->_('不打印捆绑商品货号'), 1=>$this->app->_('打印捆绑商品货号'), ) ), 'sellagent' => array( 'options' => array( '0' => $this->app->_('使用ERP店铺发货信息'), '1' => $this->app->_('启用分销王代销人发货信息'), ) ), 'print_mode'=>array( 'options'=>array( 0=>$this->app->_('html风格'), 1=>$this->app->_('控件风格'), ) ), 'stock_print_mode'=>array( 'options'=>array( 0=>$this->app->_('html风格'), 1=>$this->app->_('控件风格'), ) ), ); return $set; } }