|
|
@@ -84,13 +84,11 @@ class PurchaseController extends Controller
|
|
84
|
84
|
DB::beginTransaction();
|
|
85
|
85
|
|
|
86
|
86
|
try {
|
|
87
|
|
- $ppn = Ppn::first()->ppn;
|
|
88
|
|
-
|
|
89
|
87
|
$validated = $request
|
|
90
|
88
|
->safe()
|
|
91
|
89
|
->merge([
|
|
92
|
90
|
"user_id" => auth()->user()->id,
|
|
93
|
|
- "ppn" => $request->ppn ? $ppn : 0,
|
|
|
91
|
+ "ppn" => $request->ppn ? true : false,
|
|
94
|
92
|
])
|
|
95
|
93
|
->all();
|
|
96
|
94
|
|
|
|
@@ -190,12 +188,10 @@ class PurchaseController extends Controller
|
|
190
|
188
|
DB::beginTransaction();
|
|
191
|
189
|
|
|
192
|
190
|
try {
|
|
193
|
|
- $ppn = Ppn::first()->ppn;
|
|
194
|
|
-
|
|
195
|
191
|
$validated = $request
|
|
196
|
192
|
->safe()
|
|
197
|
193
|
->merge([
|
|
198
|
|
- "ppn" => $request->ppn ? $ppn : 0,
|
|
|
194
|
+ "ppn" => $request->ppn ? true : false,
|
|
199
|
195
|
])
|
|
200
|
196
|
->all();
|
|
201
|
197
|
|
|
|
@@ -227,23 +223,52 @@ class PurchaseController extends Controller
|
|
227
|
223
|
}
|
|
228
|
224
|
|
|
229
|
225
|
if ($request->status == "success") {
|
|
230
|
|
- $validated = [
|
|
231
|
|
- "purchase_number" => $purchase->number,
|
|
232
|
|
- "price" => $product["price"],
|
|
233
|
|
- "qty" => $product["qty"],
|
|
234
|
|
- "product_number" => $product["number"],
|
|
235
|
|
- ];
|
|
|
226
|
+ $stockProduct = StockProduct::where(
|
|
|
227
|
+ "product_number",
|
|
|
228
|
+ $product["number"]
|
|
|
229
|
+ );
|
|
|
230
|
+
|
|
|
231
|
+ if ($stockProduct->exists()) {
|
|
|
232
|
+ $validated = [
|
|
|
233
|
+ "price" =>
|
|
|
234
|
+ $stockProduct->first()->price >
|
|
|
235
|
+ $product["price"]
|
|
|
236
|
+ ? $stockProduct->first()->price
|
|
|
237
|
+ : $product["price"],
|
|
|
238
|
+ "ppn" => $request->ppn ? true : false,
|
|
|
239
|
+ ];
|
|
236
|
240
|
|
|
237
|
|
- StockProduct::create($validated);
|
|
|
241
|
+ $stockProduct->increment(
|
|
|
242
|
+ "qty",
|
|
|
243
|
+ $product["qty"],
|
|
|
244
|
+ $validated
|
|
|
245
|
+ );
|
|
|
246
|
+ } else {
|
|
|
247
|
+ $validated = [
|
|
|
248
|
+ "price" => $product["price"],
|
|
|
249
|
+ "ppn" => $request->ppn ? true : false,
|
|
|
250
|
+ "qty" => $product["qty"],
|
|
|
251
|
+ "product_number" => $product["number"],
|
|
|
252
|
+ ];
|
|
|
253
|
+
|
|
|
254
|
+ StockProduct::create($validated);
|
|
|
255
|
+ }
|
|
238
|
256
|
}
|
|
239
|
257
|
}
|
|
240
|
258
|
|
|
241
|
259
|
DB::commit();
|
|
242
|
260
|
|
|
243
|
|
- return back()->with(
|
|
244
|
|
- "success",
|
|
245
|
|
- __("messages.success.update.purchase")
|
|
246
|
|
- );
|
|
|
261
|
+ if ($request->status == "success") {
|
|
|
262
|
+ return to_route("purchases.show", $purchase)->with(
|
|
|
263
|
+ "success",
|
|
|
264
|
+ __("messages.success.update.purchase")
|
|
|
265
|
+ );
|
|
|
266
|
+ } else {
|
|
|
267
|
+ return back()->with(
|
|
|
268
|
+ "success",
|
|
|
269
|
+ __("messages.success.update.purchase")
|
|
|
270
|
+ );
|
|
|
271
|
+ }
|
|
247
|
272
|
} catch (QueryException $e) {
|
|
248
|
273
|
DB::rollBack();
|
|
249
|
274
|
|