|
@@ -15,6 +15,7 @@ use App\Models\ProjectUser;
|
|
use App\Models\RentType;
|
|
use App\Models\RentType;
|
|
use App\Models\Spec;
|
|
use App\Models\Spec;
|
|
use App\Models\WorkPoint;
|
|
use App\Models\WorkPoint;
|
|
|
|
+use Carbon\Carbon;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Log;
|
|
use Illuminate\Support\Facades\Log;
|
|
@@ -50,22 +51,8 @@ class OrderController extends BaseController
|
|
]);
|
|
]);
|
|
if(!$order) return $this->error(['msg' => '订单创建失败']);
|
|
if(!$order) return $this->error(['msg' => '订单创建失败']);
|
|
Notification::send($order->id);
|
|
Notification::send($order->id);
|
|
- $devices = $request->input('devices');
|
|
|
|
- $total = 0;
|
|
|
|
- foreach($devices as $device) {
|
|
|
|
- $price = $this->transMoney($device['price']);
|
|
|
|
- $data = $this->getNameSpecRent($device);
|
|
|
|
- OrderDevice::create(array_merge([
|
|
|
|
- 'order_id' => $order->id,
|
|
|
|
- 'project_id' => $order->project_id,
|
|
|
|
- 'quantity' => $device['quantity'],
|
|
|
|
- 'price' => $price,
|
|
|
|
- 'start_date' => $device['start_date'],
|
|
|
|
- 'end_date' => $device['end_date']
|
|
|
|
- ], $data));
|
|
|
|
- $total = $total + ($price * (int)$device['quantity']);
|
|
|
|
- }
|
|
|
|
- $order->update(['money' => $total]);
|
|
|
|
|
|
+ $order->updateOrderDevices($request->input('devices'));
|
|
|
|
+
|
|
return $this->success();
|
|
return $this->success();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -180,23 +167,7 @@ class OrderController extends BaseController
|
|
'level' => $project_role ? $project_role['level'] : ''
|
|
'level' => $project_role ? $project_role['level'] : ''
|
|
]);
|
|
]);
|
|
if(!$res) return $this->error(['msg' => '订单修改失败']);
|
|
if(!$res) return $this->error(['msg' => '订单修改失败']);
|
|
- $devices = $request->input('devices');
|
|
|
|
- $total = 0;
|
|
|
|
- OrderDevice::where('order_id', '=', $order->id)->delete();
|
|
|
|
- foreach($devices as $device) {
|
|
|
|
- $price = $this->transMoney($device['price']);
|
|
|
|
- OrderDevice::create([
|
|
|
|
- 'name' => $device['name'],
|
|
|
|
- 'order_id' => $order->id,
|
|
|
|
- 'device_id' => $device['type_id'],
|
|
|
|
- 'quantity' => $device['quantity'],
|
|
|
|
- 'price' => $price,
|
|
|
|
- 'start_date' => $device['start_date'],
|
|
|
|
- 'end_date' => $device['end_date']
|
|
|
|
- ]);
|
|
|
|
- $total = $total + ($price * (int)$device['quantity']);
|
|
|
|
- }
|
|
|
|
- $order->update(['money' => $total]);
|
|
|
|
|
|
+ $order->updateOrderDevices($request->input('devices'));
|
|
return $this->success();
|
|
return $this->success();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -236,23 +207,7 @@ class OrderController extends BaseController
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- OrderDevice::where('order_id', '=', $order->id)->delete();
|
|
|
|
- foreach($devices as $device) {
|
|
|
|
- OrderDevice::create([
|
|
|
|
- 'name' => $device['name'],
|
|
|
|
- 'order_id' => $order->id,
|
|
|
|
- 'device_id' => $device['id'],
|
|
|
|
- 'start_date' => $device['start_date'],
|
|
|
|
- 'end_date' => $device['end_date']
|
|
|
|
- ]);
|
|
|
|
- if($device['id']) {
|
|
|
|
- InnerDevice::find($device['id'])->update([
|
|
|
|
- 'start_date' => $device['start_date'],
|
|
|
|
- 'end_date' => $device['end_date'],
|
|
|
|
- 'work_point_id' => $request->input('work_point_id')
|
|
|
|
- ]);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ $order->updateOrderDevices($devices);
|
|
}
|
|
}
|
|
|
|
|
|
return $this->success();
|
|
return $this->success();
|
|
@@ -268,8 +223,12 @@ class OrderController extends BaseController
|
|
['level', '>=', $level]
|
|
['level', '>=', $level]
|
|
];
|
|
];
|
|
$is_draft = $request->input('is_draft');
|
|
$is_draft = $request->input('is_draft');
|
|
|
|
+
|
|
if($is_draft) {
|
|
if($is_draft) {
|
|
$search_items['is_draft'] = $is_draft;
|
|
$search_items['is_draft'] = $is_draft;
|
|
|
|
+ if($is_draft == 1) {
|
|
|
|
+ $search_items['user_id'] = $user->id;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
if($request->input('status')) {
|
|
if($request->input('status')) {
|
|
$status = Option::get('orders', 'status', $request->input('status'));
|
|
$status = Option::get('orders', 'status', $request->input('status'));
|
|
@@ -318,7 +277,7 @@ class OrderController extends BaseController
|
|
$device->device_name = DeviceName::find($device->device_name_id);
|
|
$device->device_name = DeviceName::find($device->device_name_id);
|
|
$device->status = Option::find($device->status);
|
|
$device->status = Option::find($device->status);
|
|
$device->spec = Spec::find($device->spec);
|
|
$device->spec = Spec::find($device->spec);
|
|
- $device->work_point = WorkPoint::find($device->work_point_id);
|
|
|
|
|
|
+ $device->work_point = $order['workPoint'];
|
|
}
|
|
}
|
|
foreach($order['order_devices'] as $order_device) {
|
|
foreach($order['order_devices'] as $order_device) {
|
|
$order_device->device_type = Device::find($order_device->device_id);
|
|
$order_device->device_type = Device::find($order_device->device_id);
|
|
@@ -369,6 +328,7 @@ class OrderController extends BaseController
|
|
} else if($request->input('type') == 're-submit') {
|
|
} else if($request->input('type') == 're-submit') {
|
|
$status = Option::get('orders', 'status', 'checking');
|
|
$status = Option::get('orders', 'status', 'checking');
|
|
$next_project_role = $project_role->getNext(null, $is_inner);
|
|
$next_project_role = $project_role->getNext(null, $is_inner);
|
|
|
|
+ $order->updateOrderDevices($request->input('devices'));
|
|
} else if($request->input('type') == 'reject') {
|
|
} else if($request->input('type') == 'reject') {
|
|
$next_project_role = ProjectRole::getFirstRole($order);
|
|
$next_project_role = ProjectRole::getFirstRole($order);
|
|
} else if($request->input('type') == 'back') {
|
|
} else if($request->input('type') == 'back') {
|
|
@@ -378,6 +338,7 @@ class OrderController extends BaseController
|
|
$status = Option::get('orders', 'status', 'pass');
|
|
$status = Option::get('orders', 'status', 'pass');
|
|
// 全部归还,下一角色改为最高角色
|
|
// 全部归还,下一角色改为最高角色
|
|
$next_project_role = ProjectRole::getLastRole($order);
|
|
$next_project_role = ProjectRole::getLastRole($order);
|
|
|
|
+ OrderDevice::where('order_id', $order->id)->update(['end_date' => Carbon::now()->toDateString()]);
|
|
} else {
|
|
} else {
|
|
// 部分归还,状态保持,下一角色保持,上一角色保持
|
|
// 部分归还,状态保持,下一角色保持,上一角色保持
|
|
$status = $order->status;
|
|
$status = $order->status;
|
|
@@ -404,6 +365,7 @@ class OrderController extends BaseController
|
|
'is_change' => $is_change,
|
|
'is_change' => $is_change,
|
|
'remark' => $request->input('remark')
|
|
'remark' => $request->input('remark')
|
|
]);
|
|
]);
|
|
|
|
+
|
|
if($request->input('type') == 'back') {
|
|
if($request->input('type') == 'back') {
|
|
if($new_order) {
|
|
if($new_order) {
|
|
// 部分归还
|
|
// 部分归还
|