| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 |
- /*******************************************************************************
- * Copyright(c) 2024 dongke All rights reserved. / Confidential
- * 类的信息:
- * 1.程序名称:
- * 2.功能描述:oa 开发票
- * 编辑履历:
- * 作者 日期 版本 修改内容
- * 王英杰 2024-1-19 1.00 列表查询
- *******************************************************************************/
- const Constants = require('@/utils/Constants.js');
- const util = require('@/utils/util.js')
- const mixins = require('@/mixins/index.js')
- Page({
- mixins: [mixins],
- /**
- * 页面的初始数据
- */
- data: {
- pageFlag: false,
- searchContent: [{
- code: 'tradeTime',
- title: mixins.$t("pastThirthtyDays"),
- defaultValue: 5,
- searchType: Constants.searchType.date
- },
- ],
- // 列表区(内容)
- contentList: [{
- name: 'tradeTime',
- title: mixins.$t('orderDate')
- },
- {
- name: 'orderAmount',
- title: mixins.$t('orderAmount'),
- type: 'amount'
- },
- {
- name: 'integral',
- title: mixins.$t('usingCloudCoins')
- },
- {
- name: 'discountName',
- title: mixins.$t('useDiscountCoupons')
- },
- {
- name: 'tradeAmount',
- title: mixins.$t('paidInAmount'),
- type: 'amount'
- },
- ],
- buttonSaveList: [{
- code: 'drawBill',
- title: '开发票',
- width: '120rpx',
- }, ],
- contentSaveList: [{
- code: 'flag',
- title: mixins.$t("allChoose"),
- type: 'checkbox'
- },
- {
- code: 'totalInvoicedAmount',
- content: 0,
- type: 'number',
- title: mixins.$t("totalInvoicedAmount")
- },
- ],
- routeObjName: 'trade',
- },
- /**
- * @desc : 设置查询参数
- * @date : 2024年3月8日
- * @author : 王英杰
- */
- setSearchParams(params) {
- params.tradeStatus = '交易状态-生效'
- params.receiptStatus = '开票状态-未开票'
- params.buyEndDate = params.createtimeEnd
- return params;
- },
- /**
- * @desc : 查询 入库单
- * @date : 2024年3月8日
- * @author : 王英杰
- */
- getData(params) {
- return this.excute(this.data.service, this.data.service.selectByCond, params);
- },
- /**
- * @desc : 处理接口返回数据
- * @date : 2024年3月8日
- * @author : 王英杰
- */
- handleSearchData(tableData) {
- let temp = tableData
- temp.forEach(it => {
- it.tradeTime = this.formatDateOnly(it.tradeTime)
- it.integralName = it.integral + "枚"
- it.receiptStatusName = it.receiptStatusName ? it.receiptStatusName : '未开票'
- it.discountName = it.discount != null ? it.discount + "折优惠卷" : "-"
- })
- this.setData({
- tableData: temp,
- })
- },
- /**
- * @desc : 选择事件
- * @date : 2024/2/1 15:49
- * @author : 王英杰
- */
- listChoose(e) {
- let temp = this.data.tableData
- temp[e.detail.index].checked = e.detail.checked
- let contentSaveList = this.data.contentSaveList
- let totalInvoicedAmount_index = contentSaveList.findIndex(it => it.code == "totalInvoicedAmount")
- let amountNmber = Number(0)
- temp.forEach(it => {
- it.tradeTime = this.formatDateOnly(it.tradeTime)
- if (it.checked) {
- amountNmber = amountNmber + Number(it.tradeAmount)
- }
- })
- contentSaveList[totalInvoicedAmount_index].content = amountNmber
- this.setData({
- tableData: temp,
- contentSaveList: contentSaveList
- })
- },
- /**
- * @desc : 底部按钮事件
- * @date : 2024/2/1 15:49
- * @author : 王英杰
- */
- saveButton(e) {
- let tableData = this.data.tableData
- let tradeLits = []
- tradeLits = tableData.filter(res => {
- return res.checked
- })
- if (tradeLits.length <= 0) {
- util.showToast('请至少选择一条记录')
- return
- }
- wx.navigateTo({
- url: '/package-basic-data/pages/draw-bill/add/add',
- events: {
- // 回调后,在这里给页面赋值
- refresh: function (e) {}
- },
- success: function (res) {
- // 通过eventChannel向被打开页面传送数据 TODO 测试例子url是写死的,实际中,需要从route中读取
- res.eventChannel.emit('params', {
- item: tradeLits
- })
- }
- })
- },
- /**
- * @desc : 底部 新建按钮旁 启用回调事件
- * @date : 2024/2/1 15:49
- * @author : 王英杰
- */
- cke_change(e) {
- let btnFormData = JSON.parse(this.data.btnFormData)
- let temp = this.data.tableData
- let contentSaveList = this.data.contentSaveList
- let totalInvoicedAmount_index = contentSaveList.findIndex(it => it.code == "totalInvoicedAmount")
- let amountNmber = Number(0)
- temp.forEach(element => {
- element.checked = btnFormData.flag
- if (element.checked) {
- amountNmber = amountNmber + Number(element.tradeAmount)
- }
- });
- contentSaveList[totalInvoicedAmount_index].content = amountNmber
- this.setData({
- tableData: temp,
- contentSaveList: contentSaveList
- })
- },
- })
|