开始做开票信息编辑
This commit is contained in:
		
							
								
								
									
										2
									
								
								app.json
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								app.json
									
									
									
									
									
								
							@@ -1,9 +1,9 @@
 | 
			
		||||
{
 | 
			
		||||
  "pages": [
 | 
			
		||||
    "pages/home/index",
 | 
			
		||||
    "pages/invoiceList/index",
 | 
			
		||||
    "pages/invoiceDetail/index",
 | 
			
		||||
    "pages/invoicing/index",
 | 
			
		||||
    "pages/invoiceList/index",
 | 
			
		||||
    "pages/rechargeRecord/index",
 | 
			
		||||
    "pages/member/index",
 | 
			
		||||
    "pages/login/index",
 | 
			
		||||
 
 | 
			
		||||
@@ -4,6 +4,9 @@ Component({
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的属性列表
 | 
			
		||||
   */
 | 
			
		||||
  options: {
 | 
			
		||||
    multipleSlots: true // 在组件定义时的选项中启用多slot支持
 | 
			
		||||
  },
 | 
			
		||||
  properties: {
 | 
			
		||||
    title: String,
 | 
			
		||||
  },
 | 
			
		||||
							
								
								
									
										10
									
								
								components/card/index.wxml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								components/card/index.wxml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
<!--pages/invoicing/components/card/index.wxml-->
 | 
			
		||||
<view class="cardBox">
 | 
			
		||||
  <view class="title"> 
 | 
			
		||||
    <view class="titleText"> {{ title }} </view>
 | 
			
		||||
    <slot name="operate" />
 | 
			
		||||
  </view>
 | 
			
		||||
  <view class="content">
 | 
			
		||||
    <slot name="content" />
 | 
			
		||||
  </view>
 | 
			
		||||
</view>
 | 
			
		||||
@@ -14,4 +14,11 @@
 | 
			
		||||
  height: 80rpx;
 | 
			
		||||
  line-height: 80rpx;
 | 
			
		||||
  margin-bottom: 24rpx;
 | 
			
		||||
}
 | 
			
		||||
  display: flex;
 | 
			
		||||
  justify-content: space-between;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.titleText {
 | 
			
		||||
  flex: 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -10,6 +10,7 @@
 | 
			
		||||
  left: 0;
 | 
			
		||||
  right: 0;
 | 
			
		||||
  top: 0;
 | 
			
		||||
  z-index: 999;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.navigatorTitle {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
import { getMeterDetail, getMeterList, getTenementMeterList } from "../../service/meter";
 | 
			
		||||
import { getOwnTenementList } from "../../service/tenement";
 | 
			
		||||
import { alertInfo } from "../../utils/index";
 | 
			
		||||
import { alertInfo, alertSuccess } from "../../utils/index";
 | 
			
		||||
import request from '../../utils/request';
 | 
			
		||||
import { getDot } from "../../utils/system";
 | 
			
		||||
import { getUserInfo } from "../../service/user"
 | 
			
		||||
@@ -63,7 +63,6 @@ Page({
 | 
			
		||||
  },
 | 
			
		||||
  async refreshMeter() {
 | 
			
		||||
    const { meter } = this.data;
 | 
			
		||||
    console.log('meter', meter)
 | 
			
		||||
    this.handleGetMeterDetail(meter.id);
 | 
			
		||||
  },
 | 
			
		||||
  onOk(e) {
 | 
			
		||||
@@ -80,6 +79,7 @@ Page({
 | 
			
		||||
          park: value,
 | 
			
		||||
          tenement: value.tenements?.[0]
 | 
			
		||||
        })
 | 
			
		||||
        wx.setStorageSync('park', park)
 | 
			
		||||
        break;
 | 
			
		||||
      case "tenement": 
 | 
			
		||||
        // const  currentTenement = this.data.tenement;
 | 
			
		||||
@@ -91,6 +91,7 @@ Page({
 | 
			
		||||
          show: false,
 | 
			
		||||
          tenement: value
 | 
			
		||||
        })
 | 
			
		||||
 | 
			
		||||
        break;
 | 
			
		||||
      case "meter":
 | 
			
		||||
        const { code, id } = e.detail.value;
 | 
			
		||||
@@ -126,6 +127,7 @@ Page({
 | 
			
		||||
  },
 | 
			
		||||
  async recharge() {
 | 
			
		||||
    const { user, money, meter, tenement, park } = this.data;
 | 
			
		||||
    const that  = this;
 | 
			
		||||
    if (!user || !user.id) {
 | 
			
		||||
      alertInfo("请先登录")
 | 
			
		||||
      return
 | 
			
		||||
@@ -139,6 +141,10 @@ Page({
 | 
			
		||||
      alertInfo("没有选择表计")
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
    if (money < 0.01) {
 | 
			
		||||
      alertInfo("最少为1分")
 | 
			
		||||
      return
 | 
			
		||||
    }
 | 
			
		||||
    const { code, message, data } = await requestRecharge({ money: Number(money), id: meter.id, tenement: tenement.id, park: park.id })
 | 
			
		||||
    if (code !== OK) {
 | 
			
		||||
      alertInfo(message)
 | 
			
		||||
@@ -152,6 +158,10 @@ Page({
 | 
			
		||||
      signType: 'RSA',
 | 
			
		||||
      success: (res) => {
 | 
			
		||||
        console.log('success', res)
 | 
			
		||||
        alertSuccess("充值成功")
 | 
			
		||||
        that.setData({
 | 
			
		||||
          money: null
 | 
			
		||||
        })
 | 
			
		||||
      },
 | 
			
		||||
      fail: (res) => {
 | 
			
		||||
        console.log('fail', res)
 | 
			
		||||
@@ -159,10 +169,9 @@ Page({
 | 
			
		||||
      },
 | 
			
		||||
      complete: (res) => {
 | 
			
		||||
        console.log('complete')
 | 
			
		||||
        
 | 
			
		||||
        that.handleGetMeterDetail(meter.id)
 | 
			
		||||
      }
 | 
			
		||||
    })
 | 
			
		||||
    console.log('data', data)
 | 
			
		||||
  },
 | 
			
		||||
  jumpToInvoice() {
 | 
			
		||||
    wx.navigateTo({
 | 
			
		||||
@@ -181,6 +190,7 @@ Page({
 | 
			
		||||
    this.setUser();
 | 
			
		||||
    this.getAllList();
 | 
			
		||||
    this.watchTenement();
 | 
			
		||||
    this.watchPark();
 | 
			
		||||
    getDot();
 | 
			
		||||
  },
 | 
			
		||||
  watchTenement() {
 | 
			
		||||
@@ -197,10 +207,29 @@ Page({
 | 
			
		||||
      set: function (newVal) {
 | 
			
		||||
        // const oldValue = value;
 | 
			
		||||
        value = newVal;
 | 
			
		||||
        wx.setStorageSync('tenement', newVal)
 | 
			
		||||
        that.getMeters(newVal);
 | 
			
		||||
      }
 | 
			
		||||
    });
 | 
			
		||||
  },
 | 
			
		||||
  watchPark() {
 | 
			
		||||
    const that = this;
 | 
			
		||||
    let value = this.data.park; // 获取被监听属性的当前值
 | 
			
		||||
 
 | 
			
		||||
    // 使用 Object.defineProperty 方法在数据对象上定义属性的 getter 和 setter
 | 
			
		||||
    Object.defineProperty(this.data, 'park', {
 | 
			
		||||
      configurable: true, // 可配置
 | 
			
		||||
      enumerable: true, // 可枚举
 | 
			
		||||
      get: function () {
 | 
			
		||||
        return value; // 返回属性的当前值
 | 
			
		||||
      },
 | 
			
		||||
      set: function (newVal) {
 | 
			
		||||
        // const oldValue = value;
 | 
			
		||||
        value = newVal;
 | 
			
		||||
        wx.setStorageSync('park', newVal)
 | 
			
		||||
      }
 | 
			
		||||
    });
 | 
			
		||||
  },
 | 
			
		||||
  async getMeters({ id }) {
 | 
			
		||||
    const { code, message, data } = await getTenementMeterList(id);
 | 
			
		||||
    if (code !== OK) {
 | 
			
		||||
 
 | 
			
		||||
@@ -1,44 +0,0 @@
 | 
			
		||||
import { throttle } from "../../utils/index"
 | 
			
		||||
 | 
			
		||||
Page({
 | 
			
		||||
  data: {
 | 
			
		||||
    motto: 'Hello World',
 | 
			
		||||
    num: 1,
 | 
			
		||||
    staffA: {firstName: 'Hulk', lastName: 'Hu'},
 | 
			
		||||
    staffB: {firstName: 'Shang', lastName: 'You'},
 | 
			
		||||
    staffC: {firstName: 'Gideon', lastName: 'Lin'}
 | 
			
		||||
  },
 | 
			
		||||
  onLoad() {
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  onShow() {
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  test: throttle(function() {
 | 
			
		||||
  
 | 
			
		||||
  }, 500),
 | 
			
		||||
  payment: function() {
 | 
			
		||||
    wx.requestPayment({
 | 
			
		||||
      timeStamp: data?.time,
 | 
			
		||||
      nonceStr: data?.nonceStr,
 | 
			
		||||
      package: "prepay_id=" + data?.prepay_id,
 | 
			
		||||
      paySign: data?.paySign,
 | 
			
		||||
      signType: 'RSA',
 | 
			
		||||
      success (res) {
 | 
			
		||||
        console.log('success', res);
 | 
			
		||||
      },
 | 
			
		||||
      fail (res) {
 | 
			
		||||
        console.log('res', res)
 | 
			
		||||
      }
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  kefu(e) {
 | 
			
		||||
    console.log('e', e);
 | 
			
		||||
  },
 | 
			
		||||
  increment() {
 | 
			
		||||
    // this.data.num = this.data.num +=1 ;
 | 
			
		||||
    this.setData({
 | 
			
		||||
      num: this.data.num + 1
 | 
			
		||||
    })
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
@@ -1,5 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "navigator": "/components/navigator/index"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,11 +0,0 @@
 | 
			
		||||
<!--index.wxml-->
 | 
			
		||||
<!-- <scroll-view class="scrollarea" scroll-y type="list">
 | 
			
		||||
  <view class="usermotto" bind:tap="payment">
 | 
			
		||||
    支付
 | 
			
		||||
  </view>
 | 
			
		||||
  <button open-type="contact" bindcontact="kefu"> 客服 </button>
 | 
			
		||||
  {{num}}
 | 
			
		||||
  <button bindtap="increment"> 增加 </button>
 | 
			
		||||
</scroll-view> -->
 | 
			
		||||
<navigator title="充值" />
 | 
			
		||||
 | 
			
		||||
@@ -1,12 +0,0 @@
 | 
			
		||||
/**index.wxss**/
 | 
			
		||||
page {
 | 
			
		||||
  height: 100vh;
 | 
			
		||||
  display: flex;
 | 
			
		||||
  flex-direction: column;
 | 
			
		||||
  overflow: hidden;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.usermotto {
 | 
			
		||||
  margin-top: 200px;
 | 
			
		||||
  text-align: center;
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  "component": true,
 | 
			
		||||
  "usingComponents": {}
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "van-button": "@vant/weapp/button/index"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,2 +1,26 @@
 | 
			
		||||
<!--pages/invoiceList/components/already/index.wxml-->
 | 
			
		||||
<text>pages/invoiceList/components/already/index.wxml</text>
 | 
			
		||||
<view class="card">
 | 
			
		||||
  <view class="left">
 | 
			
		||||
    <view class="title">
 | 
			
		||||
      河北华昌宝能售电有限公司
 | 
			
		||||
    </view>
 | 
			
		||||
    <view class="invoiceContent">
 | 
			
		||||
      发票内容:电费
 | 
			
		||||
    </view>
 | 
			
		||||
    <view class="invoiceType">
 | 
			
		||||
      发票类型:增值税专用发票
 | 
			
		||||
    </view>
 | 
			
		||||
    <view class="time">
 | 
			
		||||
      2024年3月3日 18:00:00
 | 
			
		||||
    </view>
 | 
			
		||||
  </view>
 | 
			
		||||
  <view class="right">
 | 
			
		||||
    <view class="money"> ¥3026 </view>
 | 
			
		||||
    <view class="operate">
 | 
			
		||||
      <view>
 | 
			
		||||
        <van-button type="info" class="save" bind:click="submit" size="small">发票</van-button>
 | 
			
		||||
      </view>
 | 
			
		||||
      <van-button type="info" class="save" bind:click="submit" size="small">明细</van-button>
 | 
			
		||||
    </view>
 | 
			
		||||
  </view>
 | 
			
		||||
</view>
 | 
			
		||||
@@ -1 +1,20 @@
 | 
			
		||||
/* pages/invoiceList/components/already/index.wxss */
 | 
			
		||||
/* pages/invoiceList/components/already/index.wxss */
 | 
			
		||||
.card {
 | 
			
		||||
  margin-top: 20rpx;
 | 
			
		||||
  margin-bottom: 20rpx;
 | 
			
		||||
  margin-left: 30rpx;
 | 
			
		||||
  margin-right: 30rpx;
 | 
			
		||||
  display: flex;
 | 
			
		||||
  background-color: #fff;
 | 
			
		||||
  border-radius: 26rpx;
 | 
			
		||||
  padding: 20rpx;
 | 
			
		||||
  box-sizing: border-box
 | 
			
		||||
  ;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.left {
 | 
			
		||||
  flex: 1;
 | 
			
		||||
}
 | 
			
		||||
.right {
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,4 +1,5 @@
 | 
			
		||||
import { getInvoiceInfoList } from "../../../../service/invoice"
 | 
			
		||||
import { getInvoiceInfo, updateInvoiceInfo } from "../../../../service/invoice"
 | 
			
		||||
import { alertInfo, alertSuccess } from "../../../../utils/index";
 | 
			
		||||
 | 
			
		||||
// pages/invoiceList/components/info/index.js
 | 
			
		||||
Component({
 | 
			
		||||
@@ -11,20 +12,92 @@ Component({
 | 
			
		||||
  },
 | 
			
		||||
  lifetimes: {
 | 
			
		||||
    attached() {
 | 
			
		||||
      getInvoiceInfoList()
 | 
			
		||||
      this.getDetail();
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的初始数据
 | 
			
		||||
   */
 | 
			
		||||
  data: {
 | 
			
		||||
 | 
			
		||||
    detail: { name: wx.getStorageSync('tenement')?.name,  },
 | 
			
		||||
    formData: {headerType: 0,},
 | 
			
		||||
    editType: "detail"
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的方法列表
 | 
			
		||||
   */
 | 
			
		||||
  methods: {
 | 
			
		||||
 | 
			
		||||
    async getDetail() {
 | 
			
		||||
      const { code, message, data } = await getInvoiceInfo()
 | 
			
		||||
      
 | 
			
		||||
      this.setData({ detail: {...data, },editType: 'detail', formData: {} })
 | 
			
		||||
    },
 | 
			
		||||
    changeEditType() {
 | 
			
		||||
      this.setData({ editType: 'edit', formData: this.data.detail })
 | 
			
		||||
    },
 | 
			
		||||
    cancelEdit() {
 | 
			
		||||
      this.setData({ editType: 'detail', formData: {} })
 | 
			
		||||
    },
 | 
			
		||||
    onChangeType(e) {
 | 
			
		||||
      const { formData } = this.data;
 | 
			
		||||
      this.setData({ formData: {...formData, type: e.detail} })
 | 
			
		||||
    },
 | 
			
		||||
    onChangeHeaderType(e) {
 | 
			
		||||
      const { formData } = this.data;
 | 
			
		||||
      this.setData({ formData: {...formData, headerType: e.detail} })
 | 
			
		||||
    },
 | 
			
		||||
    onChangeText(e) {
 | 
			
		||||
      const { name } = e.currentTarget.dataset;
 | 
			
		||||
      const { formData } = this.data;
 | 
			
		||||
      this.setData({ formData: {...formData, [name]: e.detail} })
 | 
			
		||||
    },
 | 
			
		||||
    async submit() {
 | 
			
		||||
      const { formData } = this.data;
 | 
			
		||||
      const { tin, address, phone, bank, account, email, type, headerType, name } = formData;
 | 
			
		||||
      if (type !== 0 && type !== 1) {
 | 
			
		||||
        alertInfo("请选择发票类型");
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      if (headerType !== 0 && headerType !== 1) {
 | 
			
		||||
        alertInfo("请选择抬头类型");
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      if (headerType === 1) {
 | 
			
		||||
        if (!name) {
 | 
			
		||||
          alertInfo("请输入发票抬头")
 | 
			
		||||
          return
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      if (!email || !/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(email)) {
 | 
			
		||||
        alertInfo("邮箱格式不正确")
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      if (headerType === 0) {
 | 
			
		||||
        if (!tin) {
 | 
			
		||||
          alertInfo("请输入发票税号")
 | 
			
		||||
          return;
 | 
			
		||||
        }
 | 
			
		||||
        // if (!address) {
 | 
			
		||||
        //   alertInfo("请输入地址")
 | 
			
		||||
        //   return;
 | 
			
		||||
        // }
 | 
			
		||||
        if (!phone) {
 | 
			
		||||
          alertInfo("请输入电话")
 | 
			
		||||
          return;
 | 
			
		||||
        }
 | 
			
		||||
        if (!bank) {
 | 
			
		||||
          alertInfo("请输入开户行")
 | 
			
		||||
          return;
 | 
			
		||||
        }
 | 
			
		||||
        if (!account) {
 | 
			
		||||
          alertInfo("请输入银行账号")
 | 
			
		||||
          return;
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      const { code, message } = await updateInvoiceInfo(formData)
 | 
			
		||||
      alertSuccess("编辑成功")
 | 
			
		||||
      this.getDetail()
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
@@ -1,4 +1,11 @@
 | 
			
		||||
{
 | 
			
		||||
  "component": true,
 | 
			
		||||
  "usingComponents": {}
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "card": "/components/card/index",
 | 
			
		||||
    "van-icon": "@vant/weapp/icon/index",
 | 
			
		||||
    "van-field": "@vant/weapp/field/index",
 | 
			
		||||
    "van-radio": "@vant/weapp/radio/index",
 | 
			
		||||
    "van-radio-group": "@vant/weapp/radio-group/index",
 | 
			
		||||
    "van-button": "@vant/weapp/button/index"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,2 +1,240 @@
 | 
			
		||||
<!--pages/invoiceList/components/info/index.wxml-->
 | 
			
		||||
<text>pages/invoiceList/components/info/index.wxml</text>
 | 
			
		||||
<view class="cardWrapper">
 | 
			
		||||
  <card title="发票详情">
 | 
			
		||||
    <view 
 | 
			
		||||
      slot="operate" 
 | 
			
		||||
      class="cardOperate"
 | 
			
		||||
      wx:if="{{editType === 'detail'}}"
 | 
			
		||||
      bind:tap="changeEditType"
 | 
			
		||||
    > 
 | 
			
		||||
      <van-icon name="edit" /> 
 | 
			
		||||
      <view class="editContent">修改</view> 
 | 
			
		||||
    </view>
 | 
			
		||||
    
 | 
			
		||||
    <view slot="content">
 | 
			
		||||
      <van-field
 | 
			
		||||
        label="发票类型"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
      >
 | 
			
		||||
        <view slot="input" style="margin-top: 16rpx;" wx:if="{{editType === 'edit'}}">
 | 
			
		||||
          <van-radio-group direction="horizontal" value="{{formData.type}}" bind:change="onChangeType">
 | 
			
		||||
            <van-radio name="{{0}}" icon-size="30rpx" style="font-size: 30rpx;margin-bottom: 20rpx;">普通电子</van-radio>
 | 
			
		||||
            <van-radio name="{{1}}" icon-size="30rpx" style="font-size: 30rpx;">增值税专用电子</van-radio>
 | 
			
		||||
          </van-radio-group>
 | 
			
		||||
        </view>
 | 
			
		||||
        
 | 
			
		||||
        <view wx:else slot="input" style="margin-top: -10rpx;"> 
 | 
			
		||||
          <view wx:if="{{formData.type === 0}}"> 普通电子发票 </view>
 | 
			
		||||
          <view wx:elif="{{formData.type === 1}}"> 增值税专用电子发票 </view>
 | 
			
		||||
          <view wx:else>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        label="抬头类型"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
      >
 | 
			
		||||
        <view slot="input" style="margin-top: 16rpx;" wx:if="{{editType === 'edit'}}">
 | 
			
		||||
          <van-radio-group direction="horizontal"  bind:change="onChangeHeaderType">
 | 
			
		||||
            <van-radio name="{{0}}" icon-size="30rpx" style="font-size: 30rpx;margin-bottom: 20rpx;">企业单位</van-radio>
 | 
			
		||||
            <van-radio name="{{1}}" icon-size="30rpx" style="font-size: 30rpx;">个人/非企业单位</van-radio>
 | 
			
		||||
          </van-radio-group>
 | 
			
		||||
        </view>
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:else  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
          style="margin-top: -10rpx;"
 | 
			
		||||
        > 
 | 
			
		||||
          <view wx:if="{{formData.headerType === 0}}"> 企业单位 </view>
 | 
			
		||||
          <view wx:elif="{{formData.headerType === 1}}"> 个人/非企业单位 </view>
 | 
			
		||||
          <view wx:else>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.name}}"
 | 
			
		||||
        label="发票抬头"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        disabled="{{editType === 'edit' && formData.headerType !== 1}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="name"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.name}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.tin}}"
 | 
			
		||||
        label="发票税号"
 | 
			
		||||
        wx:if="{{formData.headerType === 0}}"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入发票税号' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="tin"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.tin}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.bank}}"
 | 
			
		||||
        label="开户行"
 | 
			
		||||
        wx:if="{{formData.headerType === 0}}"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入开户行' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{bank}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="bank"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.bank}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.account}}"
 | 
			
		||||
        label="银行账号"
 | 
			
		||||
        wx:if="{{formData.headerType === 0}}"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入银行账号' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="account"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.account}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.address}}"
 | 
			
		||||
        label="地址"
 | 
			
		||||
        wx:if="{{formData.headerType === 0}}"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入地址' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="address"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.address}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.phone}}"
 | 
			
		||||
        label="电话"
 | 
			
		||||
        wx:if="{{formData.headerType === 0}}"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入电话' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="phone"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.phone}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.remark}}"
 | 
			
		||||
        label="备注"
 | 
			
		||||
        placeholder="{{editType === 'edit' ? '请输入备注' : ''}}"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="remark"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.remark}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
    </view>
 | 
			
		||||
  </card>
 | 
			
		||||
</view>
 | 
			
		||||
<view class="cardWrapper" style="margin-bottom: 40rpx;">
 | 
			
		||||
  <card title="接收信息">
 | 
			
		||||
    <view slot="content"> 
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{detail.email}}"
 | 
			
		||||
        label="电子邮箱"
 | 
			
		||||
        custom-style="padding-left: 0; padding-right: 0;"
 | 
			
		||||
        readonly="{{editType === 'detail'}}"
 | 
			
		||||
        autosize="{{true}}"
 | 
			
		||||
        type="textarea"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        border="{{ editType === 'detail' ? false : true }}"
 | 
			
		||||
        bind:change="onChangeText"
 | 
			
		||||
        data-name="email"
 | 
			
		||||
      >
 | 
			
		||||
        <view 
 | 
			
		||||
          wx:if="{{editType === 'detail' && !detail.email}}"  
 | 
			
		||||
          slot="input" 
 | 
			
		||||
        > 
 | 
			
		||||
          <view>-</view>
 | 
			
		||||
        </view>
 | 
			
		||||
      </van-field>
 | 
			
		||||
    </view>
 | 
			
		||||
  </card>
 | 
			
		||||
</view>
 | 
			
		||||
 | 
			
		||||
<view class="submit" wx:if="{{editType === 'edit'}}">
 | 
			
		||||
  <van-button block class="cancelEdit" bind:click="cancelEdit">取消编辑</van-button>
 | 
			
		||||
  <van-button type="info" block class="save" bind:click="submit">保存</van-button>
 | 
			
		||||
</view>
 | 
			
		||||
@@ -1 +1,34 @@
 | 
			
		||||
/* pages/invoiceList/components/info/index.wxss */
 | 
			
		||||
/* pages/invoiceList/components/info/index.wxss */
 | 
			
		||||
.cardOperate {
 | 
			
		||||
  display: flex;
 | 
			
		||||
  align-items: center;
 | 
			
		||||
  font-size: 32rpx;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.cardWrapper {
 | 
			
		||||
  margin-top: 30rpx;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.editContent {
 | 
			
		||||
  margin-left: 20rpx;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.van-cell {
 | 
			
		||||
  padding-left: 0rpx !important;
 | 
			
		||||
  padding-right: 0rpx !important;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.submit {
 | 
			
		||||
  margin: 32rpx;
 | 
			
		||||
  margin-bottom: 50rpx;
 | 
			
		||||
  display: flex;
 | 
			
		||||
  align-items: center;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.cancelEdit, .save {
 | 
			
		||||
  flex: 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.cancelEdit {
 | 
			
		||||
  margin-right: 40rpx;
 | 
			
		||||
}
 | 
			
		||||
@@ -16,7 +16,8 @@ Page({
 | 
			
		||||
      { name: '编辑', },
 | 
			
		||||
      { name: '删除', },
 | 
			
		||||
    ],
 | 
			
		||||
    selectData: {}
 | 
			
		||||
    selectData: {},
 | 
			
		||||
    active: 1,
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
@@ -68,6 +69,9 @@ Page({
 | 
			
		||||
        break;
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  onChange(e) {
 | 
			
		||||
    this.setData({ active: e.detail.index })
 | 
			
		||||
  },
 | 
			
		||||
  async handleDelete() {
 | 
			
		||||
    const { id } = this.data.selectData;
 | 
			
		||||
    await wxModal({ content: "确定要删除当前记录吗?" })
 | 
			
		||||
 
 | 
			
		||||
@@ -1,13 +1,12 @@
 | 
			
		||||
<navigator canBack="{{true}}" title="发票管理" />
 | 
			
		||||
 | 
			
		||||
<van-tabs active="{{ active }}" bind:change="onChange">
 | 
			
		||||
  <van-tab title="申请开票">
 | 
			
		||||
    <notyet />
 | 
			
		||||
    <notyet wx:if="{{active === 0}}" />
 | 
			
		||||
  </van-tab>
 | 
			
		||||
  <van-tab title="已开发票">
 | 
			
		||||
    <already />
 | 
			
		||||
    <already wx:if="{{active === 1}}"  />
 | 
			
		||||
  </van-tab>
 | 
			
		||||
  <van-tab title="开票信息">
 | 
			
		||||
    <info />
 | 
			
		||||
    <info wx:if="{{active === 2}}"  />
 | 
			
		||||
  </van-tab>
 | 
			
		||||
</van-tabs>
 | 
			
		||||
@@ -1,7 +0,0 @@
 | 
			
		||||
<!--pages/invoicing/components/card/index.wxml-->
 | 
			
		||||
<view class="cardBox">
 | 
			
		||||
  <view class="title"> {{ title }} </view>
 | 
			
		||||
  <view class="content">
 | 
			
		||||
    <slot />
 | 
			
		||||
  </view>
 | 
			
		||||
</view>
 | 
			
		||||
@@ -17,7 +17,6 @@ Page({
 | 
			
		||||
   */
 | 
			
		||||
  onLoad(options) {
 | 
			
		||||
    const { money = 10, tenement, ids = 'q', count = 10 } = options;
 | 
			
		||||
    console.log('option', options)
 | 
			
		||||
    this.setData({ money, tenement, ids: ids.split(","), count })
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "navigator": "/components/navigator/index",
 | 
			
		||||
    "van-button": "@vant/weapp/button/index",
 | 
			
		||||
    "card": "./components/card/index",
 | 
			
		||||
    "card": "/components/card/index",
 | 
			
		||||
    "van-radio": "@vant/weapp/radio/index",
 | 
			
		||||
    "van-radio-group": "@vant/weapp/radio-group/index",
 | 
			
		||||
    "van-field": "@vant/weapp/field/index",
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@
 | 
			
		||||
</view>
 | 
			
		||||
<view>
 | 
			
		||||
  <card title="发票类型">
 | 
			
		||||
    <van-radio-group disabled="{{true}}"  direction="horizontal">
 | 
			
		||||
    <van-radio-group disabled="{{true}}"  direction="horizontal" slot="content">
 | 
			
		||||
      <van-radio name="1" icon-size="30rpx" style="font-size: 32rpx;margin-bottom: 20rpx;">普通电子发票</van-radio>
 | 
			
		||||
      <van-radio name="2" icon-size="30rpx" style="font-size: 32rpx;">增值税专用电子发票</van-radio>
 | 
			
		||||
    </van-radio-group>
 | 
			
		||||
@@ -14,68 +14,71 @@
 | 
			
		||||
</view>
 | 
			
		||||
<view class="cardWrapper">
 | 
			
		||||
  <card title="发票详情">
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ detail.name }}"
 | 
			
		||||
      label="抬头类型"
 | 
			
		||||
      border="{{ false }}"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
    >
 | 
			
		||||
      <view slot="input" style="margin-top: 16rpx;">
 | 
			
		||||
        <van-radio-group disabled="{{true}}"  direction="horizontal">
 | 
			
		||||
          <van-radio name="1" icon-size="30rpx" style="font-size: 30rpx;margin-bottom: 20rpx;">企业单位</van-radio>
 | 
			
		||||
          <van-radio name="2" icon-size="30rpx" style="font-size: 30rpx;">个人/非企业单位</van-radio>
 | 
			
		||||
        </van-radio-group>
 | 
			
		||||
      </view>
 | 
			
		||||
    <view  slot="content">
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ detail.name }}"
 | 
			
		||||
        label="抬头类型"
 | 
			
		||||
        border="{{ false }}"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
      >
 | 
			
		||||
        <view slot="input" style="margin-top: 16rpx;">
 | 
			
		||||
          <van-radio-group disabled="{{true}}"  direction="horizontal">
 | 
			
		||||
            <van-radio name="1" icon-size="30rpx" style="font-size: 30rpx;margin-bottom: 20rpx;">企业单位</van-radio>
 | 
			
		||||
            <van-radio name="2" icon-size="30rpx" style="font-size: 30rpx;">个人/非企业单位</van-radio>
 | 
			
		||||
          </van-radio-group>
 | 
			
		||||
        </view>
 | 
			
		||||
      
 | 
			
		||||
      </van-field>
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="发票抬头"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="发票税号"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="开户行"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="银行账号"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="地址"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="电话"
 | 
			
		||||
        readonly
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
        disabled="{{true}}"
 | 
			
		||||
      />
 | 
			
		||||
      <van-field
 | 
			
		||||
        value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
        label="备注说明"
 | 
			
		||||
        title-width="132rpx"
 | 
			
		||||
      />
 | 
			
		||||
    </view>
 | 
			
		||||
    
 | 
			
		||||
    </van-field>
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="发票抬头"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="发票税号"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="开户行"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="银行账号"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="地址"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="电话"
 | 
			
		||||
      readonly
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
      disabled="{{true}}"
 | 
			
		||||
    />
 | 
			
		||||
    <van-field
 | 
			
		||||
      value="{{ '河北华昌宝能售电有限公司' }}"
 | 
			
		||||
      label="备注说明"
 | 
			
		||||
      title-width="132rpx"
 | 
			
		||||
    />
 | 
			
		||||
  </card>
 | 
			
		||||
</view>
 | 
			
		||||
<view class="content">
 | 
			
		||||
 
 | 
			
		||||
@@ -1,63 +0,0 @@
 | 
			
		||||
import { approveUser, getApproveList } from "../../../../service/user"
 | 
			
		||||
import { alertInfo, alertSuccess, wxModal } from "../../../../utils/index";
 | 
			
		||||
import request from "../../../../utils/request"
 | 
			
		||||
 | 
			
		||||
const { OK } = request;
 | 
			
		||||
 | 
			
		||||
Component({
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的属性列表
 | 
			
		||||
   */
 | 
			
		||||
  properties: {
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的初始数据
 | 
			
		||||
   */
 | 
			
		||||
  data: {
 | 
			
		||||
    list: []
 | 
			
		||||
  },
 | 
			
		||||
  lifetimes: {
 | 
			
		||||
    attached: function() {
 | 
			
		||||
      // this.setData({
 | 
			
		||||
      //   list: []
 | 
			
		||||
      // })
 | 
			
		||||
      this.init();
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  /**
 | 
			
		||||
   * 组件的方法列表
 | 
			
		||||
   */
 | 
			
		||||
  methods: {
 | 
			
		||||
    async init() {
 | 
			
		||||
      const result = await getApproveList()
 | 
			
		||||
      this.setData({
 | 
			
		||||
        list: result.data
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    async agree(e) {
 | 
			
		||||
      const { user } = e.currentTarget.dataset;
 | 
			
		||||
      await wxModal({ content: `同意${user.nickName}的申请?` })
 | 
			
		||||
      const { code, message } = await approveUser({ userId: user.id, type: 1 })
 | 
			
		||||
      if (code !== OK) {
 | 
			
		||||
        alertInfo(message)
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      alertSuccess("已同意")
 | 
			
		||||
      this.init()
 | 
			
		||||
    },
 | 
			
		||||
    async disAgree(e) {
 | 
			
		||||
      const { user } = e.currentTarget.dataset;
 | 
			
		||||
      await wxModal({ content: `拒绝${user.nickName}的申请?` })
 | 
			
		||||
      const { code, message } = await approveUser({ userId: user.id, type: 0 })
 | 
			
		||||
      if (code !== OK) {
 | 
			
		||||
        alertInfo(message)
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
      alertSuccess("已拒绝")
 | 
			
		||||
      this.init()
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
})
 | 
			
		||||
@@ -1,4 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
  "component": true,
 | 
			
		||||
  "usingComponents": {}
 | 
			
		||||
}
 | 
			
		||||
@@ -1,8 +0,0 @@
 | 
			
		||||
<!--pages/member/components/approveMember/index.wxml-->
 | 
			
		||||
<view wx:for="{{list}}" wx:key="index" wx:for-item="item" class="item">
 | 
			
		||||
  <view class="nickName"> {{ item.nickName }} </view>
 | 
			
		||||
  <view class="operate">
 | 
			
		||||
    <view class="primaryTextBtn" data-user="{{item}}" bind:tap="agree"> 同意 </view>
 | 
			
		||||
    <view class="disAgree dangerTextBtn" data-user="{{item}}" bind:tap="disAgree"> 拒绝 </view>
 | 
			
		||||
  </view>
 | 
			
		||||
</view>
 | 
			
		||||
@@ -1,21 +0,0 @@
 | 
			
		||||
/* pages/member/components/approveMember/index.wxss */
 | 
			
		||||
.item {
 | 
			
		||||
  display: flex;
 | 
			
		||||
  align-items: center;
 | 
			
		||||
  padding-top: 24rpx;
 | 
			
		||||
  padding-bottom: 24rpx;
 | 
			
		||||
  margin-left: 32rpx;
 | 
			
		||||
  margin-right: 32rpx;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.nickName {
 | 
			
		||||
  flex: 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.operate {
 | 
			
		||||
  display: flex;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.disAgree {
 | 
			
		||||
  margin-left: 24rpx;
 | 
			
		||||
}
 | 
			
		||||
@@ -1,8 +1,6 @@
 | 
			
		||||
{
 | 
			
		||||
  "component": true,
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "van-tab": "@vant/weapp/tab/index",
 | 
			
		||||
    "van-tabs": "@vant/weapp/tabs/index",
 | 
			
		||||
    "avatar": "/components/avatar/index",
 | 
			
		||||
    "van-button": "@vant/weapp/button/index"
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
@@ -1,15 +1,13 @@
 | 
			
		||||
<van-tabs active="{{ active }}" bind:change="onChange">
 | 
			
		||||
  <van-tab wx:for="{{list}}" wx:key="index" title="{{item.name}}">
 | 
			
		||||
    <view wx:for="{{item.users}}" wx:key="index" wx:for-item="ele"  class="item">
 | 
			
		||||
 | 
			
		||||
  
 | 
			
		||||
    <view wx:for="{{list}}" wx:key="index" wx:for-item="ele"  class="item">
 | 
			
		||||
      <avatar text="{{ele.name}}" />
 | 
			
		||||
      <view class="info">
 | 
			
		||||
        <view class="nickName"> {{ ele.name }} </view>
 | 
			
		||||
        <view class="phone"> {{ ele.phone }} </view>
 | 
			
		||||
      </view>
 | 
			
		||||
      <view class="operate">
 | 
			
		||||
      <view class="operate" wx:if="{{!ele.isAdmin}}">
 | 
			
		||||
        <van-button type="info" size="small" data-user="{{ele}}" bind:click="setAdmin" data-tenement="{{item.id}}" style="margin-bottom: 16rpx;" class="admin">设为管理员</van-button>
 | 
			
		||||
        <van-button type="danger" size="small" data-user="{{ele}}" bind:click="remove" data-tenement="{{item.id}}" class="remove">移除</van-button>
 | 
			
		||||
      </view>
 | 
			
		||||
    </view>
 | 
			
		||||
  </van-tab>
 | 
			
		||||
</van-tabs>
 | 
			
		||||
@@ -2,7 +2,6 @@
 | 
			
		||||
  "usingComponents": {
 | 
			
		||||
    "van-tab": "@vant/weapp/tab/index",
 | 
			
		||||
    "van-tabs": "@vant/weapp/tabs/index",
 | 
			
		||||
    "approve-member": "./components/approveMember/index",
 | 
			
		||||
    "member-manage": "./components/memberManage/index",
 | 
			
		||||
    "navigator": "/components/navigator/index"
 | 
			
		||||
  },
 | 
			
		||||
 
 | 
			
		||||
@@ -106,7 +106,6 @@ Page({
 | 
			
		||||
    let tenements = [{id: "", name: "全部"}];
 | 
			
		||||
    data.forEach(item => {
 | 
			
		||||
      if (item.tenements) {
 | 
			
		||||
        console.log('item.te', item.tenements)
 | 
			
		||||
        tenements = [...tenements, ...item.tenements]
 | 
			
		||||
      }
 | 
			
		||||
    })
 | 
			
		||||
@@ -114,6 +113,10 @@ Page({
 | 
			
		||||
  },
 | 
			
		||||
  async init(year, tenement) {
 | 
			
		||||
    const { code, message, data = [], amount = 0 } = await getRechargeList(year, tenement);
 | 
			
		||||
    if (code !== OK) {
 | 
			
		||||
      alertInfo(message)
 | 
			
		||||
      return;
 | 
			
		||||
    }
 | 
			
		||||
    this.setData({
 | 
			
		||||
      list: data,
 | 
			
		||||
      amount
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +1,9 @@
 | 
			
		||||
import apis from '../utils/request';
 | 
			
		||||
const { GET, POST, PUT, DELETE } = apis
 | 
			
		||||
 | 
			
		||||
// 获取创建的发开票信息列表
 | 
			
		||||
export const getInvoiceInfoList = async function() {
 | 
			
		||||
  return await GET(`/wx/getInvoiceInfoList`);
 | 
			
		||||
// 获取当前商户开票信息
 | 
			
		||||
export const getInvoiceInfo = async function() {
 | 
			
		||||
  return await GET(`/wx/getInvoiceInfo/${wx.getStorageSync('tenement').id}`);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 创建开票信息
 | 
			
		||||
@@ -13,7 +13,7 @@ export const createInvoiceInfo = async function(data) {
 | 
			
		||||
 | 
			
		||||
// 修改开票信息
 | 
			
		||||
export const updateInvoiceInfo = async function(data) {
 | 
			
		||||
  return await PUT(`/wx/updateInvoiceInfo/${id}`, data);
 | 
			
		||||
  return await PUT(`/wx/updateInvoiceInfo`, data);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// 删除发票信息
 | 
			
		||||
 
 | 
			
		||||
@@ -89,6 +89,7 @@ const parseResponse = function (response, url) {
 | 
			
		||||
    wx.redirectTo({
 | 
			
		||||
      url: '/pages/login/index',
 | 
			
		||||
    })
 | 
			
		||||
    wx.clearStorageSync()
 | 
			
		||||
    return { code: 401, message: '未登录状态' }
 | 
			
		||||
  }
 | 
			
		||||
  if (statusCode === 403) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user