|
@@ -11,6 +11,7 @@ class Whlabelfz1 extends Start_Controller
|
|
|
$this->load->_model("Model_whlabel_bh_scan",'whlabel_bh_scan');
|
|
|
$this->load->_model("Model_logic_u9tools","logic_u9tools");
|
|
|
$this->load->_model("Model_whlabellabel","whlabellabel");
|
|
|
+ $this->load->_model('Model_purchase', 'purchase');
|
|
|
}
|
|
|
//定义方法的调用规则 获取URI第二段值
|
|
|
public function _remap($arg, $arg_array)
|
|
@@ -28,6 +29,9 @@ class Whlabelfz1 extends Start_Controller
|
|
|
else if($arg == 'get_scan_info'){
|
|
|
$this->_getScanInfo();
|
|
|
}
|
|
|
+ else if($arg =='typedy'){
|
|
|
+ $this->_typedy();
|
|
|
+ }
|
|
|
else {
|
|
|
$this->_index();
|
|
|
}
|
|
@@ -196,5 +200,201 @@ class Whlabelfz1 extends Start_Controller
|
|
|
|
|
|
}
|
|
|
|
|
|
+ // 可以排序的仓库数量
|
|
|
+ private function _typedy(){
|
|
|
+ $prc = array();
|
|
|
+ $purchase = $this->purchase->find_all();
|
|
|
+ foreach ($purchase as $k => $v) {
|
|
|
+ $prc[$v['id']] = $v['title'];
|
|
|
+ }
|
|
|
+ $post = $this->input->post(NULL, TRUE);
|
|
|
+ if (isset($post['page'])) {
|
|
|
+ $page = $this->input->post('page', true);
|
|
|
+ $perpage = $this->input->post('perpage', true);
|
|
|
+ $category = $this->input->post('category', true);
|
|
|
+ $size = $this->input->post('size', true);
|
|
|
+ $grade = $this->input->post('grade', true);
|
|
|
+ $color = $this->input->post('color', true);
|
|
|
+ $lowe = $this->input->post('lowe', true);
|
|
|
+ $sku = $this->input->post('sku');
|
|
|
+ $title = $this->input->post('title');
|
|
|
+ $warehouse = $this->input->post('warehouse', true);
|
|
|
+ $usa = $this->input->post('usa', true);
|
|
|
+ $purchase = $this->input->post('purchase', true);
|
|
|
+ $lacetype = $this->input->post('lacetype', true);
|
|
|
+ $haircap = $this->input->post('haircap', true);
|
|
|
+ $density = $this->input->post('density', true);
|
|
|
+ $details = $this->input->post('details', true);
|
|
|
+ $state = $this->input->post('state', true);
|
|
|
+ $lacecolor = $this->input->post('lacecolor', true);
|
|
|
+ $hairnumber = $this->input->post('hairnumber', true);
|
|
|
+ $cklx = $this->input->post('cklx', true);
|
|
|
+ $ktime = $this->input->post('ktime', true);
|
|
|
+ $jtime = $this->input->post('jtime', true);
|
|
|
+ $sm = $this->input->post('sm', true);
|
|
|
+ $cpbz = $this->input->post('cpbz', true);
|
|
|
+ $type = $this->input->post('type', true);
|
|
|
+ $ktime = strtotime($ktime);
|
|
|
+ $jtime = strtotime($jtime);
|
|
|
+ $where = "1=1";
|
|
|
+
|
|
|
+ if ($usa) {
|
|
|
+ if (!$warehouse) {
|
|
|
+ $where .= " and (warehouse = '5' or warehouse = '8')";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if ($warehouse) {
|
|
|
+ $where .= " and warehouse = '$warehouse'";
|
|
|
+ }
|
|
|
+ if ($details) {
|
|
|
+ $where .= " and details = '$details'";
|
|
|
+ }
|
|
|
+ if ($purchase) {
|
|
|
+ $where .= " and purchase = '$purchase'";
|
|
|
+ }
|
|
|
+ if (isset($state)) {
|
|
|
+ if($state >-1){
|
|
|
+ $where .= " and state = '$state'";
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($lacetype) {
|
|
|
+ $where .= " and features like '%-$lacetype-%'";
|
|
|
+ }
|
|
|
+ if ($category) {
|
|
|
+ $where .= " and features like '%-$category-%'";
|
|
|
+ }
|
|
|
+ if ($size) {
|
|
|
+ $where .= " and features like '%-$size-%'";
|
|
|
+ }
|
|
|
+ if ($grade) {
|
|
|
+ $where .= " and features like '%-$grade-%'";
|
|
|
+ }
|
|
|
+ if ($color) {
|
|
|
+ $where .= " and features like '%-$color-%'";
|
|
|
+ }
|
|
|
+ if ($lowe) {
|
|
|
+ $where .= " and features like '%-$lowe-%'";
|
|
|
+ }
|
|
|
+ if ($haircap) {
|
|
|
+ $where .= " and features like '%-$haircap-%'";
|
|
|
+ }
|
|
|
+ if ($density) {
|
|
|
+ $where .= " and features like '%-$density-%'";
|
|
|
+ }
|
|
|
+ if ($lacecolor) {
|
|
|
+ $where .= " and features like '%-$lacecolor-%'";
|
|
|
+ }
|
|
|
+ if($sm){
|
|
|
+ $where .= " and sm like '%".$sm."%'";
|
|
|
+ }
|
|
|
+ if($cpbz){
|
|
|
+ $where .= " and cpbz like '%".$cpbz."%'";
|
|
|
+ }
|
|
|
+ if($type){
|
|
|
+ $where .= " and type = ".$type."";
|
|
|
+ }
|
|
|
+ if (!empty($hairnumber)) {
|
|
|
+ $where .= " and features like '%-128-%' ";
|
|
|
+ if ($hairnumber < 0) {
|
|
|
+ $class_list = $this->typeclass->find_all('classid = 43');
|
|
|
+ foreach ($class_list as $v) {
|
|
|
+ $where .= " and features not like '%-" . $v['id'] . "-%'";
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $where .= " and features like '%-$hairnumber-%'";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $where_add = '';
|
|
|
+ if ($cklx) {
|
|
|
+ $shop = $this->shop->read($cklx);
|
|
|
+ $where_add .= " and zd like '" . $shop['shortname'] . "%' and state = 0";
|
|
|
+ }
|
|
|
+
|
|
|
+ //数据排序
|
|
|
+ $order_str = "id desc";
|
|
|
+ if (empty($page)) {
|
|
|
+ $start = 0;
|
|
|
+ $perpage = 1;
|
|
|
+ } else {
|
|
|
+ $start = ($page - 1) * $perpage;
|
|
|
+ }
|
|
|
+ //这里为了对应前端界面的字段 新添加了label字段 后续代码会替换为sm字段
|
|
|
+ if ($sku) {
|
|
|
+ $sku = trim($sku, ' ');
|
|
|
+ $sku = trim($sku, ' ');
|
|
|
+ $where .= " and sku like '%$sku%'";
|
|
|
+ $info_list = $this->whlabel->find_pc($where . $where_add, 'sku,features,warehouse', 'id,warehouse,purchase,sku,title,details,shop,cpbz,label,features,number,sm', $order_str, $start, $perpage);
|
|
|
+ } else if ($title) {
|
|
|
+ $title = trim($title, ' ');
|
|
|
+ $title = trim($title, ' ');
|
|
|
+ $where .= " and title like '%$title%'";
|
|
|
+ $info_list = $this->whlabel->find_pc($where . $where_add, 'sku,features,warehouse', 'id,warehouse,purchase,sku,title,details,shop,cpbz,label,features,number,sm', $order_str, $start, $perpage);
|
|
|
+ } else {
|
|
|
+ //$where .= " and time > '$ktime' and time < '$jtime'";
|
|
|
+ $info_list = $this->whlabel->find_pc($where . $where_add, 'sku,features,warehouse', 'id,warehouse,purchase,sku,title,details,shop,cpbz,label,features,number,sm', $order_str, $start, $perpage);
|
|
|
+ }
|
|
|
+ //$this->logic_ding->sendToDing("仓库查询:".$where . $where_add);
|
|
|
+
|
|
|
+ $info_list = $this->logic_whlabel->dataTran($info_list, ['pm']);
|
|
|
+ foreach ($info_list as $k => $v) {
|
|
|
+ $info_list[$k]['title'] = $v['title'] . "<br/>" . $v['pm'];
|
|
|
+ unset($info_list[$k]['pm']);
|
|
|
+ unset($info_list[$k]['jm']);
|
|
|
+ unset($info_list[$k]['bm']);
|
|
|
+ }
|
|
|
+
|
|
|
+ //取得信息列表
|
|
|
|
|
|
+ $rows = array();
|
|
|
+ $list = array();
|
|
|
+ foreach ($info_list as $key => $value) {
|
|
|
+ $warehouse = $this->warehouse->read($value['warehouse']);
|
|
|
+ $info_list[$key]['purchase'] = (isset($prc[$value['purchase']])) ? $prc[$value['purchase']] : '未知';
|
|
|
+ $c = $this->whlabel->find_all($where . ' and sku = "' . $value['sku'] . '" and state = 0 and warehouse = "' . $value['warehouse'] . '" and features = "' . $value['features'] . '"', 'details,cpid');
|
|
|
+ $z = $this->whlabel->find_all($where . ' and sku = "' . $value['sku'] . '" and zd != "" and state = 0 and warehouse = "' . $value['warehouse'] . '" and features = "' . $value['features'] . '"');
|
|
|
+ $info_list[$key]['cpbz'] = $value['cpbz'] ;
|
|
|
+ $info_list[$key]['label'] = $value['sm'];
|
|
|
+ $number = $value['number'];
|
|
|
+ $ftime = time() - 15 * 24 * 3600;
|
|
|
+ $info_list[$key]['warehouse'] = $warehouse['title'];
|
|
|
+ $info_list[$key]['features'] = count($c);
|
|
|
+ $z = count($z); //查看订单号
|
|
|
+ $zt = $this->whlabeltransport->find_all('sku = "' . $value['sku'] . '" and warehouse = "' . $value['warehouse'] . '" and features = "' . $value['features'] . '" and cz = "0"');
|
|
|
+ $ztdata = '';
|
|
|
+ if (count($zt) > 0) {
|
|
|
+ foreach ($zt as $vv) {
|
|
|
+ $ztdata .= '<p>' . $vv['num'] . ' - ' . date('Y-m-d', $vv['stime']) . '</p>';
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $info_list[$key]['number'] = $ztdata;
|
|
|
+ $info_list[$key]['sm'] = $z;
|
|
|
+ $details = array();
|
|
|
+ $cpid = array();
|
|
|
+ foreach ($c as $k => $v) {
|
|
|
+ $details[$v['details']] = $v['details'];
|
|
|
+ if ($v['cpid'] != 0) {
|
|
|
+ $cpid[$v['cpid']] = $v['cpid'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $info_list[$key]['details'] = ($cpid) ? implode(" ", $details) . '<p>' . implode(" ", $cpid) . '</p>' : implode(" ", $details);
|
|
|
+ if ($value['shop'] != '') {
|
|
|
+ $shop = explode(',', trim($value['shop'], ','));
|
|
|
+ $shop = $this->shop->read($shop[0]);
|
|
|
+ $info_list[$key]['shop'] = $shop['shopname'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $total = count($this->whlabel->find_pc($where . $where_add, 'sku,features,warehouse', 'id,warehouse,sku,title,features,number'));
|
|
|
+ $pagenum = ceil($total / $perpage);
|
|
|
+ $over = $total - ($start + $perpage);
|
|
|
+ $rows = array('total' => $total, 'over' => $over, 'pagenum' => $pagenum, 'rows' => ($info_list), 'CS' => $warehouse);
|
|
|
+ echo json_encode($rows);
|
|
|
+ exit;
|
|
|
+ }
|
|
|
+ $this->data['warehouse'] = (isset($arg_array[0])) ? $arg_array[0] : 5;
|
|
|
+ $this->_Template('whlabelfz1_typedy', $this->data);
|
|
|
+ }
|
|
|
}
|