addInvoice.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <template>
  2. <view class="invoice">
  3. <view class="invoice-form">
  4. <u-form :model="form" ref="uForm" label-width="150">
  5. <u-form-item label="抬头类型">
  6. <u-radio-group v-model="form.type">
  7. <u-radio name="company">企业</u-radio>
  8. <u-radio name="personal">个人/机关事业单位</u-radio>
  9. </u-radio-group>
  10. </u-form-item>
  11. <u-form-item label="公司名称">
  12. <u-input v-model="form.companyName" placeholder="请输入公司名称" />
  13. <u-icon slot="right" name="list-dot" size="40" color="#606266" @click="moreCompany" />
  14. </u-form-item>
  15. <u-form-item label="公司税号">
  16. <u-input v-model="form.dutyNum" placeholder="" disabled />
  17. </u-form-item>
  18. <u-form-item label="备注">
  19. <u-input v-model="form.remark" placeholder="请输入备注" />
  20. </u-form-item>
  21. <u-form-item label="发票金额"> ¥{{ form.price }}元 </u-form-item>
  22. </u-form>
  23. </view>
  24. <view class="invoice-tips"> 注:本公司目前只支持开具增值税普通发票 </view>
  25. <view class="invoice-submit">
  26. <u-button type="primary">提交</u-button>
  27. </view>
  28. <!-- 公司弹框 -->
  29. <u-popup v-model="companyPop.show" mode="bottom" :closeable="true" height="50vh">
  30. <view class="popup">
  31. <view class="popup-list" v-if="companyPop.list.length">
  32. <u-radio-group class="popup-list-group" v-model="form.companyName" :wrap="true">
  33. <u-radio
  34. class="popup-list-item"
  35. v-for="(item, index) in companyPop.list"
  36. :key="index"
  37. :name="item.name"
  38. @change="companyRadioClick(item)"
  39. >
  40. {{ item.name }}
  41. </u-radio>
  42. </u-radio-group>
  43. </view>
  44. <view class="popup-list" v-else>
  45. <view class="popup-list-item">暂未添加发票开头</view>
  46. </view>
  47. <view class="popup-bottom">
  48. <u-button type="info" @click="addInvoiceHeader">添加常用发票开头</u-button>
  49. </view>
  50. </view>
  51. </u-popup>
  52. </view>
  53. </template>
  54. <script>
  55. export default {
  56. data() {
  57. return {
  58. form: {
  59. type: 'company',
  60. companyName: '',
  61. dutyNum: '',
  62. remark: '',
  63. price: 100
  64. },
  65. companyPop: {
  66. show: false,
  67. list: []
  68. }
  69. };
  70. },
  71. methods: {
  72. /**
  73. * @description: 选择企业
  74. * @return {*}
  75. */
  76. moreCompany() {
  77. this.companyPop.show = true;
  78. },
  79. companyRadioClick(item) {
  80. this.companyPop.show = false;
  81. this.form.companyName = item.name;
  82. this.form.dutyNum = item.no;
  83. },
  84. addInvoiceHeader() {
  85. this.$u.route({
  86. url: '/pages/invoiceModule/invoiceHeaderList/invoiceHeaderList'
  87. })
  88. }
  89. }
  90. };
  91. </script>
  92. <style lang="scss" scoped>
  93. @import './addInvoice.scss';
  94. </style>