index.vue 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <!-- 反审 -->
  2. <script>
  3. import { counterApprove } from "@/api/business/purchase/purchase-order";
  4. export default {
  5. name: "counterApprove",
  6. props: {
  7. selectData: {
  8. type: Array,
  9. default: () => [],
  10. },
  11. },
  12. data() {
  13. return {
  14. title: "反 审",
  15. };
  16. },
  17. computed: {
  18. innerValue: {
  19. get() {
  20. return this.$props.selectData;
  21. },
  22. set() {},
  23. },
  24. disabled: {
  25. get() {
  26. if (this.innerValue.length === 1) {
  27. return false;
  28. }
  29. return true;
  30. },
  31. set() {},
  32. },
  33. },
  34. methods: {
  35. async open() {
  36. let pu = this.innerValue[0];
  37. let puOrderIds = this.innerValue.map((item) => Number(item.id));
  38. if (pu.status === "2") {
  39. // 已审核
  40. try {
  41. this.$modal.loading("提交中...");
  42. let { code, msg } = await counterApprove({ puOrderIds });
  43. if (code == 200) {
  44. this.$notify.success({
  45. message: msg,
  46. });
  47. this.$emit("success");
  48. }
  49. } catch (error) {
  50. } finally {
  51. this.$modal.closeLoading();
  52. }
  53. } else {
  54. this.$notify.warning({
  55. message: "请选择已审核单据进行反审!",
  56. });
  57. }
  58. },
  59. },
  60. created() {},
  61. mounted() {},
  62. };
  63. </script>
  64. <template>
  65. <el-button @click="open" v-bind="$attrs" :disabled="disabled">{{
  66. title
  67. }}</el-button>
  68. </template>