add
This commit is contained in:
parent
965da74937
commit
76f0e78fba
224
package-lock.json
generated
224
package-lock.json
generated
@ -47,6 +47,7 @@
|
|||||||
"fs-extra": "^10.1.0",
|
"fs-extra": "^10.1.0",
|
||||||
"postcss": "^8.4.14",
|
"postcss": "^8.4.14",
|
||||||
"prettier": "^2.5.1",
|
"prettier": "^2.5.1",
|
||||||
|
"rollup-plugin-visualizer": "^5.12.0",
|
||||||
"sass": "^1.53.0",
|
"sass": "^1.53.0",
|
||||||
"tailwindcss": "^3.0.24",
|
"tailwindcss": "^3.0.24",
|
||||||
"terser": "^5.15.1",
|
"terser": "^5.15.1",
|
||||||
@ -2338,6 +2339,20 @@
|
|||||||
"tiny-emitter": "^2.0.0"
|
"tiny-emitter": "^2.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/cliui": {
|
||||||
|
"version": "8.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz",
|
||||||
|
"integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"string-width": "^4.2.0",
|
||||||
|
"strip-ansi": "^6.0.1",
|
||||||
|
"wrap-ansi": "^7.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/clone": {
|
"node_modules/clone": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmmirror.com/clone/-/clone-1.0.4.tgz",
|
"resolved": "https://registry.npmmirror.com/clone/-/clone-1.0.4.tgz",
|
||||||
@ -2688,6 +2703,15 @@
|
|||||||
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
"integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/define-lazy-prop": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/define-property": {
|
"node_modules/define-property": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/define-property/-/define-property-1.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/define-property/-/define-property-1.0.0.tgz",
|
||||||
@ -2939,6 +2963,12 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz",
|
"resolved": "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz",
|
||||||
"integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ=="
|
"integrity": "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ=="
|
||||||
},
|
},
|
||||||
|
"node_modules/emoji-regex": {
|
||||||
|
"version": "8.0.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||||
|
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/emojis-list": {
|
"node_modules/emojis-list": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz",
|
||||||
@ -4141,6 +4171,15 @@
|
|||||||
"node": ">=6.9.0"
|
"node": ">=6.9.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/get-caller-file": {
|
||||||
|
"version": "2.0.5",
|
||||||
|
"resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||||
|
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": "6.* || 8.* || >= 10.*"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/get-stream": {
|
"node_modules/get-stream": {
|
||||||
"version": "6.0.1",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz",
|
||||||
@ -4601,6 +4640,18 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/is-docker": {
|
||||||
|
"version": "2.2.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz",
|
||||||
|
"integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
|
||||||
|
"dev": true,
|
||||||
|
"bin": {
|
||||||
|
"is-docker": "cli.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/is-extendable": {
|
"node_modules/is-extendable": {
|
||||||
"version": "0.1.1",
|
"version": "0.1.1",
|
||||||
"resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-0.1.1.tgz",
|
"resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-0.1.1.tgz",
|
||||||
@ -4619,6 +4670,15 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/is-fullwidth-code-point": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/is-glob": {
|
"node_modules/is-glob": {
|
||||||
"version": "4.0.3",
|
"version": "4.0.3",
|
||||||
"resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz",
|
||||||
@ -4688,6 +4748,18 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/is-wsl": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-2.2.0.tgz",
|
||||||
|
"integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"is-docker": "^2.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/isarray": {
|
"node_modules/isarray": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz",
|
||||||
@ -5476,6 +5548,20 @@
|
|||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/open": {
|
||||||
|
"version": "8.4.2",
|
||||||
|
"resolved": "https://registry.npmmirror.com/open/-/open-8.4.2.tgz",
|
||||||
|
"integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"define-lazy-prop": "^2.0.0",
|
||||||
|
"is-docker": "^2.1.1",
|
||||||
|
"is-wsl": "^2.2.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/optionator": {
|
"node_modules/optionator": {
|
||||||
"version": "0.9.1",
|
"version": "0.9.1",
|
||||||
"resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz",
|
"resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz",
|
||||||
@ -6120,6 +6206,15 @@
|
|||||||
"node": ">=0.10"
|
"node": ">=0.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/require-directory": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/resize-detector": {
|
"node_modules/resize-detector": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
"resolved": "https://registry.npmmirror.com/resize-detector/-/resize-detector-0.3.0.tgz",
|
"resolved": "https://registry.npmmirror.com/resize-detector/-/resize-detector-0.3.0.tgz",
|
||||||
@ -6215,6 +6310,41 @@
|
|||||||
"fsevents": "~2.3.2"
|
"fsevents": "~2.3.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/rollup-plugin-visualizer": {
|
||||||
|
"version": "5.12.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.12.0.tgz",
|
||||||
|
"integrity": "sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"open": "^8.4.0",
|
||||||
|
"picomatch": "^2.3.1",
|
||||||
|
"source-map": "^0.7.4",
|
||||||
|
"yargs": "^17.5.1"
|
||||||
|
},
|
||||||
|
"bin": {
|
||||||
|
"rollup-plugin-visualizer": "dist/bin/cli.js"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"rollup": "2.x || 3.x || 4.x"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"rollup": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/rollup-plugin-visualizer/node_modules/source-map": {
|
||||||
|
"version": "0.7.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.4.tgz",
|
||||||
|
"integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/run-parallel": {
|
"node_modules/run-parallel": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz",
|
||||||
@ -6686,6 +6816,20 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"node_modules/string-width": {
|
||||||
|
"version": "4.2.3",
|
||||||
|
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
|
||||||
|
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"emoji-regex": "^8.0.0",
|
||||||
|
"is-fullwidth-code-point": "^3.0.0",
|
||||||
|
"strip-ansi": "^6.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/strip-ansi": {
|
"node_modules/strip-ansi": {
|
||||||
"version": "6.0.1",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||||
@ -8099,6 +8243,50 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/wrap-ansi": {
|
||||||
|
"version": "7.0.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||||
|
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"ansi-styles": "^4.0.0",
|
||||||
|
"string-width": "^4.1.0",
|
||||||
|
"strip-ansi": "^6.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/wrap-ansi/node_modules/ansi-styles": {
|
||||||
|
"version": "4.3.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||||
|
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"color-convert": "^2.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/wrap-ansi/node_modules/color-convert": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"color-name": "~1.1.4"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=7.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/wrap-ansi/node_modules/color-name": {
|
||||||
|
"version": "1.1.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
|
||||||
|
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/wrappy": {
|
"node_modules/wrappy": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
|
"resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
@ -8123,6 +8311,15 @@
|
|||||||
"node": ">=0.4"
|
"node": ">=0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/y18n": {
|
||||||
|
"version": "5.0.8",
|
||||||
|
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz",
|
||||||
|
"integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=10"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/yallist": {
|
"node_modules/yallist": {
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
|
||||||
@ -8138,6 +8335,33 @@
|
|||||||
"node": ">= 6"
|
"node": ">= 6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/yargs": {
|
||||||
|
"version": "17.7.2",
|
||||||
|
"resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz",
|
||||||
|
"integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"cliui": "^8.0.1",
|
||||||
|
"escalade": "^3.1.1",
|
||||||
|
"get-caller-file": "^2.0.5",
|
||||||
|
"require-directory": "^2.1.1",
|
||||||
|
"string-width": "^4.2.3",
|
||||||
|
"y18n": "^5.0.5",
|
||||||
|
"yargs-parser": "^21.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/yargs-parser": {
|
||||||
|
"version": "21.1.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz",
|
||||||
|
"integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/yocto-queue": {
|
"node_modules/yocto-queue": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
"resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
|
||||||
|
@ -50,6 +50,7 @@
|
|||||||
"fs-extra": "^10.1.0",
|
"fs-extra": "^10.1.0",
|
||||||
"postcss": "^8.4.14",
|
"postcss": "^8.4.14",
|
||||||
"prettier": "^2.5.1",
|
"prettier": "^2.5.1",
|
||||||
|
"rollup-plugin-visualizer": "^5.12.0",
|
||||||
"sass": "^1.53.0",
|
"sass": "^1.53.0",
|
||||||
"tailwindcss": "^3.0.24",
|
"tailwindcss": "^3.0.24",
|
||||||
"terser": "^5.15.1",
|
"terser": "^5.15.1",
|
||||||
|
@ -31,7 +31,7 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { usePaging } from "@/hooks/usePaging"
|
import { usePaging } from "@/hooks/usePaging"
|
||||||
import { useDictData } from "@/hooks/useDictOptions"
|
import { useDictData } from "@/hooks/useDictOptions"
|
||||||
@ -43,7 +43,6 @@ const props = defineProps({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
// console.log(props.project_id)
|
|
||||||
// 查询条件
|
// 查询条件
|
||||||
const queryParams = reactive({
|
const queryParams = reactive({
|
||||||
project_id: props.project_id,
|
project_id: props.project_id,
|
||||||
|
@ -44,6 +44,7 @@
|
|||||||
<el-table-column label="金额大写 " prop="amount_daxie" show-overflow-tooltip />
|
<el-table-column label="金额大写 " prop="amount_daxie" show-overflow-tooltip />
|
||||||
<el-table-column label="合同有效期" prop="expire" show-overflow-tooltip />
|
<el-table-column label="合同有效期" prop="expire" show-overflow-tooltip />
|
||||||
<el-table-column label="状态" prop="contract_status" show-overflow-tooltip>
|
<el-table-column label="状态" prop="contract_status" show-overflow-tooltip>
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<dict-value :options="dictData.contract_status" :value="row.contract_status" />
|
<dict-value :options="dictData.contract_status" :value="row.contract_status" />
|
||||||
</template>
|
</template>
|
||||||
@ -57,10 +58,13 @@
|
|||||||
<el-table-column label="实际合同金额" prop="business_director" show-overflow-tooltip />
|
<el-table-column label="实际合同金额" prop="business_director" show-overflow-tooltip />
|
||||||
<el-table-column label="已退款金额" prop="contract_status" show-overflow-tooltip />
|
<el-table-column label="已退款金额" prop="contract_status" show-overflow-tooltip />
|
||||||
<el-table-column label="合同附件" prop="expire" show-overflow-tooltip>
|
<el-table-column label="合同附件" prop="expire" show-overflow-tooltip>
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<div v-if="row.annex && row.annex.length > 0">
|
<div v-if="row.annex && row.annex.length > 0">
|
||||||
<div v-for="(item, index) in row.annex" :key="index" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in row.annex" :key="index"
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item" target="_blank">文件{{ index + 1 }}查看</a>
|
style="margin-left: 5px;display: block;">
|
||||||
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item"
|
||||||
|
target="_blank">文件{{ index + 1 }}查看</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else>暂无文件</div>
|
<div v-else>暂无文件</div>
|
||||||
@ -79,7 +83,7 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { usePaging } from "@/hooks/usePaging"
|
import { usePaging } from "@/hooks/usePaging"
|
||||||
import { useDictData } from "@/hooks/useDictOptions"
|
import { useDictData } from "@/hooks/useDictOptions"
|
||||||
@ -92,7 +96,6 @@ const props = defineProps({
|
|||||||
type: String
|
type: String
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
// console.log(props.productid)
|
|
||||||
// 查询条件
|
// 查询条件
|
||||||
const queryParams = reactive({
|
const queryParams = reactive({
|
||||||
project_id: props.project_id || '',
|
project_id: props.project_id || '',
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-card>
|
<el-card>
|
||||||
<div class="flex flex-wrap">
|
<div class="flex flex-wrap">
|
||||||
<div class="head-con" v-for="(item, i) in list" :key="i" @click="dianji(i)" :style="{ backgroundColor: i === num ? '#3E8EF7' : '#fff' }">
|
<div class="head-con" v-for="(item, i) in list" :key="i" @click="dianji(i)"
|
||||||
|
:style="{ backgroundColor: i === num ? '#3E8EF7' : '#fff' }">
|
||||||
<div :class="{ bgcolor1: i === num, title: i !== num }">
|
<div :class="{ bgcolor1: i === num, title: i !== num }">
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</div>
|
</div>
|
||||||
@ -12,6 +13,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
|
||||||
@ -20,7 +22,6 @@ const props = defineProps({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
const list = reactive([])
|
const list = reactive([])
|
||||||
console.log(props.list)
|
|
||||||
list.splice(0, list.length, ...props.list)
|
list.splice(0, list.length, ...props.list)
|
||||||
const num = ref(-1);
|
const num = ref(-1);
|
||||||
const dianji = (index: any) => {
|
const dianji = (index: any) => {
|
||||||
|
@ -68,7 +68,6 @@ const props = defineProps({
|
|||||||
// 查询条件
|
// 查询条件
|
||||||
const queryParams = reactive({
|
const queryParams = reactive({
|
||||||
node_name: '',
|
node_name: '',
|
||||||
node_type: '',
|
|
||||||
project_id: props.project_id || "",
|
project_id: props.project_id || "",
|
||||||
node_type: props.node_type || ""
|
node_type: props.node_type || ""
|
||||||
})
|
})
|
||||||
|
@ -17,7 +17,8 @@
|
|||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
</el-form>
|
</el-form>
|
||||||
<div class="mt-4">
|
<div class="mt-4">
|
||||||
<el-table :data="pager.lists" @cell-click="handleCurrentChange" @selection-change="handleSelectionChange">
|
<el-table :data="pager.lists" @cell-click="handleCurrentChange"
|
||||||
|
@selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="55" />
|
<el-table-column type="selection" width="55" />
|
||||||
<el-table-column label="检查类别" prop="check_type" show-overflow-tooltip />
|
<el-table-column label="检查类别" prop="check_type" show-overflow-tooltip />
|
||||||
<el-table-column label="检查类容" prop="check_content" show-overflow-tooltip />
|
<el-table-column label="检查类容" prop="check_content" show-overflow-tooltip />
|
||||||
@ -34,7 +35,7 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { usePaging } from "@/hooks/usePaging"
|
import { usePaging } from "@/hooks/usePaging"
|
||||||
import { apisupervision_check_item_detailLists } from '@/api/supervision_check_item'
|
import { apisupervision_check_item_detailLists } from '@/api/supervision_check_item'
|
||||||
@ -63,7 +64,6 @@ const handleSelectionChange = (val) => {
|
|||||||
multipleSelection.value = val
|
multipleSelection.value = val
|
||||||
}
|
}
|
||||||
const confirm = () => {
|
const confirm = () => {
|
||||||
console.log(1)
|
|
||||||
emits("customEvent", multipleSelection.value);
|
emits("customEvent", multipleSelection.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,14 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<video-play
|
<video-play ref="playerRef" v-bind="options" :src="src" @play="onPlay" @pause="onPause"
|
||||||
ref="playerRef"
|
@timeupdate="onTimeupdate" @canplay="onCanplay" />
|
||||||
v-bind="options"
|
|
||||||
:src="src"
|
|
||||||
@play="onPlay"
|
|
||||||
@pause="onPause"
|
|
||||||
@timeupdate="onTimeupdate"
|
|
||||||
@canplay="onCanplay"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@ import type { App } from 'vue'
|
|||||||
import 'highlight.js/styles/github.css'
|
import 'highlight.js/styles/github.css'
|
||||||
import hljs from 'highlight.js/lib/common'
|
import hljs from 'highlight.js/lib/common'
|
||||||
import hljsVuePlugin from '@highlightjs/vue-plugin'
|
import hljsVuePlugin from '@highlightjs/vue-plugin'
|
||||||
console.log(hljs)
|
|
||||||
export default (app: App<Element>) => {
|
export default (app: App<Element>) => {
|
||||||
app.use(hljsVuePlugin)
|
app.use(hljsVuePlugin)
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</app-link>
|
</app-link>
|
||||||
<el-sub-menu v-else :index="routePath" :popper-class="popperClass">
|
<el-sub-menu v-else :index="routePath" :popper-class="popperClass">
|
||||||
|
|
||||||
<template #title>
|
<template #title>
|
||||||
<icon class="menu-item-icon" :size="16" v-if="routeMeta?.icon" :name="routeMeta?.icon" />
|
<icon class="menu-item-icon" :size="16" v-if="routeMeta?.icon" :name="routeMeta?.icon" />
|
||||||
<span>{{ routeMeta?.title }}</span>
|
<span>{{ routeMeta?.title }}</span>
|
||||||
@ -56,12 +57,12 @@ const queryStr = computed<string>(() => {
|
|||||||
const queryObj = JSON.parse(query)
|
const queryObj = JSON.parse(query)
|
||||||
return objectToQuery(queryObj)
|
return objectToQuery(queryObj)
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
// console.log(error)
|
|
||||||
|
|
||||||
return query
|
return query
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.el-menu-item,
|
.el-menu-item,
|
||||||
.el-sub-menu__title {
|
.el-sub-menu__title {
|
||||||
|
@ -110,7 +110,6 @@ const useTabsStore = defineStore({
|
|||||||
}
|
}
|
||||||
this.tasMap[fullPath] = tabItem
|
this.tasMap[fullPath] = tabItem
|
||||||
if (meta?.keepAlive) {
|
if (meta?.keepAlive) {
|
||||||
console.log(componentName)
|
|
||||||
this.addCache(componentName)
|
this.addCache(componentName)
|
||||||
}
|
}
|
||||||
if (hasTabIndex != -1) {
|
if (hasTabIndex != -1) {
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -148,8 +149,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -170,27 +171,32 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label=" 规格型号" prop="name1">
|
<el-table-column label=" 规格型号" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="申请数量" prop="remark">
|
<el-table-column label="申请数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -322,7 +328,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -453,7 +458,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -61,14 +64,18 @@
|
|||||||
<el-table-column label="处置金额" prop="tax" show-overflow-tooltip />
|
<el-table-column label="处置金额" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="净值金额" prop="tax" show-overflow-tooltip />
|
<el-table-column label="净值金额" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -173,7 +180,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +191,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -106,8 +107,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -325,7 +326,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -67,6 +67,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -182,7 +183,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -194,4 +194,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -67,8 +68,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -90,47 +91,57 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="资产序列号" prop="name1">
|
<el-table-column label="资产序列号" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="资产编号" prop="remark">
|
<el-table-column label="资产编号" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="资产名称" prop="remark">
|
<el-table-column label="资产名称" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="规格型号" prop="remark">
|
<el-table-column label="规格型号" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="计量单位" prop="remark">
|
<el-table-column label="计量单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="生产厂家" prop="remark">
|
<el-table-column label="生产厂家" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="出厂日期" prop="remark">
|
<el-table-column label="出厂日期" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="存放地点" prop="remark">
|
<el-table-column label="存放地点" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="预计使用天数" prop="remark">
|
<el-table-column label="预计使用天数" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -360,7 +371,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -58,14 +61,18 @@
|
|||||||
<el-table-column label="是否归还" prop="tax" show-overflow-tooltip />
|
<el-table-column label="是否归还" prop="tax" show-overflow-tooltip />
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -170,7 +177,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -182,4 +188,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -56,8 +57,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -78,60 +79,72 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="资产序列号" prop="name1">
|
<el-table-column label="资产序列号" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="资产名称" prop="remark">
|
<el-table-column label="资产名称" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="规格型号" prop="remark">
|
<el-table-column label="规格型号" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="计量单位" prop="remark">
|
<el-table-column label="计量单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="出厂日期" prop="remark">
|
<el-table-column label="出厂日期" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="资产金额" prop="remark">
|
<el-table-column label="资产金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="期初折旧" prop="remark">
|
<el-table-column label="期初折旧" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="累计折旧" prop="remark">
|
<el-table-column label="累计折旧" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="净值金额" prop="remark">
|
<el-table-column label="净值金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="折旧率(%) " prop="remark">
|
<el-table-column label="折旧率(%) " prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="本次折旧金额" prop="remark">
|
<el-table-column label="本次折旧金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -363,7 +376,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,6 +54,7 @@
|
|||||||
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -169,7 +170,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -181,4 +181,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -132,8 +133,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -351,7 +352,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -66,6 +66,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -181,7 +182,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -193,4 +193,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -66,8 +67,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -88,27 +89,32 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label=" 规格型号" prop="name1">
|
<el-table-column label=" 规格型号" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="申请数量" prop="remark">
|
<el-table-column label="申请数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -240,7 +246,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -371,7 +376,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,6 +54,7 @@
|
|||||||
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -169,7 +170,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -181,4 +181,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -50,8 +51,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -72,53 +73,64 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="资产序列号" prop="name1">
|
<el-table-column label="资产序列号" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="资产名称" prop="remark">
|
<el-table-column label="资产名称" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
|
|
||||||
<el-table-column label="规格型号" prop="remark">
|
<el-table-column label="规格型号" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="计量单位" prop="remark">
|
<el-table-column label="计量单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="领用日期" prop="remark">
|
<el-table-column label="领用日期" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="归还日期" prop="remark">
|
<el-table-column label="归还日期" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="归还人" prop="remark">
|
<el-table-column label="归还人" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="使用天数" prop="remark">
|
<el-table-column label="使用天数" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单日成本" prop="remark">
|
<el-table-column label="单日成本" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="成本金额" prop="remark">
|
<el-table-column label="成本金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -348,7 +360,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -66,14 +69,18 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -178,7 +185,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -190,4 +196,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
<div style="display: flex; flex-direction: row-reverse; justify-content: flex-start;margin-bottom: 30px;">
|
||||||
|
|
||||||
@ -126,8 +127,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -347,7 +348,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -63,6 +63,7 @@
|
|||||||
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
<el-table-column label="附件" prop="tax" show-overflow-tooltip />
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -178,7 +179,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -190,4 +190,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,35 +1,35 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="160px">
|
<el-form ref="formRef" :model="formData" label-width="160px">
|
||||||
<el-descriptions :column="3" title="基本信息" border>
|
<el-descriptions :column="3" title="基本信息" border>
|
||||||
<el-descriptions-item label="合同名称" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="合同名称" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.contract_name }}</el-descriptions-item>
|
formData.contract_name }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="合同编号" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="合同编号" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.contract_code }}</el-descriptions-item>
|
formData.contract_code }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.project_name }}</el-descriptions-item>
|
formData.project_name }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="项目编码" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="项目编码" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.project_code }}</el-descriptions-item>
|
formData.project_code }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="客户名称" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="客户名称" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.custom_name }}</el-descriptions-item>
|
formData.custom_name }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="合同金额" label-align="left" align="left" label-class-name="my-label">
|
<el-descriptions-item label="合同金额" label-align="left" align="left" label-class-name="my-label">
|
||||||
{{ formData.contract_amount }}
|
{{ formData.contract_amount }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="期次" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="期次" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.period_text }}</el-descriptions-item>
|
formData.period_text }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="税率(%)" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="税率(%)" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.tax_rate_text }}</el-descriptions-item>
|
formData.tax_rate_text }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="发票类型" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="发票类型" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.invoice_type_text }}</el-descriptions-item>
|
formData.invoice_type_text }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="开票金额(含税)" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="开票金额(含税)" label-align="left" align="left" label-class-name="my-label">
|
||||||
formData.amount_including_tax }}</el-descriptions-item>
|
{{
|
||||||
|
formData.amount_including_tax }}</el-descriptions-item>
|
||||||
<!-- <el-descriptions-item label="开票金额(税额)" label-align="left" align="left" label-class-name="my-label"> {{ formData.industry_text }}</el-descriptions-item> -->
|
<!-- <el-descriptions-item label="开票金额(税额)" label-align="left" align="left" label-class-name="my-label"> {{ formData.industry_text }}</el-descriptions-item> -->
|
||||||
<el-descriptions-item label="开票内容" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="开票内容" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.content }}</el-descriptions-item>
|
formData.content }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="发票编号" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="发票编号" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.invoice_no }}</el-descriptions-item>
|
formData.invoice_no }}</el-descriptions-item>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -51,13 +51,13 @@
|
|||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<el-descriptions :column="3" title="客户开票信息" border style="margin: 20px 0;">
|
<el-descriptions :column="3" title="客户开票信息" border style="margin: 20px 0;">
|
||||||
<el-descriptions-item label="开票公司名称" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="开票公司名称" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.invoicing_company_name }}</el-descriptions-item>
|
formData.invoicing_company_name }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="纳税人识别号" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="纳税人识别号" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.taxpayer_identification_number }}</el-descriptions-item>
|
formData.taxpayer_identification_number }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="开户银行" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="开户银行" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.deposit_bank }}</el-descriptions-item>
|
formData.deposit_bank }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="账号" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="账号" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.bank_accnout }}</el-descriptions-item>
|
formData.bank_accnout }}</el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="开户地址及电话" label-align="left" align="left" label-class-name="my-label">
|
<el-descriptions-item label="开户地址及电话" label-align="left" align="left" label-class-name="my-label">
|
||||||
{{ formData.address_phone }}
|
{{ formData.address_phone }}
|
||||||
@ -72,15 +72,15 @@
|
|||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<el-descriptions :column="3" title="发票邮寄信息" border style="margin: 20px 0;">
|
<el-descriptions :column="3" title="发票邮寄信息" border style="margin: 20px 0;">
|
||||||
<el-descriptions-item label="收票地址" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="收票地址" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.receiving_address }}</el-descriptions-item>
|
formData.receiving_address }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="联系人" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="联系人" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.contacts }}</el-descriptions-item>
|
formData.contacts }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="联系电话" label-align="left" align="left" label-class-name="my-label">{{
|
<el-descriptions-item label="联系电话" label-align="left" align="left" label-class-name="my-label">{{
|
||||||
formData.phone }}</el-descriptions-item>
|
formData.phone }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="邮寄时间" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="邮寄时间" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.mailing_type }}</el-descriptions-item>
|
formData.mailing_type }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="邮寄方式" label-align="left" align="left" label-class-name="my-label"> {{
|
<el-descriptions-item label="邮寄方式" label-align="left" align="left" label-class-name="my-label"> {{
|
||||||
formData.mailing_type }}</el-descriptions-item>
|
formData.mailing_type }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="邮寄单号" label-align="left" align="left" label-class-name="my-label">
|
<el-descriptions-item label="邮寄单号" label-align="left" align="left" label-class-name="my-label">
|
||||||
{{ formData.mailing_no }}
|
{{ formData.mailing_no }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
@ -170,7 +170,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -198,6 +197,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-card>
|
<el-card>
|
||||||
<template #header>
|
<template #header>
|
||||||
@ -37,8 +38,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="开票日期" prop="invoicing_date"
|
<el-form-item label="开票日期" prop="invoicing_date"
|
||||||
:rules="[{ required: true, message: '不可为空', trigger: 'change' }]">
|
:rules="[{ required: true, message: '不可为空', trigger: 'change' }]">
|
||||||
<el-date-picker class="flex-1 !flex" v-model="formData.invoicing_date" clearable type="date"
|
<el-date-picker class="flex-1 !flex" v-model="formData.invoicing_date" clearable
|
||||||
value-format="YYYY-MM-DD" placeholder="选择开票日期">
|
type="date" value-format="YYYY-MM-DD" placeholder="选择开票日期">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -52,8 +53,8 @@
|
|||||||
<el-form-item label="期次" prop="period"
|
<el-form-item label="期次" prop="period"
|
||||||
:rules="[{ required: true, message: '不可为空', trigger: 'change' }]">
|
:rules="[{ required: true, message: '不可为空', trigger: 'change' }]">
|
||||||
<el-select class="flex-1" v-model="formData.period" clearable placeholder="请选择期次">
|
<el-select class="flex-1" v-model="formData.period" clearable placeholder="请选择期次">
|
||||||
<el-option v-for="(item, index) in dictData.pay_period" :key="index" :label="item.name"
|
<el-option v-for="(item, index) in dictData.pay_period" :key="index"
|
||||||
:value="parseInt(item.value)" />
|
:label="item.name" :value="parseInt(item.value)" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -61,14 +62,15 @@
|
|||||||
<el-form-item label="税率" prop="tax_rate">
|
<el-form-item label="税率" prop="tax_rate">
|
||||||
|
|
||||||
<el-select class="flex-1" v-model="formData.tax_rate" clearable placeholder="请选择税率">
|
<el-select class="flex-1" v-model="formData.tax_rate" clearable placeholder="请选择税率">
|
||||||
<el-option v-for="(item, index) in dictData.tax_rate" :key="index" :label="item.name"
|
<el-option v-for="(item, index) in dictData.tax_rate" :key="index"
|
||||||
:value="parseInt(item.value)" />
|
:label="item.name" :value="parseInt(item.value)" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="发票类型" prop="contacts">
|
<el-form-item label="发票类型" prop="contacts">
|
||||||
<el-select class="flex-1" v-model="formData.invoice_type" clearable placeholder="请选择发票类型">
|
<el-select class="flex-1" v-model="formData.invoice_type" clearable
|
||||||
|
placeholder="请选择发票类型">
|
||||||
<el-option v-for="(item, index) in dictData.invoice_type" :key="index"
|
<el-option v-for="(item, index) in dictData.invoice_type" :key="index"
|
||||||
:label="item.name" :value="parseInt(item.value)" />
|
:label="item.name" :value="parseInt(item.value)" />
|
||||||
</el-select>
|
</el-select>
|
||||||
@ -114,10 +116,12 @@
|
|||||||
</el-upload>
|
</el-upload>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex"
|
||||||
|
style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
:href="item.uri" target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;"
|
||||||
|
@click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -130,6 +134,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-card>
|
<el-card>
|
||||||
|
|
||||||
<template #header>
|
<template #header>
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<span>客户开票信息</span>
|
<span>客户开票信息</span>
|
||||||
@ -169,6 +174,7 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
</el-card>
|
</el-card>
|
||||||
<el-card>
|
<el-card>
|
||||||
|
|
||||||
<template #header>
|
<template #header>
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<span>发票邮寄信息</span>
|
<span>发票邮寄信息</span>
|
||||||
@ -186,13 +192,14 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="联系电话" prop="phone" :rules="[{ validator: checkPhone, trigger: 'blur' }]">
|
<el-form-item label="联系电话" prop="phone"
|
||||||
|
:rules="[{ validator: checkPhone, trigger: 'blur' }]">
|
||||||
<el-input v-model="formData.phone" clearable placeholder="请输入联系电话" />
|
<el-input v-model="formData.phone" clearable placeholder="请输入联系电话" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col> <el-col :span="8">
|
</el-col> <el-col :span="8">
|
||||||
<el-form-item label="邮寄时间" prop="mailing_time">
|
<el-form-item label="邮寄时间" prop="mailing_time">
|
||||||
<el-date-picker class="flex-1 !flex" v-model="formData.mailing_time" clearable type="date"
|
<el-date-picker class="flex-1 !flex" v-model="formData.mailing_time" clearable
|
||||||
value-format="YYYY-MM-DD" placeholder="选择邮寄时间">
|
type="date" value-format="YYYY-MM-DD" placeholder="选择邮寄时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -408,7 +415,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,6 +57,7 @@
|
|||||||
<el-table-column label="税率(%)" prop="tax_rate" show-overflow-tooltip />
|
<el-table-column label="税率(%)" prop="tax_rate" show-overflow-tooltip />
|
||||||
<!-- <el-table-column label="开票金额(税额)" prop="tax" show-overflow-tooltip /> -->
|
<!-- <el-table-column label="开票金额(税额)" prop="tax" show-overflow-tooltip /> -->
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -175,7 +176,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -190,4 +190,3 @@ if (route.query?.listId) {
|
|||||||
}
|
}
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -55,8 +56,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -77,29 +78,35 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="询价分类" prop="name1">
|
<el-table-column label="询价分类" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -205,7 +212,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -334,7 +340,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -173,7 +174,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +185,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -63,7 +65,8 @@
|
|||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -166,7 +169,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -178,4 +180,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -64,14 +67,18 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -176,7 +183,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -188,4 +194,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -53,7 +55,8 @@
|
|||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -158,7 +161,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -170,4 +172,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -58,14 +61,18 @@
|
|||||||
<el-table-column label="价格" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="价格" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -170,7 +177,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -182,4 +188,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -58,8 +59,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -80,29 +81,35 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label=" 仓库名称" prop="name1">
|
<el-table-column label=" 仓库名称" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -208,7 +215,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -337,7 +343,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -173,7 +174,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +185,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -62,7 +64,8 @@
|
|||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -167,7 +170,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -179,4 +181,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -64,8 +65,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -86,53 +87,65 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="仓库" prop="name1">
|
<el-table-column label="仓库" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="参数说明" prop="remark">
|
<el-table-column label="参数说明" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量" prop="remark">
|
<el-table-column label="数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="含税单价" prop="remark">
|
<el-table-column label="含税单价" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="税率" prop="remark">
|
<el-table-column label="税率" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="不含税金额" prop="remark">
|
<el-table-column label="不含税金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="含税金额" prop="remark">
|
<el-table-column label="含税金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -328,7 +341,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -173,7 +174,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +185,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -59,8 +60,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -151,7 +152,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -280,7 +280,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -68,14 +71,18 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -180,7 +187,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -192,4 +198,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
@ -253,7 +254,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -57,14 +60,18 @@
|
|||||||
<el-table-column label="单位" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="单位" prop="invoicing_date" show-overflow-tooltip />
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -169,7 +176,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -181,4 +187,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
@ -252,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -57,14 +60,18 @@
|
|||||||
<el-table-column label="单位" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="单位" prop="invoicing_date" show-overflow-tooltip />
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -169,7 +176,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -181,4 +187,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -69,8 +70,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -91,41 +92,50 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="供应方式" prop="name1">
|
<el-table-column label="供应方式" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="参数说明" prop="remark">
|
<el-table-column label="参数说明" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量" prop="remark">
|
<el-table-column label="数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -230,7 +240,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -359,7 +368,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -173,7 +174,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +185,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -69,8 +70,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -91,41 +92,50 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="供应方式" prop="name1">
|
<el-table-column label="供应方式" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="参数说明" prop="remark">
|
<el-table-column label="参数说明" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量" prop="remark">
|
<el-table-column label="数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -230,7 +240,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -359,7 +368,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -67,14 +70,18 @@
|
|||||||
<el-table-column label="调出金额" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="调出金额" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -179,7 +186,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -191,4 +197,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
|
|
||||||
@ -50,8 +51,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -72,45 +73,55 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="仓库名称" prop="name1">
|
<el-table-column label="仓库名称" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="供应方式" prop="name2">
|
<el-table-column label="供应方式" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="库存数量" prop="remark">
|
<el-table-column label="库存数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="处理单价" prop="remark">
|
<el-table-column label="处理单价" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="处理金额" prop="remark">
|
<el-table-column label="处理金额" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -215,7 +226,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -344,7 +354,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
<el-table-column label="添加人" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
<el-table-column label="创建日期" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -173,7 +174,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +185,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -63,14 +66,18 @@
|
|||||||
<el-table-column label="处理单价" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="处理单价" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="处理金额" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="处理金额" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -175,7 +182,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -187,4 +193,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
@ -101,8 +102,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -123,29 +124,35 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label=" 仓库名称" prop="name1">
|
<el-table-column label=" 仓库名称" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -251,7 +258,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -380,7 +386,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
|
|
||||||
@ -58,8 +59,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -150,7 +151,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -279,7 +279,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -64,14 +67,18 @@
|
|||||||
<el-table-column label="库存数量" prop="tax" show-overflow-tooltip />
|
<el-table-column label="库存数量" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
<el-table-column label="备注" prop="tax" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -176,7 +183,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -188,4 +194,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -68,7 +70,8 @@
|
|||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -173,7 +176,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -185,4 +187,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -308,7 +309,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -71,14 +74,18 @@
|
|||||||
<el-table-column label="已退货数量" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="已退货数量" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="未退货数量" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="未退货数量" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -183,7 +190,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -195,4 +201,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -63,8 +64,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -85,43 +86,52 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="供应方式" prop="name1">
|
<el-table-column label="供应方式" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="参数说明" prop="remark">
|
<el-table-column label="参数说明" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="数量" prop="remark">
|
<el-table-column label="数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -211,12 +221,6 @@ const checkPhone = (rule: any, value: any, callback: (arg0: Error) => any) => {
|
|||||||
|
|
||||||
const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined) => void) => {
|
const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined) => void) => {
|
||||||
|
|
||||||
// const mailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/
|
|
||||||
// // if (!value) {
|
|
||||||
// // return callback(new Error('邮箱不能为空'))
|
|
||||||
// // }
|
|
||||||
|
|
||||||
|
|
||||||
if (value && !mailReg.test(value)) {
|
if (value && !mailReg.test(value)) {
|
||||||
callback(new Error('请输入正确的邮箱格式'))
|
callback(new Error('请输入正确的邮箱格式'))
|
||||||
} else {
|
} else {
|
||||||
@ -226,7 +230,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -355,7 +358,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -56,6 +56,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -171,7 +172,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -183,4 +183,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -157,8 +158,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -249,7 +250,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -378,7 +378,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -70,14 +73,18 @@
|
|||||||
<el-table-column label="含税单价" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="含税单价" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="库存金额" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="库存金额" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -182,7 +189,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -194,4 +200,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="开票申请详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -161,7 +160,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -275,6 +274,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
|
|
||||||
@ -58,8 +59,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -150,7 +151,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -279,7 +279,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
<el-card class="!border-none mb-4" shadow="never">
|
<el-card class="!border-none mb-4" shadow="never">
|
||||||
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
<el-form class="mb-[-16px]" :model="queryParams" inline>
|
||||||
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
<el-form-item label="开票公司名称" prop="invoicing_company_name">
|
||||||
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable placeholder="请输入开票公司名称" />
|
<el-input class="w-[280px]" v-model="queryParams.invoicing_company_name" clearable
|
||||||
|
placeholder="请输入开票公司名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
@ -15,7 +16,8 @@
|
|||||||
<el-form-item label="合同" prop="contract_id">
|
<el-form-item label="合同" prop="contract_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
<el-select class="w-[280px]" v-model="queryParams.contract_id" clearable placeholder="请选择合同">
|
||||||
<el-option label="全部" value=""></el-option>
|
<el-option label="全部" value=""></el-option>
|
||||||
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name" :value="item.id" />
|
<el-option v-for="(item, index) in list" :key="index" :label="item.contract_name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
@ -33,7 +35,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -71,14 +74,18 @@
|
|||||||
|
|
||||||
|
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
|
@click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/detail']" link
|
||||||
|
@click="handledetail(row)">
|
||||||
详情
|
详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -183,7 +190,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -195,4 +201,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -253,7 +253,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
@ -86,8 +87,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -108,43 +109,52 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="供应方式" prop="name1">
|
<el-table-column label="供应方式" prop="name1">
|
||||||
|
|
||||||
<template #default="{ row, $index }">
|
<template #default="{ row, $index }">
|
||||||
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
<el-input v-model="row.name1" readonly @click="subjectmu(row, $index)" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="材料编码" prop="name2">
|
<el-table-column label="材料编码" prop="name2">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.name2" readonly />
|
<el-input v-model="row.name2" readonly />
|
||||||
</template></el-table-column>
|
</template></el-table-column>
|
||||||
<el-table-column label="材料名称" prop="use_to">
|
<el-table-column label="材料名称" prop="use_to">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.use_to" /> </template>
|
<el-input v-model="row.use_to" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="规格型号" prop="amount">
|
<el-table-column label="规格型号" prop="amount">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.amount" type="number" /> </template>
|
<el-input v-model="row.amount" type="number" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="品牌" prop="remark">
|
<el-table-column label="品牌" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="参数说明" prop="remark">
|
<el-table-column label="参数说明" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单位" prop="remark">
|
<el-table-column label="单位" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="数量" prop="remark">
|
<el-table-column label="数量" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
<el-table-column label="备注" prop="remark">
|
<el-table-column label="备注" prop="remark">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-input v-model="row.remark" /> </template>
|
<el-input v-model="row.remark" /> </template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -249,7 +259,6 @@ const userEmail = (rule: any, value: string, callback: (arg0: Error | undefined)
|
|||||||
};
|
};
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.invoicing_amount_daxie = toChinesNum(e)
|
formData.invoicing_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
@ -378,7 +387,6 @@ const handleSubmit = async () => {
|
|||||||
formData.annex = formDataannex.map((item: any) => item.uri)
|
formData.annex = formDataannex.map((item: any) => item.uri)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(formRef.value?.validate(), '22222222')
|
|
||||||
await formRef.value?.validate()
|
await formRef.value?.validate()
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,6 +57,7 @@
|
|||||||
<el-table-column label="退库人" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="退库人" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
<el-table-column label="备注" prop="invoicing_date" show-overflow-tooltip />
|
||||||
<el-table-column label="操作" width="160" fixed="right">
|
<el-table-column label="操作" width="160" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
<el-button v-perms="['InvoicingRequests.InvoicingRequests/edit']" type="primary" link
|
||||||
@click="handleEdit(row)">
|
@click="handleEdit(row)">
|
||||||
@ -172,7 +173,6 @@ const getlist1 = () => {
|
|||||||
//获取合同
|
//获取合同
|
||||||
const getlist2 = () => {
|
const getlist2 = () => {
|
||||||
apiCustomLists().then((res) => {
|
apiCustomLists().then((res) => {
|
||||||
// console.log(res)
|
|
||||||
list1.value = res.lists
|
list1.value = res.lists
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -184,4 +184,3 @@ getlist2()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="detail-popup">
|
<div class="detail-popup">
|
||||||
<popup ref="popupRef" title="承兑汇票详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" title="承兑汇票详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
||||||
@ -95,9 +94,12 @@
|
|||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-form-item label="附件">
|
<el-form-item label="附件">
|
||||||
<div v-if="formDataannex.length > 0">
|
<div v-if="formDataannex.length > 0">
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex"
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri" target="_blank">{{ item.name }}</a>
|
style="margin-left: 5px;display: block;">
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
|
<span style="cursor: pointer;margin-left: 5px;"
|
||||||
|
@click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
@ -180,7 +182,6 @@ const handleSubmit = async () => {
|
|||||||
|
|
||||||
//打开弹窗
|
//打开弹窗
|
||||||
const open = () => {
|
const open = () => {
|
||||||
console.log('1111111')
|
|
||||||
popupRef.value?.open()
|
popupRef.value?.open()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,6 +203,7 @@ defineExpose({
|
|||||||
getDetail
|
getDetail
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 1.2em;
|
font-size: 1.2em;
|
||||||
|
@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="edit-popup">
|
<div class="edit-popup">
|
||||||
|
|
||||||
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
|
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
|
||||||
|
|
||||||
@ -57,8 +58,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="合同类型" prop="contract_type">
|
<el-form-item label="合同类型" prop="contract_type">
|
||||||
<el-select v-model="contract_type" clearable disabled placeholder="系统自动填写">
|
<el-select v-model="contract_type" clearable disabled placeholder="系统自动填写">
|
||||||
<el-option v-for="(item, index) in dictData.contract_type" :key="index" :label="item.name"
|
<el-option v-for="(item, index) in dictData.contract_type" :key="index"
|
||||||
:value="parseInt(item.value)" />
|
:label="item.name" :value="parseInt(item.value)" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item></el-col>
|
</el-form-item></el-col>
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
@ -133,7 +134,8 @@
|
|||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="收款金额大写" prop="receipt_amount_daxie"
|
<el-form-item label="收款金额大写" prop="receipt_amount_daxie"
|
||||||
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
|
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
|
||||||
<el-input v-model="formData.receipt_amount_daxie" readonly clearable placeholder="请输入收款金额大写" />
|
<el-input v-model="formData.receipt_amount_daxie" readonly clearable
|
||||||
|
placeholder="请输入收款金额大写" />
|
||||||
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -160,8 +162,8 @@
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
<div v-for="(item, index) in formDataannex" style="margin-left: 5px;display: block;">
|
||||||
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
|
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
|
||||||
target="_blank">{{ item.name }}</a>
|
:href="item.uri" target="_blank">{{ item.name }}</a>
|
||||||
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -227,7 +229,6 @@ const list1 = reactive([])
|
|||||||
const list2 = reactive([])
|
const list2 = reactive([])
|
||||||
|
|
||||||
const userInfo = userStore.userInfo
|
const userInfo = userStore.userInfo
|
||||||
console.log(userInfo, '222222')
|
|
||||||
// 上传文件
|
// 上传文件
|
||||||
const handleAvatarSuccess_four = (
|
const handleAvatarSuccess_four = (
|
||||||
response,
|
response,
|
||||||
@ -322,7 +323,6 @@ const getlist1 = (id: any) => {
|
|||||||
|
|
||||||
//监听输入
|
//监听输入
|
||||||
const amountinput = (e) => {
|
const amountinput = (e) => {
|
||||||
// console.log(e)
|
|
||||||
if (e && e > 0) {
|
if (e && e > 0) {
|
||||||
formData.receipt_amount_daxie = toChinesNum(e)
|
formData.receipt_amount_daxie = toChinesNum(e)
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="客户" prop="customer_id">
|
<el-form-item label="客户" prop="customer_id">
|
||||||
<el-select class="w-[280px]" v-model="queryParams.customer_id" clearable placeholder="请选择客户">
|
<el-select class="w-[280px]" v-model="queryParams.customer_id" clearable placeholder="请选择客户">
|
||||||
<el-option v-for="(item, index) in customerlist" :key="index" :label="item.name" :value="item.id" />
|
<el-option v-for="(item, index) in customerlist" :key="index" :label="item.name"
|
||||||
|
:value="item.id" />
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="合同" prop="contract">
|
<el-form-item label="合同" prop="contract">
|
||||||
@ -35,7 +36,8 @@
|
|||||||
</template>
|
</template>
|
||||||
新增
|
新增
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['refund.refund/delete']" :disabled="!selectData.length" @click="handleDelete(selectData)">
|
<el-button v-perms="['refund.refund/delete']" :disabled="!selectData.length"
|
||||||
|
@click="handleDelete(selectData)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
|
|
||||||
@ -53,6 +55,7 @@
|
|||||||
<el-table-column label="票据编号" prop="bill_sn" show-overflow-tooltip />
|
<el-table-column label="票据编号" prop="bill_sn" show-overflow-tooltip />
|
||||||
<el-table-column label="收票银行" prop="account_name" show-overflow-tooltip />
|
<el-table-column label="收票银行" prop="account_name" show-overflow-tooltip />
|
||||||
<el-table-column label="汇票类型" prop="bill_type" show-overflow-tooltip>
|
<el-table-column label="汇票类型" prop="bill_type" show-overflow-tooltip>
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<dict-value :options="dictData.bill_type" :value="row.bill_type" />
|
<dict-value :options="dictData.bill_type" :value="row.bill_type" />
|
||||||
</template>
|
</template>
|
||||||
@ -65,11 +68,13 @@
|
|||||||
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
|
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
|
||||||
|
|
||||||
<el-table-column label="操作" width="150" fixed="right">
|
<el-table-column label="操作" width="150" fixed="right">
|
||||||
|
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-button v-perms="['refund.refund/edit']" type="primary" link @click="handleEdit(row)">
|
<el-button v-perms="['refund.refund/edit']" type="primary" link @click="handleEdit(row)">
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['refund.refund/delete']" type="danger" link @click="handleDelete(row.id)">
|
<el-button v-perms="['refund.refund/delete']" type="danger" link
|
||||||
|
@click="handleDelete(row.id)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-perms="['refund.refund/detail']" link @click="handledetail(row)">
|
<el-button v-perms="['refund.refund/detail']" link @click="handledetail(row)">
|
||||||
@ -142,7 +147,6 @@ const handleAdd = async () => {
|
|||||||
|
|
||||||
// 编辑
|
// 编辑
|
||||||
const handleEdit = async (data: any) => {
|
const handleEdit = async (data: any) => {
|
||||||
console.log(data.id)
|
|
||||||
let res = await acceptancebillDetail({ id: data.id })
|
let res = await acceptancebillDetail({ id: data.id })
|
||||||
showEdit.value = true
|
showEdit.value = true
|
||||||
await nextTick()
|
await nextTick()
|
||||||
@ -190,4 +194,3 @@ contractList()
|
|||||||
|
|
||||||
getLists()
|
getLists()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user