123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188 |
- <?php
- namespace Mshop\Src;
- use Dever;
- use Mshop\Lib\Core;
- class Out extends Core
- {
-
- public function getGoods()
- {
- $this->data['data'] = Dever::load('shop/lib/info')->getGoods($this->shop_id, false, '1,2,3');
- return $this->data;
- }
-
- public function getList()
- {
- return Dever::load('mshop/lib/out')->set(1,1)->getList($this->shop_id);
- }
-
- public function view()
- {
- $order_id = Dever::input('order_id');
- return Dever::load('mshop/lib/out')->set(1,2)->getView($this->shop_id, $order_id);
- }
-
- public function info()
- {
- $this->data['user'] = $this->user;
- $this->data['type'] = Dever::db('shop/out_order')->config['config_type'];
- return $this->data;
- }
-
- public function confirm()
- {
- $this->goods();
- return $this->data;
- }
-
- private function goods()
- {
- $goods_id = Dever::input('goods_id');
- if (!$goods_id) {
- Dever::alert('请传入商品');
- }
- $goods_id = explode(',', $goods_id);
- $sku_id = Dever::input('price_id');
- if ($sku_id) {
- $sku_id = explode(',', $sku_id);
- }
-
- $num = Dever::input('num');
- if (!$num) {
- Dever::alert('请传入商品数量');
- }
- $num = explode(',', $num);
- $this->data['price'] = 0;
- $this->data['num'] = 0;
- $this->data['name'] = array();
-
- foreach ($goods_id as $k => $v) {
- $s = isset($sku_id[$k]) ? $sku_id[$k] : -1;
- $n = isset($num[$k]) ? $num[$k] : 1;
- $this->data['list'][$k] = Dever::load('goods/lib/info')->getPayInfo($v, $s);
- $this->data['list'][$k]['num'] = $n;
-
- $this->data['list'][$k]['ku_state'] = 1;
-
- $total = Dever::load('shop/lib/info')->checkTotal($n, $v, $this->shop_id, $s);
- if ($total <= 0) {
- $this->data['list'][$k]['ku_state'] = 2;
- $this->data['list'][$k]['buy_num'] = 0;
- }
- if ($this->data['list'][$k]['ku_state'] == 1) {
- $this->data['list'][$k]['buy_num'] = $n;
- $this->data['num'] += $n;
- $this->data['price'] += $this->data['list'][$k]['price'] * $n;
- $this->data['name'][] = $this->data['list'][$k]['name'];
- }
- }
- $this->data['name'] = implode(',', $this->data['name']);
- }
-
- public function action_commit()
- {
- $info = Dever::input('info');
- $type = Dever::input('type', 1);
- $this->goods();
- return Dever::load('mshop/lib/out')->set(1,1)->action($this->shop_id, $this->data['name'], $this->data['num'], $this->data['list'], $this->data['price'], $this->uid, $type, $info);
- }
-
- public function printer()
- {
- $id = Dever::input('printer_id');
- if (!$id) {
- Dever::alert('请选择打印机');
- }
- $where['id'] = $id;
- $where['shop_id'] = $this->shop_id;
- $info = Dever::db('shop/print')->find($where);
- if (!$info) {
- Dever::alert('请选择打印机');
- }
- $manage_config = Dever::db('main/manage_config')->find();
- $sell_config = Dever::db('main/sell_config')->find();
- $main_config = Dever::db('main/config')->find();
- $data = $this->view();
- $print = Dever::load('mshop/lib/feieyun');
- $cdate = date('Y-m-d H:i', $data['cdate']);
- $config = Dever::db('shop/out_order')->config;
- $status = $config['config_status'][$data['status']];
- $out_type = $config['config_type'][$data['out_type']];
- $print->hr('-', $main_config['name'])->br();
- $print->text('单号:' . $data['order_num'], 'CB')->br();
- $print->text('门店名称:' . $this->shop['name']);
- $print->text('制 单 人:'.$this->user['name']);
- $print->text('制单时间:'.date('Y-m-d H:i:s'));
- $print->text('出库时间:'.$cdate);
-
- if ($data && $data['goods']) {
- $left = 70;
- $right = 30;
- $head = array('名称', '数量', $left, $right);
- $body = array();
- $body_total = array();
- $body_total['num'] = 0;
- foreach ($data['goods'] as $k => $v) {
- $sku = isset($v['info']['sku_name']) ? '-' . str_replace(',', '', $v['info']['sku_name']) : '';
- $d = array
- (
- $v['info']['name'] . $sku,
- $v['num'],
- $left,
- $right
- );
- $body[] = $d;
- $body_total['num'] += $v['num'];
- }
- $print->table($head, $body, '', 'lr');
- $print->right('共'.$body_total['num'].'件商品');
- }
- $pdf->hr();
- $pdf->text('出库类别:' . $out_type);
- $pdf->text('原因备注:' . $data['info']);
- $pdf->hr();
- $print->center('如遇任何问题请致电客服');
- $print->center('电话:'.$manage_config['phone']);
- $print->center($main_config['worktime']);
- $content = $print->getText();
- $print->printOrder($info['number'], $content, 1);
- return 'ok';
- }
- }
|