|
@@ -32,24 +32,39 @@
|
|
|
<el-button size="small" @click="dialogVisible = false">取消</el-button>
|
|
<el-button size="small" @click="dialogVisible = false">取消</el-button>
|
|
|
</span>
|
|
</span>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
- <el-dialog title="结算" :visible.sync="dialogVisiblebalance" width="20%" :before-close="handleClosebalance">
|
|
|
|
|
- <el-form ref="form" :model="form" label-width="85px">
|
|
|
|
|
- <el-form-item label="进账金额:">
|
|
|
|
|
- <el-input v-model="form.settlementAmount" style="width:220px"></el-input>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- <el-form-item label="进账日期:">
|
|
|
|
|
- <el-date-picker v-model="form.settlementTime" type="date" placeholder="选择日期" value-format="yyyy-MM-dd">
|
|
|
|
|
- </el-date-picker>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- <el-form-item label="上传凭证:">
|
|
|
|
|
- <el-upload action="#" class="upload-demo" :limit="1" :auto-upload="false" :on-change="drivingupload"
|
|
|
|
|
- ref="upload3" accept=".png, .jpg, .jpeg" :file-list="fileList">
|
|
|
|
|
- <el-button size="small" type="primary">点击上传</el-button>
|
|
|
|
|
- </el-upload>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
- </el-form>
|
|
|
|
|
|
|
+ <el-dialog title="结算" :visible.sync="dialogVisiblebalance" width="30%" :before-close="handleClosebalance">
|
|
|
|
|
+
|
|
|
|
|
+ <el-form ref="form" :model="form" label-width="200px">
|
|
|
|
|
+ <el-table
|
|
|
|
|
+ :data="form.insuranceHandlingList"
|
|
|
|
|
+ border
|
|
|
|
|
+ style="width: 600px;margin-bottom: 20px;"
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-table-column prop="incomeSigningTime" label="月份"> </el-table-column>
|
|
|
|
|
+ <el-table-column prop="remainingAmount" label="未结算金额">
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ <el-table-column prop="settlementAmount" label="进账金额">
|
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
|
+ <el-input v-model="scope.row.settlementAmount" @input='amountChange(scope.row)'></el-input>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </el-table-column>
|
|
|
|
|
+ </el-table>
|
|
|
|
|
+ <el-form-item label="进账总金额:">
|
|
|
|
|
+ <el-input v-model="total" style="width:220px"></el-input>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="进账日期:">
|
|
|
|
|
+ <el-date-picker v-model="form.settlementTime" type="date" placeholder="选择日期" value-format="yyyy-MM-dd">
|
|
|
|
|
+ </el-date-picker>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="上传凭证:">
|
|
|
|
|
+ <el-upload action="#" class="upload-demo" :limit="1" :auto-upload="false" :on-change="drivingupload"
|
|
|
|
|
+ ref="upload3" accept=".png, .jpg, .jpeg" :file-list="fileList">
|
|
|
|
|
+ <el-button size="small" type="primary">点击上传</el-button>
|
|
|
|
|
+ </el-upload>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ </el-form>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button size="small" @click="dialogVisiblebalance = false">取消</el-button>
|
|
|
|
|
|
|
+ <el-button size="small" @click="cancelSumbit">取消</el-button>
|
|
|
<el-button type="primary" size="small" @click="balanceSumbit">确定</el-button>
|
|
<el-button type="primary" size="small" @click="balanceSumbit">确定</el-button>
|
|
|
</span>
|
|
</span>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
@@ -169,7 +184,11 @@ export default {
|
|
|
ztreeNodes: [],
|
|
ztreeNodes: [],
|
|
|
fileList: [],
|
|
fileList: [],
|
|
|
dialogVisiblebalance: false,
|
|
dialogVisiblebalance: false,
|
|
|
- form: {},
|
|
|
|
|
|
|
+ form: {
|
|
|
|
|
+ insuranceHandlingList:[],
|
|
|
|
|
+ settlementAmount:"",
|
|
|
|
|
+ settlementTime:null,
|
|
|
|
|
+ },
|
|
|
formTableData: [],
|
|
formTableData: [],
|
|
|
dialogVisible: false,
|
|
dialogVisible: false,
|
|
|
tableConfigDetail: {
|
|
tableConfigDetail: {
|
|
@@ -352,7 +371,19 @@ export default {
|
|
|
});
|
|
});
|
|
|
this.findPage();
|
|
this.findPage();
|
|
|
},
|
|
},
|
|
|
|
|
+ computed: {
|
|
|
|
|
+ total() {
|
|
|
|
|
+ var amount = this.form.insuranceHandlingList.reduce((sum, item) => sum + parseFloat(item.settlementAmount ), 0);
|
|
|
|
|
+ return Object.is(Number(amount), NaN)?0:amount;
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
methods: {
|
|
methods: {
|
|
|
|
|
+ //改变事件
|
|
|
|
|
+ amountChange(row){
|
|
|
|
|
+ if(row.settlementAmount>0 && row.settlementAmount>row.remainingAmount){
|
|
|
|
|
+ this.$message.error("进账金额不能大于未结算金额");
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
// 明细
|
|
// 明细
|
|
|
findPageDetailrecord(data) {
|
|
findPageDetailrecord(data) {
|
|
|
this.tableConfigDetailrecord.loading = true
|
|
this.tableConfigDetailrecord.loading = true
|
|
@@ -529,12 +560,41 @@ export default {
|
|
|
getList(data) {
|
|
getList(data) {
|
|
|
this.findPage(data)
|
|
this.findPage(data)
|
|
|
},
|
|
},
|
|
|
-
|
|
|
|
|
|
|
+ //取消结算
|
|
|
|
|
+ cancelSumbit(){
|
|
|
|
|
+ this.dialogVisiblebalance = false
|
|
|
|
|
+ //清空数据
|
|
|
|
|
+ this.form= {
|
|
|
|
|
+ insuranceHandlingList:[],
|
|
|
|
|
+ settlementAmount:"",
|
|
|
|
|
+ settlementTime:"",
|
|
|
|
|
+ }
|
|
|
|
|
+ this.batchData.id=null;
|
|
|
|
|
+ },
|
|
|
balanceSumbit() {
|
|
balanceSumbit() {
|
|
|
- if (!this.form.settlementAmount || this.form.settlementAmount <= 0) {
|
|
|
|
|
- this.$message.error('请输入金额')
|
|
|
|
|
- return
|
|
|
|
|
|
|
+ var flag=0;
|
|
|
|
|
+ var count=0;
|
|
|
|
|
+ if(this.form.insuranceHandlingList){
|
|
|
|
|
+ this.form.insuranceHandlingList.forEach(e => {
|
|
|
|
|
+ if(e.settlementAmount>0 && e.settlementAmount>e.remainingAmount){
|
|
|
|
|
+ this.$message.error("进账金额不能大于未结算金额");
|
|
|
|
|
+ flag+=1;
|
|
|
|
|
+ }
|
|
|
|
|
+ if(e.settlementAmount>0){
|
|
|
|
|
+ count+=1;
|
|
|
}
|
|
}
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ if (count==0) {
|
|
|
|
|
+ this.$message.error("未填写金额!!");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (flag>0) {
|
|
|
|
|
+ this.$message.error("金额输入错误!!");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ this.form.settlementAmount=this.total;
|
|
|
this.$api.task
|
|
this.$api.task
|
|
|
// .batchBxBalance({
|
|
// .batchBxBalance({
|
|
|
.noBatchBxBalance({
|
|
.noBatchBxBalance({
|
|
@@ -567,6 +627,7 @@ export default {
|
|
|
// 结算
|
|
// 结算
|
|
|
balanceFun(row) {
|
|
balanceFun(row) {
|
|
|
this.openBalanceDetail = row
|
|
this.openBalanceDetail = row
|
|
|
|
|
+ this.getSettlementList(row);
|
|
|
this.dialogVisiblebalance = true
|
|
this.dialogVisiblebalance = true
|
|
|
// this.$api.task
|
|
// this.$api.task
|
|
|
// .batchBxBalance({
|
|
// .batchBxBalance({
|
|
@@ -590,6 +651,20 @@ export default {
|
|
|
// this.$message.error(res.msg)
|
|
// this.$message.error(res.msg)
|
|
|
// }
|
|
// }
|
|
|
// });
|
|
// });
|
|
|
|
|
+ },
|
|
|
|
|
+ //通过结算数据id查询需要结算的数据
|
|
|
|
|
+ getSettlementList(row){
|
|
|
|
|
+ this.$api.settlement.queryListByTaskIdAndCompanyId(
|
|
|
|
|
+ {
|
|
|
|
|
+ taskId: row.taskId,
|
|
|
|
|
+ partnerCompaniesId:row.partnerCompaniesId,
|
|
|
|
|
+ isNotCar:"1",
|
|
|
|
|
+ isNotDocumentary:"0"
|
|
|
|
|
+ }).then((res) => {
|
|
|
|
|
+ if (res.code == 200) {
|
|
|
|
|
+ this.form.insuranceHandlingList =res.data;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
},
|
|
},
|
|
|
tablePageChange(val) {
|
|
tablePageChange(val) {
|
|
|
this.pageData.pageSize = val;
|
|
this.pageData.pageSize = val;
|