浏览代码

fix: disable button on sales master

父节点
当前提交
fdf8e3e181

+ 222
- 211
public/js/resources_js_pages_Sales_Create_vue.js 查看文件

@@ -1,78 +1,6 @@
1 1
 "use strict";
2 2
 (self["webpackChunk"] = self["webpackChunk"] || []).push([["resources_js_pages_Sales_Create_vue"],{
3 3
 
4
-/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js":
5
-/*!*************************************************************************************************************************************************************************************************************************!*\
6
-  !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js ***!
7
-  \*************************************************************************************************************************************************************************************************************************/
8
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
9
-
10
-__webpack_require__.r(__webpack_exports__);
11
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
12
-/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
13
-/* harmony export */ });
14
-/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.esm-bundler.js");
15
-
16
-/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
17
-  __name: 'AppAutocompleteBasic',
18
-  props: {
19
-    label: {
20
-      type: String,
21
-      required: true
22
-    },
23
-    disabled: {
24
-      type: Boolean,
25
-      "default": false
26
-    },
27
-    placeholder: {
28
-      type: String,
29
-      required: true
30
-    },
31
-    error: {
32
-      type: String,
33
-      "default": null
34
-    },
35
-    field: {
36
-      type: String,
37
-      required: true
38
-    },
39
-    suggestions: {
40
-      type: Array,
41
-      required: true
42
-    },
43
-    modelValue: null
44
-  },
45
-  emits: ['complete', 'itemSelect', 'update:modelValue'],
46
-  setup: function setup(__props, _ref) {
47
-    var expose = _ref.expose;
48
-    expose();
49
-    var props = __props;
50
-    var isError = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
51
-      return props.error ? true : false;
52
-    });
53
-    var forLabel = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
54
-      return props.label.toLowerCase().replace(/\s+/g, '-');
55
-    });
56
-    var ariaDescribedbyLabel = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
57
-      return props.label.toLowerCase().replace(/\s+/g, '-') + '-error';
58
-    });
59
-    var __returned__ = {
60
-      props: props,
61
-      isError: isError,
62
-      forLabel: forLabel,
63
-      ariaDescribedbyLabel: ariaDescribedbyLabel,
64
-      computed: vue__WEBPACK_IMPORTED_MODULE_0__.computed
65
-    };
66
-    Object.defineProperty(__returned__, '__isScriptSetup', {
67
-      enumerable: false,
68
-      value: true
69
-    });
70
-    return __returned__;
71
-  }
72
-});
73
-
74
-/***/ }),
75
-
76 4
 /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppDropdown.vue?vue&type=script&setup=true&lang=js":
77 5
 /*!****************************************************************************************************************************************************************************************************************!*\
78 6
   !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppDropdown.vue?vue&type=script&setup=true&lang=js ***!
@@ -488,6 +416,78 @@ __webpack_require__.r(__webpack_exports__);
488 416
 
489 417
 /***/ }),
490 418
 
419
+/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js":
420
+/*!*****************************************************************************************************************************************************************************************************************!*\
421
+  !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js ***!
422
+  \*****************************************************************************************************************************************************************************************************************/
423
+/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
424
+
425
+__webpack_require__.r(__webpack_exports__);
426
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
427
+/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
428
+/* harmony export */ });
429
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.esm-bundler.js");
430
+
431
+/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
432
+  __name: 'AutoComplete',
433
+  props: {
434
+    label: {
435
+      type: String,
436
+      required: true
437
+    },
438
+    disabled: {
439
+      type: Boolean,
440
+      "default": false
441
+    },
442
+    placeholder: {
443
+      type: String,
444
+      required: true
445
+    },
446
+    error: {
447
+      type: String,
448
+      "default": null
449
+    },
450
+    field: {
451
+      type: String,
452
+      required: true
453
+    },
454
+    suggestions: {
455
+      type: Array,
456
+      required: true
457
+    },
458
+    modelValue: null
459
+  },
460
+  emits: ['complete', 'itemSelect', 'update:modelValue'],
461
+  setup: function setup(__props, _ref) {
462
+    var expose = _ref.expose;
463
+    expose();
464
+    var props = __props;
465
+    var isError = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
466
+      return props.error ? true : false;
467
+    });
468
+    var forLabel = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
469
+      return props.label.toLowerCase().replace(/\s+/g, '-');
470
+    });
471
+    var ariaDescribedbyLabel = (0,vue__WEBPACK_IMPORTED_MODULE_0__.computed)(function () {
472
+      return props.label.toLowerCase().replace(/\s+/g, '-') + '-error';
473
+    });
474
+    var __returned__ = {
475
+      props: props,
476
+      isError: isError,
477
+      forLabel: forLabel,
478
+      ariaDescribedbyLabel: ariaDescribedbyLabel,
479
+      computed: vue__WEBPACK_IMPORTED_MODULE_0__.computed
480
+    };
481
+    Object.defineProperty(__returned__, '__isScriptSetup', {
482
+      enumerable: false,
483
+      value: true
484
+    });
485
+    return __returned__;
486
+  }
487
+});
488
+
489
+/***/ }),
490
+
491 491
 /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/layouts/DashboardLayout.vue?vue&type=script&setup=true&lang=js":
492 492
 /*!*****************************************************************************************************************************************************************************************************************!*\
493 493
   !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/layouts/DashboardLayout.vue?vue&type=script&setup=true&lang=js ***!
@@ -619,7 +619,7 @@ __webpack_require__.r(__webpack_exports__);
619 619
 /* harmony import */ var _components_AppInputText_vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/AppInputText.vue */ "./resources/js/components/AppInputText.vue");
620 620
 /* harmony import */ var _components_AppInputNumber_vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/AppInputNumber.vue */ "./resources/js/components/AppInputNumber.vue");
621 621
 /* harmony import */ var _components_AppDropdown_vue__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/AppDropdown.vue */ "./resources/js/components/AppDropdown.vue");
622
-/* harmony import */ var _components_AppAutocompleteBasic_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/AppAutocompleteBasic.vue */ "./resources/js/components/AppAutocompleteBasic.vue");
622
+/* harmony import */ var _components_AutoComplete_vue__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/AutoComplete.vue */ "./resources/js/components/AutoComplete.vue");
623 623
 /* harmony import */ var _layouts_DashboardLayout_vue__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/layouts/DashboardLayout.vue */ "./resources/js/layouts/DashboardLayout.vue");
624 624
 
625 625
 
@@ -687,6 +687,16 @@ __webpack_require__.r(__webpack_exports__);
687 687
       });
688 688
     };
689 689
 
690
+    (0,_components_useFormErrorReset__WEBPACK_IMPORTED_MODULE_1__.useFormErrorReset)(form);
691
+
692
+    var checkSales = function checkSales() {
693
+      if (form.price && form.qty && form.customer && form.product) {
694
+        return false;
695
+      } else {
696
+        return true;
697
+      }
698
+    };
699
+
690 700
     var __returned__ = {
691 701
       props: props,
692 702
       form: form,
@@ -697,6 +707,7 @@ __webpack_require__.r(__webpack_exports__);
697 707
       productOnSelected: productOnSelected,
698 708
       showCreateProduct: showCreateProduct,
699 709
       onSubmit: onSubmit,
710
+      checkSales: checkSales,
700 711
       useForm: _inertiajs_inertia_vue3__WEBPACK_IMPORTED_MODULE_0__.useForm,
701 712
       Head: _inertiajs_inertia_vue3__WEBPACK_IMPORTED_MODULE_0__.Head,
702 713
       useFormErrorReset: _components_useFormErrorReset__WEBPACK_IMPORTED_MODULE_1__.useFormErrorReset,
@@ -707,7 +718,7 @@ __webpack_require__.r(__webpack_exports__);
707 718
       AppInputText: _components_AppInputText_vue__WEBPACK_IMPORTED_MODULE_6__["default"],
708 719
       AppInputNumber: _components_AppInputNumber_vue__WEBPACK_IMPORTED_MODULE_7__["default"],
709 720
       AppDropdown: _components_AppDropdown_vue__WEBPACK_IMPORTED_MODULE_8__["default"],
710
-      AppAutocompleteBasic: _components_AppAutocompleteBasic_vue__WEBPACK_IMPORTED_MODULE_9__["default"],
721
+      AppAutoComplete: _components_AutoComplete_vue__WEBPACK_IMPORTED_MODULE_9__["default"],
711 722
       DashboardLayout: _layouts_DashboardLayout_vue__WEBPACK_IMPORTED_MODULE_10__["default"]
712 723
     };
713 724
     Object.defineProperty(__returned__, '__isScriptSetup', {
@@ -857,83 +868,6 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
857 868
 
858 869
 /***/ }),
859 870
 
860
-/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770":
861
-/*!******************************************************************************************************************************************************************************************************************************************************************************************!*\
862
-  !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770 ***!
863
-  \******************************************************************************************************************************************************************************************************************************************************************************************/
864
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
865
-
866
-__webpack_require__.r(__webpack_exports__);
867
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
868
-/* harmony export */   "render": () => (/* binding */ render)
869
-/* harmony export */ });
870
-/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.esm-bundler.js");
871
-
872
-var _hoisted_1 = {
873
-  "class": "field"
874
-};
875
-var _hoisted_2 = ["for"];
876
-var _hoisted_3 = {
877
-  "class": "flex flex-column"
878
-};
879
-var _hoisted_4 = ["id"];
880
-var _hoisted_5 = {
881
-  key: 1,
882
-  "class": "mt-1"
883
-};
884
-function render(_ctx, _cache, $props, $setup, $data, $options) {
885
-  var _component_AutoComplete = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)("AutoComplete");
886
-
887
-  return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("div", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("label", {
888
-    "for": $setup.forLabel
889
-  }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.label), 9
890
-  /* TEXT, PROPS */
891
-  , _hoisted_2), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_AutoComplete, {
892
-    "class": (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(["w-full", {
893
-      'p-invalid': $setup.isError
894
-    }]),
895
-    inputClass: "w-full",
896
-    "model-value": $props.modelValue,
897
-    id: $setup.forLabel,
898
-    field: $props.field,
899
-    placeholder: $props.placeholder,
900
-    suggestions: $props.suggestions,
901
-    "auto-highlight": true,
902
-    disabled: $props.disabled,
903
-    onInput: _cache[0] || (_cache[0] = function ($event) {
904
-      return _ctx.$emit('update:modelValue', $event.target.value);
905
-    }),
906
-    onItemSelect: _cache[1] || (_cache[1] = function ($event) {
907
-      return _ctx.$emit('itemSelect', $event);
908
-    }),
909
-    onComplete: _cache[2] || (_cache[2] = function ($event) {
910
-      return _ctx.$emit('complete', $event);
911
-    })
912
-  }, {
913
-    item: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function (slotProps) {
914
-      return [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, "item", {
915
-        item: slotProps.item
916
-      })];
917
-    }),
918
-    _: 3
919
-    /* FORWARDED */
920
-
921
-  }, 8
922
-  /* PROPS */
923
-  , ["model-value", "id", "class", "field", "placeholder", "suggestions", "disabled"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_3, [$props.error ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("small", {
924
-    key: 0,
925
-    "class": (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(["mt-1", {
926
-      'mb-2': $props.suggestions.length === 0 || $props.modelValue.length === 0,
927
-      'p-error': $setup.isError
928
-    }]),
929
-    id: $setup.ariaDescribedbyLabel
930
-  }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.error), 11
931
-  /* TEXT, CLASS, PROPS */
932
-  , _hoisted_4)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)("v-if", true), $props.suggestions.length === 0 || $props.modelValue.length === 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("small", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, "empty")])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)("v-if", true)])]);
933
-}
934
-
935
-/***/ }),
936
-
937 871
 /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppDropdown.vue?vue&type=template&id=ce0d1992":
938 872
 /*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
939 873
   !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppDropdown.vue?vue&type=template&id=ce0d1992 ***!
@@ -1490,6 +1424,83 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1490 1424
 
1491 1425
 /***/ }),
1492 1426
 
1427
+/***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a":
1428
+/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
1429
+  !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a ***!
1430
+  \**********************************************************************************************************************************************************************************************************************************************************************************/
1431
+/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1432
+
1433
+__webpack_require__.r(__webpack_exports__);
1434
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
1435
+/* harmony export */   "render": () => (/* binding */ render)
1436
+/* harmony export */ });
1437
+/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue */ "./node_modules/vue/dist/vue.esm-bundler.js");
1438
+
1439
+var _hoisted_1 = {
1440
+  "class": "field"
1441
+};
1442
+var _hoisted_2 = ["for"];
1443
+var _hoisted_3 = {
1444
+  "class": "flex flex-column"
1445
+};
1446
+var _hoisted_4 = ["id"];
1447
+var _hoisted_5 = {
1448
+  key: 1,
1449
+  "class": "mt-1"
1450
+};
1451
+function render(_ctx, _cache, $props, $setup, $data, $options) {
1452
+  var _component_AutoComplete = (0,vue__WEBPACK_IMPORTED_MODULE_0__.resolveComponent)("AutoComplete", true);
1453
+
1454
+  return (0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("div", _hoisted_1, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("label", {
1455
+    "for": $setup.forLabel
1456
+  }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.label), 9
1457
+  /* TEXT, PROPS */
1458
+  , _hoisted_2), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_AutoComplete, {
1459
+    "class": (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(["w-full", {
1460
+      'p-invalid': $setup.isError
1461
+    }]),
1462
+    inputClass: "w-full",
1463
+    "model-value": $props.modelValue,
1464
+    id: $setup.forLabel,
1465
+    field: $props.field,
1466
+    placeholder: $props.placeholder,
1467
+    suggestions: $props.suggestions,
1468
+    "auto-highlight": true,
1469
+    disabled: $props.disabled,
1470
+    onInput: _cache[0] || (_cache[0] = function ($event) {
1471
+      return _ctx.$emit('update:modelValue', $event.target.value);
1472
+    }),
1473
+    onItemSelect: _cache[1] || (_cache[1] = function ($event) {
1474
+      return _ctx.$emit('itemSelect', $event);
1475
+    }),
1476
+    onComplete: _cache[2] || (_cache[2] = function ($event) {
1477
+      return _ctx.$emit('complete', $event);
1478
+    })
1479
+  }, {
1480
+    item: (0,vue__WEBPACK_IMPORTED_MODULE_0__.withCtx)(function (slotProps) {
1481
+      return [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, "item", {
1482
+        item: slotProps.item
1483
+      })];
1484
+    }),
1485
+    _: 3
1486
+    /* FORWARDED */
1487
+
1488
+  }, 8
1489
+  /* PROPS */
1490
+  , ["model-value", "id", "class", "field", "placeholder", "suggestions", "disabled"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_3, [$props.error ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("small", {
1491
+    key: 0,
1492
+    "class": (0,vue__WEBPACK_IMPORTED_MODULE_0__.normalizeClass)(["mt-1", {
1493
+      'mb-2': $props.suggestions.length === 0 || $props.modelValue.length === 0,
1494
+      'p-error': $setup.isError
1495
+    }]),
1496
+    id: $setup.ariaDescribedbyLabel
1497
+  }, (0,vue__WEBPACK_IMPORTED_MODULE_0__.toDisplayString)($props.error), 11
1498
+  /* TEXT, CLASS, PROPS */
1499
+  , _hoisted_4)) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)("v-if", true), $props.suggestions.length === 0 || $props.modelValue.length === 0 ? ((0,vue__WEBPACK_IMPORTED_MODULE_0__.openBlock)(), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementBlock)("small", _hoisted_5, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.renderSlot)(_ctx.$slots, "empty")])) : (0,vue__WEBPACK_IMPORTED_MODULE_0__.createCommentVNode)("v-if", true)])]);
1500
+}
1501
+
1502
+/***/ }),
1503
+
1493 1504
 /***/ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/layouts/DashboardLayout.vue?vue&type=template&id=549bf5ac&scoped=true":
1494 1505
 /*!**********************************************************************************************************************************************************************************************************************************************************************************************!*\
1495 1506
   !*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/layouts/DashboardLayout.vue?vue&type=template&id=549bf5ac&scoped=true ***!
@@ -1847,7 +1858,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1847 1858
             })
1848 1859
           }, null, 8
1849 1860
           /* PROPS */
1850
-          , ["options", "error", "modelValue"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_7, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)($setup["AppAutocompleteBasic"], {
1861
+          , ["options", "error", "modelValue"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_7, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)($setup["AppAutoComplete"], {
1851 1862
             label: "Pelanggan",
1852 1863
             placeholder: "pelanggan",
1853 1864
             field: "name",
@@ -1883,7 +1894,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1883 1894
 
1884 1895
           }, 8
1885 1896
           /* PROPS */
1886
-          , ["modelValue", "error", "suggestions", "onComplete", "onItemSelect"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_9, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)($setup["AppAutocompleteBasic"], {
1897
+          , ["modelValue", "error", "suggestions", "onComplete", "onItemSelect"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createElementVNode)("div", _hoisted_9, [(0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)($setup["AppAutoComplete"], {
1887 1898
             label: "Produk",
1888 1899
             placeholder: "produk",
1889 1900
             field: "name",
@@ -1947,7 +1958,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
1947 1958
             label: "Simpan",
1948 1959
             icon: "pi pi-check",
1949 1960
             "class": "p-button-outlined",
1950
-            disabled: $setup.form.processing,
1961
+            disabled: $setup.form.processing || $setup.checkSales(),
1951 1962
             onClick: $setup.onSubmit
1952 1963
           }, null, 8
1953 1964
           /* PROPS */
@@ -2654,33 +2665,6 @@ exports["default"] = (sfc, props) => {
2654 2665
 };
2655 2666
 
2656 2667
 
2657
-/***/ }),
2658
-
2659
-/***/ "./resources/js/components/AppAutocompleteBasic.vue":
2660
-/*!**********************************************************!*\
2661
-  !*** ./resources/js/components/AppAutocompleteBasic.vue ***!
2662
-  \**********************************************************/
2663
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2664
-
2665
-__webpack_require__.r(__webpack_exports__);
2666
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
2667
-/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
2668
-/* harmony export */ });
2669
-/* harmony import */ var _AppAutocompleteBasic_vue_vue_type_template_id_68403770__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AppAutocompleteBasic.vue?vue&type=template&id=68403770 */ "./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770");
2670
-/* harmony import */ var _AppAutocompleteBasic_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js */ "./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js");
2671
-/* harmony import */ var _media_dijitalcode_3ad9c6e0_4296_4a57_b136_144df49e7bb8_Projects_cahaya_agung_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ "./node_modules/vue-loader/dist/exportHelper.js");
2672
-
2673
-
2674
-
2675
-
2676
-;
2677
-const __exports__ = /*#__PURE__*/(0,_media_dijitalcode_3ad9c6e0_4296_4a57_b136_144df49e7bb8_Projects_cahaya_agung_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_AppAutocompleteBasic_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_1__["default"], [['render',_AppAutocompleteBasic_vue_vue_type_template_id_68403770__WEBPACK_IMPORTED_MODULE_0__.render],['__file',"resources/js/components/AppAutocompleteBasic.vue"]])
2678
-/* hot reload */
2679
-if (false) {}
2680
-
2681
-
2682
-/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);
2683
-
2684 2668
 /***/ }),
2685 2669
 
2686 2670
 /***/ "./resources/js/components/AppDropdown.vue":
@@ -2877,6 +2861,33 @@ const __exports__ = /*#__PURE__*/(0,_media_dijitalcode_3ad9c6e0_4296_4a57_b136_1
2877 2861
 if (false) {}
2878 2862
 
2879 2863
 
2864
+/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);
2865
+
2866
+/***/ }),
2867
+
2868
+/***/ "./resources/js/components/AutoComplete.vue":
2869
+/*!**************************************************!*\
2870
+  !*** ./resources/js/components/AutoComplete.vue ***!
2871
+  \**************************************************/
2872
+/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2873
+
2874
+__webpack_require__.r(__webpack_exports__);
2875
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
2876
+/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
2877
+/* harmony export */ });
2878
+/* harmony import */ var _AutoComplete_vue_vue_type_template_id_adfaf81a__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AutoComplete.vue?vue&type=template&id=adfaf81a */ "./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a");
2879
+/* harmony import */ var _AutoComplete_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./AutoComplete.vue?vue&type=script&setup=true&lang=js */ "./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js");
2880
+/* harmony import */ var _media_dijitalcode_3ad9c6e0_4296_4a57_b136_144df49e7bb8_Projects_cahaya_agung_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/vue-loader/dist/exportHelper.js */ "./node_modules/vue-loader/dist/exportHelper.js");
2881
+
2882
+
2883
+
2884
+
2885
+;
2886
+const __exports__ = /*#__PURE__*/(0,_media_dijitalcode_3ad9c6e0_4296_4a57_b136_144df49e7bb8_Projects_cahaya_agung_node_modules_vue_loader_dist_exportHelper_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_AutoComplete_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_1__["default"], [['render',_AutoComplete_vue_vue_type_template_id_adfaf81a__WEBPACK_IMPORTED_MODULE_0__.render],['__file',"resources/js/components/AutoComplete.vue"]])
2887
+/* hot reload */
2888
+if (false) {}
2889
+
2890
+
2880 2891
 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);
2881 2892
 
2882 2893
 /***/ }),
@@ -3017,21 +3028,6 @@ if (false) {}
3017 3028
 
3018 3029
 /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__exports__);
3019 3030
 
3020
-/***/ }),
3021
-
3022
-/***/ "./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js":
3023
-/*!*********************************************************************************************!*\
3024
-  !*** ./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js ***!
3025
-  \*********************************************************************************************/
3026
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3027
-
3028
-__webpack_require__.r(__webpack_exports__);
3029
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
3030
-/* harmony export */   "default": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppAutocompleteBasic_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__["default"])
3031
-/* harmony export */ });
3032
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppAutocompleteBasic_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=script&setup=true&lang=js");
3033
- 
3034
-
3035 3031
 /***/ }),
3036 3032
 
3037 3033
 /***/ "./resources/js/components/AppDropdown.vue?vue&type=script&setup=true&lang=js":
@@ -3137,6 +3133,21 @@ __webpack_require__.r(__webpack_exports__);
3137 3133
 /* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppTopBar_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AppTopBar.vue?vue&type=script&setup=true&lang=js */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppTopBar.vue?vue&type=script&setup=true&lang=js");
3138 3134
  
3139 3135
 
3136
+/***/ }),
3137
+
3138
+/***/ "./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js":
3139
+/*!*************************************************************************************!*\
3140
+  !*** ./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js ***!
3141
+  \*************************************************************************************/
3142
+/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3143
+
3144
+__webpack_require__.r(__webpack_exports__);
3145
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
3146
+/* harmony export */   "default": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AutoComplete_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__["default"])
3147
+/* harmony export */ });
3148
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AutoComplete_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AutoComplete.vue?vue&type=script&setup=true&lang=js */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=script&setup=true&lang=js");
3149
+ 
3150
+
3140 3151
 /***/ }),
3141 3152
 
3142 3153
 /***/ "./resources/js/layouts/DashboardLayout.vue?vue&type=script&setup=true&lang=js":
@@ -3212,21 +3223,6 @@ __webpack_require__.r(__webpack_exports__);
3212 3223
 /* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_ProductCreate_vue_vue_type_script_setup_true_lang_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./ProductCreate.vue?vue&type=script&setup=true&lang=js */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/pages/Sales/Dialog/ProductCreate.vue?vue&type=script&setup=true&lang=js");
3213 3224
  
3214 3225
 
3215
-/***/ }),
3216
-
3217
-/***/ "./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770":
3218
-/*!****************************************************************************************!*\
3219
-  !*** ./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770 ***!
3220
-  \****************************************************************************************/
3221
-/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3222
-
3223
-__webpack_require__.r(__webpack_exports__);
3224
-/* harmony export */ __webpack_require__.d(__webpack_exports__, {
3225
-/* harmony export */   "render": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppAutocompleteBasic_vue_vue_type_template_id_68403770__WEBPACK_IMPORTED_MODULE_0__.render)
3226
-/* harmony export */ });
3227
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppAutocompleteBasic_vue_vue_type_template_id_68403770__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AppAutocompleteBasic.vue?vue&type=template&id=68403770 */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppAutocompleteBasic.vue?vue&type=template&id=68403770");
3228
-
3229
-
3230 3226
 /***/ }),
3231 3227
 
3232 3228
 /***/ "./resources/js/components/AppDropdown.vue?vue&type=template&id=ce0d1992":
@@ -3332,6 +3328,21 @@ __webpack_require__.r(__webpack_exports__);
3332 3328
 /* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AppTopBar_vue_vue_type_template_id_42bf62a4_scoped_true__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AppTopBar.vue?vue&type=template&id=42bf62a4&scoped=true */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AppTopBar.vue?vue&type=template&id=42bf62a4&scoped=true");
3333 3329
 
3334 3330
 
3331
+/***/ }),
3332
+
3333
+/***/ "./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a":
3334
+/*!********************************************************************************!*\
3335
+  !*** ./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a ***!
3336
+  \********************************************************************************/
3337
+/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3338
+
3339
+__webpack_require__.r(__webpack_exports__);
3340
+/* harmony export */ __webpack_require__.d(__webpack_exports__, {
3341
+/* harmony export */   "render": () => (/* reexport safe */ _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AutoComplete_vue_vue_type_template_id_adfaf81a__WEBPACK_IMPORTED_MODULE_0__.render)
3342
+/* harmony export */ });
3343
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_clonedRuleSet_5_use_0_node_modules_vue_loader_dist_templateLoader_js_ruleSet_1_rules_2_node_modules_vue_loader_dist_index_js_ruleSet_0_use_0_AutoComplete_vue_vue_type_template_id_adfaf81a__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!../../../node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./AutoComplete.vue?vue&type=template&id=adfaf81a */ "./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./resources/js/components/AutoComplete.vue?vue&type=template&id=adfaf81a");
3344
+
3345
+
3335 3346
 /***/ }),
3336 3347
 
3337 3348
 /***/ "./resources/js/layouts/DashboardLayout.vue?vue&type=template&id=549bf5ac&scoped=true":

+ 1
- 1
public/js/vue.js 查看文件

@@ -58906,7 +58906,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
58906 58906
 /******/ 		// This function allow to reference async chunks
58907 58907
 /******/ 		__webpack_require__.u = (chunkId) => {
58908 58908
 /******/ 			// return url for filenames based on template
58909
-/******/ 			return "js/" + chunkId + ".js?id=" + {"node_modules_chart_js_auto_auto_esm_js":"9296b829a7757dee","resources_js_pages_Auth_Login_vue":"abebf9cef2af3768","resources_js_pages_Customers_Create_vue":"9f07d1899bc0ff11","resources_js_pages_Customers_Edit_vue":"d9cb46c05b8515d2","resources_js_pages_Customers_Index_vue":"61a127ac488a7170","resources_js_pages_Customers_tableHeader_js":"7a40a3d5ad60171c","resources_js_pages_Dashboards_Index_vue":"422b13ab86c7fd04","resources_js_pages_Error_Index_vue":"4119ff1c60260652","resources_js_pages_Products_Create_vue":"5cb1e0c3c8963303","resources_js_pages_Products_Edit_vue":"4e0d8abe3e3eb5bb","resources_js_pages_Products_Index_vue":"1dad15f4c14aa968","resources_js_pages_Products_tableHeader_js":"951f590b1402bd34","resources_js_pages_Purchases_Index_vue":"02a6d344279e6aac","resources_js_pages_Sales_Components_SaleDetails_vue":"b0aacea6649cd1d1","resources_js_pages_Sales_Create_vue":"b3fdcdd5f8da75fa","resources_js_pages_Sales_Dialog_CustomerCreate_vue":"21abe4ce18dd848d","resources_js_pages_Sales_Dialog_ProductCreate_vue":"d5c6bf32f3f567b9","resources_js_pages_Sales_Index_vue":"6a2638576d068663","resources_js_pages_Sales_config_js":"31265026d1001cfb","resources_js_pages_Sales_useCustomerAutoComplete_js":"66a5795fa5922ae3","resources_js_pages_Sales_useProductAutoComplete_js":"d36b77341ed5d663","resources_js_pages_StockProducts_Index_vue":"0d44303fd657ff54","resources_js_pages_Suppliers_Create_vue":"18caa8c4e08c1c43","resources_js_pages_Suppliers_Edit_vue":"db12150cad2bb214","resources_js_pages_Suppliers_Index_vue":"9b81de9fe3189907","resources_js_pages_Suppliers_tableHeader_js":"500bc29ff0dbddce","resources_js_pages_Users_Create_vue":"9f08a0eca7b86f78","resources_js_pages_Users_Edit_vue":"1d761679a82b91d3","resources_js_pages_Users_Index_vue":"3a800e77beaa2c6a","resources_js_pages_Users_Show_vue":"196798c0a8a9e706","resources_js_pages_Users_tableHeader_js":"48f19bd820caf015"}[chunkId] + "";
58909
+/******/ 			return "js/" + chunkId + ".js?id=" + {"node_modules_chart_js_auto_auto_esm_js":"9296b829a7757dee","resources_js_pages_Auth_Login_vue":"abebf9cef2af3768","resources_js_pages_Customers_Create_vue":"9f07d1899bc0ff11","resources_js_pages_Customers_Edit_vue":"d9cb46c05b8515d2","resources_js_pages_Customers_Index_vue":"61a127ac488a7170","resources_js_pages_Customers_tableHeader_js":"7a40a3d5ad60171c","resources_js_pages_Dashboards_Index_vue":"422b13ab86c7fd04","resources_js_pages_Error_Index_vue":"4119ff1c60260652","resources_js_pages_Products_Create_vue":"5cb1e0c3c8963303","resources_js_pages_Products_Edit_vue":"4e0d8abe3e3eb5bb","resources_js_pages_Products_Index_vue":"1dad15f4c14aa968","resources_js_pages_Products_tableHeader_js":"951f590b1402bd34","resources_js_pages_Purchases_Index_vue":"02a6d344279e6aac","resources_js_pages_Sales_Components_SaleDetails_vue":"b0aacea6649cd1d1","resources_js_pages_Sales_Create_vue":"419650f219d0d049","resources_js_pages_Sales_Dialog_CustomerCreate_vue":"21abe4ce18dd848d","resources_js_pages_Sales_Dialog_ProductCreate_vue":"d5c6bf32f3f567b9","resources_js_pages_Sales_Index_vue":"6a2638576d068663","resources_js_pages_Sales_config_js":"31265026d1001cfb","resources_js_pages_Sales_useCustomerAutoComplete_js":"66a5795fa5922ae3","resources_js_pages_Sales_useProductAutoComplete_js":"d36b77341ed5d663","resources_js_pages_StockProducts_Index_vue":"0d44303fd657ff54","resources_js_pages_Suppliers_Create_vue":"18caa8c4e08c1c43","resources_js_pages_Suppliers_Edit_vue":"db12150cad2bb214","resources_js_pages_Suppliers_Index_vue":"9b81de9fe3189907","resources_js_pages_Suppliers_tableHeader_js":"500bc29ff0dbddce","resources_js_pages_Users_Create_vue":"9f08a0eca7b86f78","resources_js_pages_Users_Edit_vue":"1d761679a82b91d3","resources_js_pages_Users_Index_vue":"3a800e77beaa2c6a","resources_js_pages_Users_Show_vue":"196798c0a8a9e706","resources_js_pages_Users_tableHeader_js":"48f19bd820caf015"}[chunkId] + "";
58910 58910
 /******/ 		};
58911 58911
 /******/ 	})();
58912 58912
 /******/ 	

+ 16
- 0
resources/js/components/AppAutoComplete.vue 查看文件

@@ -0,0 +1,16 @@
1
+<script setup>
2
+import { Inertia } from '@inertiajs/inertia'
3
+import AutoComplete from './AutoComplete.vue'
4
+
5
+const onComplete = (event) => {
6
+  console.info(event.query)
7
+}
8
+
9
+const onItemSelect = (event) => {
10
+  console.info(event.value)
11
+}
12
+</script>
13
+
14
+<template>
15
+  <AutoComplete />
16
+</template>

resources/js/components/AppAutocompleteBasic.vue → resources/js/components/AutoComplete.vue 查看文件


+ 16
- 6
resources/js/pages/Sales/Create.vue 查看文件

@@ -8,7 +8,7 @@ import SaleDetails from './Components/SaleDetails.vue'
8 8
 import AppInputText from '@/components/AppInputText.vue'
9 9
 import AppInputNumber from '@/components/AppInputNumber.vue'
10 10
 import AppDropdown from '@/components/AppDropdown.vue'
11
-import AppAutocompleteBasic from '@/components/AppAutocompleteBasic.vue'
11
+import AppAutoComplete from '@/components/AutoComplete.vue'
12 12
 import DashboardLayout from '@/layouts/DashboardLayout.vue'
13 13
 
14 14
 const props = defineProps({
@@ -52,6 +52,16 @@ const onSubmit = () => {
52 52
     }))
53 53
     .post(route('sales.store'), { onSuccess: () => form.reset() })
54 54
 }
55
+
56
+useFormErrorReset(form)
57
+
58
+const checkSales = () => {
59
+  if (form.price && form.qty && form.customer && form.product) {
60
+    return false
61
+  } else {
62
+    return true
63
+  }
64
+}
55 65
 </script>
56 66
 
57 67
 <template>
@@ -87,7 +97,7 @@ const onSubmit = () => {
87 97
               </div>
88 98
 
89 99
               <div class="col-12 md:col-6">
90
-                <AppAutocompleteBasic
100
+                <AppAutoComplete
91 101
                   label="Pelanggan"
92 102
                   placeholder="pelanggan"
93 103
                   field="name"
@@ -115,11 +125,11 @@ const onSubmit = () => {
115 125
                       Tambah Pelanggan
116 126
                     </span>
117 127
                   </template>
118
-                </AppAutocompleteBasic>
128
+                </AppAutoComplete>
119 129
               </div>
120 130
 
121 131
               <div class="col-12 md:col-6">
122
-                <AppAutocompleteBasic
132
+                <AppAutoComplete
123 133
                   label="Produk"
124 134
                   placeholder="produk"
125 135
                   field="name"
@@ -147,7 +157,7 @@ const onSubmit = () => {
147 157
                       Tambah Produk
148 158
                     </span>
149 159
                   </template>
150
-                </AppAutocompleteBasic>
160
+                </AppAutoComplete>
151 161
               </div>
152 162
 
153 163
               <div class="col-12 md:col-6">
@@ -177,7 +187,7 @@ const onSubmit = () => {
177 187
                 label="Simpan"
178 188
                 icon="pi pi-check"
179 189
                 class="p-button-outlined"
180
-                :disabled="form.processing"
190
+                :disabled="form.processing || checkSales()"
181 191
                 @click="onSubmit"
182 192
               />
183 193
             </div>