|
@@ -76,7 +76,7 @@ class FinishedOrderService extends Service
|
|
|
|
|
|
$process_model = new OrdersProductProcess(['channel' => date("Ymd",$value['out_order_no_time'])]);
|
|
|
$process_model->where('order_product_id',$value['order_product_id'])
|
|
|
- ->where('process_id',$data['process_id'])
|
|
|
+ ->where('process_id',$value['process_id'])
|
|
|
->where('dispatch_no',$value['dispatch_no'])
|
|
|
->take($quantity_tmp)
|
|
|
->update([
|
|
@@ -147,7 +147,7 @@ class FinishedOrderService extends Service
|
|
|
|
|
|
public function orderList($data){
|
|
|
$model = FinishedOrderSub::where('del_time',0)
|
|
|
- ->select('id','order_no','table_header_mark','product_no','product_title','product_size','product_unit','order_quantity','technology_material','technology_name','wood_name','process_mark','table_body_mark','dispatch_quantity','finished_num','waste_quantity','production_no','status','crt_id','process_id','equipment_id','team_id','dispatch_time_start','dispatch_time_end','dispatch_time')
|
|
|
+ ->select('id','order_no','table_header_mark','product_no','product_title','product_size','product_unit','dispatch_quantity','technology_material','technology_name','wood_name','process_mark','table_body_mark','dispatch_quantity','finished_num','status','crt_id','process_id','equipment_id','team_id','dispatch_time_start','dispatch_time_end','dispatch_time','crt_time')
|
|
|
->orderBy('id','desc');
|
|
|
|
|
|
if(! empty($data['order_no'])) $model->where('order_no', 'LIKE', '%'.$data['order_no'].'%');
|
|
@@ -195,6 +195,25 @@ class FinishedOrderService extends Service
|
|
|
public function fillData($data){
|
|
|
if(empty($data['data'])) return $data;
|
|
|
|
|
|
+ $waste_map = $waste_map_2 = [];
|
|
|
+ $waste = FinishedOrderScrapp::where('del_time',0)
|
|
|
+ ->whereIn('finished_order_id',array_column($data['data'],'id'))
|
|
|
+ ->select('finished_order_id','num','scrapp_id')
|
|
|
+ ->get()->toArray();
|
|
|
+ if(! empty($waste)){
|
|
|
+ foreach ($waste as $value){
|
|
|
+ $waste_map[$value['finished_order_id']][] = [
|
|
|
+ 'num' => $value['num'],
|
|
|
+ 'scrapp_id' => $value['scrapp_id']
|
|
|
+ ];
|
|
|
+ if(isset($waste_map_2[$value['finished_order_id']])){
|
|
|
+ $waste_map_2[$value['finished_order_id']] += $value['num'];
|
|
|
+ }else{
|
|
|
+ $waste_map_2[$value['finished_order_id']] = $value['num'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
$team = EmployeeTeamPermission::from('employee_team_permission as a')
|
|
|
->leftJoin('employee as b','b.id','a.employee_id')
|
|
|
->whereIn('a.team_id',array_column($data['data'],'team_id'))
|
|
@@ -234,9 +253,14 @@ class FinishedOrderService extends Service
|
|
|
$data['data'][$key]['process_name'] = $process_map[$value['process_id']] ?? '';
|
|
|
$data['data'][$key]['team_name'] = $team_maps[$value['team_id']] ?? '';
|
|
|
$data['data'][$key]['equipment_name'] = $equipment_map[$value['equipment_id']] ?? '';
|
|
|
+ $data['data'][$key]['waste'] = $waste_map[$value['id']] ?? [];
|
|
|
+ $data['data'][$key]['waste_quantity'] = $waste_map_2[$value['id']] ?? 0;
|
|
|
+ $data['data'][$key]['not_finished_num'] = $value['dispatch_quantity'] - $value['finished_num'];
|
|
|
}
|
|
|
$data['finished_num'] = array_sum(array_column($data['data'], 'finished_num'));
|
|
|
+ $data['dispatch_quantity'] = array_sum(array_column($data['data'], 'dispatch_quantity'));
|
|
|
$data['waste_quantity'] = array_sum(array_column($data['data'], 'waste_quantity'));
|
|
|
+ $data['not_finished_num'] = array_sum(array_column($data['data'], 'not_finished_num'));
|
|
|
|
|
|
return $data;
|
|
|
}
|