|
@@ -227,25 +227,29 @@ class ScreenController extends BaseController
|
|
|
|
|
|
//产量趋势图(完工)
|
|
|
public function output_value_efficiency(Request $request){
|
|
|
- // 获取当前时间
|
|
|
- $date = date('Ymd',time());
|
|
|
- $model = new OrdersProductProcess(['channel' => $date]);//当前季度的数据
|
|
|
- $result = $this->getDay();
|
|
|
-
|
|
|
- $data = $model->where('del_time',0)
|
|
|
- ->where('status',2)
|
|
|
- ->select('finished_time')
|
|
|
+ $list = DispatchSub::where('del_time',0)
|
|
|
+ ->where('finished_num','>=',0)
|
|
|
+ ->select('crt_time','finished_num')
|
|
|
+ ->orderBy('id','desc')
|
|
|
+ ->limit(20)
|
|
|
->get()->toArray();
|
|
|
- if(! empty($data)){
|
|
|
- foreach ($data as $value){
|
|
|
- $time = date('Y-m-d',$value['finished_time']);
|
|
|
- if(isset($result[$time])){
|
|
|
- $result[$time]['output'] += 1;
|
|
|
- }
|
|
|
+
|
|
|
+ $return = [];
|
|
|
+ foreach ($list as $value){
|
|
|
+ $date = date("Y-m-d",$value['crt_time']);
|
|
|
+ if(isset($return[$date])){
|
|
|
+ $num = bcadd($value['finished_num'], $return[$date]['output'],3);
|
|
|
+ $return[$date]['output'] = $num;
|
|
|
+ }else{
|
|
|
+ $return[$date] = [
|
|
|
+ 'output' => $value['finished_num'],
|
|
|
+ 'time' => $date,
|
|
|
+ ];
|
|
|
}
|
|
|
}
|
|
|
- ksort($result);
|
|
|
- $result = array_values($result);
|
|
|
+
|
|
|
+ ksort($return);
|
|
|
+ $result = array_values($return);
|
|
|
return $this->json_return(200,'',$result);
|
|
|
}
|
|
|
|
|
@@ -295,30 +299,28 @@ class ScreenController extends BaseController
|
|
|
* @return array
|
|
|
*/
|
|
|
public function capacity(Request $request){
|
|
|
- $date = date('Ymd',time());
|
|
|
-
|
|
|
$process = Process::where('del_time',0)->get()->toArray();
|
|
|
- //工序-----------------------------
|
|
|
- $model = new OrdersProductProcess(['channel' => $date]);//当前季度的数据
|
|
|
- $data = $model->where('del_time',0)
|
|
|
- ->where('status',2)
|
|
|
- ->select('finished_time')
|
|
|
- ->orderBy('finished_time','desc')
|
|
|
+
|
|
|
+ $list = DispatchSub::where('del_time',0)
|
|
|
+ ->where('finished_num','>=',0)
|
|
|
+ ->select('crt_time','finished_num')
|
|
|
+ ->orderBy('id','desc')
|
|
|
+ ->limit(20)
|
|
|
->get()->toArray();
|
|
|
|
|
|
$return = [];
|
|
|
- if(! empty($data)){
|
|
|
- foreach ($data as $value){
|
|
|
- $finished_time = date('Ymd',$value['finished_time']);
|
|
|
- if(isset($return[$finished_time])){
|
|
|
- $return[$finished_time] += 1;
|
|
|
- }else{
|
|
|
- $return[$finished_time] = 1;
|
|
|
- }
|
|
|
+ foreach ($list as $value){
|
|
|
+ $date = date("Ymd",$value['crt_time']);
|
|
|
+ if(isset($return[$date])){
|
|
|
+ $num = bcadd($value['finished_num'], $return[$date],3);
|
|
|
+ $return[$date] = $num;
|
|
|
+ }else{
|
|
|
+ $return[$date] = $value['finished_num'];
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
$maxValue = empty($return) ? 0 : max($return);
|
|
|
- $today = $return[$date] ?? 0;
|
|
|
+ $today = $return[date("Ymd")] ?? 0;
|
|
|
$rate = $maxValue ? intval($today/$maxValue * 100) : 0;
|
|
|
$array = [];
|
|
|
foreach ($process as $value){
|