销项发票模块源码
This commit is contained in:
parent
a21cd0b3ad
commit
70ba74c6b9
|
|
@ -0,0 +1,73 @@
|
|||
/*29PhywYa6Smee2Xoz8l2SLeeYbdVm+mtmUdoIg8/sys=*/
|
||||
import {toast, cardCache} from "nc-lightapp-front";
|
||||
import { get } from "lodash"
|
||||
let {getCacheById, updateCache} = cardCache;
|
||||
import requestApi from '../requestApi'
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function (callbackFunction) {
|
||||
let pkBill = this.props.getUrlParam('id');
|
||||
if (pkBill) {
|
||||
let cardData = getCacheById(pkBill, presetVar.dataSource);
|
||||
if (cardData) {
|
||||
//控制单据编号
|
||||
this.props.BillHeadInfo.setBillHeadInfoVisible({
|
||||
showBillCode: true,
|
||||
billCode: cardData.head[presetVar.formAreaId].rows[0].values['billno'].value || ''
|
||||
});
|
||||
this.props.form.setAllFormValue({[presetVar.formAreaId]: cardData.head[presetVar.formAreaId]});
|
||||
cardData.body && cardData.body[presetVar.bodyAreaId] && this.props.cardTable.setTableData(presetVar.bodyAreaId, cardData.body[presetVar.bodyAreaId]);
|
||||
} else {
|
||||
// 取得表头数据
|
||||
let formData = this.props.form.getAllFormValue(presetVar.formAreaId);
|
||||
// 取得表体数据
|
||||
let bodyData = this.props.cardTable.getAllData(presetVar.bodyAreaId);
|
||||
// 组装用户数据
|
||||
let userjson = {
|
||||
pagecode: this.props.getSearchParam('p'),
|
||||
pk_invoice: pkBill
|
||||
}
|
||||
requestApi.loadData({
|
||||
data: userjson,
|
||||
success: (data) => {
|
||||
if (data && data.head) {
|
||||
updateCache(presetVar.pkname, pkBill, data, presetVar.formAreaId, presetVar.dataSource);
|
||||
// 设置表头数据
|
||||
//控制单据编号
|
||||
this.props.BillHeadInfo.setBillHeadInfoVisible({
|
||||
showBillCode: true,
|
||||
billCode: data.head.head.rows[0].values['billno'].value || ''
|
||||
});
|
||||
this.props.form.setAllFormValue(data.head);
|
||||
// 设置表体数据
|
||||
data.body && data.body[presetVar.tableAreaId] && this.props.cardTable.setTableData(presetVar.tableAreaId, data.body[presetVar.tableAreaId]);
|
||||
data.grandSons && data.grandSons[presetVar.tspzBodyAreaId] && this.props.cardTable.setTableData(presetVar.tspzBodyAreaId, data.grandSons[presetVar.tspzBodyAreaId]);
|
||||
let specialInvoiceIsShow = false;
|
||||
// 发票类型为“数电票(增值税专用发票):31”或“数电票(普通发票):32”时且特殊票种为E04货物运输、E09旅客运输,或征税方式为2差额开票/3全额开票时,新扩展的表体行“特殊票种明细”可见。
|
||||
let fplx = get(data,"head.head.rows[0].values.invoice_type.value","");//发票类型
|
||||
let tspzCode=get(data,"head.head.rows[0].values.tspz.display","").split('/')[0];//特殊票种编码
|
||||
let zsfs = get(data,"head.head.rows[0].values.zsfs.value","");//征税方式,枚举值:普通征税=0,差额征税=2,全额开票=3
|
||||
if (
|
||||
(fplx == "31" || fplx == "32") &&
|
||||
(tspzCode === "E04" ||
|
||||
tspzCode === "E09" ||
|
||||
zsfs === "2" || zsfs === "3")
|
||||
) {
|
||||
specialInvoiceIsShow = true;
|
||||
}
|
||||
this.setState({
|
||||
specialInvoiceIsShow,
|
||||
});
|
||||
} else {
|
||||
toast({
|
||||
color: 'danger',
|
||||
content: this.multiLangJson[presetVar.mutiLangCodeDetail.viewBillError]
|
||||
});
|
||||
}
|
||||
callbackFunction && callbackFunction.call(this, data);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
/*29PhywYa6Smee2Xoz8l2SLeeYbdVm+mtmUdoIg8/sys=*/
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
/*PFX5kEidSR9Hnx7I97Aa2K3hLse+cuHnNwkFseo1mD4=*/
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function () {
|
||||
return {
|
||||
[presetVar.tableBtns.Body_Edit]: {
|
||||
actionCode: 'BodyCardEdit'
|
||||
}
|
||||
}
|
||||
}
|
||||
/*PFX5kEidSR9Hnx7I97Aa2K3hLse+cuHnNwkFseo1mD4=*/
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
/*JNnb7VnKIimhevxx9sWXRp2uqhnqWhEwsGPYQD2u3Ic=*/
|
||||
import viewBill from '../common/viewBill'
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function (props, id) {
|
||||
this.props.setUrlParam({id: id});
|
||||
viewBill.call(this, (data) => {
|
||||
//按钮显示
|
||||
//正常0 显示红冲作废
|
||||
//红冲1 显示作废
|
||||
//作废2 都不显示
|
||||
if (data.head.head.rows[0].values.fpzt.value == 2) {
|
||||
this.props.button.setButtonVisible([presetVar.headBtns.Invalid, presetVar.headBtns.RedRush], false);
|
||||
} else if (data.head.head.rows[0].values.fpzt.value == 0) {
|
||||
this.props.button.setButtonVisible([presetVar.headBtns.Invalid, presetVar.headBtns.RedRush], true);
|
||||
} else if (data.head.head.rows[0].values.fpzt.value == 1) {
|
||||
this.props.button.setButtonVisible([presetVar.headBtns.RedRush], false);
|
||||
this.props.button.setButtonVisible([presetVar.headBtns.Invalid], true);
|
||||
}
|
||||
// 只支持 增值税电子普通发票=1,增值税电子专用发票=2,增值税电子普通发票(成品油)=8
|
||||
// if (data.head.head.rows[0].values.invoice_type.value == 1 || data.head.head.rows[0].values.invoice_type.value == 2 || data.head.head.rows[0].values.invoice_type.value == 8) {
|
||||
// this.props.button.setButtonVisible({
|
||||
// [presetVar.headBtns.Download]: true
|
||||
// });
|
||||
// } else {
|
||||
// this.props.button.setButtonVisible({
|
||||
// [presetVar.headBtns.Download]: false
|
||||
// });
|
||||
// }
|
||||
});
|
||||
}
|
||||
/*JNnb7VnKIimhevxx9sWXRp2uqhnqWhEwsGPYQD2u3Ic=*/
|
||||
|
|
@ -0,0 +1,100 @@
|
|||
/*4prg4SsHcHRCMh7vQKzFQTJEXcpBkkWOyJFq1BdXVvk=*/
|
||||
import {toast, formDownload} from 'nc-lightapp-front';
|
||||
import presetVar from '../presetVar';
|
||||
import requestApi from '../requestApi'
|
||||
import linkinvoice from './linkinvoice'
|
||||
import showListMessage from "../../../../invoiceApplication/invoiceApl/list/common/showListMessage";
|
||||
|
||||
/**
|
||||
* 表头按钮事件
|
||||
* @param {*} props
|
||||
* @param {*} key 按钮KEY
|
||||
*/
|
||||
export default function (props, key) {
|
||||
let formData = this.props.form.getAllFormValue(presetVar.formAreaId);
|
||||
let arr = [];
|
||||
arr.push({
|
||||
'fpdm': formData.rows[0].values.fpdm.value,
|
||||
'fphm': formData.rows[0].values.fphm.value,
|
||||
'pk': formData.rows[0].values.pk_invoice.value,
|
||||
'ts': formData.rows[0].values.ts.value
|
||||
});
|
||||
let sendData = {
|
||||
data: arr
|
||||
};
|
||||
let pk = formData.rows[0].values.pk_invoice.value; //当前发票pk
|
||||
let invoice_type = formData.rows[0].values.invoice_type.value; //当前发票pk
|
||||
let redinfo = {rows:[{
|
||||
values:{
|
||||
fphm: {value:formData.rows[0].values.fphm.value},
|
||||
fpdm: {value:formData.rows[0].values.fpdm.value},
|
||||
jshj: {value:formData.rows[0].values.jshj.value},
|
||||
pk: {value:formData.rows[0].values.pk_invoice.value},
|
||||
ts: {value:formData.rows[0].values.ts.value},
|
||||
invoice_type: {value:formData.rows[0].values.invoice_type.value,display:formData.rows[0].values.invoice_type.display},
|
||||
hcyy:{value:''},
|
||||
redinfo:{value:''}
|
||||
}
|
||||
}]}
|
||||
switch (key) {
|
||||
case presetVar.headBtns.RedRush :
|
||||
this.props.modal.show('redinfomodal');
|
||||
this.props.editTable.setTableData('redinfo', redinfo);
|
||||
this.props.editTable.setStatus('redinfo', 'edit');
|
||||
break;
|
||||
case presetVar.headBtns.Invalid:
|
||||
requestApi.Invalid({
|
||||
data: sendData,
|
||||
success: (data) => {
|
||||
// if (data.msg && data.msg.indexOf('失败明细') == -1) {
|
||||
// // toast({content: data.msg, color: 'success'});
|
||||
// showListMessage.call(this, JSON.parse(data.userjson));
|
||||
// } else {
|
||||
// toast({content: data.msg, color: 'danger'});
|
||||
showListMessage.call(this, JSON.parse(data.userjson));
|
||||
// }
|
||||
}
|
||||
});
|
||||
break;
|
||||
case presetVar.headBtns.LinkInvoice:
|
||||
linkinvoice.call(this);
|
||||
break;
|
||||
case presetVar.headBtns.LinkBill:
|
||||
let formData = this.props.form.getAllFormValue(presetVar.formAreaId);
|
||||
this.setState({
|
||||
show: true,
|
||||
linkBill: {
|
||||
fphm: formData.rows[0].values.fphm.value,
|
||||
fpdm: formData.rows[0].values.fpdm.value,
|
||||
pk: formData.rows[0].values.pk_invoice.value
|
||||
}
|
||||
});
|
||||
break;
|
||||
case presetVar.headBtns.Download:
|
||||
this.props.modal.show('LnvoiceDownloadTypeModal');
|
||||
this.props.form.setFormStatus('LnvoiceDownloadType', 'edit');
|
||||
// const params = {pk};
|
||||
// requestApi.download({
|
||||
// data: params,
|
||||
// success: (res) => {
|
||||
// formDownload({
|
||||
// params,
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// enctype: 1
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
break;
|
||||
case presetVar.headBtns.LinkBusiBill:
|
||||
// 联查单据
|
||||
this.setState({
|
||||
linkBusiBillModalShow: true,
|
||||
LinkBusiBillQueryParams: {
|
||||
pk_inovice: pk,
|
||||
appcode: this.props.getSearchParam('c')
|
||||
}
|
||||
});
|
||||
break;
|
||||
}
|
||||
}
|
||||
/*4prg4SsHcHRCMh7vQKzFQTJEXcpBkkWOyJFq1BdXVvk=*/
|
||||
|
|
@ -0,0 +1,123 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBakW6TAzJpB+wJDv+WV4b5Sr8=*/
|
||||
import {base, high, ajax, toast, getMultiLang} from 'nc-lightapp-front';
|
||||
import 'ssccommon/components/globalPresetVar';
|
||||
import presetVar from '../presetVar'
|
||||
import {setTableExtendCol} from 'ssccommon/components/bill';
|
||||
import viewBill from "../common/viewBill";
|
||||
import bodyinnerBtnEvent from './bodyinnerBtnEvent'
|
||||
|
||||
export default function (props) {
|
||||
|
||||
let that = this;
|
||||
/**
|
||||
* 取得模板
|
||||
*/
|
||||
let createUIDomPromise = new Promise((resolve, reject) => {
|
||||
props.createUIDom(
|
||||
{},
|
||||
(data) => {
|
||||
resolve(data);
|
||||
}
|
||||
)
|
||||
});
|
||||
let createUIDomPromise2 = new Promise((resolve, reject) => {
|
||||
props.createUIDom(
|
||||
{pagecode:'105802KP_list'},
|
||||
(data) => {
|
||||
resolve(data);
|
||||
}
|
||||
)
|
||||
});
|
||||
|
||||
this.getMultiLangPromise = new Promise((resolve, reject) => {
|
||||
getMultiLang({
|
||||
moduleId: presetVar.mutiLangCode,
|
||||
domainName: presetVar.domainName,
|
||||
currentLocale: presetVar.currentLocale,
|
||||
callback: (json) => {
|
||||
resolve(json);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Promise.all([createUIDomPromise, this.getMultiLangPromise, createUIDomPromise2]).then((resultList) => {
|
||||
let data = resultList[0];
|
||||
let json = resultList[1];
|
||||
let data4T2 = resultList[2];
|
||||
data.template.redinfo = data4T2.template.redinfo;
|
||||
this.multiLangJson = json;
|
||||
|
||||
let button = data.button;
|
||||
// 设置按钮模板
|
||||
props.button.setButtons(button);
|
||||
let meta = data.template;
|
||||
|
||||
// 设置表格扩展列
|
||||
setTableExtendCol(props, meta, button, [{
|
||||
width: '200px',
|
||||
tableAreaId: presetVar.tableAreaId,
|
||||
btnAreaId: presetVar.tableBtnAreaId,
|
||||
onButtonClick: bodyinnerBtnEvent.bind(this),
|
||||
buttonVisible: (record, index) => {
|
||||
return bodyBtnEnabled(record);
|
||||
}
|
||||
}]);
|
||||
// 判断模板中是否存在特殊票种明细表体区域
|
||||
if(meta[presetVar.tspzBodyAreaId]){
|
||||
// 平台逻辑为字段全部不显示,则表格区域不显示,不满足产品需求,故手动将该区域修改为显示
|
||||
meta[presetVar.tspzBodyAreaId].areaVisible=true;
|
||||
}
|
||||
// 设置模版
|
||||
|
||||
props.meta.setMeta(meta);
|
||||
viewBill.call(this, (data) => {
|
||||
// 设置按钮显示隐藏
|
||||
//正常0 显示红冲作废
|
||||
//红冲1 显示作废
|
||||
//作废2 都不显示
|
||||
if (data.head.head.rows[0].values.fpzt.value == 1) {
|
||||
this.props.button.setButtonVisible({
|
||||
[presetVar.headBtns.Invalid]: true,
|
||||
[presetVar.headBtns.RedRush]: false
|
||||
});
|
||||
} else if (data.head.head.rows[0].values.fpzt.value == 0) {
|
||||
this.props.button.setButtonVisible({
|
||||
[presetVar.headBtns.Invalid]: true,
|
||||
[presetVar.headBtns.RedRush]: true
|
||||
});
|
||||
} else if (data.head.head.rows[0].values.fpzt.value == 2) {
|
||||
this.props.button.setButtonVisible({
|
||||
[presetVar.headBtns.Invalid]: false,
|
||||
[presetVar.headBtns.RedRush]: false
|
||||
});
|
||||
}
|
||||
// // 只支持 增值税电子普通发票=1,增值税电子专用发票=2,增值税电子普通发票(成品油)=8,全电票(31,32),矿产类发票(116增值税电子普通发票、216增值税电子专用发票、316增值税普通发票、416增值税专用发票)
|
||||
// if (data.head.head.rows[0].values.invoice_type.value == 1 || data.head.head.rows[0].values.invoice_type.value == 2 ||
|
||||
// data.head.head.rows[0].values.invoice_type.value == 8 || data.head.head.rows[0].values.invoice_type.value == 31 ||
|
||||
// data.head.head.rows[0].values.invoice_type.value == 32 || data.head.head.rows[0].values.invoice_type.value == 116 ||
|
||||
// data.head.head.rows[0].values.invoice_type.value == 216 || data.head.head.rows[0].values.invoice_type.value == 316 ||
|
||||
// data.head.head.rows[0].values.invoice_type.value == 416 ) {
|
||||
// this.props.button.setButtonVisible({
|
||||
// [presetVar.headBtns.Download]: true
|
||||
// });
|
||||
// } else {
|
||||
// this.props.button.setButtonVisible({
|
||||
// [presetVar.headBtns.Download]: false
|
||||
// });
|
||||
// }
|
||||
// 设置翻页器
|
||||
this.props.cardPagination.setCardPaginationId({status: 1, id: this.props.getUrlParam('id')});
|
||||
});
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表按钮可用判断
|
||||
* @param {*} record
|
||||
*/
|
||||
function bodyBtnEnabled(record) {
|
||||
return [presetVar.tableBtns.Body_Edit]
|
||||
}
|
||||
|
||||
/*pmFWCFu5nhKkBzYmrkBakW6TAzJpB+wJDv+WV4b5Sr8=*/
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
/*wkIeZP/f+8mx3/nHYiHB/wEqIKtCN3804nqhAXRXxdI=*/
|
||||
import selfPresetVar from '../presetVar'
|
||||
|
||||
/**
|
||||
* 联查发票
|
||||
*/
|
||||
export default function () {
|
||||
this.invoiceComponent.setBillParams({
|
||||
pkBill: this.props.getUrlParam('id'),
|
||||
billType: selfPresetVar.LinkInvoiceBillType,//单据类型
|
||||
tradeType:"",//销项发票中获取不到交易类型,此处传空,由后端处理
|
||||
}, () => {
|
||||
this.invoiceComponent.linkInvoice.show();
|
||||
});
|
||||
}
|
||||
/*wkIeZP/f+8mx3/nHYiHB/wEqIKtCN3804nqhAXRXxdI=*/
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
#invoicecard {
|
||||
.ivm-pagination--show {
|
||||
display: block;
|
||||
}
|
||||
.ivm-pagination--hide {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,369 @@
|
|||
/*UFigk5STJwm8UdgGL1uB/XekbNt/WrTNa19WDhPxAaU=*/
|
||||
import React, {
|
||||
Component
|
||||
} from "react";
|
||||
import {
|
||||
formDownload,
|
||||
createPage,
|
||||
getMultiLang,
|
||||
base,
|
||||
high,
|
||||
createBillHeadInfo,
|
||||
toast
|
||||
} from "nc-lightapp-front";
|
||||
import "./index.less";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import headBtnClick from "./events/headBtnClick";
|
||||
import presetVar from './presetVar'
|
||||
import InvoiceComponent from '../../../invoiceComponent/compoundComponent/component'
|
||||
import LinkBill from '../../linkBill/list/index'
|
||||
import handlePageInfoChange from "./events/handlePageInfoChange";
|
||||
import LinkBillModal from 'ssccommon/components/linkbill/linkbillmodal/LinkBillModal';
|
||||
import viewBill from './common/viewBill'
|
||||
import { setForm, setCardTable, setEditTable } from 'ssccommon/utils/setComponentUsed';
|
||||
import showListMessage from "../../../invoiceApplication/invoiceApl/list/common/showListMessage";
|
||||
import listRequestApi from '../list/requestApi'
|
||||
import requestApi from './requestApi'
|
||||
import { replace, get } from "lodash";
|
||||
|
||||
const { NCRefreshBtn, NCAffix, NCDiv } = base;
|
||||
const DATA_SOURCE = `SSCIVM.INVOICE.RECEIVE.DATASOURCE`;
|
||||
|
||||
|
||||
class InvoiceSaleCard extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
multiLang: {}, // 多语对象
|
||||
pageStatus: 'browse', //页面状态
|
||||
approveDownBillId: '',
|
||||
show: false, //联查开票情况弹框
|
||||
linkBill: {}, //联查开票情况传递参数
|
||||
linkBusiBillModalShow: false, // 联查单据显示控制标志
|
||||
LinkBusiBillQueryParams: {}, // 联查单据传递参数
|
||||
specialInvoiceIsShow:false,//特殊票种表体是否显示
|
||||
};
|
||||
this.invoiceComponent = new InvoiceComponent('Invoice');
|
||||
//平台组件初始化
|
||||
setCardTable(props, presetVar.tableAreaId);
|
||||
setCardTable(props, presetVar.tspzBodyAreaId);
|
||||
setForm(props, presetVar.formAreaId);
|
||||
setForm(props, 'LnvoiceDownloadType');
|
||||
setEditTable(props, 'redinfo'),
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
//刷新按钮
|
||||
handleClick = () => {
|
||||
let multiLang = this.props.MutiInit.getIntl(1058); //this.moduleId
|
||||
viewBill.call(this, () => {
|
||||
// "1058-SP-0035": "刷新成功!",
|
||||
toast({ content: multiLang && multiLang.get('1058-SP-0035'), color: 'success' });
|
||||
})
|
||||
}
|
||||
|
||||
//翻页事件
|
||||
handlePageInfoChange = (...params) => {
|
||||
handlePageInfoChange.call(this, ...params)
|
||||
};
|
||||
|
||||
|
||||
render() {
|
||||
const { createBillHeadInfo } = this.props.BillHeadInfo;
|
||||
const {
|
||||
props: {
|
||||
cardTable: { createCardTable },
|
||||
form: { createForm, },
|
||||
button: { createButtonApp, },
|
||||
cardPagination: { createCardPagination },
|
||||
},
|
||||
handleClick,
|
||||
handlePageInfoChange,
|
||||
} = this
|
||||
const scene = this.props.getUrlParam('scene');
|
||||
let multiLang = this.props.MutiInit.getIntl(1058); //this.moduleId
|
||||
return (
|
||||
<div className="nc-bill-card" id="invoicecard">
|
||||
<div className="nc-bill-top-area">
|
||||
<NCAffix offsetTop={0}>
|
||||
<NCDiv className="invoice-card--head" areaCode={NCDiv.config.HEADER}>
|
||||
<div className="nc-bill-header-area">
|
||||
<span className="header-title-search-area">
|
||||
{/*"1058-FP-0001": "销项发票"*/}
|
||||
{
|
||||
createBillHeadInfo(
|
||||
{
|
||||
title: this.props.getSearchParam('n'), //标题
|
||||
initShowBackBtn: scene == 'listTo' ? true : false,
|
||||
backBtnClick: () => { //返回按钮的点击事件
|
||||
this.props.pushTo("/list", { pagecode: presetVar.listPagecode })
|
||||
}
|
||||
}
|
||||
)
|
||||
}
|
||||
</span>
|
||||
<div className="header-button-area">
|
||||
{createButtonApp({
|
||||
area: presetVar.headAreaId,
|
||||
onButtonClick: headBtnClick.bind(this)
|
||||
})}
|
||||
</div>
|
||||
{/* NCRefreshBtn TODO */}
|
||||
<NCRefreshBtn onClick={handleClick}></NCRefreshBtn>
|
||||
{/* 翻页器 */}
|
||||
<div className={scene == 'listTo' ? 'ivm-pagination--show' : 'ivm-pagination--hide'}>
|
||||
{
|
||||
createCardPagination({
|
||||
handlePageInfoChange: handlePageInfoChange,
|
||||
dataSource: DATA_SOURCE
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
</NCDiv>
|
||||
</NCAffix>
|
||||
<div className="nc-bill-form-area">
|
||||
{createForm(presetVar.formAreaId, {})}
|
||||
</div>
|
||||
</div>
|
||||
<div className="nc-bill-bottom-area">
|
||||
<div className='nc-bill-table-area'>
|
||||
{createCardTable(presetVar.tableAreaId, {
|
||||
showIndex: true,
|
||||
adaptionHeight: true
|
||||
})}
|
||||
</div>
|
||||
{/* 特殊票种明细表体 */}
|
||||
{this.state.specialInvoiceIsShow && (
|
||||
<div className="nc-bill-table-area">
|
||||
{createCardTable(presetVar.tspzBodyAreaId, {
|
||||
showIndex: true,
|
||||
adaptionHeight: true,
|
||||
})}
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
{/* 联查发票组件 */}
|
||||
{this.invoiceComponent.createComponent()}
|
||||
{/*联查开票申请*/}
|
||||
{this.state.show && <LinkBill
|
||||
show={this.state.show}
|
||||
linkBill={this.state.linkBill}
|
||||
closeModalEve={() => {
|
||||
this.setState({ show: false })
|
||||
}}
|
||||
></LinkBill>}
|
||||
{/* 联查单据 */}
|
||||
{this.state.linkBusiBillModalShow &&
|
||||
<LinkBillModal
|
||||
{...this.props}
|
||||
modalTitle={multiLang && multiLang.get('1058-SP-0043')} // 联查单据
|
||||
LinkBillModalAppCode="105802KP"
|
||||
LinkBillModalPageCode="105802KP_LinkBill"
|
||||
tableAreaId="bills"
|
||||
tableRenderField="billno"
|
||||
queryUrl="/nccloud/sscivm/ivsale/LinkBillAction.do"
|
||||
queryParams={this.state.LinkBusiBillQueryParams}
|
||||
onRowDoubleClick={(record, index) => {
|
||||
listRequestApi.openbill({
|
||||
data: {
|
||||
openbillid: record.pk_bill.value,
|
||||
tradetype: record.pk_tradetype.value
|
||||
},
|
||||
success: (data) => {
|
||||
this.props.openTo(data.url, data.data);
|
||||
}
|
||||
})
|
||||
}}
|
||||
closeModalEve={() => {
|
||||
this.setState({ linkBusiBillModalShow: false });
|
||||
}}
|
||||
/>}
|
||||
{this.props.modal.createModal('redinfomodal', {
|
||||
title: multiLang && multiLang.get('1058-invoice-0024'),
|
||||
content: (
|
||||
<div className="area-content">
|
||||
{this.props.editTable.createEditTable('redinfo', {
|
||||
showIndex: true,
|
||||
adaptionHeight: false
|
||||
})}
|
||||
</div>
|
||||
),
|
||||
size: 'xlg',
|
||||
beSureBtnClick: () => {
|
||||
let rows = this.props.editTable.getAllRows('redinfo');
|
||||
let toastMsgs=[];
|
||||
// "refer-XX-0003": "序号{n}:发票号码为\"{a}\"且发票类型为\"{b}\"的\"{c}\"不能为空;"
|
||||
// "refer-XX-0004": "红字信息单编号","refer-XX-0005": "红冲原因"
|
||||
let mulTisp=multiLang && multiLang.get('refer-XX-0003');
|
||||
rows.forEach((element,index) => {
|
||||
let itemMulTisp=mulTisp;
|
||||
if(['2','4','11','99'].some(ele=>{
|
||||
return ele===element.values.invoice_type.value
|
||||
})&&element.values.redinfo.value===''){
|
||||
itemMulTisp=replace(itemMulTisp,'{n}',index+1);
|
||||
itemMulTisp=replace(itemMulTisp,'{a}',get(element,"values.fphm.value",''));
|
||||
itemMulTisp=replace(itemMulTisp,'{b}',get(element,"values.invoice_type.display",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{c}',multiLang && multiLang.get('refer-XX-0004')||'红字信息单编号');
|
||||
}else if(['1','3','8','10','12'].some(ele=>{
|
||||
return ele===element.values.invoice_type.value
|
||||
})&&!element.values.hcyy.value){
|
||||
itemMulTisp=replace(itemMulTisp,'{n}',index+1);
|
||||
itemMulTisp=replace(itemMulTisp,'{a}',get(element,"values.fphm.value",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{b}',get(element,"values.invoice_type.display",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{c}',multiLang && multiLang.get('refer-XX-0005')||'红冲原因');
|
||||
}else{
|
||||
itemMulTisp='';
|
||||
}
|
||||
if(itemMulTisp!==''){
|
||||
toastMsgs.push(itemMulTisp)
|
||||
}
|
||||
});
|
||||
// 提示信息
|
||||
// "1058-SQ-0006": "展开",
|
||||
// "1058-SQ-0007": "收起",
|
||||
// "1058-SQ-0008": "关闭",
|
||||
// "refer-XX-0001": "明细",
|
||||
// "refer-XX-0002": "部分数据不合规,请修改。",
|
||||
if(toastMsgs.length){
|
||||
return toast({
|
||||
color: "danger",
|
||||
groupOperation: true,
|
||||
TextArr: [
|
||||
multiLang && multiLang.get('1058-SQ-0006'),
|
||||
multiLang && multiLang.get('1058-SQ-0007'),
|
||||
multiLang && multiLang.get('1058-SQ-0008'),
|
||||
],
|
||||
content: multiLang && multiLang.get('refer-XX-0002'),
|
||||
groupOperationMsg: toastMsgs,
|
||||
});
|
||||
}
|
||||
let newdatas = rows.map((one) => {
|
||||
return {
|
||||
pk: one.values.pk.value,
|
||||
ts: one.values.ts.value,
|
||||
fphm: one.values.fphm.value,
|
||||
fpdm: one.values.fpdm.value,
|
||||
redinfo: one.values.redinfo && one.values.redinfo.value||'',
|
||||
hcyy: one.values.hcyy && one.values.hcyy.value||'',
|
||||
}
|
||||
})
|
||||
requestApi.RedRush({
|
||||
data: {data: newdatas},
|
||||
success: (data) => {
|
||||
// if (data.msg && data.msg.indexOf('失败明细') == -1) {
|
||||
// // toast({content: data.msg, color: 'success'});
|
||||
// showListMessage.call(this, JSON.parse(data.userjson));
|
||||
// } else {
|
||||
// toast({content: data.msg, color: 'danger'});
|
||||
showListMessage.call(this, JSON.parse(data.userjson));
|
||||
// }
|
||||
this.props.modal.close('redinfomodal');
|
||||
}
|
||||
});
|
||||
},
|
||||
cancelBtnClick: ()=>{
|
||||
this.props.modal.close('redinfomodal');
|
||||
},
|
||||
userControl:true,
|
||||
})}
|
||||
{this.props.modal.createModal('LnvoiceDownloadTypeModal', {
|
||||
title: '发票类型',
|
||||
content: (
|
||||
<div className="area-content">
|
||||
<div className="nc-bill-form-area">
|
||||
{createForm('LnvoiceDownloadType', {
|
||||
onAfterEvent : this.onAfterEditForm,//表单编辑后事件
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
),
|
||||
size: '100',
|
||||
beSureBtnClick: () => {
|
||||
let formData = this.props.form.getAllFormValue(presetVar.formAreaId);
|
||||
let formMap = this.props.form.getAllFormValue('LnvoiceDownloadType');
|
||||
let pk = formData.rows[0].values.pk_invoice.value; //当前发票pk
|
||||
let {pdf_type, xml_type, ofd_type} = formMap.rows[0].values
|
||||
let invoiceType = pdf_type.value ? '1' : xml_type.value ? '2' : ofd_type.value ? '3' : '';
|
||||
if (!invoiceType) {
|
||||
return toast({
|
||||
color: 'danger',
|
||||
content: '请选择下载的文件类型'
|
||||
})
|
||||
}
|
||||
let arrInvoiceTypes=[];
|
||||
if(pdf_type.value){
|
||||
arrInvoiceTypes.push('1');
|
||||
invoiceType='1';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
if(xml_type.value){
|
||||
arrInvoiceTypes.push('2');
|
||||
invoiceType='2';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
if(ofd_type.value){
|
||||
arrInvoiceTypes.push('3');
|
||||
invoiceType='3';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
this.props.modal.close('LnvoiceDownloadTypeModal')
|
||||
// let params = {pk, invoiceType};
|
||||
// requestApi.download({
|
||||
// data: params,
|
||||
// success: (res) => {
|
||||
// formDownload({
|
||||
// params,
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// enctype: 1
|
||||
// });
|
||||
// }
|
||||
// })
|
||||
|
||||
// formDownload({
|
||||
// params,
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// // url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
// enctype: 1
|
||||
// });
|
||||
},
|
||||
cancelBtnClick: () => {
|
||||
this.props.modal.close('LnvoiceDownloadTypeModal')
|
||||
},
|
||||
userControl: true
|
||||
})}
|
||||
</div>
|
||||
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
let InvoiceSaleCardDom = createPage({
|
||||
mutiLangCode: '1058',
|
||||
billinfo: {
|
||||
billtype: 'card',
|
||||
pagecode: '105802KP_card',
|
||||
headcode: 'head',
|
||||
bodycode: 'invoicebody',
|
||||
},
|
||||
|
||||
})(InvoiceSaleCard);
|
||||
export default InvoiceSaleCardDom;
|
||||
/*UFigk5STJwm8UdgGL1uB/XekbNt/WrTNa19WDhPxAaU=*/
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
/*VYZh/ieLfoiunqL5CmpQqFo7O+k8nzrIZsNJltzpfDE=*/
|
||||
import presetVarParent from '../../../public/common/presetVar'
|
||||
|
||||
export default {
|
||||
...presetVarParent,
|
||||
pagecode: '105802KP_card',
|
||||
listPagecode: '105802KP_list',
|
||||
formAreaId: 'head',
|
||||
mutiLangCode: '1058',
|
||||
moduleId: '1058',
|
||||
domainName: 'sscivm',
|
||||
currentLocale: 'simpchn',
|
||||
headAreaId: 'header',
|
||||
tableAreaId: 'invoicebody',
|
||||
tableBtnAreaId: 'body',
|
||||
tableBtns: {
|
||||
/**
|
||||
* 展开
|
||||
*/
|
||||
Body_Edit: 'Body_Edit'
|
||||
},
|
||||
headBtns: {
|
||||
/**
|
||||
* 红冲
|
||||
*/
|
||||
body_RedRush: 'body_RedRush',
|
||||
/**
|
||||
* 作废
|
||||
*/
|
||||
body_Invalid: 'body_Invalid',
|
||||
/**
|
||||
* 联查发票
|
||||
*/
|
||||
LinkInvoice: 'LinkInvoice',
|
||||
RedRush: 'RedRush',
|
||||
Invalid: 'Invalid',
|
||||
Download: 'Download',
|
||||
LinkBill: 'LinkBill',
|
||||
/**
|
||||
* 联查单据
|
||||
*/
|
||||
LinkBusiBill: 'LinkBusiBill'
|
||||
},
|
||||
LinkInvoiceBillType:'SSIV',//联查发票billType
|
||||
/** 特殊票种表体区域编码 */
|
||||
tspzBodyAreaId:'invoice_Tspz'
|
||||
}
|
||||
/*VYZh/ieLfoiunqL5CmpQqFo7O+k8nzrIZsNJltzpfDE=*/
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
/*Mq+ry/aXt/6nN0mNqW5qEOCuGEUiGEcOgTSebzVVuDg=*/
|
||||
import {ajax} from 'nc-lightapp-front';
|
||||
|
||||
let requestApi = {
|
||||
//初始化card数据
|
||||
loadData: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/IVSaleCardQryAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
data = data.data;
|
||||
opt.success(data);
|
||||
}
|
||||
})
|
||||
},
|
||||
// 刷新
|
||||
refresh: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/ApplicationQryAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
data = data.data;
|
||||
opt.success(data);
|
||||
}
|
||||
})
|
||||
},
|
||||
//红冲
|
||||
RedRush: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/SaleInvoiceRedRushAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
data = data.data;
|
||||
opt.success(data);
|
||||
}
|
||||
})
|
||||
},
|
||||
//作废
|
||||
Invalid: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/SaleInvoiceInvalidAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
data = data.data;
|
||||
opt.success(data);
|
||||
}
|
||||
})
|
||||
},
|
||||
//下载
|
||||
download: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
data: opt.data,
|
||||
success: (data) => {
|
||||
data = data.data;
|
||||
opt.success(data);
|
||||
}
|
||||
})
|
||||
},
|
||||
};
|
||||
export default requestApi;
|
||||
/*Mq+ry/aXt/6nN0mNqW5qEOCuGEUiGEcOgTSebzVVuDg=*/
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
/*ss7v63N3d4GC7jYsqbOM0ldGBNnWu4PifVYhhfl6Nqc=*/
|
||||
import {toast} from "nc-lightapp-front"
|
||||
import requestApi from '../requestApi'
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function (props, searchVal, pageIndex, pageSize, scene) {
|
||||
let pageInfo = this.props.table.getTablePageInfo(presetVar.tableAreaId);
|
||||
pageInfo.pageIndex = pageIndex.toString();
|
||||
pageInfo.pageSize = pageInfo.pageSize.toString();
|
||||
let searchInfo = props.search.getQueryInfo(presetVar.searchAreaId);
|
||||
let data = {
|
||||
querycondition: this.searchVal,
|
||||
pagecode: presetVar.pagecode,
|
||||
areaid: presetVar.tableAreaId,
|
||||
queryAreaCode: presetVar.searchAreaId, //查询区编码
|
||||
oid: (searchInfo || {}).oid || presetVar.queryOid, //查询模板id
|
||||
querytype: 'tree',
|
||||
pageInfo: pageInfo
|
||||
};
|
||||
requestApi.queryData({
|
||||
data: data,
|
||||
success: (data) => {
|
||||
let dataNum = data.pks ? data.pks.length : 0;
|
||||
if (dataNum > 0) {
|
||||
if (scene == 'refresh') {
|
||||
this.pubMessage.refreshSuccess();
|
||||
} else {
|
||||
this.pubMessage.querySuccess(dataNum);
|
||||
}
|
||||
let pageData = {
|
||||
...data[presetVar.tableAreaId][presetVar.tableAreaId],
|
||||
allpks: data.pks,
|
||||
alltss: data.ts,
|
||||
pageInfo: {
|
||||
...pageInfo,
|
||||
total: dataNum,
|
||||
totalPage: Math.ceil(dataNum / pageInfo.pageSize).toString(),
|
||||
}
|
||||
}
|
||||
props.table.setAllTableData(presetVar.tableAreaId, pageData);
|
||||
} else {
|
||||
toast({color: 'warning', content: this.multiLangJson[presetVar.mutiLangCodeDetail.queryNoData]});
|
||||
props.table.setAllTableData(presetVar.tableAreaId, {rows: []});
|
||||
}
|
||||
// props.button.setButtonDisabled([presetVar.headBtns.RedRush, presetVar.headBtns.Invalid, presetVar.headBtns.Download], true);
|
||||
// 更新按钮状态
|
||||
this.onSelected.call(this);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/*ss7v63N3d4GC7jYsqbOM0ldGBNnWu4PifVYhhfl6Nqc=*/
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
/*JcqPaQna8Ia7w+G9n+w0DFWjspVEDM20+HMpPQMYUTI=*/
|
||||
import { requestPromise } from 'ssccommon/utils/asyncFunctions.js';
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
/**
|
||||
* 根据pks铲鲟数据
|
||||
* @param {*} data
|
||||
*/
|
||||
async function queryDataByPks(data) {
|
||||
try {
|
||||
const result = await requestPromise({
|
||||
url: `/nccloud/sscivm/ivsale/IVSaleListQryAction.do`,
|
||||
data,
|
||||
});
|
||||
return result
|
||||
} catch (e) {
|
||||
toast({ title: e.message, duration: 5, color: 'danger', })
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export default async function (pks) {
|
||||
let sendData = {
|
||||
pagecode: presetVar.pagecode,
|
||||
areaid: presetVar.tableAreaId,
|
||||
pks,
|
||||
};
|
||||
let data = await queryDataByPks(sendData);
|
||||
if (data) {
|
||||
return data;
|
||||
} else {
|
||||
toast({ color: 'warning', content: this.multiLangJson[presetVar.mutiLangCodeDetail.queryNoData] });
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/*JcqPaQna8Ia7w+G9n+w0DFWjspVEDM20+HMpPQMYUTI=*/
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
/*m8B93TCdFd8qlmmtcAONoDmJvPJyYp0eyNtfZP4NixE=*/
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function (data) {
|
||||
if (data[presetVar.tableAreaId]) {
|
||||
let rowIdMap = {};
|
||||
let tableData = this.props.table.getAllTableData(presetVar.tableAreaId);
|
||||
tableData.rows.forEach(one => {
|
||||
rowIdMap[one.values[presetVar.pkname].value] = one.rowId;
|
||||
});
|
||||
data[presetVar.tableAreaId][presetVar.tableAreaId].rows.forEach(one => {
|
||||
one.rowId = rowIdMap[one.values[presetVar.pkname].value];
|
||||
});
|
||||
this.props.table.updateTableData(presetVar.tableAreaId, data[presetVar.tableAreaId][presetVar.tableAreaId]);
|
||||
}
|
||||
}
|
||||
/*m8B93TCdFd8qlmmtcAONoDmJvPJyYp0eyNtfZP4NixE=*/
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
/*5Sewzsgb8H4wZEbgmC08glOakf82gL82KPgXhgql5QY=*/
|
||||
import { toast, formDownload, } from 'nc-lightapp-front';
|
||||
import queryDataByPks from '../common/queryDataByPks'
|
||||
import presetVar from '../presetVar';
|
||||
import requestApi from '../requestApi'
|
||||
|
||||
export default async function () {
|
||||
let multiLang = this.props.MutiInit.getIntl(1058); //this.moduleId
|
||||
let tableData = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
let eInvoiceArr = []; //电子发票
|
||||
let sInvoiceArr = []; //普通发票s
|
||||
let hasPageChange = false;
|
||||
let pks = tableData.map((one)=>{
|
||||
if(one.data.values) {
|
||||
return one.data.values.pk_invoice.value;
|
||||
}else{
|
||||
hasPageChange = true;
|
||||
return one.data.pk;
|
||||
}
|
||||
})
|
||||
if (hasPageChange) {
|
||||
// 如果选择得是后页数据,需要从数据库重新查询数据
|
||||
let data = await queryDataByPks(pks);
|
||||
if (data.data && data.data[presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows.length > 0) {
|
||||
tableData = data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows.map((one)=>{
|
||||
return {
|
||||
data: one
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
tableData.map((item) => {
|
||||
// 只支持 增值税电子普通发票=1,增值税电子专用发票=2,增值税电子普通发票(成品油)=8,全电票(31,32),矿产类发票(116增值税电子普通发票、216增值税电子专用发票、316增值税普通发票、416增值税专用发票)
|
||||
if (
|
||||
item.data.values.invoice_type.value == 1 ||
|
||||
item.data.values.invoice_type.value == 2 || item.data.values.invoice_type.value == 8 ||
|
||||
item.data.values.invoice_type.value == 31 || item.data.values.invoice_type.value == 32 ||
|
||||
item.data.values.invoice_type.value == 116 || item.data.values.invoice_type.value == 216 ||
|
||||
item.data.values.invoice_type.value == 316 || item.data.values.invoice_type.value == 416 ) {
|
||||
eInvoiceArr.push({
|
||||
pk: item.data.values.pk_invoice.value,
|
||||
type: item.data.values.invoice_type.value
|
||||
})
|
||||
} else {
|
||||
sInvoiceArr.push({
|
||||
fphm: item.data.values.fphm.value,
|
||||
fpdm: item.data.values.fpdm.value
|
||||
})
|
||||
}
|
||||
});
|
||||
if (eInvoiceArr.length > 0) {
|
||||
eInvoiceArr.forEach((item, index) => {
|
||||
// 只支持 增值税电子普通发票=1,增值税电子专用发票=2,增值税电子普通发票(成品油)=8,全电票(31,32),矿产类发票(116增值税电子普通发票、216增值税电子专用发票、316增值税普通发票、416增值税专用发票)
|
||||
if (item.type == 1 ||
|
||||
item.type == 2 || item.type == 8 ||
|
||||
item.type == 31 || item.type == 32 ||
|
||||
item.type == 116 || item.type == 216 ||
|
||||
item.type == 316 || item.type == 416 ) {
|
||||
const params = item;
|
||||
requestApi.download({
|
||||
data: params,
|
||||
success: (res) => {
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
// 清除勾选状态
|
||||
this.props.table.selectAllRows(presetVar.tableAreaId, false);
|
||||
// 更新按钮状态
|
||||
this.onSelected.call(this);
|
||||
}
|
||||
if (sInvoiceArr.length > 0) {
|
||||
let hmArr = [];
|
||||
let dmArr = [];
|
||||
sInvoiceArr.forEach((item) => {
|
||||
hmArr.push(item.fphm);
|
||||
dmArr.push(item.fpdm)
|
||||
});
|
||||
// "1058-FP-0005": "本次共下载",
|
||||
// "1058-FP-0006": "张发票,",
|
||||
// "1058-FP-0007": "张非电票未能下载。未下载明细:发票号码:",
|
||||
// "1058-FP-0008": "发票代码:",
|
||||
toast({
|
||||
content: (multiLang && multiLang.get('1058-FP-0005')) + eInvoiceArr.length + (multiLang && multiLang.get('1058-FP-0006')) + sInvoiceArr.length + (multiLang && multiLang.get('1058-FP-0007')) + hmArr.join() + (multiLang && multiLang.get('1058-FP-0008')) + dmArr.join(),
|
||||
color: 'danger'
|
||||
})
|
||||
}
|
||||
}
|
||||
/*5Sewzsgb8H4wZEbgmC08glOakf82gL82KPgXhgql5QY=*/
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
/*iJZETWydRmfD8GcyN7tU3027MMbMhRuXNnqDSW3mvN0=*/
|
||||
import {toast} from "nc-lightapp-front"
|
||||
import requestApi from '../requestApi'
|
||||
import presetVar from '../presetVar'
|
||||
import updataListData from "../common/updataListData";
|
||||
import showListMessage from "../../../../invoiceApplication/invoiceApl/list/common/showListMessage";
|
||||
|
||||
export default function (data) {
|
||||
let multiLang = this.props.MutiInit.getIntl(1058); //this.moduleId
|
||||
let CheckedRows = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
let arr = [];
|
||||
if (data) {
|
||||
arr.push(data)
|
||||
} else {
|
||||
if (CheckedRows.length > 0) {
|
||||
CheckedRows.forEach((CheckedRows) => {
|
||||
arr.push({
|
||||
pk: CheckedRows.data.values && CheckedRows.data.values.pk_invoice.value || CheckedRows.data.pk,
|
||||
ts: CheckedRows.data.values && CheckedRows.data.values.ts.value || CheckedRows.data.ts,
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
let sendData = {
|
||||
data: arr
|
||||
}
|
||||
if (CheckedRows) {
|
||||
requestApi.Invalid({
|
||||
data: sendData,
|
||||
success: (data) => {
|
||||
if (data) {
|
||||
// 更新页面数据
|
||||
updataListData.call(this, data);
|
||||
// 更新按钮状态
|
||||
this.onSelected.call(this);
|
||||
// 失败不清除勾选状态
|
||||
if (data.userjson && data.userjson.failData) {
|
||||
let tableData = this.props.table.getAllTableData(presetVar.tableAreaId);
|
||||
JSON.parse(data.userjson).failData.map((one) => {
|
||||
tableData.rows.map((currentValue, index) => {
|
||||
if (currentValue.values.fpdm.value == one.fpdm) {
|
||||
this.props.table.selectTableRows(presetVar.tableAreaId, index, true);
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
showListMessage.call(this, JSON.parse(data.userjson));
|
||||
}
|
||||
}
|
||||
})
|
||||
} else {
|
||||
// "1058-FP-0002": "请选择要作废的发票",
|
||||
toast({content: multiLang && multiLang.get('1058-FP-0002'), color: 'warning'});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*iJZETWydRmfD8GcyN7tU3027MMbMhRuXNnqDSW3mvN0=*/
|
||||
|
|
@ -0,0 +1,109 @@
|
|||
/*Khh89dHQlUVkuhmWu2d317GC9qs+ZmXFCj3NbKTVe2w=*/
|
||||
import {toast} from "nc-lightapp-front"
|
||||
import requestApi from '../requestApi'
|
||||
import presetVar from '../presetVar'
|
||||
import updataListData from "../common/updataListData";
|
||||
import queryDataByPks from '../common/queryDataByPks'
|
||||
import showListMessage from "../../../../invoiceApplication/invoiceApl/list/common/showListMessage";
|
||||
|
||||
export default async function (data, flag) {
|
||||
let multiLang = this.props.MutiInit.getIntl(1058); //this.moduleId
|
||||
let arr = [];
|
||||
let needRedInfo = [];
|
||||
if (data && flag) {
|
||||
arr=data
|
||||
}else if(data){
|
||||
arr.push(data)
|
||||
} else {
|
||||
let CheckedRows = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
if (CheckedRows.length > 0) {
|
||||
let hasPageChange = false;
|
||||
let pks = CheckedRows.map((one)=>{
|
||||
if(one.data.values) {
|
||||
return one.data.values.pk_invoice.value;
|
||||
}else{
|
||||
hasPageChange = true;
|
||||
return one.data.pk;
|
||||
}
|
||||
})
|
||||
if (hasPageChange) {
|
||||
// 如果选择得是后页数据,需要从数据库重新查询数据
|
||||
let data = await queryDataByPks(pks);
|
||||
if (data.data && data.data[presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows.length > 0) {
|
||||
CheckedRows = data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows.map((one)=>{
|
||||
return {
|
||||
data: one
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
this.noRedInfo=[];
|
||||
CheckedRows.forEach((CheckedRows) => {
|
||||
if(CheckedRows.data.values.fpzt.value == 0 && CheckedRows.data.values.jshj.value >= 0){
|
||||
needRedInfo.push({
|
||||
values: {
|
||||
fphm: { value: CheckedRows.data.values.fphm.value },
|
||||
fpdm: { value: CheckedRows.data.values.fpdm.value },
|
||||
jshj: { value: CheckedRows.data.values.jshj.value },
|
||||
pk: { value: CheckedRows.data.values.pk_invoice.value },
|
||||
ts: { value: CheckedRows.data.values.ts.value },
|
||||
invoice_type: {
|
||||
value: CheckedRows.data.values.invoice_type.value,
|
||||
display:CheckedRows.data.values.invoice_type.display
|
||||
},
|
||||
hcyy:{value:''}
|
||||
},
|
||||
});
|
||||
}else{
|
||||
this.noRedInfo.push({
|
||||
pk: CheckedRows.data.values && CheckedRows.data.values.pk_invoice.value || CheckedRows.data.pk,
|
||||
ts: CheckedRows.data.values && CheckedRows.data.values.ts.value || CheckedRows.data.ts,
|
||||
})
|
||||
}
|
||||
arr.push({
|
||||
pk: CheckedRows.data.values && CheckedRows.data.values.pk_invoice.value || CheckedRows.data.pk,
|
||||
ts: CheckedRows.data.values && CheckedRows.data.values.ts.value || CheckedRows.data.ts
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
let sendData = {
|
||||
data: arr
|
||||
};
|
||||
if(needRedInfo.length>0){
|
||||
this.props.modal.show('redinfomodal');
|
||||
this.props.editTable.setTableData('redinfo', {rows:needRedInfo});
|
||||
this.props.editTable.setStatus('redinfo', 'edit');
|
||||
return;
|
||||
}
|
||||
if (arr.length>0) {
|
||||
requestApi.RedRush({
|
||||
data: sendData,
|
||||
success: (data) => {
|
||||
if (data) {
|
||||
// 更新页面数据
|
||||
updataListData.call(this, data);
|
||||
// 更新按钮状态
|
||||
this.onSelected.call(this);
|
||||
// 失败不清除勾选状态
|
||||
if (data.userjson && data.userjson.failData) {
|
||||
let tableData = this.props.table.getAllTableData(presetVar.tableAreaId);
|
||||
JSON.parse(data.userjson).failData.map((one) => {
|
||||
tableData.rows.map((currentValue, index) => {
|
||||
if (currentValue.values.fpdm.value == one.fpdm) {
|
||||
this.props.table.selectTableRows(presetVar.tableAreaId, index, true);
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
showListMessage.call(this, JSON.parse(data.userjson));
|
||||
}
|
||||
}
|
||||
})
|
||||
} else {
|
||||
// "1058-FP-0003": "请选择要红冲的发票",
|
||||
toast({content: multiLang && multiLang.get('1058-FP-0003'), color: 'warning'});
|
||||
}
|
||||
}
|
||||
|
||||
/*Khh89dHQlUVkuhmWu2d317GC9qs+ZmXFCj3NbKTVe2w=*/
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
/*JNnb7VnKIimhevxx9sWXRp2uqhnqWhEwsGPYQD2u3Ic=*/
|
||||
import presetVar from '../presetVar'
|
||||
import requestApi from '../requestApi'
|
||||
import {toast} from 'nc-lightapp-front';
|
||||
|
||||
export default function (props, config, pks) {
|
||||
let sendData = {
|
||||
pagecode: presetVar.pagecode,
|
||||
areaid: presetVar.tableAreaId,
|
||||
pks: pks
|
||||
};
|
||||
requestApi.changePage({
|
||||
data: sendData,
|
||||
success: (data) => {
|
||||
if (data) {
|
||||
props.table.setAllTableData(presetVar.tableAreaId, data[presetVar.tableAreaId][presetVar.tableAreaId]);
|
||||
} else {
|
||||
toast({color: 'warning', content: this.multiLangJson[presetVar.mutiLangCodeDetail.queryNoData]});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
/*JNnb7VnKIimhevxx9sWXRp2uqhnqWhEwsGPYQD2u3Ic=*/
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
/*pmFWCFu5nhKkBzYmrkBakW6TAzJpB+wJDv+WV4b5Sr8=*/
|
||||
import {base, high, ajax, toast, getMultiLang, getBusinessInfo} from 'nc-lightapp-front';
|
||||
import 'ssccommon/components/globalPresetVar';
|
||||
import presetVar from '../presetVar'
|
||||
import {setTableExtendCol} from 'ssccommon/components/profile'
|
||||
import onRowDoubleClick from "./onRowDoubleClick";
|
||||
import tableButtonEvent from './tableButtonEvent'
|
||||
|
||||
export default function (props) {
|
||||
|
||||
let that = this;
|
||||
/**
|
||||
* 取得模板
|
||||
*/
|
||||
let createUIDomPromise = new Promise((resolve, reject) => {
|
||||
props.createUIDom(
|
||||
{},
|
||||
(data) => {
|
||||
resolve(data);
|
||||
}
|
||||
)
|
||||
})
|
||||
// 多语
|
||||
this.getMultiLangPromise = new Promise((resolve, reject) => {
|
||||
getMultiLang({
|
||||
moduleId: presetVar.mutiLangCode,
|
||||
domainName: presetVar.domainName,
|
||||
currentLocale: presetVar.currentLocale,
|
||||
callback: (json) => {
|
||||
resolve(json);
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
Promise.all([createUIDomPromise, this.getMultiLangPromise]).then((resultList) => {
|
||||
let data = resultList[0];
|
||||
let json = resultList[1];
|
||||
|
||||
this.multiLangJson = json;
|
||||
|
||||
let button = data.button;
|
||||
// 设置按钮模板
|
||||
props.button.setButtons(button);
|
||||
//设置按钮的初始可用性
|
||||
props.button.setButtonDisabled([presetVar.headBtns.RedRush, presetVar.headBtns.Invalid, presetVar.headBtns.Download, presetVar.headBtns.LinkBill, presetVar.headBtns.linkinvoice, presetVar.headBtns.LinkBusiBill], true);
|
||||
let meta = data.template;
|
||||
meta[presetVar.searchAreaId].items.forEach(ele => {
|
||||
if (ele.attrcode === 'invoice_type') {
|
||||
const codes = ['15', '16', '17', '18', '19', '20', '21',]
|
||||
ele.options = ele.options.filter(each => !codes.includes(each.value))
|
||||
}else if(ele.attrcode == 'pk_org') {
|
||||
ele.queryCondition = () => {
|
||||
return {
|
||||
pk_group: (getBusinessInfo() || {}).groupId,
|
||||
TreeRefActionExt: 'nccloud.web.sscivm.ivrec.ref.sqlbuilder.FinanceOrgRefSqlBuilder',
|
||||
DataPowerOperationCode: 'fi',
|
||||
isDataPowerEnable: 'Y',
|
||||
appcode: props.getSearchParam('c')
|
||||
};
|
||||
};
|
||||
}
|
||||
})
|
||||
// 页面标题
|
||||
// that.setState({pageTitle: that.props.getSearchParam('n')});
|
||||
// 设置列表支持翻页
|
||||
meta[presetVar.tableAreaId].pagination = true;
|
||||
//设置表格的扩展按钮列
|
||||
setTableExtendCol(props, data.template, [{
|
||||
width: '200px',
|
||||
areaId: presetVar.tableAreaId,
|
||||
btnAreaId: presetVar.tableBtnAreaId,
|
||||
buttonVisible: (record, index) => {
|
||||
return bodyBtnEnabled(record);
|
||||
},
|
||||
onButtonClick: tableButtonEvent.bind(that)
|
||||
}]);
|
||||
|
||||
// 发票号列自定义
|
||||
props.table.setTableRender(presetVar.tableAreaId, "fphm", (text, record, index) => {
|
||||
return (<a className="fphm" style={{cursor: 'pointer'}}
|
||||
onClick={() => {
|
||||
onRowDoubleClick.call(that, record, index, props);
|
||||
}}> {record.fphm.value} </ a>
|
||||
)
|
||||
})
|
||||
// props.meta.setMeta(meta);
|
||||
//设置默认时间和组织
|
||||
if ((this.props.search.getAllSearchData(presetVar.searchAreaId, false).conditions || []).length == 0) {
|
||||
if (data.context.pk_org) {
|
||||
this.props.search.setSearchValByField(presetVar.searchAreaId, 'pk_org', {
|
||||
value: data.context.pk_org,
|
||||
display: data.context.org_Name
|
||||
});
|
||||
}
|
||||
this.props.search.setSearchValByField(presetVar.searchAreaId, 'kprq', {value: ['#month(0)#', '#month(0)#']});
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表按钮可用判断
|
||||
* @param {*} record
|
||||
*/
|
||||
//正常0 显示红冲作废
|
||||
//红冲1 显示作废
|
||||
//作废2 都不显示
|
||||
function bodyBtnEnabled(record) {
|
||||
if (record.fpzt.value == 1) {
|
||||
return [presetVar.tableBtns.body_Invalid]
|
||||
} else if (record.fpzt.value == 0) {
|
||||
if (record.red_flag.value === '1') {
|
||||
return [presetVar.tableBtns.body_Invalid,]
|
||||
} else {
|
||||
return [
|
||||
presetVar.tableBtns.body_RedRush,
|
||||
presetVar.tableBtns.body_Invalid,
|
||||
]
|
||||
}
|
||||
} else if (record.fpzt.value == 2) {
|
||||
return []
|
||||
}
|
||||
}
|
||||
|
||||
/*pmFWCFu5nhKkBzYmrkBakW6TAzJpB+wJDv+WV4b5Sr8=*/
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
/*s+bAmh19O1OWrgiuPwXSstGgSjMjFLS595hansunioE=*/
|
||||
import queryData from '../common/queryData'
|
||||
|
||||
export default function (props, searchVal, scene) {
|
||||
if (searchVal && JSON.stringify(searchVal) != "{}") {
|
||||
this.searchVal = searchVal;
|
||||
queryData.call(this, props, searchVal, 0, 10, scene);
|
||||
}
|
||||
}
|
||||
|
||||
/*s+bAmh19O1OWrgiuPwXSstGgSjMjFLS595hansunioE=*/
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/*wkIeZP/f+8mx3/nHYiHB/wEqIKtCN3804nqhAXRXxdI=*/
|
||||
import queryDataByPks from '../common/queryDataByPks'
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
|
||||
/**
|
||||
* 联查发票
|
||||
*/
|
||||
export default async function () {
|
||||
let checked = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
let values = {};
|
||||
if(checked[0].data.values){
|
||||
values = checked[0].data.values
|
||||
}else{
|
||||
// 如果选择得是后页数据,需要从数据库重新查询数据
|
||||
let data = await queryDataByPks([checked[0].data.pk]);
|
||||
if(data.data && data.data[presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId] && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows && data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows.length > 0){
|
||||
values = data.data[presetVar.tableAreaId][presetVar.tableAreaId].rows[0].values;
|
||||
}
|
||||
}
|
||||
this.invoiceComponent.setBillParams({
|
||||
pkBill: values[presetVar.pkname].value,
|
||||
billType: presetVar.LinkInvoiceBillType,//单据类型
|
||||
tradeType:"",//销项发票中获取不到交易类型,此处传空,由后端处理
|
||||
}, () => {
|
||||
this.invoiceComponent.linkInvoice.show();
|
||||
});
|
||||
}
|
||||
/*wkIeZP/f+8mx3/nHYiHB/wEqIKtCN3804nqhAXRXxdI=*/
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
/*xbBNZdDFBeHR0NxHIc8oECyrN49bDHrrIZosDMc0bAs=*/
|
||||
import presetVar from '../presetVar'
|
||||
|
||||
export default function (record, index, props) {
|
||||
// 打开单据页面
|
||||
this.props.pushTo("/card", {
|
||||
status: presetVar.status.browse,
|
||||
pagecode: presetVar.cardPagecode,
|
||||
id: record[presetVar.pkname].value,
|
||||
tradetype: record[presetVar.billtypecode].value,
|
||||
scene: 'listTo',
|
||||
billcode: record.billno.value
|
||||
})
|
||||
}
|
||||
/*xbBNZdDFBeHR0NxHIc8oECyrN49bDHrrIZosDMc0bAs=*/
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
/*upBNcA9hDYBunI8fe4SwjEWttezceFcoGTDyYpyXW6I=*/
|
||||
import ivmSearchBtnClick from './ivmSearchBtnClick'
|
||||
import presetVar from "../presetVar";
|
||||
|
||||
export default function (props, searchVal) {
|
||||
searchVal = this.props.search.getAllSearchData(presetVar.searchAreaId);
|
||||
ivmSearchBtnClick.call(this, props, searchVal, 'refresh');
|
||||
}
|
||||
/*upBNcA9hDYBunI8fe4SwjEWttezceFcoGTDyYpyXW6I=*/
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
/*2m/SN66JmdiWgHtRCBPRtNdar5Kd56DoEKmbsEF48C4=*/
|
||||
import presetVar from '../presetVar'
|
||||
import redrush from './RedRush'
|
||||
import invalid from './Invalid'
|
||||
|
||||
export default function () {
|
||||
return {
|
||||
// 红冲
|
||||
[presetVar.tableBtns.body_RedRush]: {
|
||||
click: (btnKey, record, index) => {
|
||||
this.noRedInfo=[];
|
||||
this.props.modal.show('redinfomodal');
|
||||
this.props.editTable.setTableData('redinfo', {
|
||||
rows:[{
|
||||
values:{
|
||||
fphm: {value:record.fphm.value},
|
||||
fpdm: {value:record.fpdm.value},
|
||||
jshj: {value:record.jshj.value},
|
||||
pk: {value:record.pk_invoice.value},
|
||||
ts: {value:record.ts.value},
|
||||
invoice_type: {value:record.invoice_type.value,display:record.invoice_type.display},
|
||||
redinfo:{value:''},
|
||||
hcyy:{value:''}
|
||||
}
|
||||
}]
|
||||
});
|
||||
this.props.editTable.setStatus('redinfo', 'edit');
|
||||
}
|
||||
},
|
||||
// 作废
|
||||
[presetVar.tableBtns.body_Invalid]: {
|
||||
click: (btnKey, record, index) => {
|
||||
let data = {
|
||||
'pk': record.pk_invoice.value,
|
||||
'ts': record.ts.value,
|
||||
};
|
||||
invalid.call(this, data);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/*2m/SN66JmdiWgHtRCBPRtNdar5Kd56DoEKmbsEF48C4=*/
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
#invoice-sale-list{
|
||||
.ivm-searcharea{
|
||||
background: #fff;
|
||||
padding-left: 20px;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,389 @@
|
|||
/*XqV/awHDdJTpxRspYcyLqVDeDCgh8D0u/n5Pb+9JsHE=*/
|
||||
import React, {
|
||||
Component
|
||||
} from "react";
|
||||
import {
|
||||
formDownload,
|
||||
createPage,
|
||||
getMultiLang,
|
||||
base,
|
||||
toast
|
||||
} from "nc-lightapp-front";
|
||||
import "./index.less";
|
||||
import initTemplate from "./events/initTemplate.js";
|
||||
import handlePageInfoChange from './events/handlePageInfoChange';
|
||||
import ivmSearchBtnClick from './events/ivmSearchBtnClick';
|
||||
import onRowDoubleClick from './events/onRowDoubleClick';
|
||||
import RedRush from './events/RedRush';
|
||||
import Invalid from './events/Invalid';
|
||||
import refresh from './events/refresh';
|
||||
import Download from './events/Download';
|
||||
import linkinvoice from './events/linkinvoice'
|
||||
import BillListStyle from 'ssccommon/components/bill-list';
|
||||
import presetVar from './presetVar'
|
||||
import LinkBill from '../../linkBill/list/index'
|
||||
import PubMessage from 'ssccommon/utils/pubMessage';
|
||||
import InvoiceComponent from '../../../invoiceComponent/compoundComponent/component'
|
||||
import LinkBillModal from 'ssccommon/components/linkbill/linkbillmodal/LinkBillModal';
|
||||
import { setSearch, setTable, setEditTable,setForm } from 'ssccommon/utils/setComponentUsed';
|
||||
import requestApi from "./requestApi";
|
||||
import { replace, get } from "lodash";
|
||||
|
||||
import LinkSituation from '../../../invoiceApplication/linkSituation/list/linkSituation.js'
|
||||
|
||||
const DATA_SOURCE = `SSCIVM.INVOICE.RECEIVE.DATASOURCE`;
|
||||
|
||||
class InvoiceSale extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
multiLang: {}, // 多语对象
|
||||
pageStatus: 'browse', // 页面状态
|
||||
pageTitle: "", //页面标题
|
||||
show: false, //联查开票情况弹框
|
||||
linkBusiBillModalShow: false, //联查单据弹框
|
||||
LinkBusiBillQueryParams: {} // 联查单据查询条件
|
||||
};
|
||||
this.searchVal = {}; //查询缓存
|
||||
this.linkBill = {}; //联查开票情况传递参数
|
||||
this.invoiceComponent = new InvoiceComponent('Invoice');
|
||||
this.pubMessage = new PubMessage();
|
||||
//平台组件初始化
|
||||
setTable(props, presetVar.tableAreaId),
|
||||
setSearch(props, presetVar.searchAreaId),
|
||||
setEditTable(props, 'redinfo'),
|
||||
setForm(props,'LnvoiceDownloadType')
|
||||
initTemplate.call(this, props);
|
||||
}
|
||||
|
||||
// 头部按钮组事件分发
|
||||
headerBtnEventDistribute = () => ({
|
||||
|
||||
[presetVar.headBtns.RedRush]: () => {
|
||||
RedRush.call(this);
|
||||
}, // 红冲
|
||||
|
||||
[presetVar.headBtns.Invalid]: () => {
|
||||
Invalid.call(this);
|
||||
}, // 作废
|
||||
|
||||
[presetVar.headBtns.Download]: () => {
|
||||
this.props.modal.show('LnvoiceDownloadTypeModal');
|
||||
this.props.form.setFormStatus('LnvoiceDownloadType', 'edit');
|
||||
|
||||
// Download.call(this);
|
||||
}, // 下载
|
||||
|
||||
[presetVar.headBtns.LinkBill]: () => {
|
||||
this.setState({ show: true });
|
||||
}, // 联查开票申请
|
||||
|
||||
[presetVar.headBtns.linkinvoice]: () => {
|
||||
linkinvoice.call(this);
|
||||
}, // 联查关联发票
|
||||
|
||||
[presetVar.headBtns.LinkBusiBill]: () => {
|
||||
let checked = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
let pk = checked[0].data.values && checked[0].data.values[presetVar.pkname].value || checked[0].data.pk;
|
||||
this.setState({
|
||||
linkBusiBillModalShow: true,
|
||||
LinkBusiBillQueryParams: {
|
||||
pk_inovice: pk,
|
||||
appcode: this.props.getSearchParam('c')
|
||||
}
|
||||
});
|
||||
}, // 联查单据
|
||||
});
|
||||
|
||||
//头部刷新事件
|
||||
refreshButtonEvent = () => {
|
||||
refresh.call(this, this.props, this.searchVal)
|
||||
};
|
||||
|
||||
// 查询区查询按钮点击
|
||||
ivmSearchBtnClick = (...params) => {
|
||||
ivmSearchBtnClick.call(this, ...params)
|
||||
};
|
||||
|
||||
//表格行双击事件
|
||||
onRowDoubleClick = (...params) => {
|
||||
onRowDoubleClick.call(this, ...params);
|
||||
};
|
||||
|
||||
//翻页器事件
|
||||
handlePageInfoChange = (...params) => {
|
||||
handlePageInfoChange.call(this, ...params);
|
||||
};
|
||||
|
||||
//单选事件
|
||||
onSelected = (props, moduleId, status, index, isSelect) => {//单选第五个参数为是否选中(true/false)
|
||||
let checked = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
if (checked && checked.length > 0) {
|
||||
if (checked[0].data && checked[0].data.values) {
|
||||
this.linkBill = {
|
||||
fphm: checked[0].data.values.fphm.value,
|
||||
fpdm: checked[0].data.values.fpdm.value,
|
||||
pk: checked[0].data.values.pk_invoice.value
|
||||
};
|
||||
} else {
|
||||
this.linkBill = {
|
||||
fphm: '',
|
||||
fpdm: '',
|
||||
pk: checked[0].data ? checked[0].data.pk : '',
|
||||
};
|
||||
}
|
||||
this.props.button.setButtonDisabled([presetVar.headBtns.RedRush, presetVar.headBtns.Invalid, presetVar.headBtns.Download, presetVar.headBtns.LinkBill, presetVar.headBtns.linkinvoice, presetVar.headBtns.LinkBusiBill], false);
|
||||
} else {
|
||||
this.props.button.setButtonDisabled([presetVar.headBtns.RedRush, presetVar.headBtns.Invalid, presetVar.headBtns.Download, presetVar.headBtns.LinkBill, presetVar.headBtns.linkinvoice, presetVar.headBtns.LinkBusiBill], true);
|
||||
}
|
||||
};
|
||||
|
||||
// 缓存数据赋值成功的钩子函数
|
||||
componentInitFinished = () => {setTimeout(()=>{this.onSelected()},500)}
|
||||
|
||||
render() {
|
||||
const {
|
||||
props: {
|
||||
search: { NCCreateSearch, },
|
||||
table: { createSimpleTable, },
|
||||
form: {createForm,},
|
||||
},
|
||||
headerBtnEventDistribute,
|
||||
ivmSearchBtnClick,
|
||||
refreshButtonEvent,
|
||||
onRowDoubleClick,
|
||||
handlePageInfoChange,
|
||||
onSelected,
|
||||
componentInitFinished,
|
||||
} = this;
|
||||
let multiLang = this.props.MutiInit.getIntl(1058);
|
||||
return (
|
||||
<BillListStyle
|
||||
id='invoice-sale-list'
|
||||
{...this.props}
|
||||
>
|
||||
{/*"1058-FP-0001": "销项发票"*/}
|
||||
<BillListStyle.HeadArea
|
||||
title={this.props.getSearchParam('n')}
|
||||
refreshButtonEvent={refreshButtonEvent}
|
||||
status={this.state.pageStatus}
|
||||
>
|
||||
{/* 头部按钮组 */}
|
||||
<BillListStyle.ButtonGroup
|
||||
area={presetVar.headBtnAreaId}
|
||||
buttonEvent={headerBtnEventDistribute}
|
||||
/>
|
||||
</BillListStyle.HeadArea>
|
||||
{/* 查询区 */}
|
||||
<BillListStyle.SearchArea>
|
||||
{NCCreateSearch(presetVar.searchAreaId, {
|
||||
clickSearchBtn: ivmSearchBtnClick,
|
||||
})}
|
||||
</BillListStyle.SearchArea>
|
||||
<BillListStyle.BodyArea>
|
||||
{/* 列表 */}
|
||||
{createSimpleTable(presetVar.tableAreaId, {
|
||||
showCheck: true,
|
||||
showIndex: true,
|
||||
onRowDoubleClick: onRowDoubleClick,
|
||||
dataSource: DATA_SOURCE,
|
||||
pkname: presetVar.pkname,
|
||||
handlePageInfoChange: handlePageInfoChange,
|
||||
selectedChange: onSelected,
|
||||
componentInitFinished,
|
||||
})}
|
||||
{/*联查开票申请*/}
|
||||
{this.state.show && <LinkBill
|
||||
show={this.state.show}
|
||||
linkBill={this.linkBill}
|
||||
closeModalEve={() => {
|
||||
this.setState({ show: false })
|
||||
}}
|
||||
></LinkBill>}
|
||||
{/* 联查发票组件 */}
|
||||
{this.invoiceComponent.createComponent()}
|
||||
{/* 联查单据组件 */}
|
||||
{this.state.linkBusiBillModalShow &&
|
||||
<LinkBillModal
|
||||
{...this.props}
|
||||
modalTitle={multiLang && multiLang.get('1058-SP-0043')} // 联查单据
|
||||
LinkBillModalPageCode="105802KP_LinkBill"
|
||||
tableAreaId="bills"
|
||||
tableRenderField="billno"
|
||||
queryUrl="/nccloud/sscivm/ivsale/LinkBillAction.do"
|
||||
queryParams={this.state.LinkBusiBillQueryParams}
|
||||
onRowDoubleClick={(record, index) => {
|
||||
requestApi.openbill({
|
||||
data: {
|
||||
openbillid: record.pk_bill.value,
|
||||
tradetype: record.pk_tradetype.value
|
||||
},
|
||||
success: (data) => {
|
||||
this.props.openTo(data.url, data.data);
|
||||
}
|
||||
})
|
||||
}}
|
||||
closeModalEve={() => {
|
||||
this.setState({ linkBusiBillModalShow: false });
|
||||
}}
|
||||
/>}
|
||||
{this.props.modal.createModal('redinfomodal', {
|
||||
userControl:true,
|
||||
title: multiLang && multiLang.get('1058-invoice-0024')|| '红字信息申请表补录',
|
||||
content: (
|
||||
<div className="area-content">
|
||||
{this.props.editTable.createEditTable('redinfo', {
|
||||
showIndex: true,
|
||||
adaptionHeight: false
|
||||
})}
|
||||
</div>
|
||||
),
|
||||
size: 'xlg',
|
||||
cancelBtnClick: ()=>{
|
||||
this.props.modal.close('redinfomodal');
|
||||
},
|
||||
beSureBtnClick: () => {
|
||||
let tableData = this.props.editTable.getAllData('redinfo').rows;
|
||||
let checkRequired = this.props.editTable.checkRequired('redinfo', tableData);
|
||||
let rows = this.props.editTable.getAllRows('redinfo');
|
||||
if (!checkRequired) {
|
||||
return;
|
||||
}
|
||||
let toastMsgs=[];
|
||||
// "refer-XX-0003": "序号{n}:发票号码为\"{a}\"且发票类型为\"{b}\"的\"{c}\"不能为空;"
|
||||
// "refer-XX-0004": "红字信息单编号","refer-XX-0005": "红冲原因"
|
||||
let mulTisp=multiLang && multiLang.get('refer-XX-0003');
|
||||
rows.forEach((element,index) => {
|
||||
let itemMulTisp=mulTisp;
|
||||
if(['2','4','11','99'].some(ele=>{
|
||||
return ele===element.values.invoice_type.value
|
||||
})&&element.values.redinfo.value===''){
|
||||
itemMulTisp=replace(itemMulTisp,'{n}',index+1);
|
||||
itemMulTisp=replace(itemMulTisp,'{a}',get(element,"values.fphm.value",''));
|
||||
itemMulTisp=replace(itemMulTisp,'{b}',get(element,"values.invoice_type.display",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{c}',multiLang && multiLang.get('refer-XX-0004')||'红字信息单编号');
|
||||
}else if(['1','3','8','10','12','31','32','116','216','316','416'].some(ele=>{
|
||||
// 116增值税电子普通发票(矿产类)、216增值税电子专用发票(矿产类)、316增值税普通发票(矿产类)、416增值税专用发票(矿产类)
|
||||
// 31,32全电发票
|
||||
return ele===element.values.invoice_type.value
|
||||
})&&!element.values.hcyy.value){
|
||||
itemMulTisp=replace(itemMulTisp,'{n}',index+1);
|
||||
itemMulTisp=replace(itemMulTisp,'{a}',get(element,"values.fphm.value",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{b}',get(element,"values.invoice_type.display",""));
|
||||
itemMulTisp=replace(itemMulTisp,'{c}',multiLang && multiLang.get('refer-XX-0005')||'红冲原因');
|
||||
}else{
|
||||
itemMulTisp='';
|
||||
}
|
||||
if(itemMulTisp!==''){
|
||||
toastMsgs.push(itemMulTisp)
|
||||
}
|
||||
});
|
||||
// 提示信息
|
||||
// "1058-SQ-0006": "展开",
|
||||
// "1058-SQ-0007": "收起",
|
||||
// "1058-SQ-0008": "关闭",
|
||||
// "refer-XX-0001": "明细",
|
||||
// "refer-XX-0002": "部分数据不合规,请修改。",
|
||||
if(toastMsgs.length){
|
||||
return toast({
|
||||
color: "danger",
|
||||
groupOperation: true,
|
||||
TextArr: [
|
||||
multiLang && multiLang.get('1058-SQ-0006'),
|
||||
multiLang && multiLang.get('1058-SQ-0007'),
|
||||
multiLang && multiLang.get('1058-SQ-0008'),
|
||||
],
|
||||
content: multiLang && multiLang.get('refer-XX-0002'),
|
||||
groupOperationMsg: toastMsgs,
|
||||
});
|
||||
}
|
||||
let newdatas = rows.map((one) => {
|
||||
return {
|
||||
pk: one.values.pk.value,
|
||||
ts: one.values.ts.value,
|
||||
redinfo: one.values.redinfo && one.values.redinfo.value||'',
|
||||
hcyy: one.values.hcyy && one.values.hcyy.value||'',
|
||||
}
|
||||
})
|
||||
RedRush.call(this, [...newdatas, ...this.noRedInfo], true);
|
||||
this.props.modal.close('redinfomodal');
|
||||
}
|
||||
})}
|
||||
{this.props.modal.createModal('LnvoiceDownloadTypeModal', {
|
||||
title: '发票类型',
|
||||
content: (
|
||||
<div className="area-content">
|
||||
<div className="nc-bill-form-area">
|
||||
{createForm('LnvoiceDownloadType', {
|
||||
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
),
|
||||
size: '100',
|
||||
beSureBtnClick: () => {
|
||||
let formData = this.props.table.getCheckedRows(presetVar.tableAreaId);
|
||||
let formMap = this.props.form.getAllFormValue('LnvoiceDownloadType');
|
||||
let {pdf_type, xml_type, ofd_type} = formMap.rows[0].values
|
||||
let invoiceType = pdf_type.value ? '1' : xml_type.value ? '2' : ofd_type.value ? '3' : '';
|
||||
if (!invoiceType) {
|
||||
return toast({
|
||||
color: 'danger',
|
||||
content: '请选择下载的文件类型'
|
||||
})
|
||||
}
|
||||
for(let i=0;i<formData.length;i++){
|
||||
let pk = formData[i].data.values.pk_invoice; //当前发票pk
|
||||
let arrInvoiceTypes = [];
|
||||
if (pdf_type.value) {
|
||||
arrInvoiceTypes.push('1');
|
||||
invoiceType = '1';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
if (xml_type.value) {
|
||||
arrInvoiceTypes.push('2');
|
||||
invoiceType = '2';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
if (ofd_type.value) {
|
||||
arrInvoiceTypes.push('3');
|
||||
invoiceType = '3';
|
||||
let params = {pk, invoiceType};
|
||||
formDownload({
|
||||
params,
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceDownloadAction.do',
|
||||
// url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
enctype: 1
|
||||
});
|
||||
}
|
||||
}
|
||||
this.props.modal.close('LnvoiceDownloadTypeModal')
|
||||
},
|
||||
cancelBtnClick: () => {
|
||||
this.props.modal.close('LnvoiceDownloadTypeModal')
|
||||
},
|
||||
userControl: true
|
||||
})}
|
||||
|
||||
</BillListStyle.BodyArea>
|
||||
</BillListStyle>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
let InvoiceSaleDom = createPage({ mutiLangCode: presetVar.mutiLangCode })(InvoiceSale);
|
||||
export default InvoiceSaleDom;
|
||||
|
||||
/*XqV/awHDdJTpxRspYcyLqVDeDCgh8D0u/n5Pb+9JsHE=*/
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
/*VYZh/ieLfoiunqL5CmpQqFo7O+k8nzrIZsNJltzpfDE=*/
|
||||
import presetVarParent from '../../../public/common/presetVar'
|
||||
|
||||
export default {
|
||||
...presetVarParent,
|
||||
pagecode: '105802KP_list',
|
||||
cardPagecode: '105802KP_card',
|
||||
searchAreaId: 'xxfp_search',
|
||||
mutiLangCode: '1058',
|
||||
moduleId: '1058',
|
||||
tableAreaId: 'invoices',
|
||||
pkname: 'pk_invoice',
|
||||
billtypecode: 'billtypecode',
|
||||
headBtnAreaId: 'header',
|
||||
tableBtnAreaId: 'body',
|
||||
queryOid: '1001ZG1000000000FR5M',
|
||||
linkBusiBillModal: 'linkBusiBillModal',
|
||||
tableBtns: {
|
||||
/**
|
||||
* 红冲
|
||||
*/
|
||||
body_RedRush: 'body_RedRush',
|
||||
/**
|
||||
* 作废
|
||||
*/
|
||||
body_Invalid: 'body_Invalid',
|
||||
},
|
||||
headBtns: {
|
||||
RedRush: 'RedRush',
|
||||
Invalid: 'Invalid',
|
||||
Download: 'Download',
|
||||
LinkBill: 'LinkBill',
|
||||
linkinvoice: 'LinkInvoice',
|
||||
/**
|
||||
* 联查单据
|
||||
*/
|
||||
LinkBusiBill: 'LinkBusiBill'
|
||||
},
|
||||
LinkInvoiceBillType:'SSIV',//联查发票billType
|
||||
}
|
||||
/*VYZh/ieLfoiunqL5CmpQqFo7O+k8nzrIZsNJltzpfDE=*/
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
/*Mq+ry/aXt/6nN0mNqW5qEOCuGEUiGEcOgTSebzVVuDg=*/
|
||||
import { ajax } from 'nc-lightapp-front';
|
||||
let requestApi = {
|
||||
//初始化table数据
|
||||
queryData: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/IVSaleListQryAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//翻页
|
||||
changePage: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/IVSaleListQryAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//红冲
|
||||
RedRush: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/SaleInvoiceRedRushAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//作废
|
||||
Invalid: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/SaleInvoiceInvalidAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//获取用户默认组织
|
||||
GetDefOrg: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/IVSaleListGetDefOrgAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//下载
|
||||
download: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/InvoiceIsDownloadAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
//联查单据
|
||||
openbill: (opt) => {
|
||||
ajax({
|
||||
url: '/nccloud/sscivm/ivsale/AppInfoQueryAction.do',
|
||||
data: opt.data,
|
||||
success: response => opt.success(response.data),
|
||||
})
|
||||
},
|
||||
}
|
||||
export default requestApi;
|
||||
/*Mq+ry/aXt/6nN0mNqW5qEOCuGEUiGEcOgTSebzVVuDg=*/
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"dependModuleName": [
|
||||
"uap/common/components/ApproveDetail",
|
||||
"uap/common/components/NCUploader",
|
||||
"uap/common/components/approvalTrans"
|
||||
],
|
||||
"dependjs": [
|
||||
"../../../../uap/common/components/ApproveDetail/index.js",
|
||||
"../../../../uap/common/components/NCUploader/index.js",
|
||||
"../../../../uap/common/components/approvalTrans/index.js"
|
||||
]
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,56 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="referrer" content="no-referrer" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<meta http-equiv="Pragma" content="no-cache">
|
||||
<meta http-equiv="Cache-Control" content="no-cache">
|
||||
<meta http-equiv="Expires" content="0">
|
||||
<title> Application </title>
|
||||
|
||||
<link rel="stylesheet" href="../../../../platform/api/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/base/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/components/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/form/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/table-core/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/simple-table/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/edit-table/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/card-table/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/transfer-table/index.css" />
|
||||
<link rel="stylesheet" href="../../../../platform/tree-table/index.css" />
|
||||
|
||||
<link rel="stylesheet" href="../../../../platform/nc-lightapp-front.css" />
|
||||
<script type="text/javascript" src="../../../../platform/resource/yonyou-yyy.js"></script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script src="../../../../platform/resource/polyfill.js"></script>
|
||||
|
||||
<script src="../../../../platform/library/index.js"></script>
|
||||
|
||||
<script src="../../../../platform/resource/ca/ca0.js"></script>
|
||||
<script src="../../../../platform/resource/ca/ca1.js"></script>
|
||||
<script src="../../../../platform/resource/ca/ca2.js"></script>
|
||||
<script src="../../../../platform/resource/ca/nccsign.js"></script>
|
||||
<script src="../../../../platform/resource/ca/sha256.js"></script>
|
||||
|
||||
<script src="../../../../platform/api/index.js"></script>
|
||||
<script src="../../../../platform/base/index.js"></script>
|
||||
<script src="../../../../platform/template/index.js"></script>
|
||||
<script src="../../../../platform/form/index.js"></script>
|
||||
<script src="../../../../platform/table-core/index.js"></script>
|
||||
<script src="../../../../platform/simple-table/index.js"></script>
|
||||
<script src="../../../../platform/edit-table/index.js"></script>
|
||||
<script src="../../../../platform/card-table/index.js"></script>
|
||||
<script src="../../../../platform/transfer-table/index.js"></script>
|
||||
<script src="../../../../platform/tree-table/index.js"></script>
|
||||
<script src="../../../../platform/components/index.js"></script>
|
||||
<script src="../../../../platform/nc-lightapp-front.js"></script>
|
||||
|
||||
<script src="../../../../uap/common/components/ApproveDetail/index.js"></script><script src="../../../../uap/common/components/NCUploader/index.js"></script><script src="../../../../uap/common/components/approvalTrans/index.js"></script>
|
||||
<script type="text/javascript" src="../../../../sscivm/invoiceSale/invoiceSale/main/index.a3987c13.js"></script></body>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
/*uDNyZvexWm/EyN3fR2QvYRqVqZ29ili3JGeYyoMJWUY=*/
|
||||
import {RenderRouter} from 'nc-lightapp-front';
|
||||
import routes from './router.js';
|
||||
|
||||
(function main(routers, htmlTagid){
|
||||
RenderRouter(routers,htmlTagid);
|
||||
})(routes, "app");
|
||||
|
||||
/*uDNyZvexWm/EyN3fR2QvYRqVqZ29ili3JGeYyoMJWUY=*/
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
/*jhdF+/YAK2aUdakCnmQMxoyVWJ3OC/NvOHmNxSS4jDc=*/
|
||||
import { asyncComponent } from 'nc-lightapp-front';
|
||||
import InvoiceSaleList from '../list/invoiceSaleList.js';
|
||||
|
||||
const Card = asyncComponent(() => import(/* webpackChunkName: "nccloud/sscivm/invoiceReceive/invoiceReceive/card" */ /* webpackMode: "eager" */ '../card/invoiceSaleCard.js'));
|
||||
|
||||
const routes = [
|
||||
{
|
||||
path: '/',
|
||||
component: InvoiceSaleList,
|
||||
exact: true
|
||||
},
|
||||
{
|
||||
path: '/list',
|
||||
component: InvoiceSaleList
|
||||
},
|
||||
{
|
||||
path: '/card',
|
||||
component: Card
|
||||
},
|
||||
];
|
||||
|
||||
export default routes;
|
||||
|
||||
/*jhdF+/YAK2aUdakCnmQMxoyVWJ3OC/NvOHmNxSS4jDc=*/
|
||||
Loading…
Reference in New Issue