|
@@ -38,10 +38,14 @@ class FinishedProductWarehousing extends Api
|
|
|
->limit(50)
|
|
->limit(50)
|
|
|
->select();
|
|
->select();
|
|
|
|
|
|
|
|
|
|
+ $num = db()->table('成品入仓')
|
|
|
|
|
+ ->where('sys_rq','>=',$rows[49]['date'])
|
|
|
|
|
+ ->count();
|
|
|
$arr = db()->table('成品入仓')
|
|
$arr = db()->table('成品入仓')
|
|
|
->field('LEFT(sys_rq, 10) as date, rtrim(sys_id) as sys_id, COUNT(sys_id) as count')
|
|
->field('LEFT(sys_rq, 10) as date, rtrim(sys_id) as sys_id, COUNT(sys_id) as count')
|
|
|
->where('sys_rq','>=',$rows[49]['date'])
|
|
->where('sys_rq','>=',$rows[49]['date'])
|
|
|
->group('date, sys_id')
|
|
->group('date, sys_id')
|
|
|
|
|
+ ->limit($num)
|
|
|
->select();
|
|
->select();
|
|
|
|
|
|
|
|
foreach($rows as $key=>$value){
|
|
foreach($rows as $key=>$value){
|
|
@@ -69,11 +73,16 @@ class FinishedProductWarehousing extends Api
|
|
|
$this->error('请求方式错误');
|
|
$this->error('请求方式错误');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ $num = db()->table('成品入仓')->count();
|
|
|
$rows = db()->table('成品入仓')
|
|
$rows = db()->table('成品入仓')
|
|
|
->field('jjcp_gdbh, rtrim(jjcp_cpdh) as jjcp_cpdh, LEFT(Sys_rq, 10) as Sys_rq')
|
|
->field('jjcp_gdbh, rtrim(jjcp_cpdh) as jjcp_cpdh, LEFT(Sys_rq, 10) as Sys_rq')
|
|
|
->order('Sys_rq desc')
|
|
->order('Sys_rq desc')
|
|
|
|
|
+ ->limit($num)
|
|
|
->select();
|
|
->select();
|
|
|
|
|
+
|
|
|
|
|
+ $num = db()->table('工单_基本资料')->count();
|
|
|
$arr = db()->table('工单_基本资料')
|
|
$arr = db()->table('工单_基本资料')
|
|
|
|
|
+ ->limit($num)
|
|
|
->column('CONCAT(Gd_gdbh, "-", rtrim(Gd_cpdh)) AS gdcp, CONCAT(rtrim(Gd_khdh), " 【", rtrim(Gd_khmc)) AS kh');
|
|
->column('CONCAT(Gd_gdbh, "-", rtrim(Gd_cpdh)) AS gdcp, CONCAT(rtrim(Gd_khdh), " 【", rtrim(Gd_khmc)) AS kh');
|
|
|
|
|
|
|
|
$data = [];
|
|
$data = [];
|
|
@@ -557,6 +566,119 @@ class FinishedProductWarehousing extends Api
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * excel导出
|
|
|
|
|
+ * @ApiMethod (POST)
|
|
|
|
|
+ * @param string date
|
|
|
|
|
+ * @param string sys_id
|
|
|
|
|
+ * @param array fields
|
|
|
|
|
+ */
|
|
|
|
|
+ public function export(){
|
|
|
|
|
+ if(!$this->request->isGet()){
|
|
|
|
|
+ $this->error('请求方式错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $req = $this->request->param();
|
|
|
|
|
+
|
|
|
|
|
+ if (!isset($req['date']) || empty($req['date'])) $this->error('参数缺失');
|
|
|
|
|
+
|
|
|
|
|
+ if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
|
|
|
+ $this->error('参数错误','fields',100);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if(strpos($req['date'],'-')){
|
|
|
|
|
+ $where = ['c.Sys_rq'=>['like','%'.$req['date'].'%']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $where = ['c.jjcp_gdbh'=>$req['date']];
|
|
|
|
|
+ }
|
|
|
|
|
+ if (isset($req['sys_id']) && !empty($req['sys_id'])){
|
|
|
|
|
+ $where['c.Sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $arr = [
|
|
|
|
|
+ '入仓类型' =>['入仓类型'],
|
|
|
|
|
+ '仓库编号' =>['仓库编号'],
|
|
|
|
|
+ '仓库名称' =>['仓库名称'],
|
|
|
|
|
+ 'jjcp_num' =>['入仓单号'],
|
|
|
|
|
+ 'jjcp_gdbh' =>['工单编号'],
|
|
|
|
|
+ 'jjcp_yjno' =>['印件号'],
|
|
|
|
|
+ 'jjcp_sl' =>['入仓数量'],
|
|
|
|
|
+ 'jjcp_sls' =>['累计入仓数量'],
|
|
|
|
|
+ '订单数量' =>['订单数量'],
|
|
|
|
|
+ '完成率' =>['完成率'],
|
|
|
|
|
+ 'jjcp_dw' =>['单位'],
|
|
|
|
|
+ 'jjcp_sj' =>['入仓时间'],
|
|
|
|
|
+ 'jjcp_smb' =>['首末板'],
|
|
|
|
|
+ 'jjcp_cpdh' =>['印件代号'],
|
|
|
|
|
+ 'jjcp_cpmc' =>['印件名称'],
|
|
|
|
|
+ '成品编码' =>['产品编号'],
|
|
|
|
|
+ '成品名称' =>['产品名称'],
|
|
|
|
|
+ '客户料号' =>['客户料号'],
|
|
|
|
|
+ 'jjcp_desc' =>['备注'],
|
|
|
|
|
+ '客户编号' =>['客户编号'],
|
|
|
|
|
+ 'Gd_客户名称' =>['客户名称'],
|
|
|
|
|
+ '最近入仓日期' =>['最近入仓日期'],
|
|
|
|
|
+ '机型备注' =>['机型备注'],
|
|
|
|
|
+ ];
|
|
|
|
|
+ $data[0] = [];
|
|
|
|
|
+ foreach ($req['fields'] as $k=>$v){
|
|
|
|
|
+ if(array_key_exists($v,$arr)){
|
|
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //客户编号
|
|
|
|
|
+ $rows = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->field('rtrim(c.入仓类型) as 入仓类型, rtrim(c.仓库编号) as 仓库编号, rtrim(c.仓库名称) as 仓库名称,
|
|
|
|
|
+ rtrim(c.jjcp_num) as jjcp_num, c.jjcp_gdbh,
|
|
|
|
|
+ c.jjcp_yjno, c.jjcp_sl, g.订单数量, rtrim(c.jjcp_dw) as jjcp_dw, LEFT(c.jjcp_sj, 10) as jjcp_sj,
|
|
|
|
|
+ rtrim(c.jjcp_smb) as jjcp_smb, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
|
|
+ rtrim(c.成品编码) as 成品编码, rtrim(c.成品名称) as 成品名称,
|
|
|
|
|
+ rtrim(c.客户料号) as 客户料号, rtrim(c.jjcp_desc) as jjcp_desc, LEFT(c.成品编码,4) as 客户编号, rtrim(g.Gd_客户名称) as Gd_客户名称,
|
|
|
|
|
+ rtrim(c.机型备注) as 机型备注')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('g.Gd_cpdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_基本资料 g','g.Gd_gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->order('c.UniqId desc')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($rows as $key=>$value) {
|
|
|
|
|
+
|
|
|
|
|
+ $row = db()->table('成品入仓')
|
|
|
|
|
+ ->field('LEFT(Sys_rq, 10) as Sys_rq,jjcp_sl')
|
|
|
|
|
+ ->where(['jjcp_gdbh'=>$value['jjcp_gdbh'], 'jjcp_cpdh'=>$value['jjcp_cpdh']])
|
|
|
|
|
+ ->order('Sys_rq desc')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $subArray = [];
|
|
|
|
|
+ foreach ($arr as $k=>$v){
|
|
|
|
|
+ if($k=='jjcp_sls'){
|
|
|
|
|
+ $subArray[$k] = 0;
|
|
|
|
|
+ foreach ($row as $n) {
|
|
|
|
|
+ $subArray[$k] += $n['jjcp_sl'];
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if($k=='完成率'){
|
|
|
|
|
+ if ($value['订单数量']!=0){
|
|
|
|
|
+ $subArray[$k] = 0;
|
|
|
|
|
+ foreach ($row as $n) {
|
|
|
|
|
+ $subArray[$k] += $n['jjcp_sl'];
|
|
|
|
|
+ }
|
|
|
|
|
+ $subArray[$k] = number_format($subArray[$k]/$value['订单数量']/100,2);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if($k=='最近入仓日期'){
|
|
|
|
|
+ $subArray[$k] = $row[0]['Sys_rq'];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = $rows[$key][$k];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ array_push($data,$subArray);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 月度A
|
|
* 月度A
|
|
|
* @ApiMethod (POST)
|
|
* @ApiMethod (POST)
|
|
@@ -609,7 +731,7 @@ class FinishedProductWarehousing extends Api
|
|
|
c.jjcp_gdbh, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
c.jjcp_gdbh, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
c.jjcp_sl, rtrim(c.jjcp_dw) as jjcp_dw, c.jjcp_sj,
|
|
c.jjcp_sl, rtrim(c.jjcp_dw) as jjcp_dw, c.jjcp_sj,
|
|
|
rtrim(c.jjcp_smb) as jjcp_smb,
|
|
rtrim(c.jjcp_smb) as jjcp_smb,
|
|
|
- rtrim(c.jjcp_num) as jjcp_num, rtrim(g.销售订单号) as 订单编号
|
|
|
|
|
|
|
+ rtrim(c.jjcp_num) as jjcp_num, rtrim(c.订单编号) as 订单编号
|
|
|
')
|
|
')
|
|
|
->where('c.jjcp_sj','between time',[$req['start_time'], $req['end_time']])
|
|
->where('c.jjcp_sj','between time',[$req['start_time'], $req['end_time']])
|
|
|
->order('c.jjcp_sj asc')
|
|
->order('c.jjcp_sj asc')
|
|
@@ -628,58 +750,230 @@ class FinishedProductWarehousing extends Api
|
|
|
$this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
$this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
- * 工序汇总导出
|
|
|
|
|
|
|
+ * 月度B
|
|
|
* @ApiMethod (POST)
|
|
* @ApiMethod (POST)
|
|
|
- * @param string date
|
|
|
|
|
- * @param string sys_id
|
|
|
|
|
|
|
+ * @param string start_time
|
|
|
|
|
+ * @param string end_time
|
|
|
|
|
+ * @param string file_name
|
|
|
* @param array fields
|
|
* @param array fields
|
|
|
*/
|
|
*/
|
|
|
- public function export(){
|
|
|
|
|
|
|
+ public function monthExportB(){
|
|
|
if(!$this->request->isGet()){
|
|
if(!$this->request->isGet()){
|
|
|
$this->error('请求方式错误');
|
|
$this->error('请求方式错误');
|
|
|
}
|
|
}
|
|
|
$req = $this->request->param();
|
|
$req = $this->request->param();
|
|
|
-
|
|
|
|
|
- if (!isset($req['date']) || empty($req['date'])) $this->error('参数缺失');
|
|
|
|
|
-
|
|
|
|
|
|
|
+ $arr = [
|
|
|
|
|
+ 'start_time', 'end_time', 'file_name'
|
|
|
|
|
+ ];
|
|
|
|
|
+ foreach ($arr as $key => $value){
|
|
|
|
|
+ if (!isset($req[$value])){
|
|
|
|
|
+ $this->error('参数错误',$value,$key+1);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
|
$this->error('参数错误','fields',100);
|
|
$this->error('参数错误','fields',100);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if(strpos($req['date'],'-')){
|
|
|
|
|
- $where = ['c.Sys_rq'=>['like','%'.$req['date'].'%']];
|
|
|
|
|
- }else{
|
|
|
|
|
- $where = ['c.jjcp_gdbh'=>$req['date']];
|
|
|
|
|
|
|
+ $arr = [
|
|
|
|
|
+ '入仓类型' =>['入仓类型'],
|
|
|
|
|
+ '客户编号' =>['客户编号'],
|
|
|
|
|
+ '客户名称' =>['客户名称'],
|
|
|
|
|
+ '产品类别' =>['产品类别'],
|
|
|
|
|
+ 'jjcp_gdbh' =>['工单编号'],
|
|
|
|
|
+ '成品编码' =>['成品编码'],
|
|
|
|
|
+ '成品名称' =>['成品名称'],
|
|
|
|
|
+ 'jjcp_sls' =>['入仓数量'],
|
|
|
|
|
+ '大箱产量' =>['大箱产量'],
|
|
|
|
|
+ '产品单价' =>['万张单价'],
|
|
|
|
|
+ '产值万元' =>['产值万元'],
|
|
|
|
|
+ ];
|
|
|
|
|
+ $data[0] = [];
|
|
|
|
|
+ foreach ($req['fields'] as $k=>$v){
|
|
|
|
|
+ if(array_key_exists($v,$arr)){
|
|
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
- if (isset($req['sys_id']) && !empty($req['sys_id'])){
|
|
|
|
|
- $where['c.Sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
|
|
|
|
|
|
|
+
|
|
|
|
|
+ $rows1 = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->field('rtrim(c.入仓类型) as 入仓类型, LEFT(c.成品编码,4) as 客户编号, rtrim(b.客户名称) as 客户名称,
|
|
|
|
|
+ rtrim(b.产品类别) as 产品类别, c.jjcp_gdbh,
|
|
|
|
|
+ rtrim(c.成品编码) as 成品编码, rtrim(c.成品名称) as 成品名称
|
|
|
|
|
+ ')
|
|
|
|
|
+ ->where('c.jjcp_sj','between time',[$req['start_time'], $req['end_time']])
|
|
|
|
|
+ ->order('客户编号 asc,b.产品类别 desc,c.成品编码 asc,c.jjcp_gdbh asc')
|
|
|
|
|
+ ->join('产品_基本资料 b','b.产品编号=c.jjcp_cpdh')
|
|
|
|
|
+ ->group('c.jjcp_gdbh')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $rows2 = db()->table('成品入仓')
|
|
|
|
|
+ ->field('rtrim(入仓类型) as 入仓类型, rtrim(成品编码) as 客户编号,
|
|
|
|
|
+ rtrim(成品编码) as 客户名称, rtrim(成品编码) as 产品类别,
|
|
|
|
|
+ jjcp_gdbh,rtrim(成品编码) as 成品编码, rtrim(成品名称) as 成品名称
|
|
|
|
|
+ ')
|
|
|
|
|
+ ->where('jjcp_sj','between time',[$req['start_time'], $req['end_time']])
|
|
|
|
|
+ ->where('成品编码','')
|
|
|
|
|
+ ->order('jjcp_gdbh asc')
|
|
|
|
|
+ ->group('jjcp_gdbh')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+ $rows = array_merge($rows2,$rows1);
|
|
|
|
|
+
|
|
|
|
|
+ $num = db()->table('工单_基本资料')->count();
|
|
|
|
|
+ $arr1 = db()->table('工单_基本资料')->limit($num)
|
|
|
|
|
+ ->column('CONCAT(Gd_gdbh, "-", rtrim(Gd_cpdh)) AS gdcp, 产品单价 as 万张单价');
|
|
|
|
|
+
|
|
|
|
|
+ $brr = array_column($rows,'jjcp_gdbh');
|
|
|
|
|
+ $brr = db()->table('成品入仓')
|
|
|
|
|
+ ->where('jjcp_gdbh', 'in', $brr)
|
|
|
|
|
+ ->group('jjcp_gdbh')
|
|
|
|
|
+ ->column('jjcp_gdbh, sum(jjcp_sl)');
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($rows as $key=>$value) {
|
|
|
|
|
+ $subArray = [];
|
|
|
|
|
+ foreach ($arr as $k=>$v){
|
|
|
|
|
+ if($k=='jjcp_sls'){
|
|
|
|
|
+ $subArray[$k] = $brr[$value['jjcp_gdbh']];
|
|
|
|
|
+ }else if ($k=='大箱产量'){
|
|
|
|
|
+ if($value['产品类别']=='条盒'){
|
|
|
|
|
+ $subArray[$k] = $brr[$value['jjcp_gdbh']]/250;
|
|
|
|
|
+ }else if($value['产品类别']=='小盒'){
|
|
|
|
|
+ $subArray[$k] = $brr[$value['jjcp_gdbh']]/2500;
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = 0;
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if ($k=='产品单价'){
|
|
|
|
|
+ if($value['产品类别']!=''){
|
|
|
|
|
+ if (array_key_exists($value['jjcp_gdbh'].'-'.$value['成品编码'],$arr1)){
|
|
|
|
|
+ $subArray[$k] = floatval(number_format($arr1[$value['jjcp_gdbh'].'-'.$value['成品编码']],4));
|
|
|
|
|
+ }
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = 0;
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if ($k=='产值万元'){
|
|
|
|
|
+ if($value['产品类别']!=''){
|
|
|
|
|
+ if (array_key_exists($value['jjcp_gdbh'].'-'.$value['成品编码'],$arr1)){
|
|
|
|
|
+ $subArray[$k] = floatval(number_format($arr1[$value['jjcp_gdbh'].'-'.$value['成品编码']]*$brr[$value['jjcp_gdbh']]/100000000,2));
|
|
|
|
|
+ }
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = 0;
|
|
|
|
|
+ }
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = $rows[$key][$k];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ array_push($data,$subArray);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 各日统计列表
|
|
|
|
|
+ * @ApiMethod (GET)
|
|
|
|
|
+ * @param string $date 时间
|
|
|
|
|
+ * @param string $sys_id 用户
|
|
|
|
|
+ */
|
|
|
|
|
+ public function getDayList()
|
|
|
|
|
+ {
|
|
|
|
|
+ //get请求
|
|
|
|
|
+ if(!$this->request->isGet()){
|
|
|
|
|
+ $this->error('请求方式错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $req = $this->request->param();
|
|
|
|
|
+
|
|
|
|
|
+ $page = 1;
|
|
|
|
|
+ $limit = 15;
|
|
|
|
|
+ if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
|
|
|
|
|
+ if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
|
|
|
|
|
+
|
|
|
|
|
+ $where = [
|
|
|
|
|
+ 'c.jjcp_smb'=>['<>',''],
|
|
|
|
|
+ ];
|
|
|
|
|
+ if (isset($req['key_word']) && !empty($req['key_word'])){
|
|
|
|
|
+ $where['c.jjcp_sj | c.jjcp_gdbh | c.jjcp_cpmc | c.jjcp_cpdh | g.实际投料'] = ['like','%'.$req['key_word'].'%'];
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ //客户编号
|
|
|
|
|
+ $rows = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->field('LEFT(c.jjcp_sj, 10) as jjcp_sj, c.jjcp_gdbh, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
|
|
+ rtrim(c.jjcp_cpdh) as jjcp_cpdh, g.实际投料')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('g.Gd_cpdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_基本资料 g','g.Gd_gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->order('c.jjcp_sj desc')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
|
|
+ ->page($page,$limit)
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $total = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('g.Gd_cpdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_基本资料 g','g.Gd_gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
|
|
+ ->count();
|
|
|
|
|
+
|
|
|
|
|
+ $brr = db()->table('成品入仓')
|
|
|
|
|
+ ->group('jjcp_gdbh,jjcp_cpdh')
|
|
|
|
|
+ ->column('CONCAT(jjcp_gdbh, "-", rtrim(jjcp_cpdh)), sum(jjcp_sl)');
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($rows as $key=>$value) {
|
|
|
|
|
+ $rows[$key]['实际投料'] = (string)floatval($value['实际投料']*10000);
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_cpdh'],$brr)){
|
|
|
|
|
+ $rows[$key]['入仓数量'] = $brr[$value['jjcp_gdbh'].'-'.$value['jjcp_cpdh']];
|
|
|
|
|
+ if($rows[$key]['实际投料']!=0){
|
|
|
|
|
+ $rows[$key]['投入产出率'] = number_format($rows[$key]['入仓数量']/$rows[$key]['实际投料']*100,2);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['投入产出率'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['入仓数量'] = '';
|
|
|
|
|
+ $rows[$key]['投入产出率'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $data = [
|
|
|
|
|
+ 'total' => $total,
|
|
|
|
|
+ 'rows' => $rows,
|
|
|
|
|
+ ];
|
|
|
|
|
+ $this->success('成功',$data);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 各日统计列表excel导出
|
|
|
|
|
+ * @ApiMethod (POST)
|
|
|
|
|
+ * @param string file_name
|
|
|
|
|
+ * @param array fields
|
|
|
|
|
+ */
|
|
|
|
|
+ public function dayExport()
|
|
|
|
|
+ {
|
|
|
|
|
+ //get请求
|
|
|
|
|
+ if(!$this->request->isPost()){
|
|
|
|
|
+ $this->error('请求方式错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $req = $this->request->param();
|
|
|
|
|
+
|
|
|
|
|
+ if (!isset($req['file_name'])){
|
|
|
|
|
+ $this->error('参数错误','file_name');
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
|
|
|
+ $this->error('参数错误','fields',100);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (isset($req['key_word']) && !empty($req['key_word'])){
|
|
|
|
|
+ $where['c.jjcp_sj | c.jjcp_gdbh | c.jjcp_cpmc | c.jjcp_cpdh | g.实际投料'] = ['like','%'.$req['key_word'].'%'];
|
|
|
|
|
+ }
|
|
|
$arr = [
|
|
$arr = [
|
|
|
- '入仓类型' =>['入仓类型'],
|
|
|
|
|
- '仓库编号' =>['仓库编号'],
|
|
|
|
|
- '仓库名称' =>['仓库名称'],
|
|
|
|
|
- 'jjcp_num' =>['入仓单号'],
|
|
|
|
|
- 'jjcp_gdbh' =>['工单编号'],
|
|
|
|
|
- 'jjcp_yjno' =>['印件号'],
|
|
|
|
|
- 'jjcp_sl' =>['入仓数量'],
|
|
|
|
|
- 'jjcp_sls' =>['累计入仓数量'],
|
|
|
|
|
- '订单数量' =>['订单数量'],
|
|
|
|
|
- '完成率' =>['完成率'],
|
|
|
|
|
- 'jjcp_dw' =>['单位'],
|
|
|
|
|
- 'jjcp_sj' =>['入仓时间'],
|
|
|
|
|
- 'jjcp_smb' =>['首末板'],
|
|
|
|
|
- 'jjcp_cpdh' =>['印件代号'],
|
|
|
|
|
|
|
+ 'jjcp_gdbh' =>['jjcp_gdbh'],
|
|
|
|
|
+ 'jjcp_yjno' =>['jjcp_yjno'],
|
|
|
'jjcp_cpmc' =>['印件名称'],
|
|
'jjcp_cpmc' =>['印件名称'],
|
|
|
- '成品编码' =>['产品编号'],
|
|
|
|
|
- '成品名称' =>['产品名称'],
|
|
|
|
|
- '客户料号' =>['客户料号'],
|
|
|
|
|
- 'jjcp_desc' =>['备注'],
|
|
|
|
|
- '客户编号' =>['客户编号'],
|
|
|
|
|
- 'Gd_客户名称' =>['客户名称'],
|
|
|
|
|
- '最近入仓日期' =>['最近入仓日期'],
|
|
|
|
|
- '机型备注' =>['机型备注'],
|
|
|
|
|
|
|
+ '成品编码' =>['成品编码'],
|
|
|
|
|
+ '成品名称' =>['成品名称'],
|
|
|
|
|
+ '实际投料' =>['实际投料'],
|
|
|
|
|
+ 'jjcp_sls' =>['入仓数量'],
|
|
|
|
|
+ 'jjcp_sj' =>['完工日期'],
|
|
|
];
|
|
];
|
|
|
$data[0] = [];
|
|
$data[0] = [];
|
|
|
foreach ($req['fields'] as $k=>$v){
|
|
foreach ($req['fields'] as $k=>$v){
|
|
@@ -688,48 +982,268 @@ class FinishedProductWarehousing extends Api
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ $where = [
|
|
|
|
|
+ 'c.jjcp_smb'=>['<>','']
|
|
|
|
|
+ ];
|
|
|
|
|
+
|
|
|
//客户编号
|
|
//客户编号
|
|
|
$rows = db()->table('成品入仓')->alias('c')
|
|
$rows = db()->table('成品入仓')->alias('c')
|
|
|
- ->field('rtrim(c.入仓类型) as 入仓类型, rtrim(c.仓库编号) as 仓库编号, rtrim(c.仓库名称) as 仓库名称,
|
|
|
|
|
- rtrim(c.jjcp_num) as jjcp_num, c.jjcp_gdbh,
|
|
|
|
|
- c.jjcp_yjno, c.jjcp_sl, g.订单数量, rtrim(c.jjcp_dw) as jjcp_dw, LEFT(c.jjcp_sj, 10) as jjcp_sj,
|
|
|
|
|
- rtrim(c.jjcp_smb) as jjcp_smb, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
|
|
- rtrim(c.成品编码) as 成品编码, rtrim(c.成品名称) as 成品名称,
|
|
|
|
|
- rtrim(c.客户料号) as 客户料号, rtrim(c.jjcp_desc) as jjcp_desc, LEFT(c.成品编码,4) as 客户编号, rtrim(g.Gd_客户名称) as Gd_客户名称,
|
|
|
|
|
- rtrim(c.机型备注) as 机型备注')
|
|
|
|
|
|
|
+ ->field('c.jjcp_gdbh, c.jjcp_yjno, rtrim(c.jjcp_cpmc) as jjcp_cpmc, rtrim(c.jjcp_cpdh) as jjcp_cpdh,
|
|
|
|
|
+ rtrim(c.成品编码) as 成品编码, rtrim(c.成品名称) as 成品名称, sum(jjcp_sl) as jjcp_sls,
|
|
|
|
|
+ g.实际投料, LEFT(c.jjcp_sj, 10) as jjcp_sj
|
|
|
|
|
+ ')
|
|
|
->where($where)
|
|
->where($where)
|
|
|
->where('g.Gd_cpdh=c.jjcp_cpdh')
|
|
->where('g.Gd_cpdh=c.jjcp_cpdh')
|
|
|
->join('工单_基本资料 g','g.Gd_gdbh=c.jjcp_gdbh')
|
|
->join('工单_基本资料 g','g.Gd_gdbh=c.jjcp_gdbh')
|
|
|
- ->order('c.UniqId desc')
|
|
|
|
|
|
|
+ ->order('c.jjcp_sj desc')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
->select();
|
|
->select();
|
|
|
|
|
|
|
|
foreach ($rows as $key=>$value) {
|
|
foreach ($rows as $key=>$value) {
|
|
|
|
|
+ $subArray = [];
|
|
|
|
|
+ foreach ($arr as $k=>$v){
|
|
|
|
|
+ if($k=='实际投料'){
|
|
|
|
|
+ $subArray[$k] = (string)floatval($value['实际投料']*10000);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $subArray[$k] = $rows[$key][$k];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ array_push($data,$subArray);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- $row = db()->table('成品入仓')
|
|
|
|
|
- ->field('LEFT(Sys_rq, 10) as Sys_rq,jjcp_sl')
|
|
|
|
|
- ->where(['jjcp_gdbh'=>$value['jjcp_gdbh'], 'jjcp_cpdh'=>$value['jjcp_cpdh']])
|
|
|
|
|
- ->order('Sys_rq desc')
|
|
|
|
|
- ->select();
|
|
|
|
|
|
|
+ $this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 入仓末板数据统计列表
|
|
|
|
|
+ * @ApiMethod (GET)
|
|
|
|
|
+ * @param string $date 时间
|
|
|
|
|
+ * @param string $sys_id 用户
|
|
|
|
|
+ */
|
|
|
|
|
+ public function mbList()
|
|
|
|
|
+ {
|
|
|
|
|
+ //get请求
|
|
|
|
|
+ if(!$this->request->isGet()){
|
|
|
|
|
+ $this->error('请求方式错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $req = $this->request->param();
|
|
|
|
|
|
|
|
|
|
+ $page = 1;
|
|
|
|
|
+ $limit = 15;
|
|
|
|
|
+ if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
|
|
|
|
|
+ if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
|
|
|
|
|
+
|
|
|
|
|
+ $where = [
|
|
|
|
|
+
|
|
|
|
|
+ ];
|
|
|
|
|
+
|
|
|
|
|
+ $rows = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->field('c.jjcp_gdbh, c.jjcp_yjno, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
|
|
+ y.yj_成品数量, y.yj_实际投料, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_smb) as jjcp_smb,
|
|
|
|
|
+ sum(c.jjcp_sl) as jjcp_sls, left(max(c.Sys_rq),10) as Sys_rq')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('y.yj_Yjdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_印件资料 y','y.Yj_Gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->order('c.jjcp_gdbh desc, c.jjcp_yjno asc')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
|
|
+ ->page($page,$limit)
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $total = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('y.yj_Yjdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_印件资料 y','y.Yj_Gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
|
|
+ ->count();
|
|
|
|
|
+ $brr = db()->table('成品入仓')
|
|
|
|
|
+ ->group('jjcp_gdbh,jjcp_cpdh')
|
|
|
|
|
+ ->column('CONCAT(jjcp_gdbh, "-", rtrim(jjcp_cpdh)), sum(jjcp_sl)');
|
|
|
|
|
+
|
|
|
|
|
+ $num = db()->table('db_包装产量预报')->count();
|
|
|
|
|
+ $arr1 = db()->table('db_包装产量预报')
|
|
|
|
|
+ ->field('sczl_gdbh1, sczl_gdbh2, sczl_gdbh3, sczl_gdbh4, sczl_gdbh5, sczl_gdbh6,
|
|
|
|
|
+ substr(sczl_yjGx1,2,1) as sczl_yjGx1, substr(sczl_yjGx2,2,1) as sczl_yjGx2,
|
|
|
|
|
+ substr(sczl_yjGx3,2,1) as sczl_yjGx3, substr(sczl_yjGx4,2,1) as sczl_yjGx4,
|
|
|
|
|
+ substr(sczl_yjGx5,2,1) as sczl_yjGx5, substr(sczl_yjGx6,2,1) as sczl_yjGx6,
|
|
|
|
|
+ (sczl_cl1*sczl_PgCl1+sczl_clAdd1) as sczl_cls1,
|
|
|
|
|
+ (sczl_cl2*sczl_PgCl2+sczl_clAdd2) as sczl_cls2,
|
|
|
|
|
+ (sczl_cl3*sczl_PgCl3+sczl_clAdd3) as sczl_cls3,
|
|
|
|
|
+ (sczl_cl4*sczl_PgCl4+sczl_clAdd4) as sczl_cls4,
|
|
|
|
|
+ (sczl_cl5*sczl_PgCl5+sczl_clAdd5) as sczl_cls5,
|
|
|
|
|
+ (sczl_cl6*sczl_PgCl6+sczl_clAdd6) as sczl_cls6
|
|
|
|
|
+ ')
|
|
|
|
|
+ ->limit($num)
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $data1 = [];
|
|
|
|
|
+ foreach ($arr1 as $k=>$v){
|
|
|
|
|
+ for ($i=1;$i<=6;$i++){
|
|
|
|
|
+ if(array_key_exists($v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i],$data1)){
|
|
|
|
|
+ $data1[$v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i]] += $v['sczl_cls'.$i];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $data1[$v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i]] = $v['sczl_cls'.$i];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($rows as $key=>$value) {
|
|
|
|
|
+ $rows[$key]['yj_成品数量'] = (string)floatval($value['yj_成品数量']*10000);
|
|
|
|
|
+ $rows[$key]['yj_实际投料'] = (string)floatval($value['yj_实际投料']*10000);
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_yjno'],$data1)){
|
|
|
|
|
+ $rows[$key]['包装产量'] = $data1[$value['jjcp_gdbh'].'-'.$value['jjcp_yjno']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['包装产量'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_cpdh'],$brr)){
|
|
|
|
|
+ $rows[$key]['入仓数量'] = $brr[$value['jjcp_gdbh'].'-'.$value['jjcp_cpdh']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['入仓数量'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ if($value['jjcp_smb'] !=''){
|
|
|
|
|
+ $rows[$key]['状态'] = '完工';
|
|
|
|
|
+ $rows[$key]['缺数'] = (int)$rows[$key]['yj_成品数量']-(int)$rows[$key]['包装产量'];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['状态'] = '';
|
|
|
|
|
+ $rows[$key]['缺数'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $data = [
|
|
|
|
|
+ 'total' => $total,
|
|
|
|
|
+ 'rows' => $rows,
|
|
|
|
|
+ ];
|
|
|
|
|
+ $this->success('成功',$data);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 入仓末板数据统计列表excel导出
|
|
|
|
|
+ * @ApiMethod (POST)
|
|
|
|
|
+ * @param string file_name
|
|
|
|
|
+ * @param array fields
|
|
|
|
|
+ */
|
|
|
|
|
+ public function mbExport()
|
|
|
|
|
+ {
|
|
|
|
|
+ //get请求
|
|
|
|
|
+ if(!$this->request->isPost()){
|
|
|
|
|
+ $this->error('请求方式错误');
|
|
|
|
|
+ }
|
|
|
|
|
+ $req = $this->request->param();
|
|
|
|
|
+
|
|
|
|
|
+ if (!isset($req['file_name'])){
|
|
|
|
|
+ $this->error('参数错误','file_name');
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
|
|
|
+ $this->error('参数错误','fields',100);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (isset($req['key_word']) && !empty($req['key_word'])){
|
|
|
|
|
+ $where['c.jjcp_sj | c.jjcp_gdbh | c.jjcp_cpmc | c.jjcp_cpdh | g.实际投料'] = ['like','%'.$req['key_word'].'%'];
|
|
|
|
|
+ }
|
|
|
|
|
+ $arr = [
|
|
|
|
|
+ 'jjcp_gdbh' =>['jjcp_gdbh'],
|
|
|
|
|
+ 'jjcp_yjno' =>['jjcp_yjno'],
|
|
|
|
|
+ 'jjcp_cpmc' =>['印件名称'],
|
|
|
|
|
+ 'yj_成品数量' =>['计划交货数量'],
|
|
|
|
|
+ 'yj_实际投料' =>['印件投料'],
|
|
|
|
|
+ 'sczl_cls' =>['包装产量'],
|
|
|
|
|
+ 'Sys_rq' =>['最近入仓时间'],
|
|
|
|
|
+ 'jjcp_sls' =>['入仓数量'],
|
|
|
|
|
+ 'status' =>['完工'],
|
|
|
|
|
+ '缺数' =>['缺数'],
|
|
|
|
|
+ ];
|
|
|
|
|
+ $data[0] = [];
|
|
|
|
|
+ foreach ($req['fields'] as $k=>$v){
|
|
|
|
|
+ if(array_key_exists($v,$arr)){
|
|
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $where = [
|
|
|
|
|
+ 'c.jjcp_smb'=>['<>','']
|
|
|
|
|
+ ];
|
|
|
|
|
+
|
|
|
|
|
+ $rows = db()->table('成品入仓')->alias('c')
|
|
|
|
|
+ ->field('c.jjcp_gdbh, c.jjcp_yjno, rtrim(c.jjcp_cpmc) as jjcp_cpmc,
|
|
|
|
|
+ y.yj_成品数量, y.yj_实际投料, rtrim(c.jjcp_cpdh) as jjcp_cpdh, rtrim(c.jjcp_smb) as jjcp_smb,
|
|
|
|
|
+ sum(c.jjcp_sl) as jjcp_sls, left(max(c.Sys_rq),10) as Sys_rq')
|
|
|
|
|
+ ->where($where)
|
|
|
|
|
+ ->where('y.yj_Yjdh=c.jjcp_cpdh')
|
|
|
|
|
+ ->join('工单_印件资料 y','y.Yj_Gdbh=c.jjcp_gdbh')
|
|
|
|
|
+ ->order('c.jjcp_gdbh desc, c.jjcp_yjno asc')
|
|
|
|
|
+ ->group('c.jjcp_gdbh, c.jjcp_cpdh')
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $brr = db()->table('成品入仓')
|
|
|
|
|
+ ->group('jjcp_gdbh,jjcp_cpdh')
|
|
|
|
|
+ ->column('CONCAT(jjcp_gdbh, "-", rtrim(jjcp_cpdh)), sum(jjcp_sl)');
|
|
|
|
|
+
|
|
|
|
|
+ $num = db()->table('db_包装产量预报')->count();
|
|
|
|
|
+ $arr1 = db()->table('db_包装产量预报')
|
|
|
|
|
+ ->field('sczl_gdbh1, sczl_gdbh2, sczl_gdbh3, sczl_gdbh4, sczl_gdbh5, sczl_gdbh6,
|
|
|
|
|
+ substr(sczl_yjGx1,2,1) as sczl_yjGx1, substr(sczl_yjGx2,2,1) as sczl_yjGx2,
|
|
|
|
|
+ substr(sczl_yjGx3,2,1) as sczl_yjGx3, substr(sczl_yjGx4,2,1) as sczl_yjGx4,
|
|
|
|
|
+ substr(sczl_yjGx5,2,1) as sczl_yjGx5, substr(sczl_yjGx6,2,1) as sczl_yjGx6,
|
|
|
|
|
+ (sczl_cl1*sczl_PgCl1+sczl_clAdd1) as sczl_cls1,
|
|
|
|
|
+ (sczl_cl2*sczl_PgCl2+sczl_clAdd2) as sczl_cls2,
|
|
|
|
|
+ (sczl_cl3*sczl_PgCl3+sczl_clAdd3) as sczl_cls3,
|
|
|
|
|
+ (sczl_cl4*sczl_PgCl4+sczl_clAdd4) as sczl_cls4,
|
|
|
|
|
+ (sczl_cl5*sczl_PgCl5+sczl_clAdd5) as sczl_cls5,
|
|
|
|
|
+ (sczl_cl6*sczl_PgCl6+sczl_clAdd6) as sczl_cls6
|
|
|
|
|
+ ')
|
|
|
|
|
+ ->limit($num)
|
|
|
|
|
+ ->select();
|
|
|
|
|
+
|
|
|
|
|
+ $data1 = [];
|
|
|
|
|
+ foreach ($arr1 as $k=>$v){
|
|
|
|
|
+ for ($i=1;$i<=6;$i++){
|
|
|
|
|
+ if(array_key_exists($v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i],$data1)){
|
|
|
|
|
+ $data1[$v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i]] += $v['sczl_cls'.$i];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $data1[$v['sczl_gdbh'.$i].'-'.$v['sczl_yjGx'.$i]] = $v['sczl_cls'.$i];
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ foreach ($rows as $key=>$value) {
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_yjno'],$data1)){
|
|
|
|
|
+ $rows[$key]['包装产量'] = $data1[$value['jjcp_gdbh'].'-'.$value['jjcp_yjno']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['包装产量'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_cpdh'],$brr)){
|
|
|
|
|
+ $rows[$key]['入仓数量'] = $brr[$value['jjcp_gdbh'].'-'.$value['jjcp_cpdh']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['入仓数量'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ if($value['jjcp_smb'] !=''){
|
|
|
|
|
+ $rows[$key]['状态'] = '完工';
|
|
|
|
|
+ $rows[$key]['缺数'] = (int)$rows[$key]['yj_成品数量']-(int)$rows[$key]['包装产量'];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['状态'] = '';
|
|
|
|
|
+ $rows[$key]['缺数'] = '';
|
|
|
|
|
+ }
|
|
|
$subArray = [];
|
|
$subArray = [];
|
|
|
foreach ($arr as $k=>$v){
|
|
foreach ($arr as $k=>$v){
|
|
|
- if($k=='jjcp_sls'){
|
|
|
|
|
- $subArray[$k] = 0;
|
|
|
|
|
- foreach ($row as $n) {
|
|
|
|
|
- $subArray[$k] += $n['jjcp_sl'];
|
|
|
|
|
|
|
+ if($k=='yj_成品数量' || $k=='yj_实际投料'){
|
|
|
|
|
+ $subArray[$k] = (string)floatval($value['实际投料']*10000);
|
|
|
|
|
+ }else if($k=='sczl_cls'){
|
|
|
|
|
+ if(array_key_exists($value['jjcp_gdbh'].'-'.$value['jjcp_yjno'],$data1)){
|
|
|
|
|
+ $rows[$key]['包装产量'] = $data1[$value['jjcp_gdbh'].'-'.$value['jjcp_yjno']];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['包装产量'] = '';
|
|
|
}
|
|
}
|
|
|
- }else if($k=='完成率'){
|
|
|
|
|
- if ($value['订单数量']!=0){
|
|
|
|
|
- $subArray[$k] = 0;
|
|
|
|
|
- foreach ($row as $n) {
|
|
|
|
|
- $subArray[$k] += $n['jjcp_sl'];
|
|
|
|
|
- }
|
|
|
|
|
- $subArray[$k] = number_format($subArray[$k]/$value['订单数量']/100,2);
|
|
|
|
|
|
|
+ }else if($k=='status'){
|
|
|
|
|
+ if($value['jjcp_smb'] !=''){
|
|
|
|
|
+ $rows[$key]['状态'] = '完工';
|
|
|
}else{
|
|
}else{
|
|
|
- $subArray[$k] = '';
|
|
|
|
|
|
|
+ $rows[$key]['状态'] = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }else if($k=='缺数'){
|
|
|
|
|
+ if($value['jjcp_smb'] !=''){
|
|
|
|
|
+ $rows[$key]['缺数'] = (int)$rows[$key]['yj_成品数量']-(int)$rows[$key]['包装产量'];
|
|
|
|
|
+ }else{
|
|
|
|
|
+ $rows[$key]['缺数'] = '';
|
|
|
}
|
|
}
|
|
|
- }else if($k=='最近入仓日期'){
|
|
|
|
|
- $subArray[$k] = $row[0]['Sys_rq'];
|
|
|
|
|
}else{
|
|
}else{
|
|
|
$subArray[$k] = $rows[$key][$k];
|
|
$subArray[$k] = $rows[$key][$k];
|
|
|
}
|
|
}
|