Files
OMS/app/omevirtualwms/model/stockin.php
2025-12-28 23:13:25 +08:00

93 lines
3.5 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
/**
* Copyright © ShopeX http://www.shopex.cn. All rights reserved.
* See LICENSE file for license details.
*/
class omevirtualwms_mdl_stockin extends dbeav_model{
public $queue = [];
/**
* count
* @param mixed $filter filter
* @return mixed 返回值
*/
public function count($filter=null){
$branch_ids = $this->app->model('allocate')->getBranchidByselfwms();
$sqlstr = '';
if ($branch_ids)
{
$sqlstr.=" AND branch_id not in (".implode(',',$branch_ids).")";
}
$purchase_sql = "select count(*) as _count from sdb_purchase_po where eo_status not in('3') and po_status='1' and check_status='2' and ".$this->_filter($filter).$sqlstr;
$allocate_sql = "select count(*) as _count from sdb_taoguaniostockorder_iso where iso_status not in('3','4') and check_status='2' and type_id in('4','50','70','200','400','11') and ".$this->_filter($filter).' and iso_bn not in (select bn from sdb_omevirtualwms_data_status where status != \'PARTIN\' AND type=\'stockin\' and create_time >='.(time()-(WAIT_TIME*60)).')';
$sql = sprintf('select sum(c._count) as _count from (%s UNION ALL %s) as c',$purchase_sql,$allocate_sql);
$row = $this->db->selectrow($sql);
return intval($row['_count']);
}
public function getlist($cols='*', $filter=array(), $offset=0, $limit=-1, $orderType=null){
$branch_ids = $this->app->model('allocate')->getBranchidByselfwms();
$sqlstr = '';
if ($branch_ids)
{
$sqlstr.=" AND branch_id not in (".implode(',',$branch_ids).")";
}
$purchase_sql = "select po_bn AS bn,check_operator AS operator,purchase_time AS create_time,1 as type_id from sdb_purchase_po where eo_status not in('3') and po_status='1' and check_status='2' and ".$this->_filter($filter).$sqlstr;
$allocate_sql = "select iso_bn AS bn,operator,create_time,type_id from sdb_taoguaniostockorder_iso where iso_status not in('3','4') and check_status='2' and type_id in('4','50','70','200','400','11') and ".$this->_filter($filter).$sqlstr;
$sql = sprintf('%s UNION ALL %s order by create_time desc',$purchase_sql,$allocate_sql);
$rows = $this->db->selectLimit($sql,$limit,$offset);
return $rows;
}
/**
* 获取_schema
* @return mixed 返回结果
*/
public function get_schema(){
$schema = array (
'columns' => array (
'bn' => array (
'type' => 'varchar(32)',
'required' => true,
'label' => '入库单号',
'editable' => false,
'width' =>180,
),
'operator' => array (
'type' => 'varchar(100)',
'label' => '操作人',
'editable' => false,
'width' =>100,
),
'create_time' => array (
'type' => 'time',
'label' => '创建日期',
'width' =>160,
'editable' => false,
),
),
'idColumn' => 'bn',
'in_list' => array (
0 => 'bn',
1 => 'operator',
2 => 'create_time',
),
'default_in_list' => array (
0 => 'bn',
1 => 'operator',
2 => 'create_time',
),
);
return $schema;
}
}