Compare commits
67 Commits
Piyango-Do
...
8cae0be757
| Author | SHA1 | Date | |
|---|---|---|---|
| 8cae0be757 | |||
| 4024d539d7 | |||
| 1ba8b9b269 | |||
| da432261ba | |||
| 58cd065977 | |||
| 4f6b14b43c | |||
| 51264f9e72 | |||
| 674c0b2e1e | |||
| e07a867023 | |||
| b31b075e1f | |||
| 76523182da | |||
| fe132ec672 | |||
| 206eb2ab44 | |||
| f7d47af153 | |||
| fb99deeaeb | |||
| c34d64d505 | |||
| 457cb58256 | |||
| eff6b4e27e | |||
| bb2765c0ac | |||
| db77c305ce | |||
| fdc2372288 | |||
| 216cf1fb73 | |||
| 97f60c8df9 | |||
| 95da9eb689 | |||
| 7379f4ae5e | |||
| 847b1c1b37 | |||
| 62dbaef278 | |||
| aae7512498 | |||
| 75ff9823fe | |||
| 3b9173b881 | |||
| fb1ddf085a | |||
| b1274cf3ab | |||
| 9650194cb9 | |||
| 9e6c1f3840 | |||
| 343e93c168 | |||
| b1c23985ff | |||
| a4358afa11 | |||
| 9869edf4a6 | |||
| 624b8fae56 | |||
| 6c44487489 | |||
| 7353d957c1 | |||
| 915aa1757e | |||
| 10d95b6763 | |||
| 97a77a2a37 | |||
| 2338cf04d8 | |||
| de3a1f549a | |||
| b521ad0278 | |||
| 7872259102 | |||
| 7cff75e82c | |||
| 92d0a0dde7 | |||
| a4e2a922d3 | |||
| 190815193a | |||
| 26f843416d | |||
| 7adabf5abd | |||
| ed8b6fd3eb | |||
| 7776e24ddd | |||
| 408724cf67 | |||
| f4c0511afb | |||
| 7998b7bd6c | |||
| 6ff319cb1d | |||
| 10011eacd6 | |||
| 36d646e0bf | |||
| 908e63b896 | |||
| 0e130eafff | |||
| f6850853b2 | |||
| ff0304b4d9 | |||
| 0d58b0ad10 |
2
.env.development
Normal file
2
.env.development
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
VITE_API_URL=http://panelapi.cekilisevitest.gov.tr/
|
||||||
|
VITE_SOCKET_URL=http://panelapi.cekilisevitest.gov.tr/uploadHub
|
||||||
2
.env.localdev
Normal file
2
.env.localdev
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
VITE_API_URL=https://localhost:7241/
|
||||||
|
VITE_SOCKET_URL=https://localhost:7241/uploadHub
|
||||||
2
.env.production
Normal file
2
.env.production
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
VITE_API_URL=https://panelapi.cekilisevi.gov.tr/
|
||||||
|
VITE_SOCKET_URL=https://panelapi.cekilisevi.gov.tr/uploadHub
|
||||||
7
env.d.ts
vendored
7
env.d.ts
vendored
@ -1,2 +1,9 @@
|
|||||||
/// <reference types="vite/client" />
|
/// <reference types="vite/client" />
|
||||||
|
|
||||||
|
interface ImportMetaEnv {
|
||||||
|
readonly VITE_API_URL: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ImportMeta {
|
||||||
|
readonly env: ImportMetaEnv;
|
||||||
|
}
|
||||||
588
package-lock.json
generated
588
package-lock.json
generated
@ -54,13 +54,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/code-frame": {
|
"node_modules/@babel/code-frame": {
|
||||||
"version": "7.24.7",
|
"version": "7.27.1",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
|
||||||
"integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
|
"integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/highlight": "^7.24.7",
|
"@babel/helper-validator-identifier": "^7.27.1",
|
||||||
"picocolors": "^1.0.0"
|
"js-tokens": "^4.0.0",
|
||||||
|
"picocolors": "^1.1.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
@ -278,17 +280,19 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/helper-string-parser": {
|
"node_modules/@babel/helper-string-parser": {
|
||||||
"version": "7.25.9",
|
"version": "7.27.1",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
|
||||||
"integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
|
"integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/helper-validator-identifier": {
|
"node_modules/@babel/helper-validator-identifier": {
|
||||||
"version": "7.25.9",
|
"version": "7.27.1",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz",
|
||||||
"integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
|
"integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
@ -303,39 +307,26 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/helpers": {
|
"node_modules/@babel/helpers": {
|
||||||
"version": "7.25.0",
|
"version": "7.28.3",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.3.tgz",
|
||||||
"integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==",
|
"integrity": "sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/template": "^7.25.0",
|
"@babel/template": "^7.27.2",
|
||||||
"@babel/types": "^7.25.0"
|
"@babel/types": "^7.28.2"
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=6.9.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@babel/highlight": {
|
|
||||||
"version": "7.24.7",
|
|
||||||
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
|
|
||||||
"integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"@babel/helper-validator-identifier": "^7.24.7",
|
|
||||||
"chalk": "^2.4.2",
|
|
||||||
"js-tokens": "^4.0.0",
|
|
||||||
"picocolors": "^1.0.0"
|
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/parser": {
|
"node_modules/@babel/parser": {
|
||||||
"version": "7.26.9",
|
"version": "7.28.3",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.3.tgz",
|
||||||
"integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==",
|
"integrity": "sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/types": "^7.26.9"
|
"@babel/types": "^7.28.2"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"parser": "bin/babel-parser.js"
|
"parser": "bin/babel-parser.js"
|
||||||
@ -394,14 +385,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/template": {
|
"node_modules/@babel/template": {
|
||||||
"version": "7.25.0",
|
"version": "7.27.2",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz",
|
||||||
"integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
|
"integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/code-frame": "^7.24.7",
|
"@babel/code-frame": "^7.27.1",
|
||||||
"@babel/parser": "^7.25.0",
|
"@babel/parser": "^7.27.2",
|
||||||
"@babel/types": "^7.25.0"
|
"@babel/types": "^7.27.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
@ -426,12 +418,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@babel/types": {
|
"node_modules/@babel/types": {
|
||||||
"version": "7.26.9",
|
"version": "7.28.2",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz",
|
||||||
"integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==",
|
"integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/helper-string-parser": "^7.25.9",
|
"@babel/helper-string-parser": "^7.27.1",
|
||||||
"@babel/helper-validator-identifier": "^7.25.9"
|
"@babel/helper-validator-identifier": "^7.27.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
@ -913,208 +906,294 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-android-arm-eabi": {
|
"node_modules/@rollup/rollup-android-arm-eabi": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.50.0.tgz",
|
||||||
"integrity": "sha512-XzqSg714++M+FXhHfXpS1tDnNZNpgxxuGZWlRG/jSj+VEPmZ0yg6jV4E0AL3uyBKxO8mO3xtOsP5mQ+XLfrlww==",
|
"integrity": "sha512-lVgpeQyy4fWN5QYebtW4buT/4kn4p4IJ+kDNB4uYNT5b8c8DLJDg6titg20NIg7E8RWwdWZORW6vUFfrLyG3KQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"android"
|
"android"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-android-arm64": {
|
"node_modules/@rollup/rollup-android-arm64": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.50.0.tgz",
|
||||||
"integrity": "sha512-thFUbkHteM20BGShD6P08aungq4irbIZKUNbG70LN8RkO7YztcGPiKTTGZS7Kw+x5h8hOXs0i4OaHwFxlpQN6A==",
|
"integrity": "sha512-2O73dR4Dc9bp+wSYhviP6sDziurB5/HCym7xILKifWdE9UsOe2FtNcM+I4xZjKrfLJnq5UR8k9riB87gauiQtw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"android"
|
"android"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-darwin-arm64": {
|
"node_modules/@rollup/rollup-darwin-arm64": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.50.0.tgz",
|
||||||
"integrity": "sha512-8o6eqeFZzVLia2hKPUZk4jdE3zW7LCcZr+MD18tXkgBBid3lssGVAYuox8x6YHoEPDdDa9ixTaStcmx88lio5Q==",
|
"integrity": "sha512-vwSXQN8T4sKf1RHr1F0s98Pf8UPz7pS6P3LG9NSmuw0TVh7EmaE+5Ny7hJOZ0M2yuTctEsHHRTMi2wuHkdS6Hg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"darwin"
|
"darwin"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-darwin-x64": {
|
"node_modules/@rollup/rollup-darwin-x64": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.50.0.tgz",
|
||||||
"integrity": "sha512-4T42heKsnbjkn7ovYiAdDVRRWZLU9Kmhdt6HafZxFcUdpjlBlxj4wDrt1yFWLk7G4+E+8p2C9tcmSu0KA6auGA==",
|
"integrity": "sha512-cQp/WG8HE7BCGyFVuzUg0FNmupxC+EPZEwWu2FCGGw5WDT1o2/YlENbm5e9SMvfDFR6FRhVCBePLqj0o8MN7Vw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"darwin"
|
"darwin"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"node_modules/@rollup/rollup-freebsd-arm64": {
|
||||||
|
"version": "4.50.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.50.0.tgz",
|
||||||
|
"integrity": "sha512-UR1uTJFU/p801DvvBbtDD7z9mQL8J80xB0bR7DqW7UGQHRm/OaKzp4is7sQSdbt2pjjSS72eAtRh43hNduTnnQ==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/@rollup/rollup-freebsd-x64": {
|
||||||
|
"version": "4.50.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.50.0.tgz",
|
||||||
|
"integrity": "sha512-G/DKyS6PK0dD0+VEzH/6n/hWDNPDZSMBmqsElWnCRGrYOb2jC0VSupp7UAHHQ4+QILwkxSMaYIbQ72dktp8pKA==",
|
||||||
|
"cpu": [
|
||||||
|
"x64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"freebsd"
|
||||||
|
]
|
||||||
|
},
|
||||||
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
|
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.50.0.tgz",
|
||||||
"integrity": "sha512-MXg1xp+e5GhZ3Vit1gGEyoC+dyQUBy2JgVQ+3hUrD9wZMkUw/ywgkpK7oZgnB6kPpGrxJ41clkPPnsknuD6M2Q==",
|
"integrity": "sha512-u72Mzc6jyJwKjJbZZcIYmd9bumJu7KNmHYdue43vT1rXPm2rITwmPWF0mmPzLm9/vJWxIRbao/jrQmxTO0Sm9w==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
|
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.50.0.tgz",
|
||||||
"integrity": "sha512-DZNLwIY4ftPSRVkJEaxYkq7u2zel7aah57HESuNkUnz+3bZHxwkCUkrfS2IWC1sxK6F2QNIR0Qr/YXw7nkF3Pw==",
|
"integrity": "sha512-S4UefYdV0tnynDJV1mdkNawp0E5Qm2MtSs330IyHgaccOFrwqsvgigUD29uT+B/70PDY1eQ3t40+xf6wIvXJyg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-arm64-gnu": {
|
"node_modules/@rollup/rollup-linux-arm64-gnu": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.50.0.tgz",
|
||||||
"integrity": "sha512-C7evongnjyxdngSDRRSQv5GvyfISizgtk9RM+z2biV5kY6S/NF/wta7K+DanmktC5DkuaJQgoKGf7KUDmA7RUw==",
|
"integrity": "sha512-1EhkSvUQXJsIhk4msxP5nNAUWoB4MFDHhtc4gAYvnqoHlaL9V3F37pNHabndawsfy/Tp7BPiy/aSa6XBYbaD1g==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-arm64-musl": {
|
"node_modules/@rollup/rollup-linux-arm64-musl": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.50.0.tgz",
|
||||||
"integrity": "sha512-89tFWqxfxLLHkAthAcrTs9etAoBFRduNfWdl2xUs/yLV+7XDrJ5yuXMHptNqf1Zw0UCA3cAutkAiAokYCkaPtw==",
|
"integrity": "sha512-EtBDIZuDtVg75xIPIK1l5vCXNNCIRM0OBPUG+tbApDuJAy9mKago6QxX+tfMzbCI6tXEhMuZuN1+CU8iDW+0UQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
|
"node_modules/@rollup/rollup-linux-loongarch64-gnu": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.50.0.tgz",
|
||||||
"integrity": "sha512-PromGeV50sq+YfaisG8W3fd+Cl6mnOOiNv2qKKqKCpiiEke2KiKVyDqG/Mb9GWKbYMHj5a01fq/qlUR28PFhCQ==",
|
"integrity": "sha512-BGYSwJdMP0hT5CCmljuSNx7+k+0upweM2M4YGfFBjnFSZMHOLYR0gEEj/dxyYJ6Zc6AiSeaBY8dWOa11GF/ppQ==",
|
||||||
|
"cpu": [
|
||||||
|
"loong64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/@rollup/rollup-linux-ppc64-gnu": {
|
||||||
|
"version": "4.50.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.50.0.tgz",
|
||||||
|
"integrity": "sha512-I1gSMzkVe1KzAxKAroCJL30hA4DqSi+wGc5gviD0y3IL/VkvcnAqwBf4RHXHyvH66YVHxpKO8ojrgc4SrWAnLg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
|
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.50.0.tgz",
|
||||||
"integrity": "sha512-/1BmHYh+iz0cNCP0oHCuF8CSiNj0JOGf0jRlSo3L/FAyZyG2rGBuKpkZVH9YF+x58r1jgWxvm1aRg3DHrLDt6A==",
|
"integrity": "sha512-bSbWlY3jZo7molh4tc5dKfeSxkqnf48UsLqYbUhnkdnfgZjgufLS/NTA8PcP/dnvct5CCdNkABJ56CbclMRYCA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/@rollup/rollup-linux-riscv64-musl": {
|
||||||
|
"version": "4.50.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.50.0.tgz",
|
||||||
|
"integrity": "sha512-LSXSGumSURzEQLT2e4sFqFOv3LWZsEF8FK7AAv9zHZNDdMnUPYH3t8ZlaeYYZyTXnsob3htwTKeWtBIkPV27iQ==",
|
||||||
|
"cpu": [
|
||||||
|
"riscv64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-s390x-gnu": {
|
"node_modules/@rollup/rollup-linux-s390x-gnu": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.50.0.tgz",
|
||||||
"integrity": "sha512-0cYP5rGkQWRZKy9/HtsWVStLXzCF3cCBTRI+qRL8Z+wkYlqN7zrSYm6FuY5Kd5ysS5aH0q5lVgb/WbG4jqXN1Q==",
|
"integrity": "sha512-CxRKyakfDrsLXiCyucVfVWVoaPA4oFSpPpDwlMcDFQvrv3XY6KEzMtMZrA+e/goC8xxp2WSOxHQubP8fPmmjOQ==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"s390x"
|
"s390x"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-x64-gnu": {
|
"node_modules/@rollup/rollup-linux-x64-gnu": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.50.0.tgz",
|
||||||
"integrity": "sha512-XUXeI9eM8rMP8aGvii/aOOiMvTs7xlCosq9xCjcqI9+5hBxtjDpD+7Abm1ZhVIFE1J2h2VIg0t2DX/gjespC2Q==",
|
"integrity": "sha512-8PrJJA7/VU8ToHVEPu14FzuSAqVKyo5gg/J8xUerMbyNkWkO9j2ExBho/68RnJsMGNJq4zH114iAttgm7BZVkA==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-linux-x64-musl": {
|
"node_modules/@rollup/rollup-linux-x64-musl": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.50.0.tgz",
|
||||||
"integrity": "sha512-V7cBw/cKXMfEVhpSvVZhC+iGifD6U1zJ4tbibjjN+Xi3blSXaj/rJynAkCFFQfoG6VZrAiP7uGVzL440Q6Me2Q==",
|
"integrity": "sha512-SkE6YQp+CzpyOrbw7Oc4MgXFvTw2UIBElvAvLCo230pyxOLmYwRPwZ/L5lBe/VW/qT1ZgND9wJfOsdy0XptRvw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"linux"
|
"linux"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-win32-arm64-msvc": {
|
"node_modules/@rollup/rollup-openharmony-arm64": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.50.0.tgz",
|
||||||
"integrity": "sha512-88brja2vldW/76jWATlBqHEoGjJLRnP0WOEKAUbMcXaAZnemNhlAHSyj4jIwMoP2T750LE9lblvD4e2jXleZsA==",
|
"integrity": "sha512-PZkNLPfvXeIOgJWA804zjSFH7fARBBCpCXxgkGDRjjAhRLOR8o0IGS01ykh5GYfod4c2yiiREuDM8iZ+pVsT+Q==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"optional": true,
|
||||||
|
"os": [
|
||||||
|
"openharmony"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"node_modules/@rollup/rollup-win32-arm64-msvc": {
|
||||||
|
"version": "4.50.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.50.0.tgz",
|
||||||
|
"integrity": "sha512-q7cIIdFvWQoaCbLDUyUc8YfR3Jh2xx3unO8Dn6/TTogKjfwrax9SyfmGGK6cQhKtjePI7jRfd7iRYcxYs93esg==",
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"win32"
|
"win32"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-win32-ia32-msvc": {
|
"node_modules/@rollup/rollup-win32-ia32-msvc": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.50.0.tgz",
|
||||||
"integrity": "sha512-LdxxcqRVSXi6k6JUrTah1rHuaupoeuiv38du8Mt4r4IPer3kwlTo+RuvfE8KzZ/tL6BhaPlzJ3835i6CxrFIRQ==",
|
"integrity": "sha512-XzNOVg/YnDOmFdDKcxxK410PrcbcqZkBmz+0FicpW5jtjKQxcW1BZJEQOF0NJa6JO7CZhett8GEtRN/wYLYJuw==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"ia32"
|
"ia32"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"win32"
|
"win32"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-win32-x64-msvc": {
|
"node_modules/@rollup/rollup-win32-x64-msvc": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.50.0.tgz",
|
||||||
"integrity": "sha512-2bIrL28PcK3YCqD9anGxDxamxdiJAxA+l7fWIwM5o8UqNy1t3d1NdAweO2XhA0KTDJ5aH1FsuiT5+7VhtHliXg==",
|
"integrity": "sha512-xMmiWRR8sp72Zqwjgtf3QbZfF1wdh8X2ABu3EaozvZcyHJeU0r+XAnXdKgs4cCAp6ORoYoCygipYP1mjmbjrsg==",
|
||||||
"cpu": [
|
"cpu": [
|
||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"win32"
|
"win32"
|
||||||
@ -1127,10 +1206,11 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/estree": {
|
"node_modules/@types/estree": {
|
||||||
"version": "1.0.5",
|
"version": "1.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
|
||||||
"integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
|
"integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
|
||||||
"dev": true
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/@types/html-to-pdfmake": {
|
"node_modules/@types/html-to-pdfmake": {
|
||||||
"version": "2.4.4",
|
"version": "2.4.4",
|
||||||
@ -1489,30 +1569,20 @@
|
|||||||
"node": ">=6.5"
|
"node": ">=6.5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/ansi-styles": {
|
|
||||||
"version": "3.2.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"color-convert": "^1.9.0"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/asynckit": {
|
"node_modules/asynckit": {
|
||||||
"version": "0.4.0",
|
"version": "0.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
|
||||||
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
|
"integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/axios": {
|
"node_modules/axios": {
|
||||||
"version": "1.7.2",
|
"version": "1.11.0",
|
||||||
"resolved": "https://registry.npmjs.org/axios/-/axios-1.7.2.tgz",
|
"resolved": "https://registry.npmjs.org/axios/-/axios-1.11.0.tgz",
|
||||||
"integrity": "sha512-2A8QhOMrbomlDuiLeK9XibIBzuHeRcqqNOHp0Cyp5EoJ1IFDh+XZH3A6BkXtv0K4gFGCI0Y4BM7B1wOEi0Rmgw==",
|
"integrity": "sha512-1Lx3WLFQWm3ooKDYZD1eXmoGO9fxYQjrycfHFC8P0sCfQVXyROp0p9PFWBehewBOdCwHc+f/b8I0fMto5eSfwA==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"follow-redirects": "^1.15.6",
|
"follow-redirects": "^1.15.6",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.4",
|
||||||
"proxy-from-env": "^1.1.0"
|
"proxy-from-env": "^1.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -1536,10 +1606,11 @@
|
|||||||
"integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="
|
"integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="
|
||||||
},
|
},
|
||||||
"node_modules/brace-expansion": {
|
"node_modules/brace-expansion": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz",
|
||||||
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
"integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"balanced-match": "^1.0.0"
|
"balanced-match": "^1.0.0"
|
||||||
}
|
}
|
||||||
@ -1602,6 +1673,19 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/call-bind-apply-helpers": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"function-bind": "^1.1.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/camelcase": {
|
"node_modules/camelcase": {
|
||||||
"version": "6.3.0",
|
"version": "6.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
|
||||||
@ -1634,20 +1718,6 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"node_modules/chalk": {
|
|
||||||
"version": "2.4.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"ansi-styles": "^3.2.1",
|
|
||||||
"escape-string-regexp": "^1.0.5",
|
|
||||||
"supports-color": "^5.3.0"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/clone": {
|
"node_modules/clone": {
|
||||||
"version": "2.1.2",
|
"version": "2.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
|
||||||
@ -1656,25 +1726,11 @@
|
|||||||
"node": ">=0.8"
|
"node": ">=0.8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/color-convert": {
|
|
||||||
"version": "1.9.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
|
||||||
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"color-name": "1.1.3"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/color-name": {
|
|
||||||
"version": "1.1.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
|
|
||||||
"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"node_modules/combined-stream": {
|
"node_modules/combined-stream": {
|
||||||
"version": "1.0.8",
|
"version": "1.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
|
||||||
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
"integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"delayed-stream": "~1.0.0"
|
"delayed-stream": "~1.0.0"
|
||||||
},
|
},
|
||||||
@ -1695,10 +1751,11 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/cross-spawn": {
|
"node_modules/cross-spawn": {
|
||||||
"version": "7.0.3",
|
"version": "7.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
|
||||||
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
|
"integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"path-key": "^3.1.0",
|
"path-key": "^3.1.0",
|
||||||
"shebang-command": "^2.0.0",
|
"shebang-command": "^2.0.0",
|
||||||
@ -1804,6 +1861,7 @@
|
|||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
|
||||||
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
"integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=0.4.0"
|
"node": ">=0.4.0"
|
||||||
}
|
}
|
||||||
@ -1813,6 +1871,20 @@
|
|||||||
"resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/dfa/-/dfa-1.2.0.tgz",
|
||||||
"integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q=="
|
"integrity": "sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q=="
|
||||||
},
|
},
|
||||||
|
"node_modules/dunder-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.1",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"gopd": "^1.2.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/electron-to-chromium": {
|
"node_modules/electron-to-chromium": {
|
||||||
"version": "1.5.3",
|
"version": "1.5.3",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.3.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.3.tgz",
|
||||||
@ -1831,12 +1903,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/es-define-property": {
|
"node_modules/es-define-property": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
||||||
"integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
|
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
|
||||||
"dependencies": {
|
"license": "MIT",
|
||||||
"get-intrinsic": "^1.2.4"
|
|
||||||
},
|
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 0.4"
|
"node": ">= 0.4"
|
||||||
}
|
}
|
||||||
@ -1849,6 +1919,33 @@
|
|||||||
"node": ">= 0.4"
|
"node": ">= 0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/es-object-atoms": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/es-set-tostringtag": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"get-intrinsic": "^1.2.6",
|
||||||
|
"has-tostringtag": "^1.0.2",
|
||||||
|
"hasown": "^2.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/esbuild": {
|
"node_modules/esbuild": {
|
||||||
"version": "0.21.5",
|
"version": "0.21.5",
|
||||||
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
|
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
|
||||||
@ -1896,15 +1993,6 @@
|
|||||||
"node": ">=6"
|
"node": ">=6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/escape-string-regexp": {
|
|
||||||
"version": "1.0.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
|
||||||
"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
|
|
||||||
"dev": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/estree-walker": {
|
"node_modules/estree-walker": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
|
||||||
@ -1965,12 +2053,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/form-data": {
|
"node_modules/form-data": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz",
|
||||||
"integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
|
"integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"asynckit": "^0.4.0",
|
"asynckit": "^0.4.0",
|
||||||
"combined-stream": "^1.0.8",
|
"combined-stream": "^1.0.8",
|
||||||
|
"es-set-tostringtag": "^2.1.0",
|
||||||
|
"hasown": "^2.0.2",
|
||||||
"mime-types": "^2.1.12"
|
"mime-types": "^2.1.12"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
@ -1983,6 +2074,7 @@
|
|||||||
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
|
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
"darwin"
|
"darwin"
|
||||||
@ -2017,15 +2109,21 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/get-intrinsic": {
|
"node_modules/get-intrinsic": {
|
||||||
"version": "1.2.4",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
||||||
"integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
|
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.2",
|
||||||
|
"es-define-property": "^1.0.1",
|
||||||
"es-errors": "^1.3.0",
|
"es-errors": "^1.3.0",
|
||||||
|
"es-object-atoms": "^1.1.1",
|
||||||
"function-bind": "^1.1.2",
|
"function-bind": "^1.1.2",
|
||||||
"has-proto": "^1.0.1",
|
"get-proto": "^1.0.1",
|
||||||
"has-symbols": "^1.0.3",
|
"gopd": "^1.2.0",
|
||||||
"hasown": "^2.0.0"
|
"has-symbols": "^1.1.0",
|
||||||
|
"hasown": "^2.0.2",
|
||||||
|
"math-intrinsics": "^1.1.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 0.4"
|
"node": ">= 0.4"
|
||||||
@ -2034,6 +2132,19 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/get-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"dunder-proto": "^1.0.1",
|
||||||
|
"es-object-atoms": "^1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/globals": {
|
"node_modules/globals": {
|
||||||
"version": "11.12.0",
|
"version": "11.12.0",
|
||||||
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
|
"resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
|
||||||
@ -2044,25 +2155,17 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/gopd": {
|
"node_modules/gopd": {
|
||||||
"version": "1.0.1",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||||
"integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
|
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
|
||||||
"dependencies": {
|
"license": "MIT",
|
||||||
"get-intrinsic": "^1.1.3"
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/has-flag": {
|
|
||||||
"version": "3.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
|
|
||||||
"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
|
|
||||||
"dev": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/has-property-descriptors": {
|
"node_modules/has-property-descriptors": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
|
||||||
@ -2074,21 +2177,11 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/has-proto": {
|
|
||||||
"version": "1.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
|
|
||||||
"integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 0.4"
|
|
||||||
},
|
|
||||||
"funding": {
|
|
||||||
"url": "https://github.com/sponsors/ljharb"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/has-symbols": {
|
"node_modules/has-symbols": {
|
||||||
"version": "1.0.3",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
||||||
"integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
|
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 0.4"
|
"node": ">= 0.4"
|
||||||
},
|
},
|
||||||
@ -2230,7 +2323,8 @@
|
|||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
|
||||||
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
|
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
|
||||||
"dev": true
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
"node_modules/jsesc": {
|
"node_modules/jsesc": {
|
||||||
"version": "2.5.2",
|
"version": "2.5.2",
|
||||||
@ -2302,6 +2396,15 @@
|
|||||||
"@jridgewell/sourcemap-codec": "^1.5.0"
|
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/math-intrinsics": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/memorystream": {
|
"node_modules/memorystream": {
|
||||||
"version": "0.3.1",
|
"version": "0.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
|
||||||
@ -2315,6 +2418,7 @@
|
|||||||
"version": "1.52.0",
|
"version": "1.52.0",
|
||||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
|
||||||
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
"integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
|
||||||
|
"license": "MIT",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 0.6"
|
"node": ">= 0.6"
|
||||||
}
|
}
|
||||||
@ -2323,6 +2427,7 @@
|
|||||||
"version": "2.1.35",
|
"version": "2.1.35",
|
||||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
|
||||||
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
"integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"mime-db": "1.52.0"
|
"mime-db": "1.52.0"
|
||||||
},
|
},
|
||||||
@ -2771,12 +2876,13 @@
|
|||||||
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
|
"integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
|
||||||
},
|
},
|
||||||
"node_modules/rollup": {
|
"node_modules/rollup": {
|
||||||
"version": "4.19.1",
|
"version": "4.50.0",
|
||||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.19.1.tgz",
|
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.50.0.tgz",
|
||||||
"integrity": "sha512-K5vziVlg7hTpYfFBI+91zHBEMo6jafYXpkMlqZjg7/zhIG9iHqazBf4xz9AVdjS9BruRn280ROqLI7G3OFRIlw==",
|
"integrity": "sha512-/Zl4D8zPifNmyGzJS+3kVoyXeDeT/GrsJM94sACNg9RtUE0hrHa1bNPtRSrfHTMH5HjRzce6K7rlTh3Khiw+pw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/estree": "1.0.5"
|
"@types/estree": "1.0.8"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"rollup": "dist/bin/rollup"
|
"rollup": "dist/bin/rollup"
|
||||||
@ -2786,22 +2892,27 @@
|
|||||||
"npm": ">=8.0.0"
|
"npm": ">=8.0.0"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@rollup/rollup-android-arm-eabi": "4.19.1",
|
"@rollup/rollup-android-arm-eabi": "4.50.0",
|
||||||
"@rollup/rollup-android-arm64": "4.19.1",
|
"@rollup/rollup-android-arm64": "4.50.0",
|
||||||
"@rollup/rollup-darwin-arm64": "4.19.1",
|
"@rollup/rollup-darwin-arm64": "4.50.0",
|
||||||
"@rollup/rollup-darwin-x64": "4.19.1",
|
"@rollup/rollup-darwin-x64": "4.50.0",
|
||||||
"@rollup/rollup-linux-arm-gnueabihf": "4.19.1",
|
"@rollup/rollup-freebsd-arm64": "4.50.0",
|
||||||
"@rollup/rollup-linux-arm-musleabihf": "4.19.1",
|
"@rollup/rollup-freebsd-x64": "4.50.0",
|
||||||
"@rollup/rollup-linux-arm64-gnu": "4.19.1",
|
"@rollup/rollup-linux-arm-gnueabihf": "4.50.0",
|
||||||
"@rollup/rollup-linux-arm64-musl": "4.19.1",
|
"@rollup/rollup-linux-arm-musleabihf": "4.50.0",
|
||||||
"@rollup/rollup-linux-powerpc64le-gnu": "4.19.1",
|
"@rollup/rollup-linux-arm64-gnu": "4.50.0",
|
||||||
"@rollup/rollup-linux-riscv64-gnu": "4.19.1",
|
"@rollup/rollup-linux-arm64-musl": "4.50.0",
|
||||||
"@rollup/rollup-linux-s390x-gnu": "4.19.1",
|
"@rollup/rollup-linux-loongarch64-gnu": "4.50.0",
|
||||||
"@rollup/rollup-linux-x64-gnu": "4.19.1",
|
"@rollup/rollup-linux-ppc64-gnu": "4.50.0",
|
||||||
"@rollup/rollup-linux-x64-musl": "4.19.1",
|
"@rollup/rollup-linux-riscv64-gnu": "4.50.0",
|
||||||
"@rollup/rollup-win32-arm64-msvc": "4.19.1",
|
"@rollup/rollup-linux-riscv64-musl": "4.50.0",
|
||||||
"@rollup/rollup-win32-ia32-msvc": "4.19.1",
|
"@rollup/rollup-linux-s390x-gnu": "4.50.0",
|
||||||
"@rollup/rollup-win32-x64-msvc": "4.19.1",
|
"@rollup/rollup-linux-x64-gnu": "4.50.0",
|
||||||
|
"@rollup/rollup-linux-x64-musl": "4.50.0",
|
||||||
|
"@rollup/rollup-openharmony-arm64": "4.50.0",
|
||||||
|
"@rollup/rollup-win32-arm64-msvc": "4.50.0",
|
||||||
|
"@rollup/rollup-win32-ia32-msvc": "4.50.0",
|
||||||
|
"@rollup/rollup-win32-x64-msvc": "4.50.0",
|
||||||
"fsevents": "~2.3.2"
|
"fsevents": "~2.3.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -2911,18 +3022,6 @@
|
|||||||
"node": ">=17.0.0"
|
"node": ">=17.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/supports-color": {
|
|
||||||
"version": "5.5.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"has-flag": "^3.0.0"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/svg-tags": {
|
"node_modules/svg-tags": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz",
|
||||||
@ -3066,14 +3165,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "5.3.5",
|
"version": "5.4.19",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-5.3.5.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.19.tgz",
|
||||||
"integrity": "sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==",
|
"integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"esbuild": "^0.21.3",
|
"esbuild": "^0.21.3",
|
||||||
"postcss": "^8.4.39",
|
"postcss": "^8.4.43",
|
||||||
"rollup": "^4.13.0"
|
"rollup": "^4.20.0"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"vite": "bin/vite.js"
|
"vite": "bin/vite.js"
|
||||||
@ -3092,6 +3192,7 @@
|
|||||||
"less": "*",
|
"less": "*",
|
||||||
"lightningcss": "^1.21.0",
|
"lightningcss": "^1.21.0",
|
||||||
"sass": "*",
|
"sass": "*",
|
||||||
|
"sass-embedded": "*",
|
||||||
"stylus": "*",
|
"stylus": "*",
|
||||||
"sugarss": "*",
|
"sugarss": "*",
|
||||||
"terser": "^5.4.0"
|
"terser": "^5.4.0"
|
||||||
@ -3109,6 +3210,9 @@
|
|||||||
"sass": {
|
"sass": {
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"sass-embedded": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"stylus": {
|
"stylus": {
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
|||||||
@ -5,9 +5,12 @@
|
|||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
"localdev": "vite",
|
||||||
"build": "run-p type-check \"build-only {@}\" --",
|
"build": "run-p type-check \"build-only {@}\" --",
|
||||||
|
"buildtest": "run-p type-check \"build-only-test {@}\" --",
|
||||||
"preview": "vite preview",
|
"preview": "vite preview",
|
||||||
"build-only": "vite build",
|
"build-only": "vite build",
|
||||||
|
"build-only-test": "vite build --mode development",
|
||||||
"type-check": "vue-tsc --build --force"
|
"type-check": "vue-tsc --build --force"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
BIN
public/data/mpi-sablon.zip
Normal file
BIN
public/data/mpi-sablon.zip
Normal file
Binary file not shown.
@ -659,7 +659,9 @@ svg {
|
|||||||
max-width: 24px;
|
max-width: 24px;
|
||||||
max-height: 24px;
|
max-height: 24px;
|
||||||
}
|
}
|
||||||
|
.ico-c.ico-btn:hover{
|
||||||
|
background-color: navy;
|
||||||
|
}
|
||||||
/* colors */
|
/* colors */
|
||||||
.back-grad {
|
.back-grad {
|
||||||
padding: 6px 8px;
|
padding: 6px 8px;
|
||||||
@ -715,7 +717,11 @@ svg {
|
|||||||
color: #000;
|
color: #000;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
}
|
}
|
||||||
|
.back-grad-dgrey {
|
||||||
|
background-image: linear-gradient(24deg, #797979, #a1a1a1);
|
||||||
|
color: #000;
|
||||||
|
padding: 12px;
|
||||||
|
}
|
||||||
.back-grey {
|
.back-grey {
|
||||||
background-color: #f1f1f1;
|
background-color: #f1f1f1;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,6 +13,10 @@
|
|||||||
v-if="localData.content !== undefined && localData.content !== ''">
|
v-if="localData.content !== undefined && localData.content !== ''">
|
||||||
{{ localData.content }}
|
{{ localData.content }}
|
||||||
</div>
|
</div>
|
||||||
|
<div
|
||||||
|
class="dialog-content"
|
||||||
|
v-if="localData.contentHtml !== undefined && localData.contentHtml !== ''"
|
||||||
|
v-html="localData.contentHtml"></div>
|
||||||
<div class="dialog-footer">
|
<div class="dialog-footer">
|
||||||
<template
|
<template
|
||||||
v-if="localData.buttons !== undefined && localData.buttons.length > 0"
|
v-if="localData.buttons !== undefined && localData.buttons.length > 0"
|
||||||
@ -49,6 +53,7 @@
|
|||||||
const localData = reactive({
|
const localData = reactive({
|
||||||
title: '',
|
title: '',
|
||||||
content: '',
|
content: '',
|
||||||
|
contentHtml: '',
|
||||||
showClose: true,
|
showClose: true,
|
||||||
closeText: 'Kapat',
|
closeText: 'Kapat',
|
||||||
closeFunction: () => {
|
closeFunction: () => {
|
||||||
|
|||||||
@ -21,7 +21,7 @@
|
|||||||
<div class="actions-c" v-if="editable || $slots.actionButtons">
|
<div class="actions-c" v-if="editable || $slots.actionButtons">
|
||||||
<slot name="actionButtons"></slot>
|
<slot name="actionButtons"></slot>
|
||||||
<i
|
<i
|
||||||
class="ico-c ico-section ico-section-header-btn ico-replace"
|
class="ico-c ico-section ico-btn back-grad-dgrey"
|
||||||
@click="OnClick"
|
@click="OnClick"
|
||||||
v-if="editable">
|
v-if="editable">
|
||||||
<svg><use href="/src/assets/images/icons.svg#replace"></use></svg>
|
<svg><use href="/src/assets/images/icons.svg#replace"></use></svg>
|
||||||
@ -38,12 +38,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div v-else>{{ fileType.toLocaleUpperCase() }}</div>
|
<div v-else>{{ fileType.toLocaleUpperCase() }}</div>
|
||||||
</a>
|
</a>
|
||||||
<i
|
<div class="actions-c actions-top" v-if="editable || $slots.actionButtons">
|
||||||
class="ico-c ico-section ico-section-header-btn ico-replace"
|
<slot name="actionButtons"></slot>
|
||||||
@click="OnClick"
|
<i
|
||||||
v-if="editable">
|
class="ico-c ico-section ico-btn back-grad-dgrey"
|
||||||
<svg><use href="/src/assets/images/icons.svg#replace"></use></svg>
|
@click="OnClick"
|
||||||
</i>
|
v-if="editable">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#replace"></use></svg>
|
||||||
|
</i>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
@ -114,4 +117,14 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
pointer-events: fill;
|
pointer-events: fill;
|
||||||
}
|
}
|
||||||
|
.actions-c.actions-top{
|
||||||
|
align-items: flex-start;
|
||||||
|
}
|
||||||
|
.form-item-picture.only-image{
|
||||||
|
width: 140px;
|
||||||
|
height: 140px;
|
||||||
|
}
|
||||||
|
.actions-c .ico-btn:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -91,9 +91,9 @@
|
|||||||
|
|
||||||
const emit = defineEmits(['update:modelValue', 'change', 'click'])
|
const emit = defineEmits(['update:modelValue', 'change', 'click'])
|
||||||
|
|
||||||
const localValue = ref<(string | number)[] | boolean | null | string | number|undefined>(
|
const localValue = ref<
|
||||||
props.modelValue
|
(string | number)[] | boolean | null | string | number | undefined
|
||||||
)
|
>(props.modelValue)
|
||||||
|
|
||||||
const InvalidMessageText = reactive<Record<string, any>>({})
|
const InvalidMessageText = reactive<Record<string, any>>({})
|
||||||
const InvalidMessages = computed<string>(() => {
|
const InvalidMessages = computed<string>(() => {
|
||||||
|
|||||||
@ -14,7 +14,9 @@
|
|||||||
</span>
|
</span>
|
||||||
<template v-if="modelText !== undefined && modelText !== ''">
|
<template v-if="modelText !== undefined && modelText !== ''">
|
||||||
<template v-if="typeof modelText === 'string'">
|
<template v-if="typeof modelText === 'string'">
|
||||||
<span>{{ price ? globalStore.toTrLocale(modelText) : modelText }}</span>
|
<span :class="[size ? 'form-item-size form-item-size-' + size : '']">
|
||||||
|
{{ price ? globalStore.toTrLocale(modelText) : modelText }}
|
||||||
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="typeof modelText === 'object'">
|
<template v-if="typeof modelText === 'object'">
|
||||||
<ul>
|
<ul>
|
||||||
@ -25,7 +27,9 @@
|
|||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<span>{{ price ? globalStore.toTrLocale(localValue) : localValue }}</span>
|
<span :class="[size ? 'form-item-size form-item-size-' + size : '']">
|
||||||
|
{{ price ? globalStore.toTrLocale(localValue) : localValue }}
|
||||||
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<span
|
<span
|
||||||
class="form-item-alert"
|
class="form-item-alert"
|
||||||
@ -64,6 +68,7 @@
|
|||||||
modelText?: any
|
modelText?: any
|
||||||
invalidText?: string
|
invalidText?: string
|
||||||
price?: boolean
|
price?: boolean
|
||||||
|
size?: number | string
|
||||||
}
|
}
|
||||||
const props = withDefaults(defineProps<Props>(), {
|
const props = withDefaults(defineProps<Props>(), {
|
||||||
half: false,
|
half: false,
|
||||||
@ -71,13 +76,23 @@
|
|||||||
})
|
})
|
||||||
const localValue = ref<any>(props.modelValue)
|
const localValue = ref<any>(props.modelValue)
|
||||||
|
|
||||||
if (props.type === 'date' && props.modelValue !== null && props.modelValue !== undefined && props.modelValue !== '')
|
if (
|
||||||
|
props.type === 'date' &&
|
||||||
|
props.modelValue !== null &&
|
||||||
|
props.modelValue !== undefined &&
|
||||||
|
props.modelValue !== ''
|
||||||
|
)
|
||||||
localValue.value = dateStore.dateFormat({
|
localValue.value = dateStore.dateFormat({
|
||||||
date: props.modelValue as Date,
|
date: props.modelValue as Date,
|
||||||
pattern: 'dd-mm-yy'
|
pattern: 'dd-mm-yy'
|
||||||
})
|
})
|
||||||
|
|
||||||
if (props.type === 'datetime' && props.modelValue !== null && props.modelValue !== undefined && props.modelValue !== '')
|
if (
|
||||||
|
props.type === 'datetime' &&
|
||||||
|
props.modelValue !== null &&
|
||||||
|
props.modelValue !== undefined &&
|
||||||
|
props.modelValue !== ''
|
||||||
|
)
|
||||||
localValue.value = dateStore.dateFormat({
|
localValue.value = dateStore.dateFormat({
|
||||||
date: props.modelValue as Date,
|
date: props.modelValue as Date,
|
||||||
pattern: 'dd-mm-yy-t'
|
pattern: 'dd-mm-yy-t'
|
||||||
@ -108,3 +123,14 @@
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
</script>
|
</script>
|
||||||
|
<style scoped>
|
||||||
|
.form-item-size {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.form-item-size-1 {
|
||||||
|
font-size: 1.2em;
|
||||||
|
}
|
||||||
|
.form-item-size-2 {
|
||||||
|
font-size: 1.5em;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@ -161,6 +161,7 @@
|
|||||||
computeHtml?: Function
|
computeHtml?: Function
|
||||||
sort?: boolean
|
sort?: boolean
|
||||||
filter?: Record<string, any>
|
filter?: Record<string, any>
|
||||||
|
style?: Record<string, any>
|
||||||
}
|
}
|
||||||
interface IPagination {
|
interface IPagination {
|
||||||
[key: string]: any
|
[key: string]: any
|
||||||
@ -296,18 +297,47 @@
|
|||||||
GetLocalData()
|
GetLocalData()
|
||||||
}
|
}
|
||||||
const GetLocalData = async () => {
|
const GetLocalData = async () => {
|
||||||
|
console.log("GetLocalData",selectedExport.value)
|
||||||
if (selectedExport.value !== null) {
|
if (selectedExport.value !== null) {
|
||||||
const exportUrl =
|
let exportUrl = ''
|
||||||
axios.defaults.baseURL + dataStore.apiBase + props.apiList + '?isPdf=true'
|
let fileType = ''
|
||||||
|
let fileName = ''
|
||||||
const link = document.createElement('a')
|
|
||||||
link.href = exportUrl
|
// Export tipine göre URL ve dosya ayarları
|
||||||
document.body.appendChild(link)
|
if (selectedExport.value === 1) {
|
||||||
link.dispatchEvent(
|
// PDF
|
||||||
new MouseEvent('click', { bubbles: true, cancelable: true, view: window })
|
exportUrl = axios.defaults.baseURL + dataStore.apiBase + props.apiList + '/Pdf'
|
||||||
)
|
fileType = 'application/pdf'
|
||||||
link.remove()
|
fileName = 'export.pdf'
|
||||||
window.URL.revokeObjectURL(link.href)
|
} else if (selectedExport.value === 2) {
|
||||||
|
// Excel
|
||||||
|
exportUrl = axios.defaults.baseURL + dataStore.apiBase + props.apiList + '/Excel'
|
||||||
|
fileType = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
|
||||||
|
fileName = 'export.xlsx'
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log("dataStore",dataStore)
|
||||||
|
|
||||||
|
// Axios ile dosya indirme - interceptor otomatik olarak token ekleyecek
|
||||||
|
try {
|
||||||
|
const response = await axios.get(exportUrl, {
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
|
||||||
|
const blob = new Blob([response.data], { type: fileType })
|
||||||
|
const url = window.URL.createObjectURL(blob)
|
||||||
|
const link = document.createElement('a')
|
||||||
|
link.href = url
|
||||||
|
link.download = fileName
|
||||||
|
document.body.appendChild(link)
|
||||||
|
link.dispatchEvent(
|
||||||
|
new MouseEvent('click', { bubbles: true, cancelable: true, view: window })
|
||||||
|
)
|
||||||
|
link.remove()
|
||||||
|
window.URL.revokeObjectURL(url)
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Export error:', error)
|
||||||
|
}
|
||||||
|
|
||||||
selectedExport.value = null
|
selectedExport.value = null
|
||||||
exportPanel.value = false
|
exportPanel.value = false
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="panel-content-item" v-if="showExport">
|
<!-- <div class="panel-content-item" v-if="showExport">
|
||||||
<div class="button-c button-icon button-export" @click="SelectExport(3)">
|
<div class="button-c button-icon button-export" @click="SelectExport(3)">
|
||||||
<i class="ico-c">
|
<i class="ico-c">
|
||||||
<svg>
|
<svg>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
</i>
|
</i>
|
||||||
<span class="panel-date">CSV</span>
|
<span class="panel-date">CSV</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
@ -45,7 +45,7 @@
|
|||||||
const emit = defineEmits(['update:selectedExport'])
|
const emit = defineEmits(['update:selectedExport'])
|
||||||
|
|
||||||
const selected = ref<number>(0)
|
const selected = ref<number>(0)
|
||||||
const showExport = ref<boolean>(false)
|
const showExport = ref<boolean>(true)
|
||||||
|
|
||||||
const SelectExport = (exp: number) => {
|
const SelectExport = (exp: number) => {
|
||||||
selected.value = exp
|
selected.value = exp
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import axios from 'axios'
|
|||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
|
|
||||||
axios.defaults.baseURL = 'https://panelapi.cekilisevi.gov.tr/'
|
axios.defaults.baseURL = import.meta.env.VITE_API_URL
|
||||||
//axios.defaults.timeout = 2000;
|
//axios.defaults.timeout = 2000;
|
||||||
axios.defaults.headers['Content-Type'] = 'application/json; charset=utf-8'
|
axios.defaults.headers['Content-Type'] = 'application/json; charset=utf-8'
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
{
|
{
|
||||||
title: 'Site Yönetimi',
|
title: 'Site Yönetimi',
|
||||||
ico: 'sitemanagement',
|
ico: 'sitemanagement',
|
||||||
show: usersStore.isPanelUser && !usersStore.isAccounting,
|
show: usersStore.isSuperAdmin,
|
||||||
sub: [
|
sub: [
|
||||||
{
|
{
|
||||||
title: 'Yeni Sayfa',
|
title: 'Yeni Sayfa',
|
||||||
@ -142,6 +142,10 @@
|
|||||||
title: 'Piyango Listesi',
|
title: 'Piyango Listesi',
|
||||||
to: '/muhasebe/piyango-listesi'
|
to: '/muhasebe/piyango-listesi'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: 'İzin Bedel Oranı',
|
||||||
|
to: '/muhasebe/izin-bedel-orani'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: 'Ayarlar',
|
title: 'Ayarlar',
|
||||||
to: '/muhasebe/ayarlar'
|
to: '/muhasebe/ayarlar'
|
||||||
|
|||||||
@ -80,8 +80,8 @@
|
|||||||
v-model="uyeBilgileriStore.formData.gercekVergiNo"
|
v-model="uyeBilgileriStore.formData.gercekVergiNo"
|
||||||
required
|
required
|
||||||
label="Vergi No"
|
label="Vergi No"
|
||||||
maxlength="11"
|
maxlength="10"
|
||||||
minlength="11"
|
minlength="10"
|
||||||
:invalidText="uyeBilgileriStore.invalidTexts.gercekVergiNo"
|
:invalidText="uyeBilgileriStore.invalidTexts.gercekVergiNo"
|
||||||
@keydown="validationStore.allowNumbersWithKeys" />
|
@keydown="validationStore.allowNumbersWithKeys" />
|
||||||
|
|
||||||
@ -355,8 +355,6 @@
|
|||||||
const globalDataStore = useGlobalDataStore()
|
const globalDataStore = useGlobalDataStore()
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
const validationStore = useValidationStore()
|
const validationStore = useValidationStore()
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
|
||||||
const usersStore = useUsersStore()
|
|
||||||
import { useAuthValidationStore } from '../stores/authValidationStore'
|
import { useAuthValidationStore } from '../stores/authValidationStore'
|
||||||
const authValidationStore = useAuthValidationStore()
|
const authValidationStore = useAuthValidationStore()
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
@ -365,12 +363,6 @@
|
|||||||
const uyeBilgileriStore = useUyeBilgileriStore()
|
const uyeBilgileriStore = useUyeBilgileriStore()
|
||||||
uyeBilgileriStore.ResetStore()
|
uyeBilgileriStore.ResetStore()
|
||||||
|
|
||||||
interface IIl {
|
|
||||||
[key: string]: any
|
|
||||||
ad: string
|
|
||||||
id: number
|
|
||||||
}
|
|
||||||
|
|
||||||
const kvkkCheck = ref([
|
const kvkkCheck = ref([
|
||||||
{
|
{
|
||||||
label: '',
|
label: '',
|
||||||
|
|||||||
14
src/module/cekilisler/components/TabPiyangoDosyaKapama.vue
Normal file
14
src/module/cekilisler/components/TabPiyangoDosyaKapama.vue
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-content">
|
||||||
|
<div class="form-inner-content form-inner-content-left">
|
||||||
|
<form-piyango-dosya-kapama />
|
||||||
|
</div>
|
||||||
|
<div class="form-inner-content form-inner-content-left">
|
||||||
|
<form-piyango-dosya-kapama-ikramiye-listesi />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import FormPiyangoDosyaKapama from './form/FormPiyangoDosyaKapama.vue'
|
||||||
|
import FormPiyangoDosyaKapamaIkramiyeListesi from './form/FormPiyangoDosyaKapamaIkramiyeListesi.vue'
|
||||||
|
</script>
|
||||||
@ -57,7 +57,12 @@
|
|||||||
<panel-katilimci-document />
|
<panel-katilimci-document />
|
||||||
</template>
|
</template>
|
||||||
<template #footerButton>
|
<template #footerButton>
|
||||||
<button class="button-c button-save" @click="FileUpload">Yükle</button>
|
<button
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="FileUpload"
|
||||||
|
:disabled="uploadProgressPanel">
|
||||||
|
Yükle
|
||||||
|
</button>
|
||||||
</template>
|
</template>
|
||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
<panel-wrapper
|
<panel-wrapper
|
||||||
@ -142,18 +147,10 @@
|
|||||||
import { usePiyangoOnayService } from '../service/piyangoOnayService'
|
import { usePiyangoOnayService } from '../service/piyangoOnayService'
|
||||||
const piyangoOnayService = usePiyangoOnayService()
|
const piyangoOnayService = usePiyangoOnayService()
|
||||||
|
|
||||||
import {
|
import { connectToHub, onProgress, onCompleted } from '../service/signalrService'
|
||||||
connectToHub,
|
|
||||||
onProgress,
|
|
||||||
onInsertProgress,
|
|
||||||
onCompleted,
|
|
||||||
onError
|
|
||||||
} from '../service/signalrService'
|
|
||||||
|
|
||||||
const uploadProgressValue = ref(0)
|
const uploadProgressValue = ref(0)
|
||||||
const uploadProgressPanel = ref(false)
|
const uploadProgressPanel = ref(false)
|
||||||
const today = ref<Date>(new Date())
|
|
||||||
const ilanTarihi = ref<Date>(new Date(piyangoStore.lotteryIlanTarihi!))
|
|
||||||
|
|
||||||
const tableHeader = ref<Record<string, any>[]>([
|
const tableHeader = ref<Record<string, any>[]>([
|
||||||
{
|
{
|
||||||
@ -315,8 +312,8 @@
|
|||||||
headers: { 'Content-Type': 'multipart/form-data' }
|
headers: { 'Content-Type': 'multipart/form-data' }
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
console.log('excel response', response)
|
||||||
if (response.data !== 'errorfalse') {
|
if (response !== 'errorfalse') {
|
||||||
// Başarı işlemi zaten onCompleted içinde yapıldı
|
// Başarı işlemi zaten onCompleted içinde yapıldı
|
||||||
} else {
|
} else {
|
||||||
// Hata olursa paneli kapat
|
// Hata olursa paneli kapat
|
||||||
|
|||||||
@ -8,6 +8,11 @@
|
|||||||
<form-piyango-onay-kisiler />
|
<form-piyango-onay-kisiler />
|
||||||
</div>
|
</div>
|
||||||
</!--div-->
|
</!--div-->
|
||||||
|
<div class="form-inner-content">
|
||||||
|
<div class="form-part">
|
||||||
|
<form-piyango-onay-durum />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="form-inner-content">
|
<div class="form-inner-content">
|
||||||
<div class="form-part">
|
<div class="form-part">
|
||||||
<form-piyango-onay-log />
|
<form-piyango-onay-log />
|
||||||
@ -16,6 +21,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import FormPiyangoOnayDurum from './form/FormPiyangoOnayDurum.vue'
|
||||||
import FormPiyangoOnayLog from './form/FormPiyangoOnayLog.vue'
|
import FormPiyangoOnayLog from './form/FormPiyangoOnayLog.vue'
|
||||||
import FormPiyangoOnay from './form/FormPiyangoOnay.vue'
|
import FormPiyangoOnay from './form/FormPiyangoOnay.vue'
|
||||||
import FormPiyangoOnayKisiler from './form/FormPiyangoOnayKisiler.vue'
|
import FormPiyangoOnayKisiler from './form/FormPiyangoOnayKisiler.vue'
|
||||||
|
|||||||
@ -10,7 +10,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="form-inner-content">
|
<div class="form-inner-content">
|
||||||
<div class="form-part">
|
<div class="form-part">
|
||||||
<form-piyango-onay-log />
|
<form-piyango-onay-durum />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -19,6 +19,6 @@
|
|||||||
import { usePiyangoStore } from '../stores/piyangoStore'
|
import { usePiyangoStore } from '../stores/piyangoStore'
|
||||||
const piyangoStore = usePiyangoStore()
|
const piyangoStore = usePiyangoStore()
|
||||||
|
|
||||||
import FormPiyangoOnayLog from './form/FormPiyangoOnayLog.vue'
|
import FormPiyangoOnayDurum from './form/FormPiyangoOnayDurum.vue'
|
||||||
import FormPiyangoUserOnayaGonder from './form/FormPiyangoUserOnayaGonder.vue'
|
import FormPiyangoUserOnayaGonder from './form/FormPiyangoUserOnayaGonder.vue'
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -22,13 +22,20 @@
|
|||||||
v-if="
|
v-if="
|
||||||
usersStore.isPanelUser ||
|
usersStore.isPanelUser ||
|
||||||
(!usersStore.isPanelUser &&
|
(!usersStore.isPanelUser &&
|
||||||
|
piyangoStore.lotteryApprove !== 0 &&
|
||||||
|
piyangoStore.lotteryApprove !== 1 &&
|
||||||
|
piyangoStore.lotteryApprove !== 2 &&
|
||||||
piyangoStore.lotteryApprove !== 3 &&
|
piyangoStore.lotteryApprove !== 3 &&
|
||||||
!piyangoTeminatStore.isNew)
|
!piyangoTeminatStore.isNew)
|
||||||
" />
|
" />
|
||||||
<panel-piyango-teminat-durumu
|
<panel-piyango-teminat-durumu
|
||||||
v-if="
|
v-if="
|
||||||
!usersStore.isPanelUser &&
|
!usersStore.isPanelUser &&
|
||||||
(piyangoStore.lotteryApprove === 3 || piyangoTeminatStore.isNew)
|
(piyangoStore.lotteryApprove === 0 ||
|
||||||
|
piyangoStore.lotteryApprove === 1 ||
|
||||||
|
piyangoStore.lotteryApprove === 2 ||
|
||||||
|
piyangoStore.lotteryApprove === 3 ||
|
||||||
|
piyangoTeminatStore.isNew)
|
||||||
" />
|
" />
|
||||||
</template>
|
</template>
|
||||||
<template #footerButton>
|
<template #footerButton>
|
||||||
@ -36,14 +43,22 @@
|
|||||||
class="button-c button-save"
|
class="button-c button-save"
|
||||||
:disabled="!piyangoTeminatValidationStore.formChanged"
|
:disabled="!piyangoTeminatValidationStore.formChanged"
|
||||||
@click="piyangoTeminatService.SaveTeminatDurum"
|
@click="piyangoTeminatService.SaveTeminatDurum"
|
||||||
v-if="piyangoTeminatStore.isNew || usersStore.isPanelUser">
|
v-if="
|
||||||
|
usersStore.isPanelUser ||
|
||||||
|
(!usersStore.isPanelUser &&
|
||||||
|
(piyangoStore.lotteryApprove === 0 ||
|
||||||
|
piyangoStore.lotteryApprove === 1 ||
|
||||||
|
piyangoStore.lotteryApprove === 2 ||
|
||||||
|
piyangoStore.lotteryApprove === 3)) ||
|
||||||
|
piyangoTeminatStore.isNew
|
||||||
|
">
|
||||||
Kaydet
|
Kaydet
|
||||||
</button>
|
</button>
|
||||||
</template>
|
</template>
|
||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, computed,onBeforeMount } from 'vue'
|
import { ref, computed, onBeforeMount } from 'vue'
|
||||||
import PanelWrapper from '@/components/PanelWrapper.vue'
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
|
||||||
import PanelPiyangoTeminatDurumu from './panel/PanelPiyangoTeminatDurumu.vue'
|
import PanelPiyangoTeminatDurumu from './panel/PanelPiyangoTeminatDurumu.vue'
|
||||||
@ -143,10 +158,7 @@
|
|||||||
])
|
])
|
||||||
|
|
||||||
const teminatAddAction = computed(() => {
|
const teminatAddAction = computed(() => {
|
||||||
if (
|
if (!usersStore.isPanelUser) return NewTeminatDurum
|
||||||
!usersStore.isPanelUser
|
|
||||||
)
|
|
||||||
return NewTeminatDurum
|
|
||||||
else return ''
|
else return ''
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@ -50,7 +50,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<div class="form-inner-comment success-d" v-if="piyangoStore.lotteryApprove === 4">
|
<div class="form-inner-comment success-d" v-if="piyangoStore.lotteryApprove === 4">
|
||||||
Başvuru onaylanmıştır.
|
Başvuruya izin verildi.
|
||||||
</div>
|
</div>
|
||||||
<div class="form-inner-comment alert-d" v-if="piyangoStore.lotteryApprove === 5">
|
<div class="form-inner-comment alert-d" v-if="piyangoStore.lotteryApprove === 5">
|
||||||
Başvuru uygun görülmemiştir.
|
Başvuru uygun görülmemiştir.
|
||||||
@ -84,7 +84,7 @@
|
|||||||
Başvuru admin tarafından kapsam dışı olarak işaretlenmiştir.
|
Başvuru admin tarafından kapsam dışı olarak işaretlenmiştir.
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-inner-comment alert-d" v-if="piyangoStore.lotteryApprove === 11">
|
<div class="form-inner-comment alert-d" v-if="piyangoStore.lotteryApprove === 13">
|
||||||
Kampanya için cezai işlem uygulanmıştır.
|
Kampanya için cezai işlem uygulanmıştır.
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -3,6 +3,10 @@
|
|||||||
<lottery-states
|
<lottery-states
|
||||||
:piyangoAmac="piyangoStore.lotteryData.amacpiyangoId"
|
:piyangoAmac="piyangoStore.lotteryData.amacpiyangoId"
|
||||||
v-if="!isPreview" />
|
v-if="!isPreview" />
|
||||||
|
<form-display
|
||||||
|
v-model="piyangoStore.lotteryData.piyangoId"
|
||||||
|
label="Piyango ID"
|
||||||
|
size="1" />
|
||||||
<template
|
<template
|
||||||
v-if="
|
v-if="
|
||||||
usersStore.isPanelUser &&
|
usersStore.isPanelUser &&
|
||||||
@ -20,6 +24,19 @@
|
|||||||
v-model="piyangoStore.lotteryData.izinBedelNo"
|
v-model="piyangoStore.lotteryData.izinBedelNo"
|
||||||
label="İzin Bedel No" />
|
label="İzin Bedel No" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<form-display
|
||||||
|
type="date"
|
||||||
|
v-if="piyangoStore.lotteryData.izinTarihi !== undefined"
|
||||||
|
v-model="piyangoStore.lotteryData.izinTarihi"
|
||||||
|
half
|
||||||
|
label="İzin Tarihi" />
|
||||||
|
<form-display
|
||||||
|
v-if="piyangoStore.lotteryData.izinSayisi !== undefined"
|
||||||
|
v-model="piyangoStore.lotteryData.izinSayisi"
|
||||||
|
half
|
||||||
|
label="İzin Sayısı" />
|
||||||
|
|
||||||
<form-display
|
<form-display
|
||||||
v-model="piyangoStore.lotteryData.baslik"
|
v-model="piyangoStore.lotteryData.baslik"
|
||||||
label="Piyango Başlığı"
|
label="Piyango Başlığı"
|
||||||
|
|||||||
@ -39,7 +39,7 @@
|
|||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, reactive, computed, onBeforeMount } from 'vue'
|
import { ref, onBeforeMount } from 'vue'
|
||||||
import { usePDF } from 'vue3-pdfmake'
|
import { usePDF } from 'vue3-pdfmake'
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
|
|||||||
@ -63,7 +63,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const DeleteDocument = async (id: number | string) => {
|
const DeleteDocument = async (id: number | string) => {
|
||||||
var dt = await dataStore.dataDelete('Popup/' + id)
|
var dt = await dataStore.dataDelete('Dokuman/' + id)
|
||||||
|
|
||||||
if (dt !== 'errorfalse') {
|
if (dt !== 'errorfalse') {
|
||||||
dialogStore.CloseDialog('deletedoc')
|
dialogStore.CloseDialog('deletedoc')
|
||||||
|
|||||||
@ -26,7 +26,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, reactive, onBeforeMount, watch } from 'vue'
|
import { ref, onBeforeMount, watch } from 'vue'
|
||||||
import { useGlobalStore } from '@/stores/globalStore'
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
const globalStore = useGlobalStore()
|
const globalStore = useGlobalStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
@ -36,8 +36,6 @@
|
|||||||
|
|
||||||
import { usePiyangoIkramiyeStore } from '../../stores/piyangoIkramiyeStore'
|
import { usePiyangoIkramiyeStore } from '../../stores/piyangoIkramiyeStore'
|
||||||
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
||||||
import { usePiyangoIkramiyeService } from '../../service/piyangoIkramiyeService'
|
|
||||||
const piyangoIkramiyeService = usePiyangoIkramiyeService()
|
|
||||||
|
|
||||||
export interface Props {
|
export interface Props {
|
||||||
isPreview?: boolean
|
isPreview?: boolean
|
||||||
@ -45,8 +43,6 @@
|
|||||||
|
|
||||||
const props = withDefaults(defineProps<Props>(), { isPreview: false })
|
const props = withDefaults(defineProps<Props>(), { isPreview: false })
|
||||||
|
|
||||||
const loaded = ref<boolean>(false)
|
|
||||||
|
|
||||||
const ikramiyeTableHeader = ref<Record<string, any>>([
|
const ikramiyeTableHeader = ref<Record<string, any>>([
|
||||||
{
|
{
|
||||||
name: 'cinsi',
|
name: 'cinsi',
|
||||||
|
|||||||
@ -2,6 +2,9 @@
|
|||||||
<div class="form-part">
|
<div class="form-part">
|
||||||
<div class="form-part-title">
|
<div class="form-part-title">
|
||||||
<h4>Piyango Resimleri</h4>
|
<h4>Piyango Resimleri</h4>
|
||||||
|
<a href="/data/mpi-sablon.zip" class="button-c" target="_blank">
|
||||||
|
Örnek Resim Şablonları
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-part-content">
|
<div class="form-part-content">
|
||||||
<template v-for="(file, i) in fileList">
|
<template v-for="(file, i) in fileList">
|
||||||
@ -9,9 +12,19 @@
|
|||||||
:data="file"
|
:data="file"
|
||||||
onlyPreview
|
onlyPreview
|
||||||
:editable="false"
|
:editable="false"
|
||||||
:filePath="file.resimYolu" />
|
:filePath="file.resimYolu">
|
||||||
|
<template #actionButtons v-if="usersStore.isPanelUser">
|
||||||
|
<i
|
||||||
|
class="ico-c ico-btn ico-section back-grad-alert"
|
||||||
|
@click="DeleteImagePop(file)">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
|
||||||
|
</i>
|
||||||
|
</template>
|
||||||
|
</file-list-item>
|
||||||
</template>
|
</template>
|
||||||
<div v-if="usersStore.isPanelUser && fileList.length === 0" class="form-inner-comment">
|
<div
|
||||||
|
v-if="usersStore.isPanelUser && fileList.length === 0"
|
||||||
|
class="form-inner-comment">
|
||||||
Eklenmiş resim bulunamadı.
|
Eklenmiş resim bulunamadı.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -26,13 +39,43 @@
|
|||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
const piyangoStore = usePiyangoStore()
|
const piyangoStore = usePiyangoStore()
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
|
||||||
const fileList = ref<Record<string,any>[]>([])
|
const fileList = ref<Record<string, any>[]>([])
|
||||||
|
|
||||||
const GetData = async () => {
|
const GetData = async () => {
|
||||||
let dt = await dataStore.dataGet('CekilisResim/Cekilis/' + piyangoStore.selectedLottery)
|
let dt = await dataStore.dataGet(
|
||||||
|
'CekilisResim/Cekilis/' + piyangoStore.selectedLottery
|
||||||
|
)
|
||||||
if (dt !== 'errorfalse') fileList.value.splice(0, fileList.value.length, ...dt.data)
|
if (dt !== 'errorfalse') fileList.value.splice(0, fileList.value.length, ...dt.data)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const DeleteImagePop = (data: Record<string, any>) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Resim Sil',
|
||||||
|
id: 'deleteimage',
|
||||||
|
content: 'Resimi silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Resmi Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteImage(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteImage = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('CekilisResim/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deleteimage')
|
||||||
|
await GetData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
await GetData()
|
await GetData()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -1,102 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="form-part form-title" v-if="usersStore.isPanelUser">
|
|
||||||
<div class="form-title-buttons">
|
|
||||||
<button
|
|
||||||
class="button-c button-save"
|
|
||||||
@click="piyangoTeminatService.SaveTeminatDurum"
|
|
||||||
:disabled="!piyangoTeminatValidationStore.formChanged">
|
|
||||||
Kaydet
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
v-if="piyangoTeminatValidationStore.formChanged"
|
|
||||||
class="button-c button-cancel panel-close"
|
|
||||||
@click="piyangoTeminatStore.ResetFormData">
|
|
||||||
Vazgeç
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div :class="['form-part', piyangoTeminatValidationStore.formChanged ? 'changed' : '']"> <div
|
|
||||||
class="form-part-content"
|
|
||||||
v-if="piyangoTeminatStore.loaded">
|
|
||||||
<form-select
|
|
||||||
v-if="usersStore.isPanelUser"
|
|
||||||
label="İşlem"
|
|
||||||
:listData="piyangoDataStore.piyangoTeminatDurumlari"
|
|
||||||
listText="value"
|
|
||||||
listVal="id"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.state"
|
|
||||||
required
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.state"
|
|
||||||
@change="OnKeyup" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
|
|
||||||
half
|
|
||||||
label="Tutarı" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminatParentTypeText"
|
|
||||||
half
|
|
||||||
label="Para Birimi" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
label="Teminat Türü"
|
|
||||||
half
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantChildTypeText" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
type="date"
|
|
||||||
half
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantDate"
|
|
||||||
label="Tarih" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantNo"
|
|
||||||
half
|
|
||||||
label="No" />
|
|
||||||
<div class="form-item form-item-half"></div>
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankName"
|
|
||||||
half
|
|
||||||
label="Banka Adı" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankBranch"
|
|
||||||
half
|
|
||||||
label="Banka Şubesi" />
|
|
||||||
|
|
||||||
<!--form-display
|
|
||||||
label="İşlem"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.stateText" /-->
|
|
||||||
|
|
||||||
<file-list-item
|
|
||||||
title="Dosya"
|
|
||||||
:data="piyangoTeminatStore.piyangoTeminatFormData"
|
|
||||||
:editable="false"
|
|
||||||
:filePath="piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl"
|
|
||||||
:usePath="true"
|
|
||||||
:onlyPreview="true" />
|
|
||||||
|
|
||||||
<form-display
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.description"
|
|
||||||
label="Açıklama" />
|
|
||||||
</div></div>
|
|
||||||
|
|
||||||
</template>
|
|
||||||
<script setup lang="ts">
|
|
||||||
import { usePiyangoTeminatStore } from '../../stores/piyangoTeminatStore'
|
|
||||||
const piyangoTeminatStore = usePiyangoTeminatStore()
|
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
|
||||||
const usersStore = useUsersStore()
|
|
||||||
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
|
|
||||||
const piyangoDataStore = usePiyangoDataStore()
|
|
||||||
import { usePiyangoTeminatValidationStore } from '../../validation/piyangoTeminatValidationStore'
|
|
||||||
const piyangoTeminatValidationStore = usePiyangoTeminatValidationStore()
|
|
||||||
import { usePiyangoTeminatService } from '../../service/piyangoTeminatService'
|
|
||||||
const piyangoTeminatService = usePiyangoTeminatService()
|
|
||||||
|
|
||||||
const OnKeyup = () => {
|
|
||||||
piyangoTeminatValidationStore.formChanged = true
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
@ -3,8 +3,8 @@
|
|||||||
style="
|
style="
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 13pt;
|
font-size: 10pt;
|
||||||
margin-bottom: 12px;
|
margin-bottom: 10px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
">
|
">
|
||||||
MİLLİ PİYANGO İDARESİ GENEL MÜDÜRLÜĞÜ
|
MİLLİ PİYANGO İDARESİ GENEL MÜDÜRLÜĞÜ
|
||||||
@ -18,11 +18,15 @@
|
|||||||
düzenlemek üzere, aşağıda belirtilen koşullarda piyango düzenlemek üzere gerekli iznin
|
düzenlemek üzere, aşağıda belirtilen koşullarda piyango düzenlemek üzere gerekli iznin
|
||||||
verilmesi hususunda bilgilerinizi ve gereğini arz ederiz.
|
verilmesi hususunda bilgilerinizi ve gereğini arz ederiz.
|
||||||
<br />
|
<br />
|
||||||
<br />
|
|
||||||
</div>
|
</div>
|
||||||
<strong style="font-size: 10pt; margin-bottom: 12px">
|
<strong style="font-size: 10pt; margin-bottom: 10px">
|
||||||
PİYANGO İLE İLGİLİ BİLGİLER
|
PİYANGO İLE İLGİLİ BİLGİLER
|
||||||
</strong>
|
</strong>
|
||||||
|
<br />
|
||||||
|
<strong style="font-size: 10pt; margin-bottom: 10px">
|
||||||
|
PİYANGO ID: {{ piyangoStore.lotteryData.piyangoId }}
|
||||||
|
</strong>
|
||||||
|
<br />
|
||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
class="table-no-line"
|
class="table-no-line"
|
||||||
@ -30,7 +34,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong style="font-size: 10pt; margin-bottom: 12px">
|
<strong style="font-size: 10pt; margin-bottom: 10px">
|
||||||
1- Piyangoyu Düzenleyenin
|
1- Piyangoyu Düzenleyenin
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -41,7 +45,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<template v-if="piyangoStore.duzenleyenData.basvuruTipId === 18">
|
<template v-if="piyangoStore.duzenleyenData.basvuruTipId === 18">
|
||||||
<tr>
|
<tr>
|
||||||
@ -201,7 +205,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
Piyangoyu Yürütenin:
|
Piyangoyu Yürütenin:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -250,7 +254,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
2- Kampanyanın:
|
2- Kampanyanın:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -260,7 +264,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
@ -306,7 +310,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
3-Çekilişe katılma şekil ve şartları:
|
3-Çekilişe katılma şekil ve şartları:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -317,7 +321,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -341,7 +345,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
4-Çekilişin;
|
4-Çekilişin;
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -352,7 +356,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -402,7 +406,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
5-Çekiliş sonuçlarının ilan edileceği gazetenin:
|
5-Çekiliş sonuçlarının ilan edileceği gazetenin:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -413,7 +417,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -462,7 +466,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -508,7 +512,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
7-Diğer hususlar:
|
7-Diğer hususlar:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -519,7 +523,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -548,7 +552,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
8-Piyangoya konu ikramiyeler:
|
8-Piyangoya konu ikramiyeler:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -559,7 +563,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': ['10%', '30%', '15%', '15%', '15%', '15%'],'layout': 'pdfTableLayout'}"
|
data-pdfmake="{'widths': ['10%', '30%', '15%', '15%', '15%', '15%'],'layout': 'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt"
|
style="margin-bottom: 10px; font-size: 10pt"
|
||||||
v-if="piyangoIkramiyeStore.piyangoAllIkramiyeData.length > 0">
|
v-if="piyangoIkramiyeStore.piyangoAllIkramiyeData.length > 0">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
@ -619,7 +623,7 @@
|
|||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
class="table-no-line"
|
class="table-no-line"
|
||||||
data-pdfmake="{'widths': [ '50%', '30%','20%'],'layout':'pdfTableLayoutNoLine'}"
|
data-pdfmake="{'widths': [ '50%', '30%','20%'],'layout':'pdfTableLayoutNoLine'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
@ -628,7 +632,13 @@
|
|||||||
</td>
|
</td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td>
|
<td>
|
||||||
Tarih: / /
|
Tarih:{{
|
||||||
|
dateStore.dateFormat({
|
||||||
|
date: new Date(),
|
||||||
|
pattern: 'dd-mm-yy',
|
||||||
|
splitDate: '/'
|
||||||
|
})
|
||||||
|
}}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|||||||
@ -3,8 +3,8 @@
|
|||||||
style="
|
style="
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 14pt;
|
font-size: 10pt;
|
||||||
margin-bottom: 12px;
|
margin-bottom: 10px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
">
|
">
|
||||||
MİLLİ PİYANGO İDARESİ GENEL MÜDÜRLÜĞÜ
|
MİLLİ PİYANGO İDARESİ GENEL MÜDÜRLÜĞÜ
|
||||||
@ -12,6 +12,10 @@
|
|||||||
Bahisler ve Oyunlar Dairesi Başkanlığına
|
Bahisler ve Oyunlar Dairesi Başkanlığına
|
||||||
</strong>
|
</strong>
|
||||||
<br />
|
<br />
|
||||||
|
<strong style="font-size: 10pt; margin-bottom: 10px">
|
||||||
|
PİYANGO ID: {{ piyangoStore.lotteryData.piyangoId }}
|
||||||
|
</strong>
|
||||||
|
<br />
|
||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
class="table-no-line"
|
class="table-no-line"
|
||||||
@ -19,7 +23,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong style="font-size: 10pt; margin-bottom: 12px">
|
<strong style="font-size: 10pt; margin-bottom: 10px">
|
||||||
1- Piyangoyu Düzenleyenin:
|
1- Piyangoyu Düzenleyenin:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -30,7 +34,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<template v-if="piyangoStore.duzenleyenData.basvuruTipId === 18">
|
<template v-if="piyangoStore.duzenleyenData.basvuruTipId === 18">
|
||||||
<tr>
|
<tr>
|
||||||
@ -160,7 +164,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
2- Piyangonun Geçerli Olduğu Yerler:
|
2- Piyangonun Geçerli Olduğu Yerler:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -170,7 +174,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -193,7 +197,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
3- Basılacak Biletlerin:
|
3- Basılacak Biletlerin:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -203,7 +207,7 @@
|
|||||||
|
|
||||||
<table
|
<table
|
||||||
data-pdfmake="{'widths': [ '31%', '23%' , '23%' , '23%' ],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '31%', '23%' , '23%' , '23%' ],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
@ -279,7 +283,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
4- Biletlerin Basımı
|
4- Biletlerin Basımı
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -289,7 +293,7 @@
|
|||||||
|
|
||||||
<table
|
<table
|
||||||
data-pdfmake="{'widths': [ '50%', '50%' ],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%' ],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -314,7 +318,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
5- Çekiliş Tarih, Saati ve Adresi:
|
5- Çekiliş Tarih, Saati ve Adresi:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -325,7 +329,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -375,7 +379,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
6- İkramiye Kazananların İlanı:
|
6- İkramiye Kazananların İlanı:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -386,7 +390,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -442,7 +446,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
7- Talihlilerin Başvuru Tarihi:
|
7- Talihlilerin Başvuru Tarihi:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -453,7 +457,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -488,7 +492,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
8- Diğer Hususlar:
|
8- Diğer Hususlar:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -499,7 +503,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
data-pdfmake="{'widths': [ '50%', '50%'],'layout':'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt">
|
style="margin-bottom: 10px; font-size: 10pt">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
@ -528,7 +532,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<strong class="title" style="font-size: 10pt; margin-bottom: 12px">
|
<strong class="title" style="font-size: 10pt; margin-bottom: 10px">
|
||||||
9-Piyangoya Konu İkramiyeler:
|
9-Piyangoya Konu İkramiyeler:
|
||||||
</strong>
|
</strong>
|
||||||
</td>
|
</td>
|
||||||
@ -539,7 +543,7 @@
|
|||||||
<table
|
<table
|
||||||
cellspacing="0"
|
cellspacing="0"
|
||||||
data-pdfmake="{'widths': ['10%', '45%', '15%', '15%', '15%'],'layout': 'pdfTableLayout'}"
|
data-pdfmake="{'widths': ['10%', '45%', '15%', '15%', '15%'],'layout': 'pdfTableLayout'}"
|
||||||
style="margin-bottom: 12px; font-size: 10pt"
|
style="margin-bottom: 10px; font-size: 10pt"
|
||||||
v-if="piyangoIkramiyeStore.piyangoAllIkramiyeData.length > 0">
|
v-if="piyangoIkramiyeStore.piyangoAllIkramiyeData.length > 0">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -605,8 +609,6 @@
|
|||||||
const dateStore = useDateStore()
|
const dateStore = useDateStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
const piyangoStore = usePiyangoStore()
|
const piyangoStore = usePiyangoStore()
|
||||||
import { usePiyangoContactStore } from '../../stores/piyangoContactStore'
|
|
||||||
const piyangoContactStore = usePiyangoContactStore()
|
|
||||||
import { usePiyangoMecraStore } from '../../stores/piyangoMecraStore'
|
import { usePiyangoMecraStore } from '../../stores/piyangoMecraStore'
|
||||||
const piyangoMecraStore = usePiyangoMecraStore()
|
const piyangoMecraStore = usePiyangoMecraStore()
|
||||||
import { usePiyangoMecraService } from '../../service/piyangoMecraService'
|
import { usePiyangoMecraService } from '../../service/piyangoMecraService'
|
||||||
@ -615,8 +617,6 @@
|
|||||||
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
||||||
import { usePiyangoIkramiyeService } from '../../service/piyangoIkramiyeService'
|
import { usePiyangoIkramiyeService } from '../../service/piyangoIkramiyeService'
|
||||||
const piyangoIkramiyeService = usePiyangoIkramiyeService()
|
const piyangoIkramiyeService = usePiyangoIkramiyeService()
|
||||||
import { useCustomerIrtibatStore } from '@/module/uyeler/stores/customerIrtibatStore'
|
|
||||||
const customerIrtibatStore = useCustomerIrtibatStore()
|
|
||||||
import { useCustomerIrtibatService } from '@/module/uyeler/service/customerIrtibatService'
|
import { useCustomerIrtibatService } from '@/module/uyeler/service/customerIrtibatService'
|
||||||
const customerIrtibatService = useCustomerIrtibatService()
|
const customerIrtibatService = useCustomerIrtibatService()
|
||||||
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
|
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
|
||||||
|
|||||||
@ -31,7 +31,17 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="form-part-content" v-if="loaded">
|
<div class="form-part-content" v-if="loaded">
|
||||||
<lottery-states :piyangoAmac="piyangoStore.lotteryData.amacpiyangoId" />
|
<lottery-states :piyangoAmac="piyangoStore.lotteryData.amacpiyangoId" />
|
||||||
|
<template
|
||||||
|
v-if="
|
||||||
|
!piyangoStore.isNew &&
|
||||||
|
piyangoStore.lotteryData.piyangoId !== undefined &&
|
||||||
|
piyangoStore.lotteryData.piyangoId !== null
|
||||||
|
">
|
||||||
|
<form-display
|
||||||
|
v-model="piyangoStore.lotteryData.piyangoId"
|
||||||
|
label="Piyango ID"
|
||||||
|
size="1" />
|
||||||
|
</template>
|
||||||
<form-input
|
<form-input
|
||||||
modelKey="cekilisBaslik"
|
modelKey="cekilisBaslik"
|
||||||
v-model="piyangoStore.lotteryData.baslik"
|
v-model="piyangoStore.lotteryData.baslik"
|
||||||
@ -602,7 +612,7 @@
|
|||||||
|
|
||||||
let list = await dataStore.dataGet('Auth/userbyuserChildList/' + id)
|
let list = await dataStore.dataGet('Auth/userbyuserChildList/' + id)
|
||||||
|
|
||||||
childUsers.value = list.data.filter((p:Record<string,any>) => {
|
childUsers.value = list.data.filter((p: Record<string, any>) => {
|
||||||
return p.islemTipId === 4 || p.islemTipi === 'Üyelik Onaylandı'
|
return p.islemTipId === 4 || p.islemTipi === 'Üyelik Onaylandı'
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
252
src/module/cekilisler/components/form/FormPiyangoDosyaKapama.vue
Normal file
252
src/module/cekilisler/components/form/FormPiyangoDosyaKapama.vue
Normal file
@ -0,0 +1,252 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-part form-title" v-if="piyangoDosyaKapamaStore.isNew">
|
||||||
|
<div class="form-title-buttons">
|
||||||
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
:class="[
|
||||||
|
'form-part',
|
||||||
|
piyangoDosyaKapamaStore.formChanged && !piyangoDosyaKapamaStore.isNew
|
||||||
|
? 'changed'
|
||||||
|
: ''
|
||||||
|
]">
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>Teminat İade Evrak Kontrol</h4>
|
||||||
|
</div>
|
||||||
|
<div class="form-part-content" v-if="piyangoDosyaKapamaStore.loaded">
|
||||||
|
<form-input
|
||||||
|
modelKey="katilimSekli"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.katilimSekli"
|
||||||
|
label="1. Katılım Şekli"
|
||||||
|
placeholder="Katılım Şekli"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
|
||||||
|
<form-checkbox
|
||||||
|
label="2. CD"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cD"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="3. Kutu Mühürleme Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kutuMuhurlemeTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="4. Kutu Açma Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kutuAcmaTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>5. Çekiliş Tutanağı</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş Tutanağı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisTutanagi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş izin alınan tarih, saat, adreste yapılmış"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisIzinAlinanTarihSaatAdres"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekilişte önceden belirlenen ikramiyeler çekiliş"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisOncedenBelirlenenIkramiyeler
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekilişte önceden belirlenen ikramiyeler çekiliş"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisOncedenBelirlenenIkramiyeler
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş numara üzerinden/isimden"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisNumaraUzerindenCekilis"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Dağıtılmayan kupon tespiti"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.dagitilmayanKuponTespiti"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>6. Çekiliş Sonucu İlan</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş Sonucu İlan"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.cekilisSonucuIlani"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Taahhüt edilen tarih ve gazetede ilan"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilandaTarihGazete"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="İlanda toplam katılımcı sayısı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilandaToplamKatilimci"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Çekiliş tutanağı ile uyumlu kazanan numara/isim"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.cekilisTutanagiIleUyumluKazananlar
|
||||||
|
"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="İlanda ikramiyeler son teslim süresi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ilanSonBasvuruTeslimSuresi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<form-input
|
||||||
|
modelKey="taahhutEdilenIkramiyeAdedi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.taahhutEdilenIkramiyeAdedi"
|
||||||
|
label="7. Taahhüt Edilen İkramiye Adedi"
|
||||||
|
placeholder="Taahhüt Edilen İkramiye Adedi"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>8. Teslim Edilen İkramiye</h4>
|
||||||
|
</div>
|
||||||
|
<form-input
|
||||||
|
modelKey="teslimEdilenIkramiyeAdedi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teslimEdilenIkramiyeAdedi"
|
||||||
|
label="Teslim Edilen İkramiye Adedi"
|
||||||
|
placeholder="Teslim Edilen İkramiye Adedi"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="asilIkramiyeSayisi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.asilIkramiyeSayisi"
|
||||||
|
label="Teslim Edilen Asıl İkramiye Adedi"
|
||||||
|
placeholder="Teslim Edilen Asıl İkramiye Adedi"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="yedekIkramiyeSayisi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.yedekIkramiyeSayisi"
|
||||||
|
label="Teslim Edilen Yedek İkramiye Adedi"
|
||||||
|
placeholder="Teslim Edilen Yedek İkramiye Adedi"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Nüfus Cüzdanları"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.nufusCuzdani"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Kazanan numaralı noter onaylı ibraname"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.noterOnayliIbraname"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Teslim Belgesi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teslimBelgesi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Fatura fotokopileri"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.faturaFotokopileri"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Tescile ait belgeler"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.tescileAitBelgeler"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>9. Süresi İçinde Alınmayan İkramiye</h4>
|
||||||
|
</div>
|
||||||
|
<form-input
|
||||||
|
modelKey="sureIcindesAlinmayanIkramiyeAdedi"
|
||||||
|
v-model="
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData.sureIcindesAlinmayanIkramiyeAdedi
|
||||||
|
"
|
||||||
|
label="Süresi İçinde Alınmayan İkramiye Adedi"
|
||||||
|
placeholder="Süresi İçinde Alınmayan İkramiye Adedi"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Tebligat"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.tebligat"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Feragat"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.feragat"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Bağış"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.bagis"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>10. Kupon (Aslı) ve Duyuru Örneği</h4>
|
||||||
|
</div>
|
||||||
|
<form-checkbox
|
||||||
|
label="Kupon Aslı"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.kuponAsli"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
label="Duyuru Örneği"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.duyuruMateryali"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
modelKey="ikramiyelerinSonTeslimTarihi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.ikramiyelerinSonTeslimTarihi"
|
||||||
|
label="11. İkramiyelerin Son Teslim Tarihi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
modelKey="teminatIadeTarihi"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaData.teminatIadeTarihi"
|
||||||
|
label="12. Teminat İade Tarihi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
|
||||||
|
<div
|
||||||
|
class="form-item"
|
||||||
|
v-if="piyangoDosyaKapamaStore.formChanged && !piyangoDosyaKapamaStore.isNew">
|
||||||
|
<button
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</button>
|
||||||
|
<button class="button-c button-cancel" @click="CancelSave">Vazgeç</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-part form-title" v-if="piyangoDosyaKapamaStore.isNew">
|
||||||
|
<div class="form-title-buttons">
|
||||||
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapama()">
|
||||||
|
Kaydet
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { onBeforeMount } from 'vue'
|
||||||
|
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaService } from '../../service/piyangoDosyaKapamaService'
|
||||||
|
const piyangoDosyaKapamaService = usePiyangoDosyaKapamaService()
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
|
||||||
|
const OnKeyup = () => {
|
||||||
|
piyangoDosyaKapamaStore.formChanged = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const CancelSave = () => {
|
||||||
|
piyangoDosyaKapamaStore.RestoreFormData()
|
||||||
|
piyangoDosyaKapamaStore.formChanged = false
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
piyangoDosyaKapamaStore.formChanged = false
|
||||||
|
await piyangoDosyaKapamaService.GetDosyaKapama()
|
||||||
|
|
||||||
|
if (piyangoDosyaKapamaStore.isNew) {
|
||||||
|
piyangoDosyaKapamaStore.ResetFormData()
|
||||||
|
piyangoDosyaKapamaStore.loaded = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -0,0 +1,112 @@
|
|||||||
|
<template>
|
||||||
|
<div class="form-part section-list" v-if="piyangoDosyaKapamaStore.loaded">
|
||||||
|
<list-table-content
|
||||||
|
title="Dosya Kapama İkramiye Listesi"
|
||||||
|
icon="draws"
|
||||||
|
:tableHeader="ikramiyeTableHeader"
|
||||||
|
:rowAction="EditIkramiye"
|
||||||
|
listText="İkramiye"
|
||||||
|
:addAction="NewIkramiye"
|
||||||
|
:apiList="'TeminatIadeEvrak/ByPiyangoId/' + piyangoStore.selectedLottery"
|
||||||
|
apiText="Dosya Kapama İkramiye Listesi"
|
||||||
|
v-model:refresh="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh"
|
||||||
|
rowNumber />
|
||||||
|
</div>
|
||||||
|
<panel-wrapper
|
||||||
|
wide
|
||||||
|
v-if="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel"
|
||||||
|
:panel-title="
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate
|
||||||
|
? 'İkramiye Düzenle'
|
||||||
|
: 'İkramiye Ekle'
|
||||||
|
">
|
||||||
|
<template #panelContent>
|
||||||
|
<panel-piyango-dosya-kapama-ikramiye />
|
||||||
|
</template>
|
||||||
|
<template #footerButton>
|
||||||
|
<div
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="piyangoDosyaKapamaService.SaveDosyaKapamaIkramiye">
|
||||||
|
{{ piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate ? 'Kaydet' : 'Ekle' }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</panel-wrapper>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref } from 'vue'
|
||||||
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaService } from '../../service/piyangoDosyaKapamaService'
|
||||||
|
const piyangoDosyaKapamaService = usePiyangoDosyaKapamaService()
|
||||||
|
|
||||||
|
import PanelPiyangoDosyaKapamaIkramiye from '../panel/PanelPiyangoDosyaKapamaIkramiye.vue'
|
||||||
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
|
||||||
|
const ikramiyeTableHeader = ref<Record<string, any>[]>([
|
||||||
|
{
|
||||||
|
name: 'tahhutEdilenIkramiye',
|
||||||
|
title: 'Taahhüt Edilen İkramiye',
|
||||||
|
style: { width: '20%' },
|
||||||
|
computeHtml: (v: Record<string, any>) => {
|
||||||
|
return `<span>${v.tahhutEdilenIkramiyeAdet} ${v.tahhutEdilenIkramiye}</span>`
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'teslimEdilenIkramiye',
|
||||||
|
title: 'Teslim Edilen İkramiye',
|
||||||
|
style: { width: '20%' },
|
||||||
|
computeHtml: (v: Record<string, any>) => {
|
||||||
|
let asil: string = ''
|
||||||
|
let yedek: string = ''
|
||||||
|
if (
|
||||||
|
v.teslimEdilenIkramiyeAsil &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== null &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== 0 &&
|
||||||
|
v.teslimEdilenIkramiyeAsil !== ''
|
||||||
|
) {
|
||||||
|
asil = `<span >${v.teslimEdilenIkramiyeAsil} ASIL</span>`
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
v.teslimEdilenIkramiyeYedek &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== null &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== 0 &&
|
||||||
|
v.teslimEdilenIkramiyeYedek !== ''
|
||||||
|
) {
|
||||||
|
yedek = `<span >${v.teslimEdilenIkramiyeYedek} YEDEK</span>`
|
||||||
|
}
|
||||||
|
return asil !== ''
|
||||||
|
? yedek !== ''
|
||||||
|
? asil + '<br/>' + yedek
|
||||||
|
: asil
|
||||||
|
: yedek !== ''
|
||||||
|
? yedek
|
||||||
|
: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'alinmayanIkramiye',
|
||||||
|
title: 'Alınmayan İkramiye',
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aciklama',
|
||||||
|
title: 'Açıklama'
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
const NewIkramiye = () => {
|
||||||
|
piyangoDosyaKapamaStore.ResetIkramiyeFormData()
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const EditIkramiye = (d: Record<string, any>) => {
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData, d)
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = true
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = true
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@ -29,15 +29,9 @@
|
|||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, reactive, onBeforeMount, watch } from 'vue'
|
import { ref, onBeforeMount, watch } from 'vue'
|
||||||
import { useDateStore } from '@/stores/dateStore'
|
|
||||||
const dateStore = useDateStore()
|
|
||||||
import { useGlobalStore } from '@/stores/globalStore'
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
const globalStore = useGlobalStore()
|
const globalStore = useGlobalStore()
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
|
||||||
const dataStore = useDataStore()
|
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
|
||||||
const validationStore = useValidationStore()
|
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
|
|||||||
@ -19,6 +19,29 @@
|
|||||||
v-model="piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId"
|
v-model="piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId"
|
||||||
required
|
required
|
||||||
:invalidText="piyangoOnayValidationStore.invalidTexts.onayDurumuIslemTipiId" />
|
:invalidText="piyangoOnayValidationStore.invalidTexts.onayDurumuIslemTipiId" />
|
||||||
|
<template v-if="piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4">
|
||||||
|
<form-input
|
||||||
|
modelKey="izinSayisi"
|
||||||
|
v-model="piyangoOnayStore.piyangoOnayForm.izinSayisi"
|
||||||
|
required
|
||||||
|
label="İzin Sayı No"
|
||||||
|
placeholder="İzin Sayı No"
|
||||||
|
:invalidText="piyangoOnayValidationStore.invalidTexts.izinSayisi"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
required
|
||||||
|
modelKey="izinTarihi"
|
||||||
|
v-model="piyangoOnayStore.piyangoOnayForm.izinTarihi"
|
||||||
|
label="İzin Tarihi"
|
||||||
|
:invalidText="piyangoOnayValidationStore.invalidTexts.izinTarihi"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-textarea
|
||||||
|
v-model="piyangoOnayStore.piyangoOnayForm.izinAciklamasi"
|
||||||
|
:invalidText="piyangoOnayValidationStore.invalidTexts.izinAciklamasi"
|
||||||
|
label="İzin Açıklaması"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
</template>
|
||||||
<form-file
|
<form-file
|
||||||
v-model="piyangoOnayStore.piyangoOnayForm.file"
|
v-model="piyangoOnayStore.piyangoOnayForm.file"
|
||||||
elclass="panel-documents-item"
|
elclass="panel-documents-item"
|
||||||
|
|||||||
@ -0,0 +1,88 @@
|
|||||||
|
<template>
|
||||||
|
<list-table-content
|
||||||
|
v-if="loaded"
|
||||||
|
:tableHeader="tableHeader"
|
||||||
|
formTitle="Piyango Onay Durumları"
|
||||||
|
listText="Kayıt"
|
||||||
|
:apiList="'OnayDurumu/GetSonOnayDurumlariList/' + piyangoStore.selectedLottery"
|
||||||
|
apiText="Piyango Onay Log Listesi"
|
||||||
|
page="form"
|
||||||
|
:refresh="piyangoOnayStore.refreshList" />
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref,onBeforeMount,computed } from 'vue'
|
||||||
|
import axios from 'axios'
|
||||||
|
import { useDateStore } from '@/stores/dateStore'
|
||||||
|
const dateStore = useDateStore()
|
||||||
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
import { usePiyangoOnayStore } from '../../stores/piyangoOnayStore'
|
||||||
|
const piyangoOnayStore = usePiyangoOnayStore()
|
||||||
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
|
||||||
|
const piyangoDataStore = usePiyangoDataStore()
|
||||||
|
import { usePiyangoServices } from '../../service/piyangoServices'
|
||||||
|
const piyangoServices = usePiyangoServices()
|
||||||
|
|
||||||
|
const loaded = ref<boolean>(false)
|
||||||
|
|
||||||
|
const piyangoOnayDurumlari = computed<Record<string, any>[]>(() => {
|
||||||
|
return piyangoDataStore.piyangoOnayDurumlari
|
||||||
|
})
|
||||||
|
|
||||||
|
const tableHeader = ref<Record<string, any>[]>([
|
||||||
|
{
|
||||||
|
name: 'tarih',
|
||||||
|
title: 'Tarih',
|
||||||
|
compute: (v: Record<string, any>): string => {
|
||||||
|
return v.tarih === null
|
||||||
|
? ''
|
||||||
|
: dateStore.dateFormat({ pattern: 'dd-mm-yy', date: v.tarih })
|
||||||
|
},
|
||||||
|
sort: true,
|
||||||
|
filter: {
|
||||||
|
type: 'date',
|
||||||
|
range: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'kisiAdi',
|
||||||
|
title: 'Kişi',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'onayDurumuIslemTipiAdi',
|
||||||
|
title: 'İşlem',
|
||||||
|
sort: true,
|
||||||
|
filter: {
|
||||||
|
type: 'select',
|
||||||
|
data: piyangoOnayDurumlari,
|
||||||
|
listVal: 'id',
|
||||||
|
listText: 'tipAdi',
|
||||||
|
filterId: 'onayDurumuIslemTipiId'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aciklama',
|
||||||
|
title: 'Açıklama',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '30%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dosyaUrl: 'aciklama',
|
||||||
|
title: 'Dosya',
|
||||||
|
computeHtml: (v: Record<string, any>) => {
|
||||||
|
if (v.dosyaUrl !== null && v.dosyaUrl !== undefined) {
|
||||||
|
return globalStore.TableCellDocument(v.dosyaUrl)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
style: { width: '20%' }
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
loaded.value = true
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -4,7 +4,7 @@
|
|||||||
:tableHeader="tableHeader"
|
:tableHeader="tableHeader"
|
||||||
formTitle="Piyango Onay Logları"
|
formTitle="Piyango Onay Logları"
|
||||||
listText="Kayıt"
|
listText="Kayıt"
|
||||||
:apiList="'OnayDurumu/GetSonOnayDurumlariList/' + piyangoStore.selectedLottery"
|
:apiList="'OnayDurumLog/Cekilis/' + piyangoStore.selectedLottery"
|
||||||
apiText="Piyango Onay Log Listesi"
|
apiText="Piyango Onay Log Listesi"
|
||||||
page="form"
|
page="form"
|
||||||
:refresh="piyangoOnayStore.refreshList" />
|
:refresh="piyangoOnayStore.refreshList" />
|
||||||
@ -47,38 +47,24 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'kisiAdi',
|
name: 'islemYapanKullanici.email',
|
||||||
title: 'Kişi',
|
title: 'Kişi',
|
||||||
sort: true,
|
sort: true,
|
||||||
style: { width: '20%' }
|
style: { width: '20%' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'onayDurumuIslemTipiAdi',
|
name: 'eskiDurum',
|
||||||
title: 'İşlem',
|
title: 'Eski Durum',
|
||||||
sort: true,
|
},
|
||||||
filter: {
|
{
|
||||||
type: 'select',
|
name: 'yeniDurum',
|
||||||
data: piyangoOnayDurumlari,
|
title: 'Yeni Durum',
|
||||||
listVal: 'id',
|
|
||||||
listText: 'tipAdi',
|
|
||||||
filterId: 'onayDurumuIslemTipiId'
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'aciklama',
|
name: 'aciklama',
|
||||||
title: 'Açıklama',
|
title: 'Açıklama',
|
||||||
sort: true,
|
sort: true,
|
||||||
style: { width: '30%' }
|
style: { width: '30%' }
|
||||||
},
|
|
||||||
{
|
|
||||||
dosyaUrl: 'aciklama',
|
|
||||||
title: 'Dosya',
|
|
||||||
computeHtml: (v: Record<string, any>) => {
|
|
||||||
if (v.dosyaUrl !== null && v.dosyaUrl !== undefined) {
|
|
||||||
return globalStore.TableCellDocument(v.dosyaUrl)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
style: { width: '20%' }
|
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,9 @@
|
|||||||
<div class="form-part">
|
<div class="form-part">
|
||||||
<div class="form-part-title">
|
<div class="form-part-title">
|
||||||
<h4>Piyango Resimleri</h4>
|
<h4>Piyango Resimleri</h4>
|
||||||
|
<a href="/data/mpi-sablon.zip" class="button-c" target="_blank">
|
||||||
|
Örnek Resim Şablonları
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-part-content">
|
<div class="form-part-content">
|
||||||
<template v-for="(file, i) in fileList">
|
<template v-for="(file, i) in fileList">
|
||||||
@ -9,7 +12,17 @@
|
|||||||
:data="file"
|
:data="file"
|
||||||
@click="EditImage"
|
@click="EditImage"
|
||||||
onlyPreview
|
onlyPreview
|
||||||
:filePath="file.resimYolu" />
|
:filePath="file.resimYolu">
|
||||||
|
<template
|
||||||
|
#actionButtons
|
||||||
|
v-if="piyangoStore.lotteryApprove === 0 || piyangoStore.lotteryApprove === 3">
|
||||||
|
<i
|
||||||
|
class="ico-c ico-btn ico-section back-grad-alert"
|
||||||
|
@click="DeleteImagePop(file)">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
|
||||||
|
</i>
|
||||||
|
</template>
|
||||||
|
</file-list-item>
|
||||||
</template>
|
</template>
|
||||||
<div
|
<div
|
||||||
class="form-item form-item-picture clickable"
|
class="form-item form-item-picture clickable"
|
||||||
@ -23,7 +36,9 @@
|
|||||||
</i>
|
</i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="usersStore.isPanelUser && fileList.length === 0" class="form-inner-comment">
|
<div
|
||||||
|
v-if="usersStore.isPanelUser && fileList.length === 0"
|
||||||
|
class="form-inner-comment">
|
||||||
Eklenmiş resim bulunamadı.
|
Eklenmiş resim bulunamadı.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -57,16 +72,14 @@
|
|||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
import { usePiyangoStore } from '../../stores/piyangoStore'
|
import { usePiyangoStore } from '../../stores/piyangoStore'
|
||||||
const piyangoStore = usePiyangoStore()
|
const piyangoStore = usePiyangoStore()
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
|
||||||
const picturePanel = ref<boolean>(false)
|
const picturePanel = ref<boolean>(false)
|
||||||
const isUpdate = ref<boolean>(false)
|
const isUpdate = ref<boolean>(false)
|
||||||
const isFormValid = ref<boolean>(true)
|
const isFormValid = ref<boolean>(true)
|
||||||
|
|
||||||
interface IFileList {
|
const fileList = ref<Record<string, any>[]>([])
|
||||||
[key: string]: any
|
|
||||||
}
|
|
||||||
|
|
||||||
const fileList = ref<IFileList[]>([] as IFileList[])
|
|
||||||
|
|
||||||
const AddNewImage = () => {
|
const AddNewImage = () => {
|
||||||
dataStore.panelData = {
|
dataStore.panelData = {
|
||||||
@ -82,7 +95,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const GetData = async () => {
|
const GetData = async () => {
|
||||||
let dt = await dataStore.dataGet('CekilisResim/Cekilis/' + piyangoStore.selectedLottery)
|
let dt = await dataStore.dataGet(
|
||||||
|
'CekilisResim/Cekilis/' + piyangoStore.selectedLottery
|
||||||
|
)
|
||||||
if (dt !== 'errorfalse') fileList.value.splice(0, fileList.value.length, ...dt.data)
|
if (dt !== 'errorfalse') fileList.value.splice(0, fileList.value.length, ...dt.data)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -129,6 +144,30 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const DeleteImagePop = (data: Record<string, any>) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Resim Sil',
|
||||||
|
id: 'deleteimage',
|
||||||
|
content: 'Resimi silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Resmi Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteImage(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteImage = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('CekilisResim/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deleteimage')
|
||||||
|
await GetData()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
await GetData()
|
await GetData()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -1,135 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="form-part form-title">
|
|
||||||
<div class="form-title-buttons">
|
|
||||||
<button
|
|
||||||
class="button-c button-save"
|
|
||||||
@click="piyangoTeminatService.SaveTeminatDurum"
|
|
||||||
:disabled="!piyangoTeminatValidationStore.formChanged">
|
|
||||||
Kaydet
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
v-if="piyangoTeminatValidationStore.formChanged"
|
|
||||||
class="button-c button-cancel panel-close"
|
|
||||||
@click="piyangoTeminatStore.ResetFormData">
|
|
||||||
Vazgeç
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div :class="['form-part', piyangoTeminatValidationStore.formChanged ? 'changed' : '']">
|
|
||||||
<div class="form-part-title">
|
|
||||||
<h4>Teminat Durumu</h4>
|
|
||||||
</div>
|
|
||||||
<div class="form-part-content" v-if="piyangoTeminatStore.loaded">
|
|
||||||
<form-input
|
|
||||||
modelKey="amount"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
|
|
||||||
required
|
|
||||||
half
|
|
||||||
label="Tutarı"
|
|
||||||
minlength="2"
|
|
||||||
@keyup="OnKeyup"
|
|
||||||
@keydown="validationStore.allowPrice"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.amount" />
|
|
||||||
|
|
||||||
<form-select
|
|
||||||
modelKey="teminatParentType"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminatParentType"
|
|
||||||
required
|
|
||||||
half
|
|
||||||
label="Para Birimi"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminatParentType"
|
|
||||||
:listData="piyangoDataStore.piyangoTeminatParaBirimleri"
|
|
||||||
listVal="id"
|
|
||||||
listText="value"
|
|
||||||
@change="OnKeyup" />
|
|
||||||
|
|
||||||
<form-select
|
|
||||||
label="Teminat Türü"
|
|
||||||
:listData="piyangoDataStore.piyangoTeminatTurleri"
|
|
||||||
listText="value"
|
|
||||||
listVal="id"
|
|
||||||
half
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantChildType"
|
|
||||||
required
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantChildType"
|
|
||||||
@change="OnKeyup" />
|
|
||||||
|
|
||||||
<form-date
|
|
||||||
type="date"
|
|
||||||
half
|
|
||||||
required
|
|
||||||
modelKey="teminantDate"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantDate"
|
|
||||||
label="Tarih"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantDate"
|
|
||||||
@change="OnKeyup" />
|
|
||||||
|
|
||||||
<form-input
|
|
||||||
modelKey="teminantNo"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.teminantNo"
|
|
||||||
required
|
|
||||||
half
|
|
||||||
label="No"
|
|
||||||
minlength="2"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.teminantNo"
|
|
||||||
@keyup="OnKeyup" />
|
|
||||||
<div class="form-item form-item-half"></div>
|
|
||||||
|
|
||||||
<form-input
|
|
||||||
modelKey="bankName"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankName"
|
|
||||||
required
|
|
||||||
half
|
|
||||||
label="Banka Adı"
|
|
||||||
minlength="2"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.bankName"
|
|
||||||
@keyup="OnKeyup" />
|
|
||||||
|
|
||||||
<form-input
|
|
||||||
modelKey="bankBranch"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.bankBranch"
|
|
||||||
required
|
|
||||||
half
|
|
||||||
label="Banka Şubesi"
|
|
||||||
minlength="2"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.bankBranch"
|
|
||||||
@keyup="OnKeyup" />
|
|
||||||
|
|
||||||
<form-display :disabled="!usersStore.isPanelUser"
|
|
||||||
label="İşlem Durumu"
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.stateText" />
|
|
||||||
|
|
||||||
<form-file
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.file"
|
|
||||||
elclass="panel-documents-item"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.file"
|
|
||||||
@change="OnKeyup" />
|
|
||||||
|
|
||||||
<form-textarea
|
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.description"
|
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.description"
|
|
||||||
label="Açıklama"
|
|
||||||
@keyup="OnKeyup" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script setup lang="ts">
|
|
||||||
import { usePiyangoDataStore } from '../../stores/piyangoDataStore'
|
|
||||||
const piyangoDataStore = usePiyangoDataStore()
|
|
||||||
import { usePiyangoServices } from '../../service/piyangoServices'
|
|
||||||
const piyangoServices = usePiyangoServices()
|
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
|
||||||
const validationStore = useValidationStore()
|
|
||||||
import { usePiyangoTeminatStore } from '../../stores/piyangoTeminatStore'
|
|
||||||
const piyangoTeminatStore = usePiyangoTeminatStore()
|
|
||||||
import { usePiyangoTeminatValidationStore } from '../../validation/piyangoTeminatValidationStore'
|
|
||||||
const piyangoTeminatValidationStore = usePiyangoTeminatValidationStore()
|
|
||||||
import { usePiyangoTeminatService } from '../../service/piyangoTeminatService'
|
|
||||||
const piyangoTeminatService = usePiyangoTeminatService()
|
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
|
||||||
const usersStore = useUsersStore()
|
|
||||||
|
|
||||||
const OnKeyup = () => {
|
|
||||||
piyangoTeminatValidationStore.formChanged = true
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
@ -0,0 +1,137 @@
|
|||||||
|
<template>
|
||||||
|
<form-select
|
||||||
|
@change="OnIkramiyeChanged"
|
||||||
|
modelKey="ikramiyeId"
|
||||||
|
clearable
|
||||||
|
label="Kazandığı İkramiye"
|
||||||
|
:listData="piyangoIkramiyeStore.piyangoAllIkramiyeData"
|
||||||
|
listText="cinsi"
|
||||||
|
listVal="id"
|
||||||
|
v-model="selectedIkramiye"
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.taahhutEdilenIkramiye
|
||||||
|
">
|
||||||
|
<template #activator="data">
|
||||||
|
{{
|
||||||
|
data.activatorData !== undefined &&
|
||||||
|
Object.keys(data.activatorData).length > 0 &&
|
||||||
|
selectedIkramiye !== null
|
||||||
|
? data.activatorData.cinsi +
|
||||||
|
', ' +
|
||||||
|
data.activatorData.marka +
|
||||||
|
', ' +
|
||||||
|
data.activatorData.model +
|
||||||
|
' (' +
|
||||||
|
data.activatorData.asilTalihliAdedi +
|
||||||
|
' adet)'
|
||||||
|
: 'Lütfen Seçim Yapınız'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<template #option="data">
|
||||||
|
{{
|
||||||
|
data.optionData.cinsi +
|
||||||
|
', ' +
|
||||||
|
data.optionData.marka +
|
||||||
|
', ' +
|
||||||
|
data.optionData.model +
|
||||||
|
' (' +
|
||||||
|
data.activatorData.asilTalihliAdedi +
|
||||||
|
' adet)'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
</form-select>
|
||||||
|
<div class="form-item">Toplam İkramiye: {{ totalIkramiye }}</div>
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil"
|
||||||
|
label="Teslim Edilen İkramiye Asil Adet"
|
||||||
|
modelKey="teslimEdilenIkramiyeAsil"
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiyeAsil
|
||||||
|
"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="CalculateAlinmayanIkramiye" />
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek"
|
||||||
|
label="Teslim Edilen İkramiye Yedek Adet"
|
||||||
|
modelKey="teslimEdilenIkramiyeYedek"
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.teslimEdilenIkramiyeYedek
|
||||||
|
"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
@keyup="CalculateAlinmayanIkramiye" />
|
||||||
|
<form-input
|
||||||
|
disabled
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye"
|
||||||
|
label="Alınmayan İkramiye Adet"
|
||||||
|
modelKey="alinmayanIkramiye"
|
||||||
|
:invalidText="
|
||||||
|
piyangoDosyaKapamaValidationStore.ikramiyeInvalidTexts.alinmayanIkramiye
|
||||||
|
" />
|
||||||
|
<form-input
|
||||||
|
v-model="piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.aciklama"
|
||||||
|
label="Açıklama"
|
||||||
|
modelKey="aciklama" />
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { onBeforeMount, ref } from 'vue'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../../stores/piyangoDosyaKapamaStore'
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
import { usePiyangoDosyaKapamaValidationStore } from '../../validation/piyangoDosyaKapamaValidationStore'
|
||||||
|
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
||||||
|
import { usePiyangoIkramiyeService } from '../../service/piyangoIkramiyeService'
|
||||||
|
const piyangoIkramiyeService = usePiyangoIkramiyeService()
|
||||||
|
import { usePiyangoIkramiyeStore } from '../../stores/piyangoIkramiyeStore'
|
||||||
|
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
||||||
|
|
||||||
|
const selectedIkramiye = ref<string | number | null>(null)
|
||||||
|
const totalIkramiye = ref<number | null>(null)
|
||||||
|
|
||||||
|
const CalculateAlinmayanIkramiye = () => {
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.alinmayanIkramiye =
|
||||||
|
Number(totalIkramiye.value) -
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil || 0
|
||||||
|
) -
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek || 0
|
||||||
|
)
|
||||||
|
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiye =
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil || 0
|
||||||
|
) +
|
||||||
|
Number(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeYedek || 0
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
const OnIkramiyeChanged = (e: Event, val: any, item: Record<string, any>) => {
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiye = `
|
||||||
|
${item.cinsi}, ${item.marka}, ${item.model}, (${item.asilTalihliAdedi} adet)
|
||||||
|
`
|
||||||
|
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiyeAdet =
|
||||||
|
item.asilTalihliAdedi
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
if (piyangoIkramiyeStore.piyangoAllIkramiyeData.length === 0)
|
||||||
|
await piyangoIkramiyeService.GetAllIkramiyeler()
|
||||||
|
|
||||||
|
piyangoIkramiyeStore.piyangoAllIkramiyeData.forEach((item) => {
|
||||||
|
if (
|
||||||
|
`${item.cinsi}, ${item.marka}, ${item.model}, (${item.asilTalihliAdedi} adet)` ===
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.taahhutEdilenIkramiye
|
||||||
|
) {
|
||||||
|
selectedIkramiye.value = item.id
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
totalIkramiye.value = piyangoIkramiyeStore.piyangoAllIkramiyeData.reduce(
|
||||||
|
(acc, item) => acc + (item.asilTalihliAdedi || 0),
|
||||||
|
0
|
||||||
|
)
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -9,8 +9,41 @@
|
|||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.state"
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.state"
|
||||||
required
|
required
|
||||||
:invalidText="piyangoTeminatValidationStore.invalidTexts.state"
|
:invalidText="piyangoTeminatValidationStore.invalidTexts.state"
|
||||||
@change="OnKeyup"
|
@change="OnKeyup"
|
||||||
:disabled="!usersStore.isPanelUser"/>
|
:disabled="!usersStore.isPanelUser" />
|
||||||
|
|
||||||
|
<template
|
||||||
|
v-if="
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.state === 2 ||
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.state === 3
|
||||||
|
">
|
||||||
|
<form-date
|
||||||
|
type="date"
|
||||||
|
half
|
||||||
|
modelKey="refundDate"
|
||||||
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.refundDate"
|
||||||
|
label="İade Tarihi"
|
||||||
|
:invalidText="piyangoTeminatValidationStore.invalidTexts.refundDate"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="refundCount"
|
||||||
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.refundCount"
|
||||||
|
half
|
||||||
|
label="Sayısı"
|
||||||
|
@keyup="OnKeyup"
|
||||||
|
:invalidText="piyangoTeminatValidationStore.invalidTexts.refundCount" />
|
||||||
|
<form-file
|
||||||
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.refundDocumentUrl"
|
||||||
|
label='Klasör Arşiv'
|
||||||
|
elclass="panel-documents-item"
|
||||||
|
:invalidText="piyangoTeminatValidationStore.invalidTexts.refundDocumentUrl"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
modelKey="refundDescription"
|
||||||
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.refundDescription"
|
||||||
|
label="İade Açıklama"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
</template>
|
||||||
|
|
||||||
<form-display
|
<form-display
|
||||||
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
|
v-model="piyangoTeminatStore.piyangoTeminatFormData.amount"
|
||||||
@ -51,7 +84,10 @@
|
|||||||
label="Banka Şubesi" />
|
label="Banka Şubesi" />
|
||||||
|
|
||||||
<file-list-item
|
<file-list-item
|
||||||
v-if="piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== null && piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== undefined"
|
v-if="
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== null &&
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.teminantDocumentUrl !== undefined
|
||||||
|
"
|
||||||
title="Dosya"
|
title="Dosya"
|
||||||
:data="piyangoTeminatStore.piyangoTeminatFormData"
|
:data="piyangoTeminatStore.piyangoTeminatFormData"
|
||||||
:editable="false"
|
:editable="false"
|
||||||
|
|||||||
84
src/module/cekilisler/service/piyangoDosyaKapamaService.ts
Normal file
84
src/module/cekilisler/service/piyangoDosyaKapamaService.ts
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
import { usePiyangoStore } from '../stores/piyangoStore'
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../stores/piyangoDosyaKapamaStore'
|
||||||
|
import { usePiyangoDosyaKapamaValidationStore } from '../validation/piyangoDosyaKapamaValidationStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaService = defineStore(
|
||||||
|
'piyangoDosyaKapamaService',
|
||||||
|
() => {
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
const piyangoDosyaKapamaValidationStore = usePiyangoDosyaKapamaValidationStore()
|
||||||
|
|
||||||
|
const GetDosyaKapama = async () => {
|
||||||
|
let data: Record<string, any> | any = await dataStore.dataGet(
|
||||||
|
'TeminatIadeEvrakKontrol/' + piyangoStore.selectedLottery
|
||||||
|
)
|
||||||
|
|
||||||
|
if (data !== 'errorfalse' || data.data.id === undefined) {
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.dosyaKapamaData, data.data)
|
||||||
|
Object.assign(piyangoDosyaKapamaStore.safeDosyaKapamaData, data.data)
|
||||||
|
piyangoDosyaKapamaStore.isNew = false
|
||||||
|
setTimeout(() => {
|
||||||
|
piyangoDosyaKapamaStore.loaded = true
|
||||||
|
}, 30)
|
||||||
|
} else {
|
||||||
|
piyangoDosyaKapamaStore.isNew = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const SaveDosyaKapama = async () => {
|
||||||
|
let dt: any
|
||||||
|
const localData = Object.assign({}, piyangoDosyaKapamaStore.dosyaKapamaData)
|
||||||
|
if (localData.cekilisId === undefined)
|
||||||
|
localData.cekilisId = piyangoStore.selectedLottery
|
||||||
|
|
||||||
|
if (!piyangoDosyaKapamaStore.isUpdate) {
|
||||||
|
dt = await dataStore.dataPost('TeminatIadeEvrakKontrol', {
|
||||||
|
data: localData
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
dt = await dataStore.dataPut('TeminatIadeEvrakKontrol/' + localData.id, {
|
||||||
|
data: localData
|
||||||
|
})
|
||||||
|
}
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
piyangoDosyaKapamaStore.isUpdate = false
|
||||||
|
await GetDosyaKapama()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const SaveDosyaKapamaIkramiye = async () => {
|
||||||
|
if (piyangoDosyaKapamaValidationStore.IkramiyeFormCheck()) {
|
||||||
|
let dt: any
|
||||||
|
const localData = Object.assign(
|
||||||
|
{},
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData
|
||||||
|
)
|
||||||
|
if (localData.cekilisId === undefined)
|
||||||
|
localData.cekilisId = piyangoStore.selectedLottery
|
||||||
|
|
||||||
|
if (!piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate) {
|
||||||
|
dt = await dataStore.dataPost('TeminatIadeEvrak', {
|
||||||
|
data: localData
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
dt = await dataStore.dataPut('TeminatIadeEvrak/' + localData.id, {
|
||||||
|
data: localData
|
||||||
|
})
|
||||||
|
}
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
piyangoDosyaKapamaStore.isDosyaKapamaIkramiyeUpdate = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyePanel = false
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeListesiRefresh = true
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
piyangoDosyaKapamaValidationStore.isIkramiyeFormValid = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return { GetDosyaKapama, SaveDosyaKapama, SaveDosyaKapamaIkramiye }
|
||||||
|
}
|
||||||
|
)
|
||||||
@ -17,6 +17,12 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
|
|||||||
piyangoOnayStore.loaded = false
|
piyangoOnayStore.loaded = false
|
||||||
let form: any
|
let form: any
|
||||||
let dataForm = new FormData()
|
let dataForm = new FormData()
|
||||||
|
|
||||||
|
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId !== 4) {
|
||||||
|
piyangoOnayStore.piyangoOnayForm.izinSayisi = ''
|
||||||
|
piyangoOnayStore.piyangoOnayForm.izinTarihi = ''
|
||||||
|
piyangoOnayStore.piyangoOnayForm.izinAciklamasi = ''
|
||||||
|
}
|
||||||
dataForm.append(
|
dataForm.append(
|
||||||
'onayDurumuIslemTipiId',
|
'onayDurumuIslemTipiId',
|
||||||
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId
|
piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId
|
||||||
@ -25,6 +31,9 @@ export const usePiyangoOnayService = defineStore('piyangoOnayService', () => {
|
|||||||
dataForm.append('kisiId', String(usersStore.userId))
|
dataForm.append('kisiId', String(usersStore.userId))
|
||||||
dataForm.append('file', piyangoOnayStore.piyangoOnayForm.file)
|
dataForm.append('file', piyangoOnayStore.piyangoOnayForm.file)
|
||||||
dataForm.append('aciklama', piyangoOnayStore.piyangoOnayForm.aciklama)
|
dataForm.append('aciklama', piyangoOnayStore.piyangoOnayForm.aciklama)
|
||||||
|
dataForm.append('izinSayisi', piyangoOnayStore.piyangoOnayForm.izinSayisi)
|
||||||
|
dataForm.append('izinTarihi', piyangoOnayStore.piyangoOnayForm.izinTarihi)
|
||||||
|
dataForm.append('izinAciklamasi', piyangoOnayStore.piyangoOnayForm.izinAciklamasi)
|
||||||
|
|
||||||
form = await dataStore.dataPost('OnayDurumu/', {
|
form = await dataStore.dataPost('OnayDurumu/', {
|
||||||
data: dataForm,
|
data: dataForm,
|
||||||
|
|||||||
@ -52,6 +52,11 @@ export const usePiyangoServices = defineStore('piyangoServices', () => {
|
|||||||
}
|
}
|
||||||
const GetPiyangoTeminatDurumList = async () => {
|
const GetPiyangoTeminatDurumList = async () => {
|
||||||
if (piyangoDataStore.piyangoTeminatDurumlari.length === 0) {
|
if (piyangoDataStore.piyangoTeminatDurumlari.length === 0) {
|
||||||
|
/*
|
||||||
|
1: Açık
|
||||||
|
2: İade
|
||||||
|
3: Zaman Aşımı İade
|
||||||
|
*/
|
||||||
let data = await dataStore.dataGet('TeminantStates/Durumlar')
|
let data = await dataStore.dataGet('TeminantStates/Durumlar')
|
||||||
piyangoDataStore.piyangoTeminatDurumlari = data
|
piyangoDataStore.piyangoTeminatDurumlari = data
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,9 +18,12 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
|
|||||||
if (piyangoTeminatValidationStore.FormCheck()) {
|
if (piyangoTeminatValidationStore.FormCheck()) {
|
||||||
let form: any
|
let form: any
|
||||||
let dataForm = new FormData()
|
let dataForm = new FormData()
|
||||||
|
|
||||||
dataForm.append('state', piyangoTeminatStore.piyangoTeminatFormData.state)
|
dataForm.append('state', piyangoTeminatStore.piyangoTeminatFormData.state)
|
||||||
dataForm.append('amount', globalStore.floatEnLocale(piyangoTeminatStore.piyangoTeminatFormData.amount))
|
dataForm.append(
|
||||||
|
'amount',
|
||||||
|
globalStore.floatEnLocale(piyangoTeminatStore.piyangoTeminatFormData.amount)
|
||||||
|
)
|
||||||
dataForm.append('bankName', piyangoTeminatStore.piyangoTeminatFormData.bankName)
|
dataForm.append('bankName', piyangoTeminatStore.piyangoTeminatFormData.bankName)
|
||||||
dataForm.append('bankBranch', piyangoTeminatStore.piyangoTeminatFormData.bankBranch)
|
dataForm.append('bankBranch', piyangoTeminatStore.piyangoTeminatFormData.bankBranch)
|
||||||
dataForm.append(
|
dataForm.append(
|
||||||
@ -43,6 +46,32 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
|
|||||||
'description',
|
'description',
|
||||||
piyangoTeminatStore.piyangoTeminatFormData.description
|
piyangoTeminatStore.piyangoTeminatFormData.description
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if (usersStore.isPanelUser) {
|
||||||
|
if (piyangoTeminatStore.piyangoTeminatFormData.state === 1) {
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundDate = ''
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundCount = ''
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundDocumentUrl = ''
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundDescription = ''
|
||||||
|
}
|
||||||
|
dataForm.append(
|
||||||
|
'refundDate',
|
||||||
|
String(piyangoTeminatStore.piyangoTeminatFormData.refundDate)
|
||||||
|
)
|
||||||
|
dataForm.append(
|
||||||
|
'refundCount',
|
||||||
|
String(piyangoTeminatStore.piyangoTeminatFormData.refundCount)
|
||||||
|
)
|
||||||
|
dataForm.append(
|
||||||
|
'refundDocumentUrl',
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundDocumentUrl
|
||||||
|
)
|
||||||
|
dataForm.append(
|
||||||
|
'refundDescription',
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData.refundDescription
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
if (piyangoTeminatStore.isNew) {
|
if (piyangoTeminatStore.isNew) {
|
||||||
form = await dataStore.dataPost('TeminantStates/', {
|
form = await dataStore.dataPost('TeminantStates/', {
|
||||||
data: dataForm,
|
data: dataForm,
|
||||||
@ -61,8 +90,8 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (form !== 'errorfalse') {
|
if (form !== 'errorfalse') {
|
||||||
piyangoTeminatStore.isNew = false
|
piyangoTeminatStore.isNew = false
|
||||||
piyangoTeminatValidationStore.formChanged = false
|
piyangoTeminatValidationStore.formChanged = false
|
||||||
piyangoTeminatStore.refreshList = true
|
piyangoTeminatStore.refreshList = true
|
||||||
piyangoTeminatStore.teminatPanel = false
|
piyangoTeminatStore.teminatPanel = false
|
||||||
}
|
}
|
||||||
@ -80,7 +109,7 @@ export const usePiyangoTeminatService = defineStore('piyangoTeminatService', ()
|
|||||||
|
|
||||||
if (form !== 'errorfalse') {
|
if (form !== 'errorfalse') {
|
||||||
piyangoTeminatStore.isNew = false
|
piyangoTeminatStore.isNew = false
|
||||||
await Object.assign(piyangoTeminatStore.piyangoTeminatFormData, form)
|
await Object.assign(piyangoTeminatStore.piyangoTeminatFormData, form)
|
||||||
} else {
|
} else {
|
||||||
await piyangoTeminatStore.ResetFormData()
|
await piyangoTeminatStore.ResetFormData()
|
||||||
await piyangoTeminatStore.RestoreFormData()
|
await piyangoTeminatStore.RestoreFormData()
|
||||||
|
|||||||
@ -1,34 +1,34 @@
|
|||||||
import * as signalR from "@microsoft/signalr";
|
import * as signalR from '@microsoft/signalr'
|
||||||
import { v4 as uuidv4 } from "uuid";
|
import { v4 as uuidv4 } from 'uuid'
|
||||||
|
|
||||||
let connection: signalR.HubConnection;
|
let connection: signalR.HubConnection
|
||||||
let connectionId = "";
|
let connectionId = ''
|
||||||
|
|
||||||
export const connectToHub = async () => {
|
export const connectToHub = async () => {
|
||||||
connection = new signalR.HubConnectionBuilder()
|
connection = new signalR.HubConnectionBuilder()
|
||||||
.withUrl("https://panelapi.cekilisevi.gov.tr/uploadHub", {
|
.withUrl(import.meta.env.VITE_SOCKET_URL, {
|
||||||
withCredentials: false // Bu zorunlu, yoksa cookie vs gönderilmez
|
withCredentials: false // Bu zorunlu, yoksa cookie vs gönderilmez
|
||||||
}) // backend adresine göre düzenle
|
}) // backend adresine göre düzenle
|
||||||
.withAutomaticReconnect()
|
.withAutomaticReconnect()
|
||||||
.build();
|
.build()
|
||||||
|
|
||||||
await connection.start();
|
await connection.start()
|
||||||
connectionId = connection.connectionId || uuidv4(); // SignalR id'si ya da frontend'de de guid üretilebilir
|
connectionId = connection.connectionId || uuidv4() // SignalR id'si ya da frontend'de de guid üretilebilir
|
||||||
return connectionId;
|
return connectionId
|
||||||
};
|
}
|
||||||
|
|
||||||
export const onProgress = (callback: (data: any) => void) => {
|
export const onProgress = (callback: (data: any) => void) => {
|
||||||
connection.on("ReceiveProgress", callback);
|
connection.on('ReceiveProgress', callback)
|
||||||
};
|
}
|
||||||
|
|
||||||
export const onInsertProgress = (callback: (data: any) => void) => {
|
export const onInsertProgress = (callback: (data: any) => void) => {
|
||||||
connection.on("ReceiveInsertProgress", callback);
|
connection.on('ReceiveInsertProgress', callback)
|
||||||
};
|
}
|
||||||
|
|
||||||
export const onCompleted = (callback: (data: any) => void) => {
|
export const onCompleted = (callback: (data: any) => void) => {
|
||||||
connection.on("ReceiveCompleted", callback);
|
connection.on('ReceiveCompleted', callback)
|
||||||
};
|
}
|
||||||
|
|
||||||
export const onError = (callback: (data: any) => void) => {
|
export const onError = (callback: (data: any) => void) => {
|
||||||
connection.on("ReceiveError", callback);
|
connection.on('ReceiveError', callback)
|
||||||
};
|
}
|
||||||
|
|||||||
104
src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts
Normal file
104
src/module/cekilisler/stores/piyangoDosyaKapamaStore.ts
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
|
import { usePiyangoStore } from './piyangoStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaStore = defineStore('piyangoDosyaKapamaStore', () => {
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
const piyangoStore = usePiyangoStore()
|
||||||
|
|
||||||
|
const baseDosyaKapamaData = reactive<Record<string, any>>({
|
||||||
|
katilimSekli: '',
|
||||||
|
cD: false,
|
||||||
|
kutuMuhurlemeTutanagi: false,
|
||||||
|
kutuAcmaTutanagi: false,
|
||||||
|
cekilisTutanagi: false,
|
||||||
|
cekilisIzinAlinanTarihSaatAdres: false,
|
||||||
|
oncedenBelirlenenIkramiyeCekilis: false,
|
||||||
|
cekilisNumaraUzerindenCekilis: false,
|
||||||
|
dagitilmayanKuponTespiti: false,
|
||||||
|
cekilisSonucuIlan: false,
|
||||||
|
ilandaTarihGazete: false,
|
||||||
|
ilandaToplamKatilimci: false,
|
||||||
|
cekilisTutanagiIleUyumluKazananlar: false,
|
||||||
|
ilanSonBasvuruTeslimSuresi: false,
|
||||||
|
taahhutEdilenIkramiyeAdedi: null,
|
||||||
|
teslimEdilenIkramiyeAdedi: null,
|
||||||
|
asilIkramiyeSayisi: null,
|
||||||
|
yedekIkramiyeSayisi: null,
|
||||||
|
nufusCuzdani: false,
|
||||||
|
noterOnayliIbraname: false,
|
||||||
|
teslimBelgesi: false,
|
||||||
|
faturaFotokopileri: false,
|
||||||
|
tescileAitBelgeler: false,
|
||||||
|
sureIcindesAlinmayanIkramiyeAdedi: null,
|
||||||
|
tebligat: false,
|
||||||
|
feragat: false,
|
||||||
|
bagis: false,
|
||||||
|
kuponAsli: false,
|
||||||
|
duyuruMateryali: false,
|
||||||
|
ikramiyelerinSonTeslimTarihi: '',
|
||||||
|
teminatIadeTarihi: '',
|
||||||
|
cekilisId: piyangoStore.selectedLottery
|
||||||
|
})
|
||||||
|
const baseDosyaKapamaIkramiyeData = reactive<Record<string, any>>({
|
||||||
|
taahhutEdilenIkramiye: '',
|
||||||
|
tahhutEdilenIkramiyeAdet: '',
|
||||||
|
teslimEdilenIkramiyeAsil: '',
|
||||||
|
teslimEdilenIkramiyeYedek: '',
|
||||||
|
teslimEdilenIkramiye: '',
|
||||||
|
alinmayanIkramiye: '',
|
||||||
|
aciklama: '',
|
||||||
|
cekilisId: piyangoStore.selectedLottery
|
||||||
|
})
|
||||||
|
const dosyaKapamaData = reactive<Record<string, any>>({})
|
||||||
|
const safeDosyaKapamaData = reactive<Record<string, any>>({})
|
||||||
|
const isNew = ref<boolean>(false)
|
||||||
|
const isUpdate = ref<boolean>(false)
|
||||||
|
const formChanged = ref<boolean>(false)
|
||||||
|
const loaded = ref<boolean>(false)
|
||||||
|
|
||||||
|
const dosyaKapamaIkramiyeData = reactive<Record<string, any>>({})
|
||||||
|
const safeDosyaKapamaIkramiyeData = reactive<Record<string, any>>({})
|
||||||
|
const isDosyaKapamaIkramiyeUpdate = ref<boolean>(false)
|
||||||
|
const isDosyaKapamaIkramiyeFormChanged = ref<boolean>(false)
|
||||||
|
const isDosyaKapamaIkramiyeLoaded = ref<boolean>(false)
|
||||||
|
const dosyaKapamaIkramiyeListesiRefresh = ref<boolean>(false)
|
||||||
|
const dosyaKapamaIkramiyePanel = ref<boolean>(false)
|
||||||
|
|
||||||
|
const ResetFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
Object.assign(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
}
|
||||||
|
|
||||||
|
const RestoreFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaData, baseDosyaKapamaData)
|
||||||
|
Object.assign(dosyaKapamaData, safeDosyaKapamaData)
|
||||||
|
}
|
||||||
|
|
||||||
|
const ResetIkramiyeFormData = () => {
|
||||||
|
globalStore.ResetObject(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData)
|
||||||
|
Object.assign(dosyaKapamaIkramiyeData, baseDosyaKapamaIkramiyeData)
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
baseDosyaKapamaData,
|
||||||
|
dosyaKapamaData,
|
||||||
|
safeDosyaKapamaData,
|
||||||
|
isNew,
|
||||||
|
isUpdate,
|
||||||
|
formChanged,
|
||||||
|
loaded,
|
||||||
|
baseDosyaKapamaIkramiyeData,
|
||||||
|
dosyaKapamaIkramiyeData,
|
||||||
|
safeDosyaKapamaIkramiyeData,
|
||||||
|
isDosyaKapamaIkramiyeUpdate,
|
||||||
|
isDosyaKapamaIkramiyeFormChanged,
|
||||||
|
isDosyaKapamaIkramiyeLoaded,
|
||||||
|
dosyaKapamaIkramiyeListesiRefresh,
|
||||||
|
dosyaKapamaIkramiyePanel,
|
||||||
|
ResetFormData,
|
||||||
|
RestoreFormData,
|
||||||
|
ResetIkramiyeFormData
|
||||||
|
}
|
||||||
|
})
|
||||||
@ -31,6 +31,7 @@ export const usePiyangoIkramiyeStore = defineStore('piyangoIkramiyeStore', () =>
|
|||||||
const refreshList = ref<boolean>(false)
|
const refreshList = ref<boolean>(false)
|
||||||
const ikramiyePanel = ref<boolean>(false)
|
const ikramiyePanel = ref<boolean>(false)
|
||||||
const loaded = ref<boolean>(false)
|
const loaded = ref<boolean>(false)
|
||||||
|
const totalIkramiyeValue = ref<number>(0)
|
||||||
|
|
||||||
const totalIkramiyeValues = reactive<Record<string, any>>({
|
const totalIkramiyeValues = reactive<Record<string, any>>({
|
||||||
yedekTalihliAdedi: 'toplamyedektalihli',
|
yedekTalihliAdedi: 'toplamyedektalihli',
|
||||||
@ -69,6 +70,7 @@ export const usePiyangoIkramiyeStore = defineStore('piyangoIkramiyeStore', () =>
|
|||||||
ikramiyePanel,
|
ikramiyePanel,
|
||||||
loaded,
|
loaded,
|
||||||
totalIkramiyeValues,
|
totalIkramiyeValues,
|
||||||
|
totalIkramiyeValue,
|
||||||
ResetForm,
|
ResetForm,
|
||||||
CalculateToplamDeger
|
CalculateToplamDeger
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,10 @@ export const usePiyangoOnayStore = defineStore('piyangoOnayStore', () => {
|
|||||||
onayCekilisId: piyangoStore.selectedLottery,
|
onayCekilisId: piyangoStore.selectedLottery,
|
||||||
kisiId: usersStore.userId,
|
kisiId: usersStore.userId,
|
||||||
aciklama: '',
|
aciklama: '',
|
||||||
file: ''
|
file: '',
|
||||||
|
izinSayisi: '',
|
||||||
|
izinTarihi: '',
|
||||||
|
izinAciklamasi: ''
|
||||||
})
|
})
|
||||||
const piyangoOnayForm = reactive<Record<string, any>>({})
|
const piyangoOnayForm = reactive<Record<string, any>>({})
|
||||||
const piyangoOnaySafeForm = reactive<Record<string, any>>({})
|
const piyangoOnaySafeForm = reactive<Record<string, any>>({})
|
||||||
|
|||||||
@ -23,7 +23,11 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
|
|||||||
cekilisId: piyangoStore.selectedLottery,
|
cekilisId: piyangoStore.selectedLottery,
|
||||||
kisiId: usersStore.userId,
|
kisiId: usersStore.userId,
|
||||||
description: '',
|
description: '',
|
||||||
file: ''
|
file: '',
|
||||||
|
refundDate: '',
|
||||||
|
refundCount: '',
|
||||||
|
refundDocumentUrl: '',
|
||||||
|
refundDescription:''
|
||||||
})
|
})
|
||||||
|
|
||||||
const piyangoTeminatFormData = reactive<Record<string, any>>({})
|
const piyangoTeminatFormData = reactive<Record<string, any>>({})
|
||||||
@ -31,7 +35,7 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
|
|||||||
const loaded = ref<boolean>(false)
|
const loaded = ref<boolean>(false)
|
||||||
const isNew = ref<boolean>(false)
|
const isNew = ref<boolean>(false)
|
||||||
const teminatPanel = ref<boolean>(false)
|
const teminatPanel = ref<boolean>(false)
|
||||||
const selectedTeminatId = ref<number|null>(null)
|
const selectedTeminatId = ref<number | null>(null)
|
||||||
const refreshList = ref<boolean>(false)
|
const refreshList = ref<boolean>(false)
|
||||||
|
|
||||||
const ResetFormData = () => {
|
const ResetFormData = () => {
|
||||||
@ -42,7 +46,7 @@ export const usePiyangoTeminatStore = defineStore('piyangoTeminatStore', () => {
|
|||||||
loaded.value = true
|
loaded.value = true
|
||||||
}, 30)
|
}, 30)
|
||||||
}
|
}
|
||||||
const RestoreFormData = () => {
|
const RestoreFormData = () => {
|
||||||
Object.assign(piyangoTeminatFormData, piyangoTeminatSafeFormData)
|
Object.assign(piyangoTeminatFormData, piyangoTeminatSafeFormData)
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
|
|||||||
@ -0,0 +1,85 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
import { usePiyangoDosyaKapamaStore } from '../stores/piyangoDosyaKapamaStore'
|
||||||
|
|
||||||
|
export const usePiyangoDosyaKapamaValidationStore = defineStore(
|
||||||
|
'piyangoDosyaKapamaValidationStore',
|
||||||
|
() => {
|
||||||
|
const piyangoDosyaKapamaStore = usePiyangoDosyaKapamaStore()
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
|
||||||
|
const isFormValid = ref<boolean>(true)
|
||||||
|
const invalidTexts = reactive<Record<string, any>>({})
|
||||||
|
const isIkramiyeFormValid = ref<boolean>(true)
|
||||||
|
const ikramiyeInvalidTexts = reactive<Record<string, any>>({})
|
||||||
|
|
||||||
|
const FormCheck = (): boolean => {
|
||||||
|
Object.assign(invalidTexts, {})
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaData,
|
||||||
|
invalidTexts,
|
||||||
|
'mecraAdi',
|
||||||
|
'Yayınlanacak mecranın adını yazınız.'
|
||||||
|
)
|
||||||
|
|
||||||
|
isFormValid.value = Object.keys(invalidTexts).length === 0
|
||||||
|
return isFormValid.value
|
||||||
|
}
|
||||||
|
|
||||||
|
const IkramiyeFormCheck = (): boolean => {
|
||||||
|
Object.assign(ikramiyeInvalidTexts, {})
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
'tahhutEdilenIkramiye',
|
||||||
|
'Lütfen taahhüt edilen ikramiyeyi seçiniz.'
|
||||||
|
)
|
||||||
|
if (
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.tahhutEdilenIkramiyeAdet
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
isIkramiyeFormValid.value = false
|
||||||
|
ikramiyeInvalidTexts.tahhutEdilenIkramiye =
|
||||||
|
'Lütfen taahhüt edilen ikramiyeyi seçiniz.'
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil
|
||||||
|
) &&
|
||||||
|
validationStore.checkEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData.teslimEdilenIkramiyeAsil
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
isIkramiyeFormValid.value = false
|
||||||
|
ikramiyeInvalidTexts.teslimEdilenIkramiyeAsil =
|
||||||
|
'En az 1 asil veya yedek talihli adedi girmelisiniz'
|
||||||
|
ikramiyeInvalidTexts.teslimEdilenIkramiyeYedek =
|
||||||
|
'En az 1 asil veya yedek talihli adedi girmelisiniz'
|
||||||
|
}
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoDosyaKapamaStore.dosyaKapamaIkramiyeData,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
'alinmayanIkramiye',
|
||||||
|
'Alınmayan ikramiye adedi boş olamaz. En az 1 asil veya yedek ikramiye adedi giriniz.'
|
||||||
|
)
|
||||||
|
|
||||||
|
isIkramiyeFormValid.value = Object.keys(ikramiyeInvalidTexts).length === 0
|
||||||
|
return isIkramiyeFormValid.value
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
isFormValid,
|
||||||
|
invalidTexts,
|
||||||
|
isIkramiyeFormValid,
|
||||||
|
ikramiyeInvalidTexts,
|
||||||
|
FormCheck,
|
||||||
|
IkramiyeFormCheck
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
@ -22,6 +22,20 @@ export const usePiyangoOnayValidationStore = defineStore(
|
|||||||
'onayDurumuIslemTipiId',
|
'onayDurumuIslemTipiId',
|
||||||
'Bir işlem tipi seçmelisinz.'
|
'Bir işlem tipi seçmelisinz.'
|
||||||
)
|
)
|
||||||
|
if (piyangoOnayStore.piyangoOnayForm.onayDurumuIslemTipiId === 4) {
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoOnayStore.piyangoOnayForm,
|
||||||
|
invalidTexts,
|
||||||
|
'izinSayisi',
|
||||||
|
'İzin sayı no girmelisiniz.'
|
||||||
|
)
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoOnayStore.piyangoOnayForm,
|
||||||
|
invalidTexts,
|
||||||
|
'izinTarihi',
|
||||||
|
'İzin tarihi seçmelisiniz.'
|
||||||
|
)
|
||||||
|
}
|
||||||
isFormValid.value = Object.keys(invalidTexts).length === 0
|
isFormValid.value = Object.keys(invalidTexts).length === 0
|
||||||
return isFormValid.value
|
return isFormValid.value
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,6 +24,18 @@ export const usePiyangoTeminatValidationStore = defineStore(
|
|||||||
'state',
|
'state',
|
||||||
'Lütfen işlem tipini seçiniz.'
|
'Lütfen işlem tipini seçiniz.'
|
||||||
)
|
)
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData,
|
||||||
|
invalidTexts,
|
||||||
|
'refundDate',
|
||||||
|
'Lütfen iade tarihini seçiniz.'
|
||||||
|
)
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
piyangoTeminatStore.piyangoTeminatFormData,
|
||||||
|
invalidTexts,
|
||||||
|
'refundCount',
|
||||||
|
'Lütfen iade sayı no giriniz.'
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
|
|||||||
@ -167,7 +167,7 @@ export const usePiyangoValidationStore = defineStore('piyangoValidationStore', (
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
const ikramiyeTeslimMin = computed((): Date => {
|
const ikramiyeTeslimMin = computed((): Date => {
|
||||||
return piyangoStore.lotteryData.asilSonBasvuruTarihi
|
return piyangoStore.lotteryData.yedekSonBasvuruTarihi
|
||||||
})
|
})
|
||||||
const ikramiyeTeslimMax = computed((): Date => {
|
const ikramiyeTeslimMax = computed((): Date => {
|
||||||
var date: Date = new Date()
|
var date: Date = new Date()
|
||||||
@ -216,7 +216,7 @@ export const usePiyangoValidationStore = defineStore('piyangoValidationStore', (
|
|||||||
!usersStore.isPanelUser) ||
|
!usersStore.isPanelUser) ||
|
||||||
(usersStore.isPanelUser && piyangoStore.duzenleyenData.basvuruTipId !== 22)) &&
|
(usersStore.isPanelUser && piyangoStore.duzenleyenData.basvuruTipId !== 22)) &&
|
||||||
piyangoStore.lotteryData.amacpiyangoId === 2
|
piyangoStore.lotteryData.amacpiyangoId === 2
|
||||||
) {
|
) {
|
||||||
if (!usersStore.isPanelUser) piyangoStore.lotteryData.amacpiyangoId = null
|
if (!usersStore.isPanelUser) piyangoStore.lotteryData.amacpiyangoId = null
|
||||||
isFormValid.value = false
|
isFormValid.value = false
|
||||||
invalidTexts.amacpiyangoId =
|
invalidTexts.amacpiyangoId =
|
||||||
@ -240,7 +240,7 @@ export const usePiyangoValidationStore = defineStore('piyangoValidationStore', (
|
|||||||
if (
|
if (
|
||||||
piyangoStore.duzenleyenData.basvuruTipId !== 22 &&
|
piyangoStore.duzenleyenData.basvuruTipId !== 22 &&
|
||||||
piyangoStore.lotteryData.amacpiyangoId === 2
|
piyangoStore.lotteryData.amacpiyangoId === 2
|
||||||
) {
|
) {
|
||||||
if (!usersStore.isPanelUser) piyangoStore.lotteryData.amacpiyangoId = null
|
if (!usersStore.isPanelUser) piyangoStore.lotteryData.amacpiyangoId = null
|
||||||
isFormValid.value = false
|
isFormValid.value = false
|
||||||
invalidTexts.amacpiyangoId =
|
invalidTexts.amacpiyangoId =
|
||||||
@ -472,12 +472,16 @@ export const usePiyangoValidationStore = defineStore('piyangoValidationStore', (
|
|||||||
date: ilanTarihi2Max.value,
|
date: ilanTarihi2Max.value,
|
||||||
pattern: 'dd-mm-yy'
|
pattern: 'dd-mm-yy'
|
||||||
})
|
})
|
||||||
|
if (ilan2min > ilan2max) {
|
||||||
if (ilanTarihi2 < ilan2min || ilanTarihi2 > ilan2max) {
|
|
||||||
isFormValid.value = false
|
isFormValid.value = false
|
||||||
invalidTexts.ilantarihi2 = `2. İlan Tarihi ${ilan2mind} - ${ilan2maxd} tarihleri arasında olmalıdır.`
|
invalidTexts.ilantarihi2 = `Lütfen 1. ilan tarihini daha erken bir tarih ile değiştiriniz. 2. İlan tarihi 1. ilan tarihinden en az 1 gün sonra olabilir`
|
||||||
} else {
|
} else {
|
||||||
delete invalidTexts.ilantarihi2
|
if (ilanTarihi2 < ilan2min || ilanTarihi2 > ilan2max) {
|
||||||
|
isFormValid.value = false
|
||||||
|
invalidTexts.ilantarihi2 = `2. İlan Tarihi ${ilan2mind} - ${ilan2maxd} tarihleri arasında olmalıdır.`
|
||||||
|
} else {
|
||||||
|
delete invalidTexts.ilantarihi2
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
<template #talihliler><tab-piyango-talihli-listesi /></template>
|
<template #talihliler><tab-piyango-talihli-listesi /></template>
|
||||||
<template #itirazsikayet><tab-piyango-itiraz /></template>
|
<template #itirazsikayet><tab-piyango-itiraz /></template>
|
||||||
<template #piyangologlari><tab-piyango-loglari /></template>
|
<template #piyangologlari><tab-piyango-loglari /></template>
|
||||||
<template #yetkilendirme>
|
<template #yetkilendirme v-if="usersStore.isPanelUser">
|
||||||
<tab-piyango-yetkilendirme />
|
<tab-piyango-yetkilendirme />
|
||||||
</template>
|
</template>
|
||||||
<template #onaydurumu>
|
<template #onaydurumu>
|
||||||
@ -26,6 +26,9 @@
|
|||||||
<template #teminatlistesi>
|
<template #teminatlistesi>
|
||||||
<tab-piyango-teminat-durumu />
|
<tab-piyango-teminat-durumu />
|
||||||
</template>
|
</template>
|
||||||
|
<template #dosyakapama v-if="usersStore.isPanelUser && piyangoStore.lotteryDrawState">
|
||||||
|
<tab-piyango-dosya-kapama />
|
||||||
|
</template>
|
||||||
</tabs>
|
</tabs>
|
||||||
</AdminLayout>
|
</AdminLayout>
|
||||||
</template>
|
</template>
|
||||||
@ -52,6 +55,7 @@
|
|||||||
import TabPiyangoBilgileri from '@/module/cekilisler/components/TabPiyangoBilgileri.vue'
|
import TabPiyangoBilgileri from '@/module/cekilisler/components/TabPiyangoBilgileri.vue'
|
||||||
import TabPiyangoBilgileriDisplay from '../components/TabPiyangoBilgileriDisplay.vue'
|
import TabPiyangoBilgileriDisplay from '../components/TabPiyangoBilgileriDisplay.vue'
|
||||||
import TabPiyangoItiraz from '@/module/cekilisler/components/TabPiyangoItiraz.vue'
|
import TabPiyangoItiraz from '@/module/cekilisler/components/TabPiyangoItiraz.vue'
|
||||||
|
import TabPiyangoDosyaKapama from '@/module/cekilisler/components/TabPiyangoDosyaKapama.vue'
|
||||||
|
|
||||||
const loaded = ref<boolean>(false)
|
const loaded = ref<boolean>(false)
|
||||||
const tabList = ref<Record<string, any>[]>([
|
const tabList = ref<Record<string, any>[]>([
|
||||||
@ -60,13 +64,14 @@
|
|||||||
|
|
||||||
const CreateTabs = () => {
|
const CreateTabs = () => {
|
||||||
if (
|
if (
|
||||||
piyangoStore.lotteryApprove === 4 ||
|
(piyangoStore.lotteryApprove === 4 ||
|
||||||
piyangoStore.lotteryApprove === 10 ||
|
piyangoStore.lotteryApprove === 10 ||
|
||||||
piyangoStore.lotteryApprove === 11 ||
|
piyangoStore.lotteryApprove === 11 ||
|
||||||
piyangoStore.lotteryApprove === 12 ||
|
piyangoStore.lotteryApprove === 12 ||
|
||||||
piyangoStore.lotteryApprove === 13 ||
|
piyangoStore.lotteryApprove === 13 ||
|
||||||
piyangoStore.lotteryApprove === 14 ||
|
piyangoStore.lotteryApprove === 14 ||
|
||||||
usersStore.isPanelUser
|
usersStore.isPanelUser) &&
|
||||||
|
piyangoStore.lotteryPurposeId !== 3
|
||||||
) {
|
) {
|
||||||
tabList.value.push(
|
tabList.value.push(
|
||||||
{ text: 'Katılım Listesi', id: 'katilimcilistesi' },
|
{ text: 'Katılım Listesi', id: 'katilimcilistesi' },
|
||||||
@ -82,9 +87,13 @@
|
|||||||
}
|
}
|
||||||
tabList.value.push({ text: 'Onay Durumu', id: 'onaydurumu' })
|
tabList.value.push({ text: 'Onay Durumu', id: 'onaydurumu' })
|
||||||
|
|
||||||
if (piyangoStore.lotteryApprove !== 0) {
|
if (piyangoStore.lotteryApprove !== 0 && piyangoStore.lotteryPurposeId !== 3) {
|
||||||
tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' })
|
tabList.value.push({ text: 'Teminat Listesi', id: 'teminatlistesi' })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (usersStore.isPanelUser && piyangoStore.lotteryDrawState) {
|
||||||
|
tabList.value.push({ text: 'Dosya Kapama', id: 'dosyakapama' })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
|
|||||||
@ -67,6 +67,14 @@
|
|||||||
const tableHeader = computed<Record<string, any>[]>(() => {
|
const tableHeader = computed<Record<string, any>[]>(() => {
|
||||||
let header: Record<string, any>[] = []
|
let header: Record<string, any>[] = []
|
||||||
|
|
||||||
|
header.push({
|
||||||
|
name: 'piyangoId',
|
||||||
|
title: 'Piyango Id',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '10%' }
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
if (usersStore.isAraciFirma || usersStore.isPanelUser) {
|
if (usersStore.isAraciFirma || usersStore.isPanelUser) {
|
||||||
header.push({ name: 'duzenleyen', title: 'Düzenleyen' })
|
header.push({ name: 'duzenleyen', title: 'Düzenleyen' })
|
||||||
}
|
}
|
||||||
@ -101,14 +109,16 @@
|
|||||||
type: 'date',
|
type: 'date',
|
||||||
range: true
|
range: true
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
|
)
|
||||||
|
|
||||||
if (usersStore.isVakifDernek || usersStore.isPanelUser) {
|
if (usersStore.isVakifDernek || usersStore.isPanelUser) {
|
||||||
header.push({
|
header.push({
|
||||||
name: 'cekilisTarihi',
|
name: 'cekilisTarihi',
|
||||||
title: 'Çekiliş Tarihi',
|
title: 'Çekiliş Tarihi',
|
||||||
compute: (v: Record<string, any>): string => {
|
compute: (v: Record<string, any>): string => {
|
||||||
return dateStore.dateFormat({ date: v.cekilisTarihi })
|
if(v.piyangoAmacId === 3) return ''
|
||||||
|
else return dateStore.dateFormat({ date: v.cekilisTarihi })
|
||||||
},
|
},
|
||||||
sort: true,
|
sort: true,
|
||||||
filter: {
|
filter: {
|
||||||
@ -146,7 +156,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
header.push(
|
header.push(
|
||||||
{
|
{
|
||||||
|
|||||||
8
src/module/muhasebe/components/TabIzinBedelOraniForm.vue
Normal file
8
src/module/muhasebe/components/TabIzinBedelOraniForm.vue
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<template>
|
||||||
|
<section class="section-list form-inner-content-left">
|
||||||
|
<form-izin-bedel-orani />
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import FormIzinBedelOrani from './form/FormIzinBedelOrani.vue'
|
||||||
|
</script>
|
||||||
105
src/module/muhasebe/components/TabIzinBedelOraniListe.vue
Normal file
105
src/module/muhasebe/components/TabIzinBedelOraniListe.vue
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
<template>
|
||||||
|
<section class="section-list">
|
||||||
|
<div class="section-list-header">
|
||||||
|
<h2>İzin Bedel Oranı Listesi</h2>
|
||||||
|
<div class="section-list-header-buttons">
|
||||||
|
<button class="button-c button-add" @click="izinBedelOraniStore.NewForm()">
|
||||||
|
<i class="ico-c">
|
||||||
|
<svg width="16" height="16">
|
||||||
|
<use href="@/assets/images/icons.svg#plus"></use>
|
||||||
|
</svg>
|
||||||
|
</i>
|
||||||
|
Yeni İzin Bedel Oranı Ekle
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<list-table-content
|
||||||
|
v-if="izinBedelOraniService.loaded"
|
||||||
|
:tableHeader="tableHeader"
|
||||||
|
:rowAction="EditIzinBedelOrani"
|
||||||
|
icon="draws"
|
||||||
|
title="İzin Bedel Oranları"
|
||||||
|
listText="İzin Bedel Oranı"
|
||||||
|
:apiList="'IzinBedelOrani'"
|
||||||
|
apiText="İzin Bedel Oranı Listesi" />
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref, computed, onBeforeMount } from 'vue'
|
||||||
|
import { useIzinBedelOraniStore } from '../store/izinBedelOraniStore'
|
||||||
|
import { useIzinBedelOraniService } from '../service/izinBedelOraniService'
|
||||||
|
|
||||||
|
const izinBedelOraniStore = useIzinBedelOraniStore()
|
||||||
|
const izinBedelOraniService = useIzinBedelOraniService()
|
||||||
|
|
||||||
|
const tableHeader = ref<Record<string, any>[]>(
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name: 'id',
|
||||||
|
title: 'ID',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '8%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'ad',
|
||||||
|
title: 'Ad',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'oran',
|
||||||
|
title: 'Oran (%)',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '15%' },
|
||||||
|
compute: (v: Record<string, any>): string => {
|
||||||
|
return `%${v.oran}`
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aciklama',
|
||||||
|
title: 'Açıklama',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '30%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aktif',
|
||||||
|
title: 'Durum',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '12%' },
|
||||||
|
computeHtml: (v: Record<string, any>): string => {
|
||||||
|
if (v.aktif) {
|
||||||
|
return `<span class="back-grad back-grad-ok">Aktif</span>`
|
||||||
|
} else {
|
||||||
|
return `<span class="back-grad back-grad-alert">Pasif</span>`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'actions',
|
||||||
|
title: 'İşlemler',
|
||||||
|
style: { width: '15%' },
|
||||||
|
computeHtml: (v: Record<string, any>): string => {
|
||||||
|
let actions = `<button class="button-c button-edit" onclick="window.editIzinBedelOrani(${v.id})">
|
||||||
|
<i class="ico-c">
|
||||||
|
<svg width="14" height="14">
|
||||||
|
<use href="@/assets/images/icons.svg#edit"></use>
|
||||||
|
</svg>
|
||||||
|
</i>
|
||||||
|
Düzenle
|
||||||
|
</button> `
|
||||||
|
return actions
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
const EditIzinBedelOrani = (row: any) => {
|
||||||
|
izinBedelOraniStore.EditForm(row)
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
await izinBedelOraniService.GetIzinBedelOraniList()
|
||||||
|
izinBedelOraniService.loaded = true
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -4,7 +4,7 @@
|
|||||||
<h4>Piyango Bilgileri</h4>
|
<h4>Piyango Bilgileri</h4>
|
||||||
<div class="form-part-title-buttons" v-if="!isPreview">
|
<div class="form-part-title-buttons" v-if="!isPreview">
|
||||||
<button
|
<button
|
||||||
@click="BasvuruBedeliMuhasebelestir"
|
@click="BasvuruBedeliDialog"
|
||||||
v-if="
|
v-if="
|
||||||
(piyangoStore.lotteryApprove === 1 || piyangoStore.lotteryApprove === 4) &&
|
(piyangoStore.lotteryApprove === 1 || piyangoStore.lotteryApprove === 4) &&
|
||||||
(!piyangoStore.lotteryBasvuruBedeliStatus ||
|
(!piyangoStore.lotteryBasvuruBedeliStatus ||
|
||||||
@ -14,7 +14,7 @@
|
|||||||
Başvuru Bedelini Muhasebeleştir
|
Başvuru Bedelini Muhasebeleştir
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
@click="IzinBedeliMuhasebelestir"
|
@click="OpenIzinBedeliModal"
|
||||||
v-if="
|
v-if="
|
||||||
piyangoStore.lotteryApprove === 4 &&
|
piyangoStore.lotteryApprove === 4 &&
|
||||||
piyangoStore.lotteryData.amacpiyangoId !== 3 &&
|
piyangoStore.lotteryData.amacpiyangoId !== 3 &&
|
||||||
@ -30,13 +30,109 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<piyango-bilgileri-display-content v-if="loaded" :isPreview="isPreview" />
|
<piyango-bilgileri-display-content v-if="loaded" :isPreview="isPreview" />
|
||||||
|
|
||||||
|
<!-- İzin Bedeli Modal -->
|
||||||
|
<teleport to="body">
|
||||||
|
<div v-if="showIzinBedeliModal" class="modal-overlay" @click="CloseIzinBedeliModal">
|
||||||
|
<div class="modal-content" @click.stop>
|
||||||
|
<div class="modal-header">
|
||||||
|
<h3>İzin Bedeli Muhasebeleştir</h3>
|
||||||
|
<button class="modal-close" @click="CloseIzinBedeliModal">×</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Oran Seçiniz:</label>
|
||||||
|
<select @change="OnOranChange" class="form-select">
|
||||||
|
<option value="">Lütfen bir oran seçiniz</option>
|
||||||
|
<option v-for="oran in izinBedelOranlari" :key="oran.id" :value="oran.id">
|
||||||
|
{{ oran.oran }}% - {{ oran.adi }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="">
|
||||||
|
<table class="table-bordered">
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Toplam İkramiye Bedeli:</td>
|
||||||
|
<td>
|
||||||
|
{{
|
||||||
|
globalStore.toTrLocale(
|
||||||
|
Number(piyangoIkramiyeStore.totalIkramiyeValue)
|
||||||
|
)
|
||||||
|
}}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>İzin Bedeli Oran Tutarı:</td>
|
||||||
|
<td>
|
||||||
|
{{ globalStore.toTrLocale(calculatedOran) }}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>KDV:</td>
|
||||||
|
<td>
|
||||||
|
{{ globalStore.toTrLocale(calculatedKdv) }}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Toplam Bedel:</td>
|
||||||
|
<td>
|
||||||
|
{{
|
||||||
|
globalStore.toTrLocale(
|
||||||
|
Number(piyangoIkramiyeStore.totalIkramiyeValue) + calculatedKdv
|
||||||
|
)
|
||||||
|
}}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr v-if="piyangoStore.lotteryData.izinTarihi !== undefined">
|
||||||
|
<td>İzin Tarihi:</td>
|
||||||
|
<td>
|
||||||
|
{{
|
||||||
|
dateStore.dateFormat({
|
||||||
|
date: piyangoStore.lotteryData.izinTarihi,
|
||||||
|
pattern: 'dd-mm-yy',
|
||||||
|
splitDate: '/'
|
||||||
|
})
|
||||||
|
}}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr v-if="piyangoStore.lotteryData.izinSayisi !== undefined">
|
||||||
|
<td>İzin Sayısı:</td>
|
||||||
|
<td>
|
||||||
|
{{ piyangoStore.lotteryData.izinSayisi }}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button class="button-c button-cancel" @click="CloseIzinBedeliModal">
|
||||||
|
İptal
|
||||||
|
</button>
|
||||||
|
<button class="button-c button-save" @click="IzinBedeliMuhasebelestir">
|
||||||
|
Muhasebeleştir
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</teleport>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, onBeforeMount } from 'vue'
|
import { ref, onBeforeMount, computed } from 'vue'
|
||||||
|
|
||||||
import { useToastStore } from '@/components/global/toastStore'
|
import { useToastStore } from '@/components/global/toastStore'
|
||||||
const toastStore = useToastStore()
|
const toastStore = useToastStore()
|
||||||
|
import { usePiyangoIkramiyeStore } from '@/module/cekilisler/stores/piyangoIkramiyeStore'
|
||||||
|
const piyangoIkramiyeStore = usePiyangoIkramiyeStore()
|
||||||
|
import { useGlobalStore } from '@/stores/globalStore'
|
||||||
|
const globalStore = useGlobalStore()
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
import { useDateStore } from '@/stores/dateStore'
|
||||||
|
const dateStore = useDateStore()
|
||||||
|
|
||||||
export interface Props {
|
export interface Props {
|
||||||
isPreview?: boolean
|
isPreview?: boolean
|
||||||
@ -51,12 +147,25 @@
|
|||||||
|
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
const dataStore = useDataStore()
|
const dataStore = useDataStore()
|
||||||
import { usePreviewStore } from '@/stores/previewStore'
|
|
||||||
const previewStore = usePreviewStore()
|
|
||||||
import { usePiyangoStore } from '@/module/cekilisler/stores/piyangoStore'
|
import { usePiyangoStore } from '@/module/cekilisler/stores/piyangoStore'
|
||||||
const piyangoStore = usePiyangoStore()
|
const piyangoStore = usePiyangoStore()
|
||||||
|
import { useMuhasebeSettingsStore } from '@/module/muhasebe/store/muhasebeSettingsStore'
|
||||||
|
const muhasebeSettingsStore = useMuhasebeSettingsStore()
|
||||||
|
|
||||||
const loaded = ref<boolean>(false)
|
const loaded = ref<boolean>(false)
|
||||||
|
const showIzinBedeliModal = ref<boolean>(false)
|
||||||
|
const selectedOran = ref<number | null>(null)
|
||||||
|
const izinBedelOranlari = ref<Record<string, any>[]>([])
|
||||||
|
const selectedOranId = ref<number | null>(null)
|
||||||
|
const calculatedKdv = ref<number>(0)
|
||||||
|
const calculatedOran = ref<number>(0)
|
||||||
|
|
||||||
|
const calculatedBasvuruKdv = computed<number>(
|
||||||
|
() =>
|
||||||
|
(Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeli) *
|
||||||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani)) /
|
||||||
|
100
|
||||||
|
)
|
||||||
|
|
||||||
const GetData = async () => {
|
const GetData = async () => {
|
||||||
let data = await dataStore.dataGet(
|
let data = await dataStore.dataGet(
|
||||||
@ -95,12 +204,77 @@
|
|||||||
Object.assign(piyangoStore.araciUyeData, data)
|
Object.assign(piyangoStore.araciUyeData, data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const GetIzinBedelOranlari = async () => {
|
||||||
|
let data = await dataStore.dataGet('IzinBedelOrani/aktif')
|
||||||
|
if (data !== 'errorfalse') {
|
||||||
|
izinBedelOranlari.value = data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const GetIkramiyeTotalValues = async () => {
|
||||||
|
console.log(piyangoStore, 'piyangoStore')
|
||||||
|
let data = await dataStore.dataGet('Ikramiye/Cekilis/' + piyangoStore.selectedLottery)
|
||||||
|
if (data !== 'errorfalse') {
|
||||||
|
piyangoIkramiyeStore.totalIkramiyeValue = data.toplamdeger
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const BasvuruBedeliDialog = () => {
|
||||||
|
console.log(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeli)
|
||||||
|
console.log(calculatedBasvuruKdv.value)
|
||||||
|
console.log(
|
||||||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeli) +
|
||||||
|
calculatedBasvuruKdv.value
|
||||||
|
)
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Başvuru Bedelini Muhasebeleştir',
|
||||||
|
id: 'basvurubedelimuhasebelestir',
|
||||||
|
contentHtml: `<table class='table-bordered'>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>Başvuru Bedeli:</td>
|
||||||
|
<td>${globalStore.toTrLocale(
|
||||||
|
muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeli
|
||||||
|
)} ₺</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>KDV (%${
|
||||||
|
muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani
|
||||||
|
}):</td>
|
||||||
|
<td>
|
||||||
|
${globalStore.toTrLocale(calculatedBasvuruKdv.value)}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Toplam Bedel:</td>
|
||||||
|
<td>
|
||||||
|
${globalStore.toTrLocale(
|
||||||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeli) +
|
||||||
|
calculatedBasvuruKdv.value
|
||||||
|
)}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>`,
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Başvuru Bedelini Muhasebeleştir',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => BasvuruBedeliMuhasebelestir
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
const BasvuruBedeliMuhasebelestir = async () => {
|
const BasvuruBedeliMuhasebelestir = async () => {
|
||||||
let data = await dataStore.dataGet(
|
let data = await dataStore.dataGet(
|
||||||
'MuhasebeSettings/BasvuruBedeli/' + piyangoStore.selectedLottery
|
'MuhasebeSettings/BasvuruBedeli/' + piyangoStore.selectedLottery
|
||||||
)
|
)
|
||||||
if (data !== 'errorfalse') {
|
if (data !== 'errorfalse') {
|
||||||
toastStore.AddToast('Başvuru bedeli başarıyla muhasebeleştirildi. Fatura No: '+data.belgeNo, 'success', 30000)
|
toastStore.AddToast(
|
||||||
|
'Başvuru bedeli başarıyla muhasebeleştirildi. Fatura No: ' + data.belgeNo,
|
||||||
|
'success',
|
||||||
|
30000
|
||||||
|
)
|
||||||
loaded.value = false
|
loaded.value = false
|
||||||
await GetData()
|
await GetData()
|
||||||
piyangoStore.lotteryBasvuruBedeliStatus = true
|
piyangoStore.lotteryBasvuruBedeliStatus = true
|
||||||
@ -111,15 +285,68 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const OpenIzinBedeliModal = async () => {
|
||||||
|
await GetIzinBedelOranlari()
|
||||||
|
await GetIkramiyeTotalValues()
|
||||||
|
showIzinBedeliModal.value = true
|
||||||
|
selectedOran.value = null
|
||||||
|
selectedOranId.value = null
|
||||||
|
}
|
||||||
|
|
||||||
|
const CloseIzinBedeliModal = () => {
|
||||||
|
showIzinBedeliModal.value = false
|
||||||
|
selectedOran.value = null
|
||||||
|
selectedOranId.value = null
|
||||||
|
}
|
||||||
|
|
||||||
|
const OnOranChange = (event: Event) => {
|
||||||
|
const target = event.target as HTMLSelectElement
|
||||||
|
const selectedId = parseInt(target.value)
|
||||||
|
const selectedOranData = izinBedelOranlari.value.find(
|
||||||
|
(item) => item.id === selectedId
|
||||||
|
)
|
||||||
|
|
||||||
|
if (selectedOranData) {
|
||||||
|
selectedOranId.value = selectedOranData.id
|
||||||
|
selectedOran.value = selectedOranData.oran
|
||||||
|
} else {
|
||||||
|
selectedOranId.value = null
|
||||||
|
selectedOran.value = null
|
||||||
|
}
|
||||||
|
|
||||||
|
calculatedOran.value =
|
||||||
|
(Number(piyangoIkramiyeStore.totalIkramiyeValue) * Number(selectedOran.value)) / 100
|
||||||
|
|
||||||
|
calculatedKdv.value =
|
||||||
|
(calculatedOran.value *
|
||||||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani)) /
|
||||||
|
100
|
||||||
|
}
|
||||||
|
|
||||||
const IzinBedeliMuhasebelestir = async () => {
|
const IzinBedeliMuhasebelestir = async () => {
|
||||||
|
if (selectedOranId.value === null) {
|
||||||
|
toastStore.AddToast('Lütfen bir oran seçiniz', 'error', 5000)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
let data = await dataStore.dataGet(
|
let data = await dataStore.dataGet(
|
||||||
'MuhasebeSettings/IzinBasvuruBedeli/' + piyangoStore.selectedLottery
|
'MuhasebeSettings/IzinBasvuruBedeli/' +
|
||||||
|
piyangoStore.selectedLottery +
|
||||||
|
'/' +
|
||||||
|
selectedOranId.value
|
||||||
)
|
)
|
||||||
if (data !== 'errorfalse') {
|
if (data !== 'errorfalse') {
|
||||||
toastStore.AddToast('İzin bedeli başarıyla muhasebeleştirildi. Fatura No: '+data.izinBelgeNo , 'success', 30000)
|
toastStore.AddToast(
|
||||||
|
'İzin bedeli başarıyla muhasebeleştirildi. Fatura No: ' + data.izinBelgeNo,
|
||||||
|
'success',
|
||||||
|
30000
|
||||||
|
)
|
||||||
loaded.value = false
|
loaded.value = false
|
||||||
await GetData()
|
await GetData()
|
||||||
piyangoStore.lotteryIzinBedeliStatus = true
|
piyangoStore.lotteryIzinBedeliStatus = true
|
||||||
|
showIzinBedeliModal.value = false
|
||||||
|
selectedOran.value = null
|
||||||
|
selectedOranId.value = null
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
loaded.value = true
|
loaded.value = true
|
||||||
}, 30)
|
}, 30)
|
||||||
@ -131,3 +358,140 @@
|
|||||||
await GetData()
|
await GetData()
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.modal-overlay {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background-color: rgba(0, 0, 0, 0.5);
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
z-index: 9999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-content {
|
||||||
|
background: white;
|
||||||
|
border-radius: 8px;
|
||||||
|
padding: 0;
|
||||||
|
max-width: 500px;
|
||||||
|
width: 90%;
|
||||||
|
max-height: 90vh;
|
||||||
|
overflow-y: auto;
|
||||||
|
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-header {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
padding: 20px 24px;
|
||||||
|
border-bottom: 1px solid #e5e7eb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-header h3 {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #1f2937;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-close {
|
||||||
|
background: none;
|
||||||
|
border: none;
|
||||||
|
font-size: 24px;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #6b7280;
|
||||||
|
padding: 0;
|
||||||
|
width: 30px;
|
||||||
|
height: 30px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border-radius: 4px;
|
||||||
|
transition: background-color 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-close:hover {
|
||||||
|
background-color: #f3f4f6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-body {
|
||||||
|
padding: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-group {
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-group label {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #374151;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-select {
|
||||||
|
width: 100%;
|
||||||
|
padding: 12px;
|
||||||
|
border: 1px solid #d1d5db;
|
||||||
|
border-radius: 6px;
|
||||||
|
font-size: 14px;
|
||||||
|
background-color: white;
|
||||||
|
transition: border-color 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-select:focus {
|
||||||
|
outline: none;
|
||||||
|
border-color: #3b82f6;
|
||||||
|
box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-footer {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
gap: 12px;
|
||||||
|
padding: 20px 24px;
|
||||||
|
border-top: 1px solid #e5e7eb;
|
||||||
|
background-color: #f9fafb;
|
||||||
|
border-radius: 0 0 8px 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-c {
|
||||||
|
padding: 10px 20px;
|
||||||
|
border: none;
|
||||||
|
border-radius: 6px;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 500;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-cancel {
|
||||||
|
background-color: #6b7280;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-cancel:hover {
|
||||||
|
background-color: #4b5563;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-save {
|
||||||
|
background-color: #3b82f6;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.button-save:hover {
|
||||||
|
background-color: #2563eb;
|
||||||
|
}
|
||||||
|
.table-bordered {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.table-bordered tr td {
|
||||||
|
border-bottom: 1px solid #d8d8d8;
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
90
src/module/muhasebe/components/form/FormIzinBedelOrani.vue
Normal file
90
src/module/muhasebe/components/form/FormIzinBedelOrani.vue
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
<template>
|
||||||
|
<div
|
||||||
|
:class="['form-part', izinBedelOraniValidationStore.formChanged ? 'changed' : '']">
|
||||||
|
<div class="form-part-title">
|
||||||
|
<h4>{{ izinBedelOraniStore.isNew ? 'Yeni İzin Bedel Oranı' : 'İzin Bedel Oranı Düzenle' }}</h4>
|
||||||
|
<div class="form-part-title-buttons"></div>
|
||||||
|
</div>
|
||||||
|
<div class="form-part-content">
|
||||||
|
<form-input
|
||||||
|
required
|
||||||
|
half
|
||||||
|
modelKey="ad"
|
||||||
|
v-model="izinBedelOraniStore.izinBedelOraniForm.ad"
|
||||||
|
:invalidText="izinBedelOraniValidationStore.invalidTexts.ad"
|
||||||
|
label="Ad"
|
||||||
|
maxlength="100"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
required
|
||||||
|
half
|
||||||
|
modelKey="oran"
|
||||||
|
v-model="izinBedelOraniStore.izinBedelOraniForm.oran"
|
||||||
|
:invalidText="izinBedelOraniValidationStore.invalidTexts.oran"
|
||||||
|
label="Oran (%)"
|
||||||
|
maxlength="3"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
description="1-100 arasında bir rakam giriniz"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-textarea
|
||||||
|
required
|
||||||
|
modelKey="aciklama"
|
||||||
|
v-model="izinBedelOraniStore.izinBedelOraniForm.aciklama"
|
||||||
|
:invalidText="izinBedelOraniValidationStore.invalidTexts.aciklama"
|
||||||
|
label="Açıklama"
|
||||||
|
maxlength="500"
|
||||||
|
rows="4"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
|
<form-checkbox
|
||||||
|
modelKey="aktif"
|
||||||
|
v-model="izinBedelOraniStore.izinBedelOraniForm.aktif"
|
||||||
|
label="Aktif"
|
||||||
|
@change="OnKeyup" />
|
||||||
|
<div
|
||||||
|
class="form-item"
|
||||||
|
v-if="izinBedelOraniStore.isNew || izinBedelOraniValidationStore.formChanged">
|
||||||
|
<button
|
||||||
|
class="button-c button-save"
|
||||||
|
@click="izinBedelOraniService.SaveIzinBedelOrani">
|
||||||
|
{{ izinBedelOraniStore.isNew ? 'Kaydet' : 'Güncelle' }}
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
class="button-c button-cancel"
|
||||||
|
@click="CancelForm"
|
||||||
|
v-if="izinBedelOraniValidationStore.formChanged">
|
||||||
|
Vazgeç
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { onBeforeMount } from 'vue'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
import { useIzinBedelOraniStore } from '../../store/izinBedelOraniStore'
|
||||||
|
const izinBedelOraniStore = useIzinBedelOraniStore()
|
||||||
|
import { useIzinBedelOraniValidationStore } from '../../validation/izinBedelOraniValidationStore'
|
||||||
|
const izinBedelOraniValidationStore = useIzinBedelOraniValidationStore()
|
||||||
|
import { useIzinBedelOraniService } from '../../service/izinBedelOraniService'
|
||||||
|
const izinBedelOraniService = useIzinBedelOraniService()
|
||||||
|
|
||||||
|
const OnKeyup = () => {
|
||||||
|
izinBedelOraniValidationStore.formChanged = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const CancelForm = () => {
|
||||||
|
if (izinBedelOraniStore.isNew) {
|
||||||
|
izinBedelOraniStore.isNew = false
|
||||||
|
} else {
|
||||||
|
izinBedelOraniStore.RestoreData()
|
||||||
|
izinBedelOraniValidationStore.formChanged = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(() => {
|
||||||
|
if (izinBedelOraniStore.isNew) {
|
||||||
|
izinBedelOraniStore.ResetForm()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -6,17 +6,6 @@
|
|||||||
<div class="form-part-title-buttons"></div>
|
<div class="form-part-title-buttons"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-part-content" v-if="muhasebeSettingsService.loaded">
|
<div class="form-part-content" v-if="muhasebeSettingsService.loaded">
|
||||||
<form-input
|
|
||||||
required
|
|
||||||
half
|
|
||||||
modelKey="izinBedeliOrani"
|
|
||||||
v-model="muhasebeSettingsStore.muhasebeSettingsForm.izinBedeliOrani"
|
|
||||||
:invalidText="muhasebeSettingsValidationStore.invalidTexts.izinBedeliOrani"
|
|
||||||
label="İzin Bedeli Oranı"
|
|
||||||
maxlength="3"
|
|
||||||
@keydown="validationStore.allowNumbersWithKeys"
|
|
||||||
description="1-100 arasında bir rakam giriniz"
|
|
||||||
@keyup="OnKeyup" />
|
|
||||||
<form-input
|
<form-input
|
||||||
required
|
required
|
||||||
half
|
half
|
||||||
@ -26,6 +15,15 @@
|
|||||||
label="Başvuru Bedeli"
|
label="Başvuru Bedeli"
|
||||||
@keydown="validationStore.allowPrice"
|
@keydown="validationStore.allowPrice"
|
||||||
@keyup="OnKeyup" />
|
@keyup="OnKeyup" />
|
||||||
|
<form-input
|
||||||
|
required
|
||||||
|
half
|
||||||
|
modelKey="basvuruBedeliKdvOrani"
|
||||||
|
v-model="muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani"
|
||||||
|
:invalidText="muhasebeSettingsValidationStore.invalidTexts.BasvuruBedeliKdvOrani"
|
||||||
|
label="Başvuru Bedeli KDV Oranı"
|
||||||
|
@keydown="validationStore.allowPrice"
|
||||||
|
@keyup="OnKeyup" />
|
||||||
<form-input
|
<form-input
|
||||||
required
|
required
|
||||||
half
|
half
|
||||||
@ -58,7 +56,10 @@
|
|||||||
@click="muhasebeSettingsService.SaveMuhasebeSettings">
|
@click="muhasebeSettingsService.SaveMuhasebeSettings">
|
||||||
Kaydet
|
Kaydet
|
||||||
</button>
|
</button>
|
||||||
<button class="button-c button-cancel" @click="muhasebeSettingsStore.RestoreData" v-if="muhasebeSettingsValidationStore.formChanged">
|
<button
|
||||||
|
class="button-c button-cancel"
|
||||||
|
@click="muhasebeSettingsStore.RestoreData"
|
||||||
|
v-if="muhasebeSettingsValidationStore.formChanged">
|
||||||
Vazgeç
|
Vazgeç
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,9 +1,11 @@
|
|||||||
import muhasebePiyangoListesi from './muhasebe-piyango-listesi'
|
import muhasebePiyangoListesi from './muhasebe-piyango-listesi'
|
||||||
import muhasebePiyangoDetay from './muhasebe-piyango-detay'
|
import muhasebePiyangoDetay from './muhasebe-piyango-detay'
|
||||||
import muhasebeAyarlar from './muhasebe-ayarlar'
|
import muhasebeAyarlar from './muhasebe-ayarlar'
|
||||||
|
import izinBedelOrani from './izin-bedel-orani'
|
||||||
|
|
||||||
export default [
|
export default [
|
||||||
muhasebePiyangoListesi,
|
muhasebePiyangoListesi,
|
||||||
muhasebePiyangoDetay,
|
muhasebePiyangoDetay,
|
||||||
muhasebeAyarlar,
|
muhasebeAyarlar,
|
||||||
|
izinBedelOrani,
|
||||||
]
|
]
|
||||||
|
|||||||
10
src/module/muhasebe/routes/izin-bedel-orani.ts
Normal file
10
src/module/muhasebe/routes/izin-bedel-orani.ts
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
import IzinBedelOrani from '../views/IzinBedelOrani.vue'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
path: '/muhasebe/izin-bedel-orani',
|
||||||
|
name: 'IzinBedelOrani',
|
||||||
|
component: IzinBedelOrani,
|
||||||
|
meta: {
|
||||||
|
authRequired: true
|
||||||
|
}
|
||||||
|
}
|
||||||
102
src/module/muhasebe/service/izinBedelOraniService.ts
Normal file
102
src/module/muhasebe/service/izinBedelOraniService.ts
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref } from 'vue'
|
||||||
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
import { useIzinBedelOraniStore } from '../store/izinBedelOraniStore'
|
||||||
|
import { useIzinBedelOraniValidationStore } from '../validation/izinBedelOraniValidationStore'
|
||||||
|
|
||||||
|
export const useIzinBedelOraniService = defineStore('izinBedelOraniService', () => {
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
const izinBedelOraniStore = useIzinBedelOraniStore()
|
||||||
|
const izinBedelOraniValidationStore = useIzinBedelOraniValidationStore()
|
||||||
|
|
||||||
|
const loaded = ref<boolean>(false)
|
||||||
|
|
||||||
|
const SaveIzinBedelOrani = async (panelData: Record<string, any>, isUpdate: boolean = false) => {
|
||||||
|
if (izinBedelOraniValidationStore.FormCheck(panelData)) {
|
||||||
|
var res: any
|
||||||
|
|
||||||
|
if (!isUpdate) {
|
||||||
|
res = await dataStore.dataPost('IzinBedelOrani', {
|
||||||
|
data: {
|
||||||
|
adi: panelData.ad,
|
||||||
|
oran: panelData.oran,
|
||||||
|
aciklama: panelData.aciklama,
|
||||||
|
aktif: panelData.aktif
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
res = await dataStore.dataPut('IzinBedelOrani/' + panelData.id, {
|
||||||
|
data: {
|
||||||
|
id: panelData.id,
|
||||||
|
adi: panelData.ad,
|
||||||
|
oran: panelData.oran,
|
||||||
|
aciklama: panelData.aciklama,
|
||||||
|
aktif: panelData.aktif
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
if (res !== 'errorfalse') {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteIzinBedelOrani = async (id: number | string) => {
|
||||||
|
var res = await dataStore.dataDelete('IzinBedelOrani/' + id)
|
||||||
|
return res !== 'errorfalse'
|
||||||
|
}
|
||||||
|
|
||||||
|
const GetIzinBedelOraniList = async () => {
|
||||||
|
var res = await dataStore.dataGet('IzinBedelOrani')
|
||||||
|
if (res !== 'errorfalse') {
|
||||||
|
izinBedelOraniStore.izinBedelOraniList = res
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
const GetIzinBedelOraniById = async (id: number | string) => {
|
||||||
|
var res = await dataStore.dataGet('IzinBedelOrani/' + id)
|
||||||
|
if (res !== 'errorfalse') {
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
|
||||||
|
const GetAktifIzinBedelOraniList = async () => {
|
||||||
|
var res = await dataStore.dataGet('IzinBedelOrani/Aktif')
|
||||||
|
if (res !== 'errorfalse') {
|
||||||
|
izinBedelOraniStore.aktifIzinBedelOraniList = res
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
|
||||||
|
const UpdateIzinBedelOraniStatus = async (id: number | string, aktif: boolean) => {
|
||||||
|
var res = await dataStore.dataPut('IzinBedelOrani/' + id + '/Status', {
|
||||||
|
data: {
|
||||||
|
Aktif: aktif
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return res !== 'errorfalse'
|
||||||
|
}
|
||||||
|
|
||||||
|
const LoadData = async () => {
|
||||||
|
await GetIzinBedelOraniList()
|
||||||
|
await GetAktifIzinBedelOraniList()
|
||||||
|
loaded.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
loaded,
|
||||||
|
SaveIzinBedelOrani,
|
||||||
|
DeleteIzinBedelOrani,
|
||||||
|
GetIzinBedelOraniList,
|
||||||
|
GetIzinBedelOraniById,
|
||||||
|
GetAktifIzinBedelOraniList,
|
||||||
|
UpdateIzinBedelOraniStatus,
|
||||||
|
LoadData
|
||||||
|
}
|
||||||
|
})
|
||||||
59
src/module/muhasebe/store/izinBedelOraniStore.ts
Normal file
59
src/module/muhasebe/store/izinBedelOraniStore.ts
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
|
|
||||||
|
export const useIzinBedelOraniStore = defineStore('izinBedelOraniStore', () => {
|
||||||
|
const usersStore = useUsersStore()
|
||||||
|
|
||||||
|
const izinBedelOraniBaseForm = reactive<Record<string, any>>({
|
||||||
|
ad: '',
|
||||||
|
oran: 0,
|
||||||
|
aciklama: '',
|
||||||
|
aktif: true,
|
||||||
|
appUserId: usersStore.userId
|
||||||
|
})
|
||||||
|
|
||||||
|
const izinBedelOraniForm = reactive<Record<string, any>>({})
|
||||||
|
const izinBedelOraniSafeForm = reactive<Record<string, any>>({})
|
||||||
|
const izinBedelOraniList = ref<Record<string, any>[]>([])
|
||||||
|
const aktifIzinBedelOraniList = ref<Record<string, any>[]>([])
|
||||||
|
const isNew = ref<boolean>(false)
|
||||||
|
const izinBedelOraniLoaded = ref<boolean>(false)
|
||||||
|
|
||||||
|
const ResetForm = () => {
|
||||||
|
Object.assign(izinBedelOraniForm, izinBedelOraniBaseForm)
|
||||||
|
}
|
||||||
|
|
||||||
|
const SafeServerData = () => {
|
||||||
|
Object.assign(izinBedelOraniSafeForm, izinBedelOraniForm)
|
||||||
|
}
|
||||||
|
|
||||||
|
const RestoreData = () => {
|
||||||
|
Object.assign(izinBedelOraniForm, izinBedelOraniSafeForm)
|
||||||
|
}
|
||||||
|
|
||||||
|
const NewForm = () => {
|
||||||
|
ResetForm()
|
||||||
|
isNew.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const EditForm = (item: Record<string, any>) => {
|
||||||
|
Object.assign(izinBedelOraniForm, item)
|
||||||
|
isNew.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
izinBedelOraniBaseForm,
|
||||||
|
izinBedelOraniForm,
|
||||||
|
izinBedelOraniSafeForm,
|
||||||
|
izinBedelOraniList,
|
||||||
|
aktifIzinBedelOraniList,
|
||||||
|
isNew,
|
||||||
|
izinBedelOraniLoaded,
|
||||||
|
ResetForm,
|
||||||
|
SafeServerData,
|
||||||
|
RestoreData,
|
||||||
|
NewForm,
|
||||||
|
EditForm
|
||||||
|
}
|
||||||
|
})
|
||||||
@ -7,8 +7,8 @@ export const useMuhasebeSettingsStore = defineStore('muhasebeSettingsStore', ()
|
|||||||
|
|
||||||
const muhasebeSettingsBaseForm = reactive<Record<string, any>>({
|
const muhasebeSettingsBaseForm = reactive<Record<string, any>>({
|
||||||
appUserId: usersStore.userId,
|
appUserId: usersStore.userId,
|
||||||
izinBedeliOrani: 30,
|
|
||||||
basvuruBedeli: '10.167,00',
|
basvuruBedeli: '10.167,00',
|
||||||
|
BasvuruBedeliKdvOrani: 20,
|
||||||
kurumBanka: 'Türkiye Vakıflar Bankası T.A.O.',
|
kurumBanka: 'Türkiye Vakıflar Bankası T.A.O.',
|
||||||
kurumBankaSube: 'Ankara Kurumsal',
|
kurumBankaSube: 'Ankara Kurumsal',
|
||||||
kurumIBAN: 'TR26 0001 5001 5800 7295 4624 00'
|
kurumIBAN: 'TR26 0001 5001 5800 7295 4624 00'
|
||||||
|
|||||||
@ -0,0 +1,64 @@
|
|||||||
|
import { defineStore } from 'pinia'
|
||||||
|
import { ref, reactive } from 'vue'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
|
||||||
|
export const useIzinBedelOraniValidationStore = defineStore(
|
||||||
|
'izinBedelOraniValidationStore',
|
||||||
|
() => {
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
|
||||||
|
const formChanged = ref<boolean>(false)
|
||||||
|
const isFormValid = ref<boolean>(true)
|
||||||
|
const invalidTexts = reactive<Record<string, any>>({})
|
||||||
|
|
||||||
|
const FormCheck = (panelData: Record<string, any>): boolean => {
|
||||||
|
Object.assign(invalidTexts, {})
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
panelData,
|
||||||
|
invalidTexts,
|
||||||
|
'ad',
|
||||||
|
'Ad alanı zorunludur'
|
||||||
|
)
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
panelData,
|
||||||
|
invalidTexts,
|
||||||
|
'oran',
|
||||||
|
'Oran alanı zorunludur'
|
||||||
|
)
|
||||||
|
|
||||||
|
validationStore.IsFieldEmpty(
|
||||||
|
panelData,
|
||||||
|
invalidTexts,
|
||||||
|
'aciklama',
|
||||||
|
'Açıklama alanı zorunludur'
|
||||||
|
)
|
||||||
|
|
||||||
|
// Oran validation (0-100 arası)
|
||||||
|
if (panelData.oran !== undefined && panelData.oran !== '') {
|
||||||
|
const oran = parseFloat(panelData.oran)
|
||||||
|
if (isNaN(oran) || oran < 0 || oran > 100) {
|
||||||
|
invalidTexts.oran = 'Oran 0-100 arasında olmalıdır'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
isFormValid.value = Object.keys(invalidTexts).length === 0
|
||||||
|
return isFormValid.value
|
||||||
|
}
|
||||||
|
|
||||||
|
const ResetValidation = () => {
|
||||||
|
Object.assign(invalidTexts, {})
|
||||||
|
formChanged.value = false
|
||||||
|
isFormValid.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
formChanged,
|
||||||
|
isFormValid,
|
||||||
|
invalidTexts,
|
||||||
|
FormCheck,
|
||||||
|
ResetValidation
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
@ -19,22 +19,24 @@ export const useMuhasebeSettingsValidationStore = defineStore(
|
|||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
muhasebeSettingsStore.muhasebeSettingsForm,
|
muhasebeSettingsStore.muhasebeSettingsForm,
|
||||||
invalidTexts,
|
invalidTexts,
|
||||||
'izinBedeliOrani',
|
'basvuruBedeliKdvOrani',
|
||||||
'Lütfen izin bedeli oranını giriniz.'
|
'Lütfen izin bedeli oranını giriniz.'
|
||||||
)
|
)
|
||||||
if (
|
if (
|
||||||
!validationStore.checkEmpty(
|
!validationStore.checkEmpty(
|
||||||
muhasebeSettingsStore.muhasebeSettingsForm.izinBedeliOrani
|
muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
if (
|
if (
|
||||||
Number(muhasebeSettingsStore.muhasebeSettingsForm.izinBedeliOrani) === 0 ||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani) ===
|
||||||
Number(muhasebeSettingsStore.muhasebeSettingsForm.izinBedeliOrani) > 100
|
0 ||
|
||||||
|
Number(muhasebeSettingsStore.muhasebeSettingsForm.basvuruBedeliKdvOrani) > 100
|
||||||
) {
|
) {
|
||||||
isFormValid.value = false
|
isFormValid.value = false
|
||||||
invalidTexts['izinBedeliOrani'] = 'Lütfen 0-100 arasında bir değer giriniz.'
|
invalidTexts['basvuruBedeliKdvOrani'] =
|
||||||
|
'Lütfen 0-100 arasında bir değer giriniz.'
|
||||||
} else {
|
} else {
|
||||||
delete invalidTexts['izinBedeliOrani']
|
delete invalidTexts['basvuruBedeliKdvOrani']
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
validationStore.IsFieldEmpty(
|
validationStore.IsFieldEmpty(
|
||||||
|
|||||||
201
src/module/muhasebe/views/IzinBedelOrani.vue
Normal file
201
src/module/muhasebe/views/IzinBedelOrani.vue
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
<template>
|
||||||
|
<AdminLayout>
|
||||||
|
<Breadcrumb currentPageText="Muhasebe / İzin Bedel Oranı" />
|
||||||
|
<section class="section-list">
|
||||||
|
<list-table-content
|
||||||
|
:tableHeader="tableHeader"
|
||||||
|
:rowAction="updateAction"
|
||||||
|
:addAction="addAction"
|
||||||
|
icon="draws"
|
||||||
|
title="İzin Bedel Oranları"
|
||||||
|
listText="İzin Bedel Oranı"
|
||||||
|
:tableData="izinBedelOraniList"
|
||||||
|
apiText="İzin Bedel Oranı Listesi"
|
||||||
|
apiList="IzinBedelOrani"
|
||||||
|
v-model:refresh="refresh"
|
||||||
|
:rowActions="rowActions"
|
||||||
|
:rowActionStyle="'width:15%;'" />
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<panel-wrapper
|
||||||
|
v-if="panel"
|
||||||
|
v-model="panel"
|
||||||
|
:panel-title="isUpdate ? 'İzin Bedel Oranı Düzenle' : 'Yeni İzin Bedel Oranı Ekle'">
|
||||||
|
<template #panelContent>
|
||||||
|
<form-input
|
||||||
|
required
|
||||||
|
v-model="panelIzinBedelOrani.ad"
|
||||||
|
label="Ad"
|
||||||
|
maxlength="100" />
|
||||||
|
<form-input
|
||||||
|
required
|
||||||
|
v-model="panelIzinBedelOrani.oran"
|
||||||
|
label="Oran (%)"
|
||||||
|
maxlength="3"
|
||||||
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
|
description="1-100 arasında bir rakam giriniz" />
|
||||||
|
<form-textarea
|
||||||
|
required
|
||||||
|
v-model="panelIzinBedelOrani.aciklama"
|
||||||
|
label="Açıklama"
|
||||||
|
maxlength="500"
|
||||||
|
rows="4" />
|
||||||
|
<form-checkbox
|
||||||
|
v-model="panelIzinBedelOrani.aktif"
|
||||||
|
label="Aktif" />
|
||||||
|
</template>
|
||||||
|
<template #footerButton>
|
||||||
|
<div class="button-c button-save" @click="save">
|
||||||
|
{{ isUpdate ? 'Güncelle' : 'Ekle' }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</panel-wrapper>
|
||||||
|
</AdminLayout>
|
||||||
|
</template>
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { ref, onBeforeMount, computed } from 'vue'
|
||||||
|
import AdminLayout from '@/layouts/AdminLayout.vue'
|
||||||
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
import { useIzinBedelOraniStore } from '../store/izinBedelOraniStore'
|
||||||
|
import { useIzinBedelOraniService } from '../service/izinBedelOraniService'
|
||||||
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
|
||||||
|
const izinBedelOraniStore = useIzinBedelOraniStore()
|
||||||
|
const izinBedelOraniService = useIzinBedelOraniService()
|
||||||
|
const validationStore = useValidationStore()
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
|
||||||
|
const panel = ref<boolean>(false)
|
||||||
|
const isUpdate = ref<boolean>(false)
|
||||||
|
const refresh = ref<boolean>(false)
|
||||||
|
const panelIzinBedelOrani = ref<Record<string, any>>({})
|
||||||
|
const izinBedelOraniList = ref<Record<string, any>[]>([])
|
||||||
|
|
||||||
|
const tableHeader = ref<Record<string, any>[]>(
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name: 'id',
|
||||||
|
title: 'ID',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '8%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'adi',
|
||||||
|
title: 'Ad',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '20%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'oran',
|
||||||
|
title: 'Oran (%)',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '15%' },
|
||||||
|
compute: (v: Record<string, any>): string => {
|
||||||
|
return `%${v.oran}`
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aciklama',
|
||||||
|
title: 'Açıklama',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '30%' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'aktif',
|
||||||
|
title: 'Durum',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '12%' },
|
||||||
|
computeHtml: (v: Record<string, any>): string => {
|
||||||
|
if (v.aktif) {
|
||||||
|
return `<span class="back-grad back-grad-ok">Aktif</span>`
|
||||||
|
} else {
|
||||||
|
return `<span class="back-grad back-grad-alert">Pasif</span>`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
const DeleteRowPop = (data: Record<string, any>, i: number) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'İzin Bedel Oranı Sil',
|
||||||
|
id: 'deleteIzinBedelOrani',
|
||||||
|
content: 'İzin bedel oranını silmek istediğinize emin misiniz?',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'İzin Bedel Oranı Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteRow(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteRow = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('IzinBedelOrani/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deleteIzinBedelOrani')
|
||||||
|
refresh.value = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const rowActions = ref<Record<string, any>[]>([
|
||||||
|
{
|
||||||
|
text: 'Sil',
|
||||||
|
class: 'alert',
|
||||||
|
action: DeleteRowPop
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
const addAction = async () => {
|
||||||
|
isUpdate.value = false
|
||||||
|
panelIzinBedelOrani.value = {
|
||||||
|
ad: '',
|
||||||
|
oran: 0,
|
||||||
|
aciklama: '',
|
||||||
|
aktif: true
|
||||||
|
}
|
||||||
|
panel.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const updateAction = (row: any) => {
|
||||||
|
const foundItem = izinBedelOraniList.value.find((x) => x.id == row.id)
|
||||||
|
if (foundItem) {
|
||||||
|
panelIzinBedelOrani.value = {
|
||||||
|
id: foundItem.id,
|
||||||
|
ad: foundItem.adi,
|
||||||
|
oran: foundItem.oran,
|
||||||
|
aciklama: foundItem.aciklama,
|
||||||
|
aktif: foundItem.aktif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
panel.value = true
|
||||||
|
isUpdate.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const save = async () => {
|
||||||
|
const result = await izinBedelOraniService.SaveIzinBedelOrani(panelIzinBedelOrani.value, isUpdate.value)
|
||||||
|
if (result) {
|
||||||
|
panel.value = false
|
||||||
|
isUpdate.value = false
|
||||||
|
refresh.value = true
|
||||||
|
await loadIzinBedelOraniList()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const loadIzinBedelOraniList = async () => {
|
||||||
|
const data = await dataStore.dataGet('IzinBedelOrani')
|
||||||
|
if (data !== 'errorfalse') {
|
||||||
|
izinBedelOraniList.value = data
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onBeforeMount(async () => {
|
||||||
|
await loadIzinBedelOraniList()
|
||||||
|
})
|
||||||
|
</script>
|
||||||
@ -54,6 +54,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
header.push(
|
header.push(
|
||||||
|
{
|
||||||
|
name: 'piyangoId',
|
||||||
|
title: 'Piyango ID',
|
||||||
|
sort: true,
|
||||||
|
style: { width: '10%' }
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: 'baslik',
|
name: 'baslik',
|
||||||
title: 'Başlık',
|
title: 'Başlık',
|
||||||
|
|||||||
@ -9,7 +9,15 @@
|
|||||||
:data="file"
|
:data="file"
|
||||||
@click="ReplaceImage"
|
@click="ReplaceImage"
|
||||||
onlyPreview
|
onlyPreview
|
||||||
:filePath="file.fileUrl" />
|
:filePath="file.fileUrl">
|
||||||
|
<template #actionButtons v-if="!usersStore.isPanelUser">
|
||||||
|
<i
|
||||||
|
class="ico-c ico-btn ico-section back-grad-alert"
|
||||||
|
@click="DeleteImagePop(file)">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
|
||||||
|
</i>
|
||||||
|
</template>
|
||||||
|
</file-list-item>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<div class="form-item form-item-picture clickable" @click="picturePanel = true">
|
<div class="form-item form-item-picture clickable" @click="picturePanel = true">
|
||||||
@ -43,17 +51,19 @@
|
|||||||
|
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
const dataStore = useDataStore()
|
const dataStore = useDataStore()
|
||||||
import { useGlobalStore } from '@/stores/globalStore'
|
|
||||||
const globalStore = useGlobalStore()
|
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
const validationStore = useValidationStore()
|
const validationStore = useValidationStore()
|
||||||
import { useSiteManagementPageStore } from '../../stores/siteManagementPageStore'
|
import { useSiteManagementPageStore } from '../../stores/siteManagementPageStore'
|
||||||
const siteManagementPageStore = useSiteManagementPageStore()
|
const siteManagementPageStore = useSiteManagementPageStore()
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
|
const usersStore = useUsersStore()
|
||||||
|
|
||||||
const picturePanel = ref<boolean>(false)
|
const picturePanel = ref<boolean>(false)
|
||||||
const isUpdate = ref<boolean>(false)
|
const isUpdate = ref<boolean>(false)
|
||||||
|
|
||||||
const file = reactive<Record<string,any>>({
|
const file = reactive<Record<string, any>>({
|
||||||
title: '',
|
title: '',
|
||||||
fileUrl: ''
|
fileUrl: ''
|
||||||
})
|
})
|
||||||
@ -108,6 +118,32 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const DeleteImagePop = (data: Record<string, any>) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Resim Sil',
|
||||||
|
id: 'deleteimage',
|
||||||
|
content: 'Resmi silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Resmi Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteImage(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteImage = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('DocumentPage/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deleteimage')
|
||||||
|
await GetData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
await GetData()
|
await GetData()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -51,7 +51,7 @@
|
|||||||
</AdminLayout>
|
</AdminLayout>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, onMounted, computed } from 'vue'
|
import { ref, computed } from 'vue'
|
||||||
import AdminLayout from '@/layouts/AdminLayout.vue'
|
import AdminLayout from '@/layouts/AdminLayout.vue'
|
||||||
import { Breadcrumb } from '@/components/global'
|
import { Breadcrumb } from '@/components/global'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
@ -87,7 +87,7 @@
|
|||||||
title: 'Resim Url',
|
title: 'Resim Url',
|
||||||
computeHtml: (v: Record<string, any>) => {
|
computeHtml: (v: Record<string, any>) => {
|
||||||
if (v.resimUrl !== null && v.resimUrl !== undefined) {
|
if (v.resimUrl !== null && v.resimUrl !== undefined) {
|
||||||
return globalStore.TableCellDocument(v.resimUrl)
|
return `<a href="${ v.resimUrl }" target="_blank" onclick="event.stopPropagation()"><img class="table-cell-image" src="${ v.resimUrl }" /></a>`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@ -78,7 +78,7 @@
|
|||||||
title: 'Resim Url',
|
title: 'Resim Url',
|
||||||
computeHtml: (v: Record<string, any>) => {
|
computeHtml: (v: Record<string, any>) => {
|
||||||
if (v.resimUrl !== null && v.resimUrl !== undefined) {
|
if (v.resimUrl !== null && v.resimUrl !== undefined) {
|
||||||
return globalStore.TableCellDocument(v.resimUrl)
|
return `<a href="${ v.resimUrl }" target="_blank" onclick="event.stopPropagation()"><img class="table-cell-image" src="${ v.resimUrl }" /></a>`
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@ -108,8 +108,8 @@
|
|||||||
v-model="uyeBilgileriStore.formData.gercekVergiNo"
|
v-model="uyeBilgileriStore.formData.gercekVergiNo"
|
||||||
required
|
required
|
||||||
label="Vergi No"
|
label="Vergi No"
|
||||||
maxlength="11"
|
maxlength="10"
|
||||||
minlength="11"
|
minlength="10"
|
||||||
:invalidText="uyeBilgileriStore.invalidTexts.gercekVergiNo"
|
:invalidText="uyeBilgileriStore.invalidTexts.gercekVergiNo"
|
||||||
@keydown="validationStore.allowNumbersWithKeys"
|
@keydown="validationStore.allowNumbersWithKeys"
|
||||||
@keyup="OnKeyup" />
|
@keyup="OnKeyup" />
|
||||||
|
|||||||
@ -16,7 +16,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="form-part-content" v-if="customerDocumentStore.loaded">
|
<div class="form-part-content" v-if="customerDocumentStore.loaded">
|
||||||
<template v-if="customerDocumentStore.customerDocumentsList.length > 0">
|
<template v-if="customerDocumentStore.customerDocumentsList.length > 0">
|
||||||
<div class="form-inner-comment waiting-d" v-if="customerDocumentStore.customerDocumentsList.length < 3">
|
<div
|
||||||
|
class="form-inner-comment waiting-d"
|
||||||
|
v-if="customerDocumentStore.customerDocumentsList.length < 3">
|
||||||
En az
|
En az
|
||||||
<strong>Ticaret Sicil Gazetesi, Vergi Levhası, İmza Sirküleri</strong>
|
<strong>Ticaret Sicil Gazetesi, Vergi Levhası, İmza Sirküleri</strong>
|
||||||
sisteme yüklenmiş olmalıdır.
|
sisteme yüklenmiş olmalıdır.
|
||||||
@ -26,12 +28,26 @@
|
|||||||
:data="file"
|
:data="file"
|
||||||
@click="EditDocument"
|
@click="EditDocument"
|
||||||
:filePath="file.filePath"
|
:filePath="file.filePath"
|
||||||
:editable="usersStore.selectedUserApproveId === 3 || usersStore.selectedUserApproveId === 0"
|
:editable="
|
||||||
title="title" />
|
usersStore.isPanelUser ||
|
||||||
|
(!usersStore.isPanelUser &&
|
||||||
|
(usersStore.selectedUserApproveId === 3 ||
|
||||||
|
usersStore.selectedUserApproveId === 0))
|
||||||
|
"
|
||||||
|
title="title">
|
||||||
|
<template #actionButtons v-if="usersStore.isPanelUser">
|
||||||
|
<i
|
||||||
|
class="ico-c ico-btn ico-section back-grad-alert"
|
||||||
|
@click="DeleteDocumentPop(file)">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
|
||||||
|
</i>
|
||||||
|
</template>
|
||||||
|
</file-list-item>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<template v-if="!usersStore.isPanelUser && usersStore.selectedUserApproveId !== 5">
|
<template
|
||||||
|
v-if="!usersStore.isPanelUser && usersStore.selectedUserApproveId !== 5">
|
||||||
<div class="form-inner-comment">
|
<div class="form-inner-comment">
|
||||||
<span>
|
<span>
|
||||||
Eklenmiş dosya bulunamadı. Üstteki butonu kullanarak dosya ekleyebilirsiniz.
|
Eklenmiş dosya bulunamadı. Üstteki butonu kullanarak dosya ekleyebilirsiniz.
|
||||||
@ -79,20 +95,21 @@
|
|||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, onBeforeMount } from 'vue'
|
import { onBeforeMount } from 'vue'
|
||||||
|
|
||||||
import PanelUserDocument from '../panel/PanelUserDocument.vue'
|
import PanelUserDocument from '../panel/PanelUserDocument.vue'
|
||||||
import PanelWrapper from '@/components/PanelWrapper.vue'
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
|
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
|
||||||
const dataStore = useDataStore()
|
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
|
|
||||||
import { useCustomerDocumentStore } from '../../stores/customerDocumentStore'
|
import { useCustomerDocumentStore } from '../../stores/customerDocumentStore'
|
||||||
const customerDocumentStore = useCustomerDocumentStore()
|
const customerDocumentStore = useCustomerDocumentStore()
|
||||||
import { useCustomerDocumentService } from '../../service/customerDocumentService'
|
import { useCustomerDocumentService } from '../../service/customerDocumentService'
|
||||||
const customerDocumentService = useCustomerDocumentService()
|
const customerDocumentService = useCustomerDocumentService()
|
||||||
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
const dataStore = useDataStore()
|
||||||
|
|
||||||
const NewDocument = () => {
|
const NewDocument = () => {
|
||||||
customerDocumentStore.ResetForm()
|
customerDocumentStore.ResetForm()
|
||||||
@ -106,6 +123,31 @@
|
|||||||
customerDocumentStore.documentPanel = true
|
customerDocumentStore.documentPanel = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const DeleteDocumentPop = (data: Record<string, any>) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Doküman Sil',
|
||||||
|
id: 'deletedoc',
|
||||||
|
content: 'Dokümanı silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Doküman Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteDocument(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteDocument = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('AppUserDocument/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deletedoc')
|
||||||
|
await customerDocumentService.GetDocumentList()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
usersStore.SetSelectedUser()
|
usersStore.SetSelectedUser()
|
||||||
|
|
||||||
|
|||||||
@ -1,49 +1,64 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class='form-part'>
|
<div class="form-part">
|
||||||
<div class='form-part-title'>
|
<div class="form-part-title">
|
||||||
<h4>Profil Resmi</h4>
|
<h4>Profil Resmi</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class='form-part-content'>
|
<div class="form-part-content">
|
||||||
<template v-if="file.filePath !== '' && file.filePath !== null">
|
<template v-if="file.filePath !== '' && file.filePath !== null">
|
||||||
<file-list-item
|
<file-list-item
|
||||||
:data='file'
|
:data="file"
|
||||||
@click='ReplaceImage'
|
@click="ReplaceImage"
|
||||||
onlyPreview
|
onlyPreview
|
||||||
:filePath='file.filePath' />
|
:filePath="file.filePath">
|
||||||
|
<template
|
||||||
|
#actionButtons
|
||||||
|
v-if="
|
||||||
|
route.name === 'Profil' ||
|
||||||
|
(route.name === 'Profil' && !usersStore.isPanelUser)
|
||||||
|
">
|
||||||
|
<i
|
||||||
|
class="ico-c ico-btn ico-section back-grad-alert"
|
||||||
|
@click="DeleteImagePop(file)">
|
||||||
|
<svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
|
||||||
|
</i>
|
||||||
|
</template>
|
||||||
|
</file-list-item>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<template v-if="route.name === 'Profil' || (route.name === 'Profil' && !usersStore.isPanelUser)">
|
<template
|
||||||
<div class='form-item form-item-picture clickable' @click='picturePanel = true'>
|
v-if="
|
||||||
<div class='image-c'>
|
route.name === 'Profil' ||
|
||||||
<i class='ico-c'>
|
(route.name === 'Profil' && !usersStore.isPanelUser)
|
||||||
|
">
|
||||||
|
<div class="form-item form-item-picture clickable" @click="picturePanel = true">
|
||||||
|
<div class="image-c">
|
||||||
|
<i class="ico-c">
|
||||||
<svg>
|
<svg>
|
||||||
<use href='@/assets/images/icons.svg#plus'></use>
|
<use href="@/assets/images/icons.svg#plus"></use>
|
||||||
</svg>
|
</svg>
|
||||||
</i>
|
</i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<div class='form-inner-comment'>
|
<div class="form-inner-comment">Eklenmiş resim bulunamadı.</div>
|
||||||
Eklenmiş resim bulunamadı.
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<panel-wrapper
|
<panel-wrapper
|
||||||
v-if='picturePanel'
|
v-if="picturePanel"
|
||||||
v-model='picturePanel'
|
v-model="picturePanel"
|
||||||
panel-title='Profil Resmi Ekle'>
|
panel-title="Profil Resmi Ekle">
|
||||||
<template #panelContent>
|
<template #panelContent>
|
||||||
<panel-user-picture />
|
<panel-user-picture />
|
||||||
</template>
|
</template>
|
||||||
<template #footerButton>
|
<template #footerButton>
|
||||||
<div class='button-c button-save' @click='FileUpload'>Ekle</div>
|
<div class="button-c button-save" @click="FileUpload">Ekle</div>
|
||||||
</template>
|
</template>
|
||||||
</panel-wrapper>
|
</panel-wrapper>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang='ts'>
|
<script setup lang="ts">
|
||||||
import { ref, reactive, onBeforeMount } from 'vue'
|
import { ref, reactive, onBeforeMount } from 'vue'
|
||||||
import PanelUserPicture from '../panel/PanelUserPicture.vue'
|
import PanelUserPicture from '../panel/PanelUserPicture.vue'
|
||||||
import PanelWrapper from '@/components/PanelWrapper.vue'
|
import PanelWrapper from '@/components/PanelWrapper.vue'
|
||||||
@ -52,20 +67,13 @@
|
|||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
import { useDataStore } from '@/stores/dataStore'
|
import { useDataStore } from '@/stores/dataStore'
|
||||||
|
|
||||||
const dataStore = useDataStore()
|
const dataStore = useDataStore()
|
||||||
import { useGlobalStore } from '@/stores/globalStore'
|
|
||||||
|
|
||||||
const globalStore = useGlobalStore()
|
|
||||||
import { useValidationStore } from '@/stores/validationStore'
|
import { useValidationStore } from '@/stores/validationStore'
|
||||||
|
|
||||||
const validationStore = useValidationStore()
|
const validationStore = useValidationStore()
|
||||||
import { useUsersStore } from '@/stores/usersStore'
|
import { useUsersStore } from '@/stores/usersStore'
|
||||||
|
|
||||||
const usersStore = useUsersStore()
|
const usersStore = useUsersStore()
|
||||||
import { useCustomerStore } from '@/module/uyeler/stores/customerStore'
|
import { useDialogStore } from '@/components/global/dialogStore'
|
||||||
|
const dialogStore = useDialogStore()
|
||||||
const customerStore = useCustomerStore()
|
|
||||||
|
|
||||||
const picturePanel = ref<boolean>(false)
|
const picturePanel = ref<boolean>(false)
|
||||||
const isUpdate = ref<boolean>(false)
|
const isUpdate = ref<boolean>(false)
|
||||||
@ -82,7 +90,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const GetData = async () => {
|
const GetData = async () => {
|
||||||
let dt = await dataStore.dataGet('AppUserResim/AppUserId/' + usersStore.selectedUserId())
|
let dt = await dataStore.dataGet(
|
||||||
|
'AppUserResim/AppUserId/' + usersStore.selectedUserId()
|
||||||
|
)
|
||||||
if (dt !== 'errorfalse') {
|
if (dt !== 'errorfalse') {
|
||||||
Object.assign(file, dt)
|
Object.assign(file, dt)
|
||||||
if (usersStore.selectedUserId() === usersStore.userId)
|
if (usersStore.selectedUserId() === usersStore.userId)
|
||||||
@ -126,6 +136,32 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const DeleteImagePop = (data: Record<string, any>) => {
|
||||||
|
dialogStore.CreateDialog({
|
||||||
|
title: 'Resim Sil',
|
||||||
|
id: 'deleteimage',
|
||||||
|
content: 'Resmi silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
|
||||||
|
closeText: 'Vazgeç',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
label: 'Resim Sil',
|
||||||
|
type: 'alert',
|
||||||
|
function: () => DeleteImage(data.id)
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const DeleteImage = async (id: number | string) => {
|
||||||
|
var dt = await dataStore.dataDelete('AppUserResim/' + id)
|
||||||
|
|
||||||
|
if (dt !== 'errorfalse') {
|
||||||
|
dialogStore.CloseDialog('deleteimage')
|
||||||
|
await GetData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
await GetData()
|
await GetData()
|
||||||
})
|
})
|
||||||
|
|||||||
@ -325,8 +325,8 @@ export const useUyeBilgileriStore = defineStore('uyeBilgileriStore', () => {
|
|||||||
IsFieldEmpty('gercekVergiDairesi', 'Bu alan boş bırakılamaz')
|
IsFieldEmpty('gercekVergiDairesi', 'Bu alan boş bırakılamaz')
|
||||||
IsFieldEmpty('gercekVergiNo', 'Bu alan boş bırakılamaz')
|
IsFieldEmpty('gercekVergiNo', 'Bu alan boş bırakılamaz')
|
||||||
if (!validationStore.checkEmpty(formData.gercekVergiNo)) {
|
if (!validationStore.checkEmpty(formData.gercekVergiNo)) {
|
||||||
if (formData.gercekVergiNo.length !== 11) {
|
if (formData.gercekVergiNo.length !== 10) {
|
||||||
invalidTexts.gercekVergiNo = 'Vergi numaranızı 11 hane olarak giriniz.'
|
invalidTexts.gercekVergiNo = 'Vergi numaranızı 10 hane olarak giriniz.'
|
||||||
isFormValid.value = false
|
isFormValid.value = false
|
||||||
} else {
|
} else {
|
||||||
delete invalidTexts.gercekVergiNo
|
delete invalidTexts.gercekVergiNo
|
||||||
|
|||||||
@ -8,7 +8,7 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
const globalDataStore = useGlobalDataStore()
|
const globalDataStore = useGlobalDataStore()
|
||||||
const toastStore = useToastStore()
|
const toastStore = useToastStore()
|
||||||
|
|
||||||
const siteBase = ref<string>('https://panelapi.cekilisevi.gov.tr/')
|
const siteBase = ref<string>(import.meta.env.VITE_API_URL)
|
||||||
const apiBase = ref<string>('api/')
|
const apiBase = ref<string>('api/')
|
||||||
const panelData = reactive<Record<string, any>>({})
|
const panelData = reactive<Record<string, any>>({})
|
||||||
const pageData = reactive<Record<string, any>>({})
|
const pageData = reactive<Record<string, any>>({})
|
||||||
@ -40,7 +40,7 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const response = await axios.get(apiBase.value + api, sendData)
|
const response = await axios.get(apiBase.value + api, sendData)
|
||||||
//console.log('response --', api, response)
|
console.log('response --', api, response)
|
||||||
|
|
||||||
if (data.full !== undefined && data.full) {
|
if (data.full !== undefined && data.full) {
|
||||||
return response
|
return response
|
||||||
@ -49,7 +49,7 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
}
|
}
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
CheckApiError(error.response.status, error.response.data)
|
CheckApiError(error.response.status, error.response.data)
|
||||||
//console.error('Hata oluştu -:', error)
|
console.error('Hata oluştu -:', error)
|
||||||
return 'errorfalse'
|
return 'errorfalse'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -86,7 +86,7 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
CheckApiError(error.response.status, error.response.data)
|
CheckApiError(error.response.status, error.response.data)
|
||||||
|
|
||||||
//console.error('Hata oluştu:', error)
|
console.error('Hata oluştu:', error)
|
||||||
return Promise.resolve('errorfalse')
|
return Promise.resolve('errorfalse')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -122,7 +122,7 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
CheckApiError(error.response.status, error.response.data)
|
CheckApiError(error.response.status, error.response.data)
|
||||||
|
|
||||||
//console.error('Hata oluştu:', error)
|
console.error('Hata oluştu:', error)
|
||||||
return Promise.resolve('errorfalse')
|
return Promise.resolve('errorfalse')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -156,24 +156,30 @@ export const useDataStore = defineStore('dataStore', () => {
|
|||||||
}
|
}
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
CheckApiError(error.response.status, error.response.data)
|
CheckApiError(error.response.status, error.response.data)
|
||||||
//console.error('Hata oluştu:', error)
|
console.error('Hata oluştu:', error)
|
||||||
return Promise.resolve('errorfalse')
|
return Promise.resolve('errorfalse')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const CheckApiError = async (status: number, data: Record<string, any>) => {
|
const CheckApiError = async (status: number, data: Record<string, any>) => {
|
||||||
if (status === 400) {
|
if (status === 400) {
|
||||||
const errorKey = data['hata'] || data['errors']
|
const errorKey = typeof data === "string" ? data : data?.hata || data?.errors;
|
||||||
|
|
||||||
if (errorKey !== undefined) {
|
if (errorKey !== undefined) {
|
||||||
errorKey.forEach((el: string) => {
|
if (Array.isArray(errorKey)) {
|
||||||
toastStore.AddToast(el, 'alert')
|
errorKey.forEach((el: string) => {
|
||||||
})
|
toastStore.AddToast(el, "alert");
|
||||||
|
});
|
||||||
|
} else if (typeof errorKey === "string") {
|
||||||
|
toastStore.AddToast(errorKey, "alert");
|
||||||
|
} else {
|
||||||
|
toastStore.AddToast("Bir hata oluştu.", "alert");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
toastStore.AddToast('Bir hata oluştu.', 'alert')
|
toastStore.AddToast("Bir hata oluştu.", "alert");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
const GetCustomerTipList = async () => {
|
const GetCustomerTipList = async () => {
|
||||||
if (globalDataStore.customerTips.length === 0) {
|
if (globalDataStore.customerTips.length === 0) {
|
||||||
|
|||||||
@ -16,7 +16,7 @@ export const useGlobalStore = defineStore('globalStore', () => {
|
|||||||
tablet: 992,
|
tablet: 992,
|
||||||
tabletp: 768
|
tabletp: 768
|
||||||
})
|
})
|
||||||
const perPage = ref<number>(10)
|
const perPage = ref<number>(25)
|
||||||
const selUser = ref<number>(0)
|
const selUser = ref<number>(0)
|
||||||
const selAuthUser = ref<number>(0)
|
const selAuthUser = ref<number>(0)
|
||||||
const selCustomer = ref<number>(0)
|
const selCustomer = ref<number>(0)
|
||||||
|
|||||||
@ -11,7 +11,7 @@ export const usePreviewStore = defineStore('previewStore', () => {
|
|||||||
var pdfData = `<style>
|
var pdfData = `<style>
|
||||||
.form-item{
|
.form-item{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
border: 1px solid #dddddd;
|
border: 1px solid #f2f2f2;
|
||||||
float:left;
|
float:left;
|
||||||
}
|
}
|
||||||
.form-item-half{
|
.form-item-half{
|
||||||
@ -19,8 +19,8 @@ export const usePreviewStore = defineStore('previewStore', () => {
|
|||||||
}
|
}
|
||||||
.display-title{
|
.display-title{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding: 8px 0;
|
padding: 4px 0;
|
||||||
border-bottom: 1px solid #e7e7e7;
|
border-bottom: 1px solid #f2f2f2;
|
||||||
margin-bottom: 8px;
|
margin-bottom: 8px;
|
||||||
}
|
}
|
||||||
</style>`
|
</style>`
|
||||||
@ -70,22 +70,22 @@ export const usePreviewStore = defineStore('previewStore', () => {
|
|||||||
return 1
|
return 1
|
||||||
},
|
},
|
||||||
hLineColor: function () {
|
hLineColor: function () {
|
||||||
return '#e7e7e7'
|
return '#f2f2f2'
|
||||||
},
|
},
|
||||||
vLineColor: function () {
|
vLineColor: function () {
|
||||||
return '#e7e7e7'
|
return '#f2f2f2'
|
||||||
},
|
},
|
||||||
paddingLeft: function () {
|
paddingLeft: function () {
|
||||||
return 6
|
return 4
|
||||||
},
|
},
|
||||||
paddingRight: function () {
|
paddingRight: function () {
|
||||||
return 6
|
return 4
|
||||||
},
|
},
|
||||||
paddingTop: function () {
|
paddingTop: function () {
|
||||||
return 6
|
return 4
|
||||||
},
|
},
|
||||||
paddingBottom: function () {
|
paddingBottom: function () {
|
||||||
return 6
|
return 4
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
pdfTableLayoutNoLine: {
|
pdfTableLayoutNoLine: {
|
||||||
@ -111,7 +111,7 @@ export const usePreviewStore = defineStore('previewStore', () => {
|
|||||||
return 0
|
return 0
|
||||||
},
|
},
|
||||||
paddingBottom: function () {
|
paddingBottom: function () {
|
||||||
return 6
|
return 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,10 +6,22 @@ import vueJsx from '@vitejs/plugin-vue-jsx'
|
|||||||
|
|
||||||
// https://vitejs.dev/config/
|
// https://vitejs.dev/config/
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [vue(), vueJsx()],
|
plugins: [
|
||||||
|
vue({
|
||||||
|
template: {
|
||||||
|
compilerOptions: {
|
||||||
|
comments: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
vueJsx()
|
||||||
|
],
|
||||||
resolve: {
|
resolve: {
|
||||||
alias: {
|
alias: {
|
||||||
'@': fileURLToPath(new URL('./src', import.meta.url))
|
'@': fileURLToPath(new URL('./src', import.meta.url))
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
esbuild: {
|
||||||
|
drop: process.env.NODE_ENV === 'production' ? ['console', 'debugger'] : []
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user