Commit 073bba1a authored by youjie's avatar youjie

no message

parent ebac75ae
......@@ -8169,6 +8169,13 @@ export const obj = {
},
seeMySelfCompany:'只查看自己填写的公司信息',
duizhnagkm: '对账科目',
v103:{
qichuyue: '期初余额',
xinzenliushuiu: '新增流水',
yinhangshouru: '银行收入',
yinhangzhichu: '银行支出',
liushui: '流水',
}
//#endregion
}
export default obj;
<style scoped>
/deep/.cdForm .el-input--small .el-input__inner {
line-height: 28px;
height: 32px;
}
.yinhangForm{
max-height: 200px;
overflow-y: auto;
}
.yinhangBox{
display: flex;
}
/deep/.cdForm .el-upload-dragger{
width: 50px;
height: 50px;
}
</style>
<template>
<div>
<el-dialog :title="title+$t('objFill.v103.liushui')" width="680px"
:visible.sync="showState" center @close="close">
<el-form class="cdForm" label-width="90px"
:model="msg" :rules="rules" ref="msg">
<div style="display: flex;flex-direction: column;">
<div style="display: flex;flex-direction: row;">
<el-form-item :label="$t('pub.date')" prop="Date">
<el-date-picker :disabled="msg.Id==1" class="w220" :clearable="false" v-model="msg.Date" type="date"
value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item :label="$t('objFill.v103.qichuyue')" prop="StartBalance">
<el-input-number :disabled="msg.Id==1" class="w220" v-model="msg.StartBalance" :min="Number(0)" :step="50" size="small"/>
</el-form-item>
</div>
<el-form-item style=" width: 500px; " :label="$t('objFill.fj')" prop="Image">
<div style="display: flex;flex-direction: row;">
<el-image v-if="msg.Image"
style="width: 50px; height:50px;margin-right: 20px;border-radius: 5px;"
:src="msg.Image"
:preview-src-list="[msg.Image]"
show-progress
fit="cover"/>
<el-upload v-if="msg.Id==0"
drag
:http-request="UploadImage"
:multiple="true" :show-file-list="false" action=""
accept="image/jpeg,image/gif,image/png,image/bmp">
<i class="el-icon-plus avatar-uploader-icon"></i>
<div class="el-upload__text">{{$t('active.ld_djscwj')}}</div>
</el-upload>
</div>
</el-form-item>
</div>
<div class="yinhangForm">
<template v-for="(item,index) in msg.SubjectList">
<div style="font-weight: bold; color: #333;">{{ item.SubjectName }}</div>
<div class="yinhangBox">
<!-- <el-form-item class="ImpressionTicketing-OuterFrame" :label="item.SubjectName" label-width="100px"> -->
<el-form-item
:label="msg.SubjectList.length>0?`${$t('objFill.v103.yinhangshouru')} ${index+1} `:` ` "
:prop="`SubjectList.${index}.Income`"
:rules="rules.Income"
label-width="100px"
label-position="left">
<el-input onkeyup="this.value=this.value.replace(/[^\d.]/g,'');" :min="0"
v-model="item.Income"></el-input>
</el-form-item>
<el-form-item
:label="msg.SubjectList.length>0?`${$t('objFill.v103.yinhangzhichu')} ${index+1} `:` ` "
:prop="`SubjectList.${index}.Expenses`"
:rules="rules.Expenses"
label-width="100px"
label-position="left">
<el-input onkeyup="this.value=this.value.replace(/[^\d.]/g,'');" :min="0"
v-model="item.Expenses"></el-input>
</el-form-item>
<!-- </el-form-item> -->
</div>
</template>
</div>
<!-- <el-table :data="msg.SubjectList" style="width: 100%;max-height: 400px;"
v-loading="loading" border>
<el-table-column prop="Income" :label="$t('objFill.v103.yinhangshouru')" align="center">
<template slot-scope="scope">
<el-input type="Number" class="w220" v-model="scope.row.Income" size="small"/>
</template>
</el-table-column>
<el-table-column prop="Expenses" :label="$t('objFill.v103.yinhangzhichu')" align="center">
<template slot-scope="scope">
<el-input type="Number" class="w220" v-model="scope.row.Expenses" size="small"/>
</template>
</el-table-column>
</el-table> -->
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="close()">{{$t('pub.cancelBtn')}}</button>
<el-button :loading="loading" class="normalBtn" type="primary" @click="editSubmit('msg')">{{$t('pub.saveBtn')}}</el-button>
</div>
</el-dialog>
<addSubject v-if="isShowAdd" :obj="addMsg" @changeData="getNewData" @change="isShowAdd=false"></addSubject>
</div>
</template>
<script>
import addSubject from './addSubject.vue';
export default {
props: ['obj'],
components: {addSubject},
data() {
return {
loading: false,
SubjectList: [],
showState: false,
isShowAdd: false,
msg:{},
rules: {
Date: [{
required: true,
message: this.$t('objFill.qingxuanzherq'),
trigger: "change"
}],
StartBalance: [{
required: true,
message: this.$t('objFill.v103.qichuyue'),
trigger: "blur"
}],
Income: [{
required: true,
message: this.$t('pub.pleaseImport')+this.$t('objFill.v103.yinhangshouru'),
trigger: "blur"
}],
Expenses: [{
required: true,
message: this.$t('pub.pleaseImport')+this.$t('objFill.v103.yinhangzhichu'),
trigger: "blur"
}],
Image: [{
required: true,
message: this.$t('objFill.v101.FinancialModule.qingscfj'),
trigger: "upload"
}]
},
title: '',
}
},
watch: {
obj: {
handler(newValue,onldValue) {
this.msg = newValue
if(this.msg.Id==0){
this.title = this.$t('pub.addBtn')
}else{
this.title = this.$t('pub.edit')
}
},
deep:true,
immediate:true,
},
},
mounted() {
this.showState = true
},
methods: {
UploadImage(file) {
let newArr = [];
newArr.push(file.file);
let fileName = file.file.name;
var path = "/Upload/DMC/";
this.UploadSelfFileT(path, newArr, x => {
var obj = this.$DMCUtils.DMCImageObj();
var str = x.data.FilePath;
var imgUrl = this.domainManager().ViittoFileUrl + x.data.FilePath;
obj.Path = str;
obj.ShowPath = imgUrl;
this.msg.Image = obj.ShowPath
});
},
editSubmit(formName){
this.$refs[formName].validate((valid) => {
if (valid) {
this.loading = true
this.apipost("Financial_post_SetBankBalance", this.msg, res => {
if (res.data.resultCode === 1) {
this.$emit('changeData',false)
}
this.loading = false
}, null)
}
})
},
addData(){
this.isShowAdd=true
this.addMsg ={
Id: 0,
Status: 0,
Name: '',
Sort: 1,
}
},
getNewData(){
this.isShowAdd=false
this.$emit('changeData')
this.getList()
},
editData(row,type){
this.addMsg = {
...row,
Status: type?0:1
}
if(type){
this.isShowAdd = true
}else{
this.$confirm(this.$t('objFill.shifouscbkhf'), this.$t('tips.tips'), {
confirmButtonText: this.$t('pub.sureBtn'),
cancelButtonText: this.$t('pub.cancelBtn'),
type: "warning"
})
.then(() => {
this.loading = true
this.apipost("Financial_post_SetBankSubject", this.addMsg, res => {
if (res.data.resultCode === 1) {
this.loading = false
this.$emit('changeData')
this.getList()
}else{
this.loading = false
}
}, null)
})
.catch(() => {});
}
},
close(){
this.showState = false
this.$emit('change',false)
},
getList(){
this.loading = true
this.apipost("Financial_post_GetBankSubjectList", {}, res => {
if (res.data.resultCode === 1) {
this.SubjectList = res.data.data;
}
this.loading = false
}, null)
},
}
}
</script>
<style>
.el-dialog__header {
background-color: #E95252 !important;
padding: 20px 40px 10px;
}
.el-dialog__header .el-dialog__title {
color: white;
}
.hollowFixedBtn {
background: #fff;
color: #E95252;
padding: 0 15px;
height: 30px;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
.hollowFixedBtn:hover {
box-shadow: 2px 0px 4px rgba(144, 6, 6, 0.25)
}
.hollowFixedBtn:active {
border-color: #CD2929;
}
.normalBtn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #E95252;
border: 1px solid #E95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
outline: none;
}
.normalBtn:hover {
background: #E95252;
box-shadow: 2px 0px 4px rgba(144, 6, 6, 0.25)
}
.normalBtn:active {
background: #CD2929;
}
.leaderPayTable {
width: 100%;
margin: 10px auto;
text-align: center;
font-size: 12px;
color: #333;
border-collapse: collapse;
background-color: #fff;
border: 1px solid #d1d1d1;
}
.leaderPayTable th {
background: #e6e6e6;
padding: 8px 0;
color: #333;
border: 1px solid #d1d1d1;
font-weight: bold;
}
.leaderPayTable tr td {
background-color: #fff;
padding: 8px 0;
height: 32px;
border: 1px solid #d1d1d1;
}
.leaderPayTable2 tr td {
border: 1px solid #ccc;
line-height: 17px;
height: 25px;
font-size: 12px;
background: #fff;
text-align: center;
padding: 0;
;
margin: 0;
}
.LeaderPrintDiv .LeaderTitle {
padding: 10px;
text-align: left;
}
.leaderPayTable .itemName {
text-align: left;
padding: 0 10px;
}
@media print {
.LeaderPrintDiv .btnListDiv {
display: none;
}
}
.comTotal {
text-align: left;
padding-left: 30px !important;
}
.LeaderPrintDiv {
width: 100%;
background: #f8f8f8;
position: absolute;
}
.LeaderPrintDiv .childDiv {
width: 1000px;
margin: 0 auto;
}
.LeaderPrintDiv .childDiv ._Titles {
font-size: 14px;
}
.wLeader2 .el-textarea__inner {
height: 130px;
}
.LeaderPrintDiv .btnListDiv {
margin: 20px auto;
text-align: center;
}
.LeaderPrintDiv .leader2Btn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
outline:none;
}
.cursorpointer {
cursor: pointer;
}
.text-decoration {
text-decoration: underline;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
}
input[type="number"] {
-moz-appearance: textfield;
}
.w150 {
width: 150px !important;
}
.Receipt_box {
padding: 15px;
color: #c94052;
width: 614px;
background-color: rgba(242, 242, 242, 1);
border: 1px solid rgba(228, 228, 228, 1)
}
.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: 18px;
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
}
.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
}
._r_mt10 {
margin-top: 10px;
}
._bg__ {
display: inline-block;
padding: 2px 8px;
color: white;
border-radius: 4px
}
._bg_red {
background-color: #E95252;
}
._bg_green {
background-color: #2BB87C
}
.text_d {
text-decoration: underline;
cursor: pointer;
}
.PingFangSC {
font-weight: bold
}
.Bill_par {
position: relative;
}
tr._item_list {
border-bottom: 1px solid #E5E5E5;
height: 78px;
}
tr._item_list td {
border-bottom: 1px solid #e5e5e5;
padding: 10px;
}
/* tr._t_head th{border-top: 1px solid #e5e5e5;} */
tr._item_list td:first-child {
border-left: 1px solid #e5e5e5;
}
tr._item_list td:last-child {
border-right: 1px solid #e5e5e5;
}
._head_img {
width: 28px;
height: 28px;
border-radius: 50%;
vertical-align: middle;
}
._btn_group {
font-size: 14px;
}
.icon-daiqueren {
color: #4BCA81
}
.icon-yiqueren {
color: #4BCA81
}
.icon-yiquxiao {
color: #959595
}
.icon-shenhebohui {
color: #E95252
}
.icon-icon-zancun {
color: #FF9C01
}
.singeRowTable tr:hover {
background-color: white
}
._TradeWayList {
padding: 5px 10px;
background-color: #EEEEEE;
border-radius: 4px;
margin: 10px 0;
width: 230px
}
._bold {
font-weight: bold
}
._bank_name,
._bank_type {
display: inline-block;
background-color: #333333;
color: white;
padding: 2px 4px;
border-radius: 4px;
margin-left: 10px;
}
._bank_name {
margin-left: 10px;
cursor: pointer;
}
._bank_type {
background-color: #2AAEF2
}
._bank_type2 {
background-color: #FF9C01
}
.cdForm .el-form-item{
display: inline-block;
}
.leader2Btn {
color: #fff;
padding: 0 15px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
outline:none;
}
</style>
......@@ -47,13 +47,7 @@
watch: {
obj: {
handler(newValue,onldValue) {
this.queryObj = newValue
if(this.queryObj.tradeObj){
this.tradeObj = JSON.parse(this.queryObj.tradeObj)
}
if(this.queryObj.orderObj){
this.tradeObj = JSON.parse(this.queryObj.orderObj)
}
},
deep:true,
},
......
......@@ -128,8 +128,9 @@
<ul>
<li>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="getList()"/>
<input type="button" class="normalBtn" :value="$t('objFill.duizhnagkm')+$t('ground.liebiao')" @click="isShow=true"/>
<input v-if="SubjectList&&SubjectList.length>0" type="button" class="normalBtn" :value="$t('objFill.v103.xinzenliushuiu')" @click="addBankStatement"/>
<input type="button" class="hollowFixedBtn" :value="$t('objFill.v101.FinancialModule.xinzengkem')" @click="isShowAdd=true"/>
<input type="button" class="normalBtn" :value="$t('objFill.duizhnagkm')+$t('ground.liebiao')" @click="isShow=true"/>
</li>
</ul>
</div>
......@@ -150,7 +151,10 @@
<template v-if="DateList&&DateList.length>0">
<el-table-column v-for="(item,index) in DateList"
:key="index"
:label="String(item.StartDate)" align="center">
align="center">
<template #header>
<div style="cursor: pointer;" @click="getTimeObj(item)">{{ String(item.StartDate) }} <i style="color: #33B3FF" class="el-icon-edit"></i> </div>
</template>
<el-table-column :label="String(item.StartBalance)" align="center">
<el-table-column prop="Income" label="银行收入" width="120" align="center">
<template slot-scope="scope">
......@@ -196,14 +200,16 @@
</div>
<SubjectList v-if="isShow" @changeData="changeData" @change="close"></SubjectList>
<addSubject v-if="isShowAdd" :obj="addMsg" @changeData="changeData" @change="close"></addSubject>
<BankStatement v-if="isShowBankSta" :obj="BankStaObj" @changeData="changeDataBan" @change="isShowBankSta=false"></BankStatement>
</div>
</template>
<script>
import moment from "moment"
import SubjectList from './comm/SubjectList.vue';
import addSubject from './comm/addSubject.vue';
import BankStatement from './comm/BankStatement.vue';
export default {
components: {SubjectList,addSubject},
components: {SubjectList,addSubject,BankStatement},
data(){
return{
msg:{
......@@ -228,14 +234,29 @@ export default {
Status: 0,
Name: '',
Sort: 0,
},
isShowBankSta: false,
BankStaObj:{
BankId: 0,//银行ID
Date: '',// 日期
StartBalance: '',// 期初余额
Image: '',
SubjectList:[],
},
BanObj:{
Id: 0,
SubjectId:0,//科目ID
SubjectName: '',
Income:0,// 银行收入
Expenses:0,//银行支出
}
}
},
created(){
// let mon1= this.getBeforeDate(1, new Date().Format("yyyy-MM-dd"));
// let mon2= this.getBeforeDate(7, this.getBeforeDate(0, new Date().Format("yyyy-MM-dd")))
let mon1= this.getBeforeDate(11, new Date().Format("yyyy-MM-dd"));
let mon2= this.getBeforeDate(15, this.getBeforeDate(0, new Date().Format("yyyy-MM-dd")))
let mon1= this.getBeforeDate(12, new Date().Format("yyyy-MM-dd"));
let mon2= this.getBeforeDate(16, this.getBeforeDate(0, new Date().Format("yyyy-MM-dd")))
this.titleStart = mon2.slice(5,7)>9?mon2.slice(5,7):mon2.slice(6,7)
this.titleEnd = mon1.slice(5,7)>9?mon1.slice(5,7):mon1.slice(6,7)
this.productionDate=[mon2,mon1];
......@@ -244,6 +265,70 @@ export default {
this.getList();
},
methods:{
changeDataBan(){
this.isShowBankSta = false
this.getList();
},
addBankStatement(){
this.BankStaObj = {
Id: 0,
BankId: this.msg.BankId,
Date: '',
StartBalance: 0,
Image: '',
SubjectList: [],
}
this.SubjectList.forEach((x,index)=>{
if(x.SubjectId!=-4&&x.SubjectId!=-5&&x.SubjectId!=-6){
x.BalanceList.forEach((y,indexs)=>{
if(indexs==0){
let BanObj = JSON.parse(JSON.stringify(this.BanObj))
BanObj = {
SubjectId: x.SubjectId,//科目ID
SubjectName: x.Name,
Income: 0,// 银行收入
Expenses: 0,//银行支出
}
this.BankStaObj.SubjectList.push(BanObj)
}
})
}
})
this.isShowBankSta = true
},
getTimeObj(item){
this.BankStaObj = {
Id: 1,
BankId: this.msg.BankId,
Date: item.StartDate,
StartBalance: item.StartBalance,
Image: '',
SubjectList: [],
}
this.SubjectList.forEach(x=>{
x.BalanceList.forEach(y=>{
if(y.StartDate==item.StartDate){
console.log(y.Image,'-----------')
if(x.SubjectId!=-4&&x.SubjectId!=-5&&x.SubjectId!=-6){
let BanObj = JSON.parse(JSON.stringify(this.BanObj))
BanObj = {
SubjectId: x.SubjectId,//科目ID
SubjectName: x.Name,
Income: y.Income,// 银行收入
Expenses: y.Expenses,//银行支出
}
this.BankStaObj.SubjectList.push(BanObj)
}
if(x.SubjectId==-6) {
this.BankStaObj.Image = y.Image
}
}
})
})
console.log(this.BankStaObj,'----------')
this.isShowBankSta = true
},
changeData(){
this.isShowAdd = false
this.getList();
......
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