Commit 938ba950 authored by Mac's avatar Mac

财务的收据功能

parent f0551b0b
...@@ -438,6 +438,49 @@ export function setSellStudyAbroadSendEmployee(data) { ...@@ -438,6 +438,49 @@ export function setSellStudyAbroadSendEmployee(data) {
}) })
} }
/**
* 获取收据详情
*/
export function getReceiptInfoForFinanceId(data) {
return request({
url: '/Finance/GetReceiptInfoForFinanceId',
method: 'post',
data
})
}
/**
* 新增修改收据信息
*/
export function setReceiptInfo(data) {
return request({
url: '/Finance/SetReceiptInfo',
method: 'post',
data
})
}
/**
* 新增修改收据信息
*/
export function delReceiptInfo(data) {
return request({
url: '/Finance/DelReceiptInfo',
method: 'post',
data
})
}
/**
* 获取收据分页列表
*/
export function getReceiptInfoPageList(data) {
return request({
url: '/Finance/GetReceiptInfoPageList',
method: 'post',
data
})
}
<style scoped>
p {
margin: 0 !important;
}
.Receipt_box {
padding: 15px;
color: #c94052;
width: 100%;
background-color: rgba(245, 245, 245, 1);
position: relative;
}
.Receipt_box tr th {
color: #c94052
}
.Receipt_box.color_blur tr th {
color: #106BAF
}
.Receipt_box.color_blur {
color: #106BAF;
}
.Receipt_box.color_blur .rb_stit span {
display: inline-block;
border-bottom: 2px solid #106BAF;
padding: 0 20px
}
.rb_tit {
font-size: 16px;
text-align: center
}
.rb_stit {
font-size: 14px;
text-align: center
}
.rb_stit span {
display: inline-block;
border-bottom: 2px solid #C94052;
padding: 0 20px
}
.rb_top_row {
display: flex;
justify-content: space-between;
font-size: 12px;
}
.rb_top_row span._r_name {
color: #333333;
border-bottom: 1px solid #000000
}
.rb_top_row span._r_bold {
font-weight: bold
}
.rb_top_row ._r_time span {
color: #333333
}
._r_mb5 {
margin-bottom: 5px;
}
.Receipt_table {
width: 100%;
font-size: 14px;
text-align: center
}
.Receipt_table th {
font-weight: 200 !important
}
.Receipt_table tr th,
.Receipt_table tr td {
background-color: white
}
._huik_info td {
padding: 10px 0;
}
._r_mt10 {
margin-top: 10px;
}
.Receipt_box.color_blur {
color: #106BAF;
}
.Receipt_box.color_blur .rb_stit span {
display: inline-block;
border-bottom: 2px solid #106BAF;
padding: 0 20px
}
._color_b {
color: #333333 !important;
font-size: 12px
}
.rb_top_row span._r_name._no_border {
border: none
}
._font_size12 {
font-size: 12px
}
._yewudanju {
position: absolute;
text-align: right;
font-size: 12px;
right: 15px;
top: 15px;
}
._jump_page {
cursor: pointer;
text-decoration: underline;
}
i {
font-style: initial;
}
.Receipt_box tr th,
.Receipt_box * {
color: #333333;
font-size: 14px !important;
}
.Receipt_box._PrintPageStyle {
color: #333333;
}
.Receipt_box._PrintPageStyle .rb_stit span {
border-bottom: 2px solid #333333;
}
.Receipt_box._PrintPageStyle td {
height: 40px
}
._border_color_r {
border-color: #c94052;
}
._border_color_b {
border-color: #106BAF;
}
._border_color_p {
border-color: #333333;
}
.Receipt_box .rb_stit span._rb_stit_print {
padding: 0;
padding-top: 10px;
border: none;
}
.font_color_r {
color: #c94052 !important;
}
.sjbox {
display: flex;
align-items: center;
margin: 10px 0;
}
.sjbox .sjbox_l {
border: 1px solid #111;
flex: 1;
padding: 30px;
}
.sjbox .sjbox_l .sjbox_l_t {
font-size: 16px;
display: flex;
align-items: center;
}
.sjbox .sjbox_l_t_x {
border-bottom: 1px solid #111;
flex: 1;
margin-left: 10px;
}
.sjbianhao {
font-size: 20px !important;
color: red;
}
.Receipt_box.background_red {
background: #ecdaea;
}
.color_bt {
color: #323278;
}
</style>
<template v-if="GetDetail.DetailList.length>0">
<div class="Receipt_box" :class="[name==1?'':'background_red']" :style="{width:width,}" @click.stop
v-loading='loading'>
<div style="text-align:center;margin: 10px 0;font-weight: bold;">
<span
style="border-bottom:3px double black;cursor:pointer;letter-spacing:10px;font-size: 30px !important">收款收据</span>
</div>
<div style="display: flex;align-items: center; justify-content: space-between;">
<div>开票日期:<span :class="[name==1?'':'color_bt']">{{GetDetail.CreateTime}}</span> </div>
<div>编号: <span class="sjbianhao" :class="[name==1?'':'color_bt']">{{GetDetail.ReceiptNo}}</span> </div>
</div>
<!-- <p class="_yewudanju" v-if="isPrintPage">打印时间:<span >{{printTime}}</span></p> -->
<div class="sjbox">
<div class="sjbox_l">
<div class="sjbox_l_t">
<span>交款人</span>
<span class="sjbox_l_t_x" :class="[name==1?'':'color_bt']">{{GetDetail.Remitter}}</span>
</div>
<div class="sjbox_l_t" style="margin-top: 30px;">
<div style="display: flex;align-items: center;flex:1">
<span>人民币(大写)</span>
<span class="sjbox_l_t_x" :class="[name==1?'':'color_bt']">{{GetDetail.ChinesePayMoney}}</span>
</div>
<div style="display: flex;align-items: center;margin-left: 10px;">
<span>¥:</span>
<span class="sjbox_l_t_x" style="width: 200px"
:class="[name==1?'':'color_bt']">{{GetDetail.Money}}</span>
</div>
</div>
<div class="sjbox_l_t" style="margin-top: 30px;">
<span>收款事由</span>
<span class="sjbox_l_t_x" :class="[name==1?'':'color_bt']">{{GetDetail.Remark}}</span>
</div>
</div>
<div style="writing-mode: tb-rl" v-if="name==1">第一版(白) 存根联</div>
<div style="writing-mode: tb-rl" v-if="name==2">第一版(红) 客户联</div>
</div>
<div class="rb_top_row _r_mt10" v-if="AuditSteps&&AuditSteps.length">
<template v-for="(item,index) in AuditSteps">
<p>
<span class="_border_color_p">{{item.Name}}</span>
<template v-if="item.Id==4">
<span class="_r_name _no_border" :style="{color:name==1?'':'#323278'}"
:class="[item.Sort==0&&!isPrintPage?'_jump_page':'']">{{GetDetail.CreateByName}} </span>
</template>
<template v-if="item.Id==1">
<div style="position: relative;">
<el-image style="width: 100px; height: 100px;position: absolute;bottom: -5px;left: 75px;"
:src="GetDetail.SealImages"></el-image>
</div>
</template>
</p>
</template>
</div>
</div>
</template>
<script>
import {
getReceiptInfoForFinanceId,
} from '../../../api/finance/index'
export default {
props: ["ID", "width", "color", "isPrintPage", "name", "Num", "OrderSource"], //接收参数 ID width color isPrintPage
data() {
return {
loading: false,
EmployeeId: '',
EndDate: '',
StartDate: '',
printTime: '',
currentMoney: 0,
benMoney: 0,
GetDetail: {},
AuditSteps: [{ Id: 1, Name: '单位盖章' }, { Id: 2, Name: '出纳' }, { Id: 3, Name: '交款方式' }, { Id: 4, Name: '开票人' },],
}
}, created() {
let date = new Date(),
y = date.getFullYear(),
m = date.getMonth() < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1,
d = date.getDate() < 10 ? "0" + date.getDate() : date.getDate(),
h = date.getHours() < 10 ? "0" + date.getHours() : date.getHours(),
min = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes(),
s = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
this.printTime = y + '' + m + '' + d + ' ' + h + ':' + min + ':' + s;
}, methods: {
sendMsg() {
this.$emit('helloPP', '1')
},
jumpPageNew() {
this.$router.push({
name: 'platOrderquery',
query: {
platName: this.GetDetail.PlatFormName,
TradeWay: this.GetDetail.OrderTradeWay,
PlatformAccount: this.GetDetail.PlatformAccountId,
blank: 'y',
tab: '平台订单查询'
}
})
},
Financial_post_GetDetail(id) { //获取单据详情
if (!id) return;
this.loading = true;
getReceiptInfoForFinanceId({ FinanceId: id }).then(res => {
if (res.Code == 1) {
this.loading = false;
let data = res.Data;
data.ChinesePayMoney = this.$commonUtils.changeMoneyToChinese(data.Money)
data.Money = this.$commonUtils.addCommas(Math.round(data.Money * 100) / 100)
this.GetDetail = data;
console.log(this.GetDetail)
this.$set(this.$data, "GetDetail", data);
}
})
},
}, mounted() {
const myDate = new Date();
let yaer = myDate.getFullYear(); //获取完整的年份(4位,1970-????)
let month = myDate.getMonth() + 1; //获取当前月份(0-11,0代表1月)
let dateS = myDate.getDate(); //获取当前日(1-31)
this.StartDate = yaer + '-' + month + '-' + '01';
this.EndDate = yaer + '-' + month + '-' + dateS;
let userInfo = this.getLocalStorage();
this.EmployeeId = userInfo.EmployeeId;
this.Financial_post_GetDetail(this.ID);
}, watch: { // 监听参数变化
ID: {
handler: function (val, oldVal) {
this.ID = val
this.Financial_post_GetDetail(this.ID)
},
deep: true
},
}
}
</script>
\ No newline at end of file
<style>
@import url('../css/TicketingModule.css');
.sanjiao-box {
position: relative;
}
.sanjiao-box .Receipt_table td {
padding: 0 10px;
}
.hover_text span {
cursor: pointer;
text-decoration: underline;
}
.mySJbox {
width: 100%;
}
.mySJbox ._btn {
font-size: 12px;
color: #333333;
cursor: pointer;
margin-left: 10px;
}
.mySJbox .sjbox_l_t {
font-size: 13px;
display: flex;
align-items: center;
}
.mySJbox .sjbox_l_t_x {
border-bottom: 1px solid #666;
flex: 1;
margin-left: 10px;
}
</style>
<template>
<div class="mySJbox" v-if="!loading">
<div>
<div style="font-size: 14px; color: #000;padding: 8px 15px;display: flex; justify-content: space-between;">
<span style="border-left: 3px solid #e95252;padding-left: 10px;">财务收据</span>
<div style="display: flex;align-items: center;" v-if="data && data.State ">
<span class="_btn" @click="Printreceipt" v-if="data.State==2">打印</span>
<span class="_btn" @click='addreceipt' v-if="data.State==2&& isoneself">修改</span>
<span class="_btn" @click='setdelete' v-if="data.State==2 && isoneself">删除</span>
<span class="_btn" @click='getshare'>分享</span>
</div>
</div>
<div v-if="data && data.Id>0" style="padding: 10px;">
<div style="display: flex;align-items: center; justify-content: space-between;">
<div>开票日期:<span>{{data.CreateTime}}</span> </div>
<div>编号: <span class="sjbianhao">{{data.ReceiptNo}}</span> </div>
</div>
<div style="border: 1px solid #ddd;padding: 20px;margin-top: 10px;">
<div class="sjbox_l_t">
<span>交款人</span>
<span class="sjbox_l_t_x">{{data.Remitter}}</span>
</div>
<div class="sjbox_l_t" style="margin-top: 20px;">
<div style="display: flex;align-items: center;flex:1">
<span>人民币(大写)</span>
<span class="sjbox_l_t_x"
v-if="data.Money">{{$commonUtils.changeMoneyToChinese(data.Money)}}</span>
</div>
<div style="display: flex;align-items: center;margin-left: 10px;">
<span>¥:</span>
<span class="sjbox_l_t_x" style="width: 200px"
v-if="data.Money">{{$commonUtils.addCommas(Math.round(data.Money * 100) / 100)}}</span>
</div>
</div>
<div class="sjbox_l_t" style="margin-top: 20px;">
<span>收款事由</span>
<span class="sjbox_l_t_x">{{data.Remark}}</span>
</div>
</div>
</div>
<div v-else>
<div style="width: 100%;text-align: center;line-height: 35px;">暂无收据</div>
<div style="width: 100%;display: flex;align-items: center;justify-content: center;height: 40px;"
v-if="isoneself">
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增" @click="addreceipt()"></q-btn>
</div>
</div>
</div>
<!-- 收据的新增和修改 -->
<el-dialog custom-class='w600' title="收据的新增/修改" :visible.sync="receiptdialog" center>
<template>
<el-form label-width="120px" :model="addMsg" :rules="rules" ref="addMsg">
<el-form-item label="收据金额">
<el-input v-model="addMsg.Money" disabled></el-input>
</el-form-item>
<el-form-item label="交款人" prop="Remitter">
<el-input v-model="addMsg.Remitter" placeholder="请输入交款人"></el-input>
</el-form-item>
<el-form-item label="收款事由" prop="Remark">
<el-input v-model="addMsg.Remark" type="textarea" rows='3'></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="receiptdialog=false">取消</button>
<button class="normalBtn" type="primary" @click="setreceipt('addMsg')">确定</button>
</div>
</template>
</el-dialog>
<!-- 收据的分享暂时 -->
<el-dialog custom-class='w500' title="分享图" :visible.sync="sharedialog" center>
<template>
<el-image style="width: 400px; height: 400px"
src="http://192.168.20.214:8130/EduSystem/Test/Upload/Temporary/202109290408209920000000003.jpeg">
</el-image>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="sharedialog=false">关闭</button>
<button class="normalBtn" type="primary" @click="download()">下载</button>
</div>
</template>
</el-dialog>
<a style="display:none" ref='down'></a>
</div>
</template>
<script>
import {
getReceiptInfoForFinanceId,
setReceiptInfo,
delReceiptInfo
} from '../../../api/finance/index'
export default {
props: ["FrID", "GetDetail"],
data() {
return {
loading: false,
data: null,
addMsg: {
Id: 0,
FinanceId: '',//财务单据ID
ReceiptNo: '',//收据编码
Remitter: '',//交款人
Money: '',//金额
Remark: '',//事由
State: '',// 状态 1已认领 2未认领
ClaimCode: '',//认领码
},//收据的保存对象
receiptdialog: false,//新增收据的弹窗
rules: {
Remitter: [
{ required: true, message: '请选择交款人', trigger: 'blur' },
],
Remark: [
{ required: true, message: '请输入事由', trigger: 'blur' },
],
},
Employeelist: [],//人员下拉
EmployeeId: 0,
isoneself: false,//是否是本人操作
sharedialog: false,
}
}, watch: {
}, created() {
this.addMsg.FinanceId = this.FrID
this.addMsg.Money = Number(this.GetDetail.Money) + Number(this.GetDetail.Fee)
let userInfo = this.getLocalStorage()
this.EmployeeId = userInfo.Id;
if (this.EmployeeId == this.GetDetail.CreateBy) {
this.isoneself = true
}
}, mounted() {
this.getDetails();
},
methods: {
getDetails() {
this.loading = true;
this.data = null
getReceiptInfoForFinanceId({ FinanceId: this.FrID }).then(res => {
if (res.Code == 1) {
if (res.Data.Id != null && res.Data.Id > 0) {
this.data = res.Data
}
this.loading = false;
}
})
},
Printreceipt() {//打印收据
let routeData = this.$router.resolve({
path: '/financial/financalDocument/PrintPage',
query: {
type: 3,
id: 116645,
isKehu: 0,
Merge: 0,
OrderSource: -1
}
});
window.open(routeData.href, "_blank");
},
addreceipt() {//新增
if (this.data && this.data.Id > 0) {//判断是否是新增
this.addMsg = JSON.parse(JSON.stringify(this.data))
}
this.receiptdialog = true
},
setreceipt(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
setReceiptInfo(this.addMsg).then(res => {
if (res.Code == 1) {
this.Success(res.Message);
this.getDetails()
this.receiptdialog = false
this.addMsg = {//初始化
Id: 0,
FinanceId: '',//财务单据ID
ReceiptNo: '',//收据编码
Remitter: '',//交款人
Money: '',//金额
Remark: '',//事由
State: '',// 状态 1已认领 2未认领
ClaimCode: '',//认领码
}
this.addMsg.FinanceId = this.FrID
this.addMsg.Money = Number(this.GetDetail.Money) + Number(this.GetDetail.Fee)
}
}).catch(() => {
})
} else {
return false;
}
});
},
setdelete() {//删除
let that = this;
that.$confirm('是否删除?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
delReceiptInfo({ ReceiptId: that.data.Id }).then(res => {
if (res.Code == 1) {
that.Success(res.Message);
that.getDetails()
}
}).catch(() => {
})
}).catch(() => { });
},
getshare() {
// this.apipostDS(
// "/api/user/GetWeiXinQRCodeForHT", {
// Path: "/pages/school/personal/receiptDetails?FinanceId=" + this.FrID,
// With: 212
// },
// (res) => {
// if (res.data.resultCode == 1) {
// if (res.data.data) {
// let getBlob = this.domainManager().mallUrl + res.data.data
// console.log(getBlob)
// }
// } else {
// this.Error(res.data.message);
// }
// }
// );
this.sharedialog = true
},
blobToDataURL(blob, callback) {
var a = new FileReader()
a.onload = function (e) {
callback(e.target.result);
}
a.readAsDataURL(blob)
},
download() {//下载
this.downloadFile('收据分享.png', 'http://192.168.20.214:8130/EduSystem/Test/Upload/Temporary/202109290408209920000000003.jpeg')
},
downloadFile(name,imgsrc) {
var image = new Image();
// 解决跨域 Canvas 污染问题
image.setAttribute("crossOrigin", "anonymous");
image.onload = function () {
var canvas = document.createElement("canvas");
canvas.width = image.width;
canvas.height = image.height;
var context = canvas.getContext("2d");
context.drawImage(image, 0, 0, image.width, image.height);
var url = canvas.toDataURL("image/png"); //得到图片的base64编码数据
var a = document.createElement("a"); // 生成一个a元素
var event = new MouseEvent("click"); // 创建一个单击事件
a.download = name || "photo"; // 设置图片名称
a.href = url; // 将生成的URL设置为a.href属性
a.dispatchEvent(event); // 触发a的单击事件
};
image.src = imgsrc;
}
}
}
</script>
\ No newline at end of file
...@@ -771,6 +771,7 @@ ...@@ -771,6 +771,7 @@
cursor: pointer; cursor: pointer;
text-decoration: underline; text-decoration: underline;
} }
</style> </style>
...@@ -1076,6 +1077,16 @@ ...@@ -1076,6 +1077,16 @@
</div> </div>
</div> </div>
</div> </div>
<div v-if="ConfigInfo && ConfigInfo.Enable==1 && getreceipt() ">
<p class="_splic" >
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
</p>
<div class="_tit _tit2 w890px ConfigInfoStyle">
<mySJModule :FrID='ID' :GetDetail="GetDetail"></mySJModule>
</div>
</div>
<p class="_splic"> <p class="_splic">
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
</p> </p>
...@@ -1359,6 +1370,7 @@ ...@@ -1359,6 +1370,7 @@
</div> </div>
</template> </template>
</el-dialog> </el-dialog>
<a id='groupTourOrder_DownLoad' target="_blank" style="display:none">1不要删除</a> <a id='groupTourOrder_DownLoad' target="_blank" style="display:none">1不要删除</a>
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshClass"> <classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshClass">
</classinfo-form> </classinfo-form>
...@@ -1384,13 +1396,15 @@ ...@@ -1384,13 +1396,15 @@
import huijiBill from "../components/huijiBill.vue"; import huijiBill from "../components/huijiBill.vue";
import czBillModule from "../components/czBillModule.vue"; import czBillModule from "../components/czBillModule.vue";
import mySJModule from "../components/mySJModule.vue";
import { import {
UploadSelfFile UploadSelfFile
} from '../../../api/common/common' } from '../../../api/common/common'
import { import {
getClassNameList, getClassNameList,
queryStudyNameList queryStudyNameList,
getReceiptConfigInfo
} from '../../../api/finance/index' } from '../../../api/finance/index'
import classinfoForm from '../../../components/course/classinfo-form'; import classinfoForm from '../../../components/course/classinfo-form';
import viewquotationForm from '../../../components/sale/viewquotation-form'; import viewquotationForm from '../../../components/sale/viewquotation-form';
...@@ -1477,6 +1491,8 @@ ...@@ -1477,6 +1491,8 @@
isShowviewQuo: false, //是否显示预览报价单 isShowviewQuo: false, //是否显示预览报价单
rId: 0, rId: 0,
showbohui: false, //5-10新加 showbohui: false, //5-10新加
ConfigInfo:null,//收据配置数据
} }
}, },
components: { components: {
...@@ -1496,6 +1512,7 @@ ...@@ -1496,6 +1512,7 @@
'myJiPiaoBill': myJiPiaoBill, 'myJiPiaoBill': myJiPiaoBill,
'huijiBill': huijiBill, 'huijiBill': huijiBill,
"czBillModule": czBillModule, "czBillModule": czBillModule,
"mySJModule": mySJModule,
'classinfo-form': classinfoForm, 'classinfo-form': classinfoForm,
'viewquotationForm': viewquotationForm 'viewquotationForm': viewquotationForm
}, },
...@@ -2289,13 +2306,31 @@ ...@@ -2289,13 +2306,31 @@
this.OpenNewUrl('/financial/financalDocument/FinancialDocumentsDetail', { this.OpenNewUrl('/financial/financalDocument/FinancialDocumentsDetail', {
"id": item "id": item
}); });
} },
getReceiptif(){
getReceiptConfigInfo({}).then(res => {
if (res.Code == 1) {
this.ConfigInfo = res.Data;
}
})
},
getreceipt(){
if(this.ConfigInfo.TempleteIds.indexOf(this.GetDetail.TemplateId)!=-1){
return true
}else{
return false
}
},
}, },
mounted() { mounted() {
this.GetAuth(); this.GetAuth();
this.userInfo = this.getLocalStorage(); this.userInfo = this.getLocalStorage();
this.qjGroupId = this.QjGroupId(); this.qjGroupId = this.QjGroupId();
this.Financial_post_GetDetail(this.ID) this.Financial_post_GetDetail(this.ID)
this.getReceiptif()//获取收据配置
this.queryMsg.FinanceId = this.$route.query.id; this.queryMsg.FinanceId = this.$route.query.id;
if (this.$route.query.Conditon) { if (this.$route.query.Conditon) {
this.returnCode = this.$route.query.Conditon; this.returnCode = this.$route.query.Conditon;
......
...@@ -39,6 +39,12 @@ ...@@ -39,6 +39,12 @@
<my-GZ-Bill :ID="id" :width="widthSon" :isPrintPage="true" :color="colorSon" :OrderSource="OrderSource" :name='index+1'></my-GZ-Bill> <my-GZ-Bill :ID="id" :width="widthSon" :isPrintPage="true" :color="colorSon" :OrderSource="OrderSource" :name='index+1'></my-GZ-Bill>
</div> </div>
</template> </template>
<!-- 收据3 -->
<template v-if="type==='3'">
<div class="_border_1" v-for="(item,index) in loopNumT">
<my-SJ-Bill :ID="id" :width="widthSon" :isPrintPage="true" :color="colorSon" :OrderSource="OrderSource" :name='index+1'></my-SJ-Bill>
</div>
</template>
<template v-if="Merge==='1'"> <template v-if="Merge==='1'">
<div class="_border_1" v-for="(item,index) in loopNumN"> <div class="_border_1" v-for="(item,index) in loopNumN">
<my-HB-Bill v-on:helloPP="numAdd" :Num="num" :ID="id" :width="widthSon" :isPrintPage="true" :color="colorSon" :name='index+1'></my-HB-Bill> <my-HB-Bill v-on:helloPP="numAdd" :Num="num" :ID="id" :width="widthSon" :isPrintPage="true" :color="colorSon" :name='index+1'></my-HB-Bill>
...@@ -52,6 +58,7 @@ ...@@ -52,6 +58,7 @@
import myrbvBill from "../components/ReceivablesModule.vue"; import myrbvBill from "../components/ReceivablesModule.vue";
import myhrBill from "../components/MergeBillModule.vue"; import myhrBill from "../components/MergeBillModule.vue";
import myGZBill from "../components/GZBillModule.vue"; import myGZBill from "../components/GZBillModule.vue";
import mySJBill from "../components/SJBillModule.vue";
export default { export default {
data(){ data(){
return{ return{
...@@ -71,7 +78,9 @@ ...@@ -71,7 +78,9 @@
'my-Bill': myBill, 'my-Bill': myBill,
'my-RVB-Bill':myrbvBill, 'my-RVB-Bill':myrbvBill,
'my-HB-Bill':myhrBill, 'my-HB-Bill':myhrBill,
'my-GZ-Bill': myGZBill 'my-GZ-Bill': myGZBill,
'my-SJ-Bill': mySJBill,
},methods:{ },methods:{
numAdd(){ numAdd(){
this.num = this.num + 1 this.num = this.num + 1
......
<style>
@import "../css/cssReset.css";
</style>
<template>
<div class='flexOne page-body'>
<div class="query-box">
<ul>
<li>
<span>
<em>财务单据</em>
<el-input type="text" v-model="msg.FinanceId" placeholder="请输入财务单据"></el-input>
</span>
</li>
<li>
<span>
<em>收据状态</em>
<el-select v-model="msg.State" filterable clearable>
<el-option label="不限" :value="0"></el-option>
<el-option label="已认领" :value="1"></el-option>
<el-option label="未认领" :value="2"></el-option>
</el-select>
</span>
</li>
<li>
<span><em>收据编码</em>
<el-input type="text" v-model="msg.ReceiptNo" placeholder="请输入收据编码"></el-input>
</span>
</li>
<li>
<span><em>交款人</em>
<el-input type="text" v-model="msg.Remitter" placeholder="请输入交款人"></el-input>
</span>
</li>
<li>
<q-btn color="primary" size="11px" label="查询"  @click="handleCurrentChange(1)" />
</li>
</ul>
</div>
<div class="cm_content">
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th width="250">财务单据</th>
<th >收据编码</th>
<th >交款人</th>
<th width="100">金额</th>
<th>收款事由</th>
<th>状态</th>
<th>认领码</th>
<th>甲鹤用户</th>
<th>经办人</th>
<th>开票日期</th>
</tr>
<tr v-for="item in dataList">
<td> <span style="cursor: pointer;text-decoration: underline;" @click="goFinancialDetail(item)">{{item.FinanceId}}</span> </td>
<td>{{item.ReceiptNo}}</td>
<td>{{item.Remitter}}</td>
<td>{{item.Money}}</td>
<td>{{item.Remark}}</td>
<td>{{item.State==1?'已认领':'未认领'}}</td>
<td>{{item.ClaimCode}}</td>
<td>{{item.UserName}}</td>
<td>{{item.CreateByName}}</td>
<td>{{item.CreateTime}}</td>
</tr>
</table>
<div class="noDataNotice" v-if="dataList && dataList.length<1">
<i class="iconfont icon-kong"></i>
<p>{{$t("active.ld_noData")}}</p>
</div>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.pageIndex"
:page-size="msg.pageSize" layout="total,prev, pager, next, jumper" :total="msg.total"></el-pagination>
</div>
</template>
<script>
import {
getReceiptInfoPageList,
} from '../../../api/finance/index'
export default {
data() {
return {
msg: {
pageIndex: 1,
pageSize: 10,
FinanceId: '',
State: 0,
ReceiptNo: '',
Remitter: '',
total:0
},
loading: false,
dataList: [],
}
},
methods: {
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getList() { //获取列表
this.loading = true;
getReceiptInfoPageList(this.msg).then(res => {
if (res.Code == 1) {
this.loading = false;
this.dataList = res.Data.PageData;
this.msg.total = res.Data.Count;
}
})
},
goFinancialDetail(item){
this.OpenNewUrl("/financial/financalDocument/FinancialDocumentsDetail", {
id: item.FinanceId
});
},
},
mounted() {
this.getList();
}
}
</script>
\ No newline at end of file
...@@ -561,6 +561,11 @@ const routes = [{ ...@@ -561,6 +561,11 @@ const routes = [{
component: () => component: () =>
import("pages/financial/financalDocument/InAndOutDdetails.vue") import("pages/financial/financalDocument/InAndOutDdetails.vue")
}, },
{
path: "/financial/financalDocument/receiptManager", //财务收据管理
component: () =>
import("pages/financial/financalDocument/receiptManager.vue")
},
{ {
...@@ -1377,6 +1382,7 @@ const routes = [{ ...@@ -1377,6 +1382,7 @@ const routes = [{
}, },
{ {
path: '/AssetsShenpi', //资产管理审批 path: '/AssetsShenpi', //资产管理审批
name: 'AssetsShenpi', name: 'AssetsShenpi',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment