|
@@ -1,814 +1,381 @@
|
|
|
-//客户管理
|
|
|
+//补卡审核
|
|
|
<template>
|
|
|
- <div>
|
|
|
- <BaseHeaderLayout :leftSpan="8">
|
|
|
- <template slot="left"> </template>
|
|
|
- <template slot="left">
|
|
|
- <ws-input v-model="searchKeyWord" placeholder="可按客户名称、电话查找" clearable maxlength="500" type="input"
|
|
|
- class="findValue" @keyup.enter.native="find()"></ws-input>
|
|
|
- <ws-button class="find" type="primary" @click="find()"><img width="16" height="16" style="
|
|
|
- vertical-align: text-top;
|
|
|
- position: relative;
|
|
|
- top: 0px;
|
|
|
- left: -8px;
|
|
|
- " src="../../../public/img/sousuo.png" alt="" /></ws-button>
|
|
|
-
|
|
|
- <!--设置默认定金比例-->
|
|
|
- <el-button class="bg-bottom" type="primary" size="small" @click="installRatio()">
|
|
|
- 默认定金比例</el-button>
|
|
|
- <el-dialog width="25%" title="设置默认定金比例" :visible.sync="outerVisibleDefaultEdit" :append-to-body="true">
|
|
|
- <div style="width: 50%">
|
|
|
- <div class="dingjin">定金比例(元/吨)</div>
|
|
|
- <el-input type="textarea" :rows="2" placeholder="请输入定金比例" v-model="depositRatio">
|
|
|
- </el-input>
|
|
|
- </div>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="outerVisibleDefaultEdit = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="editDefaultDepositRatio()">确 定</el-button>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
-
|
|
|
- <!--增加定金-->
|
|
|
- <el-dialog width="30%" title="增加定金" :visible.sync="outerVisibleAdd" :append-to-body="true">
|
|
|
- <div class="addprice">
|
|
|
- 已付定金
|
|
|
- <div class="yifudingjin">
|
|
|
- <template> {{ this.totalDeposit }} 元 </template>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="addpricejine">增加金额</div>
|
|
|
- <div style="width: 50%" class="zengjia">
|
|
|
- <el-input type="textarea" :rows="2" maxlength="30" placeholder="请输入本次增加定金金额" v-model="money">
|
|
|
- </el-input>
|
|
|
- <div class="yuan">元</div>
|
|
|
- </div>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="outerVisibleAdd = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="editPrice(1)">确 定</el-button>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
-
|
|
|
- <!--退回定金-->
|
|
|
- <el-dialog width="30%" title="退回定金" :visible.sync="outerVisibleReturn" :append-to-body="true">
|
|
|
- <div class="returnprice">
|
|
|
- 可退定金
|
|
|
- <div class="ketuidingjin">
|
|
|
- <template>
|
|
|
- {{ this.totalDeposit - this.freezingDeposit }} 元
|
|
|
- </template>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="returnpricejine">退回金额</div>
|
|
|
- <div style="width: 50%" class="tuihui">
|
|
|
- <el-input type="textarea" :rows="2" maxlength="30" placeholder="请输入本次退回定金金额" v-model="money">
|
|
|
- </el-input>
|
|
|
- <div class="yuan">元</div>
|
|
|
- </div>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="outerVisibleReturn = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="editPrice(2)">确 定</el-button>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
- </template>
|
|
|
- </BaseHeaderLayout>
|
|
|
- <el-table class="wenzi" :data="customerList.records" style="width: 100%" height="calc(100% - 110px)">
|
|
|
- <el-table-column prop="index" label="序号" width="80">
|
|
|
- <template scope="scope">
|
|
|
- <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
|
|
|
- <span v-else>{{ scope.$index + 1 }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="customerName" label="客户名称">
|
|
|
- <!-- <template scope="scope">
|
|
|
- <span
|
|
|
- v-if="
|
|
|
- scope.row.customerName == '' || scope.row.customerName == null
|
|
|
- "
|
|
|
- >{{ scope.row.compName }}</span
|
|
|
- >
|
|
|
- <span
|
|
|
- v-if="scope.row.compName == '' || scope.row.compName == null"
|
|
|
- >{{ scope.row.customerName }}</span
|
|
|
- >
|
|
|
- </template> -->
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="compAddress" label="地址"></el-table-column>
|
|
|
- <el-table-column prop="customerPhone" label="电话"> </el-table-column>
|
|
|
- <el-table-column width='170' prop="payTaxesCard" label="纳税人识别号">
|
|
|
- <template scope="scope">
|
|
|
- <span v-if="
|
|
|
- scope.row.payTaxesCard == '' || scope.row.payTaxesCard == null
|
|
|
- ">
|
|
|
- — —
|
|
|
- </span>
|
|
|
- {{ scope.row.payTaxesCard }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="bankDeposit" label="开户行">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.bankDeposit }} - {{ scope.row.bankDepositBranch }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="bankCard" label="银行卡号"> </el-table-column>
|
|
|
- <el-table-column prop="totalDeposit" label="总定金(元)">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column width='150' prop="freezingDeposit" label="冻结定金(元)">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column width='150' class="table_td" prop="depositRatio" label="定金比例(元/吨)">
|
|
|
- <template slot-scope="scope">
|
|
|
- <div class="inputChenge">
|
|
|
- <!-- readonly -->
|
|
|
- <el-input v-model="scope.row.depositRatio" v-if="scope.row.identification == 'true'"></el-input>
|
|
|
- <div v-if="scope.row.identification == 'false'" class="inputs">
|
|
|
- {{ scope.row.depositRatio }}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <img width="17" height="18" style="vertical-align: text-top; position: relative; top: -1px"
|
|
|
- src="../../../public/img/edit.png" @click="whether(scope.row)" v-if="scope.row.identification == 'false'"
|
|
|
- alt="" />
|
|
|
- <i class="el-icon-check" style="line-height: 29px; margin-left: 10px"
|
|
|
- v-if="scope.row.identification == 'true'" @click="varietyClick(scope.row)"></i>
|
|
|
- <!-- <div>—</div> -->
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column prop="updateDate" label="更新时间"> </el-table-column>
|
|
|
- <el-table-column prop="seller" label="操作" width="280">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button type="primary" v-hasPermission="
|
|
|
- `customerManagement.customer.customerInfo.View`
|
|
|
- " @click="editClick(1, scope.row)">增加定金</el-button>
|
|
|
- <el-button v-hasPermission="
|
|
|
- `customerManagement.customer.customerInfo.View`
|
|
|
- " type="primary" @click="editClick(2, scope.row)">退回定金</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
|
|
|
- :page-size="deptCircularPage.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
|
|
|
- </el-pagination>
|
|
|
+ <div class="container">
|
|
|
+ <el-row class="row_top">
|
|
|
+ <el-col :span="12">
|
|
|
+ <h2 class="bg-left title">补卡审核</h2>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12" class="bg-right"><el-button class="bg-bottom" type="primary" size="small" @click="returnsales()"><img width="6" height="10"
|
|
|
+ style="vertion-align: bottom; margin-right: 3px" src="../../../public/img/lujing.png" alt="" />返回
|
|
|
+ </el-button></el-col>
|
|
|
+ </el-row>
|
|
|
+ <div class="center">
|
|
|
+ <el-row style='margin-bottom:10px;'>
|
|
|
+ <el-col :span="18">
|
|
|
+ <el-button style="margin-left:10px" @click="typeChange('')" :type="searchType == ''?'primary':''">全部</el-button>
|
|
|
+ <el-button @click="typeChange(1)" :type="searchType == 1?'primary':''">待审核</el-button>
|
|
|
+ <el-button @click="typeChange(1)" :type="searchType == 1?'primary':''">已通过</el-button>
|
|
|
+ <el-button @click="typeChange(1)" :type="searchType == 1?'primary':''">已驳回</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col style='text-align:right;' :span="6">
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <div class="fromdata">
|
|
|
+ <el-table :data="tableData">
|
|
|
+ <el-table-column type="index" label="序号">
|
|
|
+ <template scope="scope">
|
|
|
+ <span v-if="scope.$index < 9">0{{ scope.$index + 1 }}</span>
|
|
|
+ <span v-else>{{ scope.$index + 1 }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="empName" label="姓名">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="dept" label="部门">
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
+ <el-table-column prop="driverName" label="备注">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="approveStatus" width="100" label="状态">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span v-if="scope.row.approveStatus">{{scope.row.approveStatus}}</span><span v-else>{{scope.row.travelStatus}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="address" label="操作">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button @click="look(scope.row)" type="primary">查看</el-button>
|
|
|
+
|
|
|
+ <!-- <el-button v-if='scope.row.approveStatus=="待确认"' @click="accomplish(scope.row)" type="primary">完成</el-button> -->
|
|
|
+ <el-button v-if='scope.row.approveStatus' @click="pass(scope.row)" type="primary">通过</el-button>
|
|
|
+ <el-button v-if='scope.row.approveStatus' @click="reject(scope.row)" type="primary">驳回</el-button>
|
|
|
+ <!-- <el-button v-if='scope.row.status=="已驳回"' @click="expenseedit(scope.row)" type="primary">编辑</el-button> -->
|
|
|
+ <el-button v-if='!scope.row.approveStatus&&scope.row.expensesType==2&&scope.row.status=="待付款"' @click="payment(scope.row)" type="primary">付款</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
|
|
|
+ style="text-align:center" :page-size="pageSize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ <el-dialog width='50%' :visible.sync="dialogVisible2" :title="title1">
|
|
|
+ <div style='padding:20px;' v-for="(item,index) in recordList" :style="{'border-bottom':(index!=recordList.length-1?'1px solid #ccc':'none')}"
|
|
|
+>
|
|
|
+ <div style='width:100%;justify-content: space-between;' class='flex'>
|
|
|
+ <div style='width:33.333%;text-align:left;'>{{item.operateUser}}</div>
|
|
|
+ <div style='width:33.333%;text-align:center;'>{{item.dealMsg!='请款'?item.approveResult==1?'通过':'驳回':item.dealMsg}}</div>
|
|
|
+ <div style='width:33.333%;text-align:right;'>{{item.operateDate}}</div>
|
|
|
+ </div>
|
|
|
+ <div v-if='index<recordList.length-1' style='width:100%;text-align:left;'>审核意见:{{item.verifyRemark}}</div>
|
|
|
+ <div v-else style='width:100%;text-align:left;'>审核意见:{{item.verifyRemark}}</div>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <WinseaContentModal v-model="fujianshow" :title="title"
|
|
|
+ @on-cancel="handleClose">
|
|
|
+ </WinseaContentModal>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
- import {
|
|
|
- getList,
|
|
|
- installDepositRatio,
|
|
|
- editCustomerInfo,
|
|
|
- } from '@/model/customer/index'
|
|
|
- import Pagination from '@/components/Pagination'
|
|
|
import WsUpload from '@/components/WsUpload'
|
|
|
-
|
|
|
+ import {
|
|
|
+ getList1,
|
|
|
+ } from '@/model/personnelManagement/index'
|
|
|
+ import {
|
|
|
+ getfielfillinginfo,
|
|
|
+ } from '@/model/profitable/index'
|
|
|
+ import {
|
|
|
+ woekflowhandle
|
|
|
+ } from '@/model/tasksport/index'
|
|
|
export default {
|
|
|
- name: 'viewSpareMoney',
|
|
|
components: {
|
|
|
WsUpload,
|
|
|
- Pagination,
|
|
|
- },
|
|
|
- watch: {
|
|
|
- vesselId(val) {
|
|
|
- this.getList()
|
|
|
- },
|
|
|
- isShow(val) {
|
|
|
- this.showType = val
|
|
|
- },
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- //弹出框
|
|
|
- dialogViewSpareMoney: false,
|
|
|
- dialogApproveFormVisible: false,
|
|
|
- // 船舶类型
|
|
|
- monetaryKey: null,
|
|
|
- // 表格显示数据
|
|
|
- tableDate: [],
|
|
|
- // 是否显示
|
|
|
- showType: true,
|
|
|
- // 年
|
|
|
- year: '',
|
|
|
+ value: '',
|
|
|
+ tableData: [],
|
|
|
+ deptBudgetTotal: 0,
|
|
|
currentPage: 1,
|
|
|
pageSize: 10,
|
|
|
- deptBudgetTotal: 0,
|
|
|
- searchKeyWord: '',
|
|
|
- outerVisibleDefaultEdit: false,
|
|
|
- outerVisibleEdit: false,
|
|
|
- outerVisibleAdd: false,
|
|
|
- outerVisibleReturn: false,
|
|
|
- contractType: 2,
|
|
|
- searchType: 1,
|
|
|
- // 提交类型
|
|
|
- submitType: true,
|
|
|
- size: 10,
|
|
|
- spanArr: [],
|
|
|
- depositRatio: '700',
|
|
|
- id: '',
|
|
|
- money: '',
|
|
|
- compId: localStorage.getItem('ws-pf_compId'),
|
|
|
+ recordList:[],
|
|
|
+ compId:localStorage.getItem('ws-pf_compId'),
|
|
|
+ dialogVisible1:false,
|
|
|
+ form:{},
|
|
|
+ dialogVisible2:false,
|
|
|
deptCircularPage: {},
|
|
|
- customerList: [],
|
|
|
- deptBudgetList: {},
|
|
|
- historyList: [],
|
|
|
- pickerBeginDateBefore: {
|
|
|
- disabledDate: (time) => {
|
|
|
- return time.getTime() > Date.now()
|
|
|
- },
|
|
|
- },
|
|
|
- accessoryTFs: false,
|
|
|
- customerInfo: {
|
|
|
- id: '',
|
|
|
- compId: '',
|
|
|
- depositRatio: '',
|
|
|
- flag: '',
|
|
|
- money: '',
|
|
|
- totalDeposit: 0,
|
|
|
- freezingDeposit: 0,
|
|
|
- },
|
|
|
- totalDeposit: 0,
|
|
|
- freezingDeposit: 0,
|
|
|
+ searchType:'',
|
|
|
+ searchKeyWord:'',
|
|
|
+ strokeType:'1',
|
|
|
+ title:'附件',
|
|
|
+ title1:'',
|
|
|
+ outtotal:0,
|
|
|
+ intotal:0,
|
|
|
+ fujianshow:false,
|
|
|
+ appendixIdss:[],
|
|
|
}
|
|
|
},
|
|
|
activated() {
|
|
|
this.getList()
|
|
|
- this.showType = this.isShow
|
|
|
},
|
|
|
methods: {
|
|
|
- //查看//传参
|
|
|
- nocomplete(row) {
|
|
|
- this.$router.push({
|
|
|
- name: 'vehicleDispatchingview',
|
|
|
- query: {
|
|
|
- id: row.id,
|
|
|
- },
|
|
|
- })
|
|
|
- },
|
|
|
- dateFormat(fmt, date) {
|
|
|
- let ret
|
|
|
- const opt = {
|
|
|
- 'Y+': date.getFullYear().toString(), // 年
|
|
|
- 'm+': (date.getMonth() + 1).toString(), // 月
|
|
|
- 'd+': date.getDate().toString(), // 日
|
|
|
- 'H+': date.getHours().toString(), // 时
|
|
|
- // "M+": date.getMinutes().toString(), // 分
|
|
|
- // "S+": date.getSeconds().toString() // 秒
|
|
|
- // 有其他格式化字符需求可以继续添加,必须转化成字符串
|
|
|
- }
|
|
|
- for (let k in opt) {
|
|
|
- ret = new RegExp('(' + k + ')').exec(fmt)
|
|
|
- if (ret) {
|
|
|
- fmt = fmt.replace(
|
|
|
- ret[1],
|
|
|
- ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
|
|
|
- )
|
|
|
- }
|
|
|
+ handlerecord(row){
|
|
|
+ if(row.expensesType==1){
|
|
|
+ this.title1='收款审核记录'
|
|
|
+ }else{
|
|
|
+ this.title1='请款审核记录'
|
|
|
}
|
|
|
- return fmt
|
|
|
+ getAuditRecord({ id: row.id,
|
|
|
+ workflowId: row.workflowId}).toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.recordList=response
|
|
|
+ this.dialogVisible1=true
|
|
|
+ }).catch((response) => {})
|
|
|
+ },
|
|
|
+ returnsales(){
|
|
|
+ this.$router.go(-1)
|
|
|
},
|
|
|
-
|
|
|
handleClose() {
|
|
|
- this.accessoryTFs = false
|
|
|
+ this.fujianshow = false
|
|
|
},
|
|
|
- handleSizeChange(val) {
|
|
|
- console.log(`每页 ${val} 条`)
|
|
|
- this.pageSize = val
|
|
|
- this.getList()
|
|
|
+ fujian(row) {
|
|
|
+ this.id = row.id
|
|
|
+ this.fujianshow = true
|
|
|
+ if(row.addressUrl){
|
|
|
+ this.appendixIdss=row.addressUrl
|
|
|
+ }
|
|
|
},
|
|
|
- handleCurrentChange(val) {
|
|
|
- this.currentPage = val
|
|
|
- console.log(`当前页: ${val}`)
|
|
|
+ look(row){
|
|
|
+ this.form=row
|
|
|
+ this.dialogVisible1=true
|
|
|
+ },
|
|
|
+
|
|
|
+ strokeTypeChange(num){
|
|
|
+ this.strokeType = num
|
|
|
this.getList()
|
|
|
},
|
|
|
- changestatus(state) {
|
|
|
- this.searchType = state
|
|
|
+ typeChange(num){
|
|
|
+ this.searchType = num
|
|
|
this.getList()
|
|
|
},
|
|
|
- //修改定金比例
|
|
|
- varietyClick(row) {
|
|
|
- if (
|
|
|
- row.depositRatio < 0 ||
|
|
|
- row.depositRatio > 100000 ||
|
|
|
- (String(row.depositRatio).indexOf('.') != -1 &&
|
|
|
- String(row.depositRatio).length -
|
|
|
- (String(row.depositRatio).indexOf('.') + 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '定金比例输入错误',
|
|
|
- type: 'warning',
|
|
|
+ edit(row){
|
|
|
+ this.$router.push({name:'cashoutedit',query:{id:row.id}})
|
|
|
+ },
|
|
|
+ pass(row){
|
|
|
+ if(row.taskId){
|
|
|
+ this.$confirm('确认通过请款信息?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
})
|
|
|
- return
|
|
|
- }
|
|
|
- if (row.depositRatio) {
|
|
|
- if (isNaN(row.depositRatio)) {
|
|
|
- this.$message({
|
|
|
- message: '定金比例非数字!',
|
|
|
- type: 'warning',
|
|
|
+ .then(() => {
|
|
|
+ woekflowhandle({
|
|
|
+ taskId: row.taskId,
|
|
|
+ approved:true,
|
|
|
+ auditMind: '34',
|
|
|
+ needReapply: true,
|
|
|
+ }).toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$message({
|
|
|
+ message: '通过成功!',
|
|
|
+ type: 'success',
|
|
|
+ })
|
|
|
+ this.getList()
|
|
|
+ }).catch((response) => {
|
|
|
+ this.$message({
|
|
|
+ message: '通过失败!',
|
|
|
+ type: 'error',
|
|
|
+ })
|
|
|
})
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if (!row.depositRatio) {
|
|
|
+ })
|
|
|
+ }else{
|
|
|
this.$message({
|
|
|
- message: '定金比例不能为空!',
|
|
|
+ message: '暂无此权限!',
|
|
|
type: 'warning',
|
|
|
})
|
|
|
- return
|
|
|
}
|
|
|
- this.$confirm(`确定要修改定金比例?`, {
|
|
|
+ },
|
|
|
+ reject(row){
|
|
|
+ if(row.taskId){
|
|
|
+ this.$confirm('确认驳回请款信息?', '提示', {
|
|
|
confirmButtonText: '确定',
|
|
|
cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
+ type: 'warning'
|
|
|
})
|
|
|
.then(() => {
|
|
|
- editCustomerInfo({
|
|
|
- flag: 0,
|
|
|
- depositRatio: row.depositRatio,
|
|
|
- id: row.id,
|
|
|
+ woekflowhandle({
|
|
|
+ taskId: row.taskId,
|
|
|
+ approved:false,
|
|
|
+ auditMind: '34',
|
|
|
+ needReapply: true,
|
|
|
+ }).toPromise()
|
|
|
+ .then((response) => {
|
|
|
+ this.$message({
|
|
|
+ message: '驳回成功!',
|
|
|
+ type: 'success',
|
|
|
})
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.$notify.success({
|
|
|
- title: '成功',
|
|
|
- message: '修改成功',
|
|
|
- })
|
|
|
- this.getList()
|
|
|
+ this.getList()
|
|
|
+ }).catch((response) => {
|
|
|
+ this.$message({
|
|
|
+ message: '驳回失败!',
|
|
|
+ type: 'error',
|
|
|
})
|
|
|
- .catch((response) => {})
|
|
|
+ })
|
|
|
})
|
|
|
- .catch(() => {
|
|
|
- return false
|
|
|
+ }else{
|
|
|
+ this.$message({
|
|
|
+ message: '暂无此权限!',
|
|
|
+ type: 'warning',
|
|
|
})
|
|
|
+ }
|
|
|
},
|
|
|
- whether(row) {
|
|
|
- row.identification = 'true'
|
|
|
+ payment(row){
|
|
|
+ if(localStorage.getItem('ws-pf_roleName')=='出纳'){
|
|
|
+ this.$router.push({name:'payment',query:{id:row.id}})
|
|
|
+ }else{
|
|
|
+ this.$message({
|
|
|
+ message: '暂无此权限!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
},
|
|
|
- //列表查询
|
|
|
+ allot(row){
|
|
|
+ if(localStorage.getItem('ws-pf_roleName')=='销售内勤'||localStorage.getItem('ws-pf_roleName')=='采购内勤'){
|
|
|
+ this.$router.push({name:'expenseallot',query:{id:row.id}})
|
|
|
+ }else{
|
|
|
+ this.$message({
|
|
|
+ message: '暂无此权限!',
|
|
|
+ type: 'warning',
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ cashout(){
|
|
|
+ this.$router.push({name:'cashout'})
|
|
|
+ },
|
|
|
+ storageCharge(){
|
|
|
+ this.$router.push({name:'storageCharge'})
|
|
|
+ },
|
|
|
+ receipt(){
|
|
|
+ this.$router.push({name:'receipt'})
|
|
|
+ },
|
|
|
+ // inventory(){
|
|
|
+ // this.$router.push({name:'contractinventory'})
|
|
|
+ // },
|
|
|
getList() {
|
|
|
- getList({
|
|
|
- compId: localStorage.getItem('ws-pf_compId'),
|
|
|
+ getList1({
|
|
|
+ // warehouseType: 1,
|
|
|
currentPage: this.currentPage,
|
|
|
pageSize: this.pageSize,
|
|
|
- searchKeyWord: this.searchKeyWord,
|
|
|
- customerTypeFlag: this.customerTypeFlag,
|
|
|
+ compId: localStorage.getItem('ws-pf_compId'),
|
|
|
})
|
|
|
.toPromise()
|
|
|
- .then((response) => {
|
|
|
- for (var i = 0; i < response.records.length; i++) {
|
|
|
- response.records[i].identification = 'false'
|
|
|
- }
|
|
|
- this.customerList = response
|
|
|
- this.deptCircularPage.currentPage = response.current
|
|
|
- this.deptCircularPage.pageSize = response.size
|
|
|
- this.deptBudgetTotal = response.total
|
|
|
+ .then(response => {
|
|
|
+ this.tableData = response.records
|
|
|
+ this.deptBudgetTotal = response.total
|
|
|
})
|
|
|
},
|
|
|
- //设置默认定金比例
|
|
|
- installRatio() {
|
|
|
- this.outerVisibleDefaultEdit = true
|
|
|
- },
|
|
|
- editDefaultDepositRatio() {
|
|
|
- if (
|
|
|
- this.depositRatio < 1 ||
|
|
|
- this.depositRatio > 100000 ||
|
|
|
- (String(this.depositRatio).indexOf('.') != -1 &&
|
|
|
- String(this.depositRatio).length -
|
|
|
- (String(this.depositRatio).indexOf('.') + 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '默认定金比例输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.depositRatio) {
|
|
|
- if (isNaN(this.depositRatio)) {
|
|
|
- this.$message({
|
|
|
- message: '默认定金比例非数字!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (!this.depositRatio) {
|
|
|
- this.$message({
|
|
|
- message: '默认定金比例不能为空!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- installDepositRatio({
|
|
|
- compId: localStorage.getItem('ws-pf_compId'),
|
|
|
- depositRatio: this.depositRatio,
|
|
|
- })
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.outerVisibleDefaultEdit = false
|
|
|
- this.getList()
|
|
|
- this.$message.success('设置默认定金比例成功')
|
|
|
- })
|
|
|
+ changeDate(){
|
|
|
+ if(this.value){
|
|
|
+ this.startDate = this.value[0]
|
|
|
+ this.endDate = this.value[1]
|
|
|
}
|
|
|
+ this.getList()
|
|
|
},
|
|
|
- //编辑
|
|
|
- editClick(index, row) {
|
|
|
- this.id = row.id
|
|
|
- this.depositRatio = row.depositRatio
|
|
|
- this.totalDeposit = row.totalDeposit
|
|
|
- this.freezingDeposit = row.freezingDeposit
|
|
|
+ pickerOptions() {},
|
|
|
+ find() {
|
|
|
+ this.getList()
|
|
|
|
|
|
- //增加定金
|
|
|
- if (index == 1) {
|
|
|
- this.outerVisibleAdd = true
|
|
|
- this.customerInfo.flag = 1
|
|
|
- }
|
|
|
- //退回定金
|
|
|
- else {
|
|
|
- this.outerVisibleReturn = true
|
|
|
- this.customerInfo.flag = 2
|
|
|
- }
|
|
|
},
|
|
|
- editPrice(asdf) {
|
|
|
- this.customerInfo.id = this.id
|
|
|
- this.customerInfo.compId = this.compId
|
|
|
- this.customerInfo.depositRatio = this.depositRatio
|
|
|
- this.customerInfo.money = this.money
|
|
|
- this.customerInfo.totalDeposit = this.totalDeposit
|
|
|
- this.customerInfo.freezingDeposit = this.freezingDeposit
|
|
|
-
|
|
|
- //增加定金
|
|
|
- if (asdf == 1) {
|
|
|
- if (
|
|
|
- this.money < 0 ||
|
|
|
- this.money > 100000000 ||
|
|
|
- (String(this.money).indexOf('.') != -1 &&
|
|
|
- String(this.money).length - (String(this.money).indexOf('.') + 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '增加金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.money) {
|
|
|
- if (isNaN(this.money)) {
|
|
|
- this.$message({
|
|
|
- message: '增加金额非数字!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if (!this.money) {
|
|
|
- this.$message({
|
|
|
- message: '增加金额不能为空!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- //退回定金
|
|
|
- if (asdf == 2) {
|
|
|
- if (
|
|
|
- this.money < 0 ||
|
|
|
- this.money > 100000000 ||
|
|
|
- (String(this.money).indexOf('.') != -1 &&
|
|
|
- String(this.money).length - (String(this.money).indexOf('.') + 1) >
|
|
|
- 2)
|
|
|
- ) {
|
|
|
- this.$message({
|
|
|
- message: '退回金额输入错误',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.money) {
|
|
|
- if (isNaN(this.money)) {
|
|
|
- this.$message({
|
|
|
- message: '退回金额非数字!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- if (!this.money) {
|
|
|
- this.$message({
|
|
|
- message: '退回金额不能为空!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- if (this.money > this.totalDeposit - this.freezingDeposit) {
|
|
|
- this.$message({
|
|
|
- message: '退回金额不能大于可退金额!',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- return
|
|
|
- }
|
|
|
- }
|
|
|
- editCustomerInfo(this.customerInfo)
|
|
|
- .toPromise()
|
|
|
- .then((response) => {
|
|
|
- this.outerVisibleAdd = false
|
|
|
- this.outerVisibleReturn = false
|
|
|
- this.outerVisibleEdit = false
|
|
|
- this.getList()
|
|
|
- this.money = ''
|
|
|
-
|
|
|
- //增加定金
|
|
|
- if (asdf == 1) {
|
|
|
- this.$message.success('增加成功')
|
|
|
- }
|
|
|
- //退回定金
|
|
|
- if (asdf == 2) {
|
|
|
- this.$message.success('退回成功')
|
|
|
- }
|
|
|
- })
|
|
|
+ handleSizeChange(val) {
|
|
|
+ console.log(`每页 ${val} 条`)
|
|
|
+ this.pageSize = val
|
|
|
+ this.getList()
|
|
|
},
|
|
|
- find() {
|
|
|
- this.currentPage = 1
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.currentPage = val
|
|
|
+ console.log(`当前页: ${val}`)
|
|
|
this.getList()
|
|
|
},
|
|
|
},
|
|
|
}
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
- .connert {
|
|
|
- width: 90%;
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- .vertical-text-left {
|
|
|
- width: 62px;
|
|
|
- text-align: right;
|
|
|
- }
|
|
|
-
|
|
|
- .el-button--primary {
|
|
|
- background-color: #5878e8;
|
|
|
- border-color: #5878e8;
|
|
|
- }
|
|
|
-
|
|
|
- .el-button--primary {
|
|
|
- background-color: #5878e8;
|
|
|
- color: #fff;
|
|
|
- }
|
|
|
-
|
|
|
- .el-button--default {
|
|
|
- color: #8890b1;
|
|
|
- border-color: #e8eaf1;
|
|
|
+ .container {
|
|
|
+ background: #E8ECF6;
|
|
|
}
|
|
|
|
|
|
- /deep/.base_header_layout .find.el-button--primary {
|
|
|
- width: 30px;
|
|
|
- margin-left: 0;
|
|
|
- border-top-left-radius: 0px;
|
|
|
- border-bottom-left-radius: 0px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.findValue .el-input__inner {
|
|
|
- border-top-right-radius: 0px;
|
|
|
- border-bottom-right-radius: 0px;
|
|
|
- }
|
|
|
-
|
|
|
- //操作按钮
|
|
|
- .record,
|
|
|
- .adjustment {
|
|
|
- display: inline-block;
|
|
|
- color: #5878e8;
|
|
|
- padding: 0 4px !important;
|
|
|
- position: relative;
|
|
|
- font-size: 14px;
|
|
|
- }
|
|
|
-
|
|
|
- .record:after {
|
|
|
- position: absolute;
|
|
|
- content: '';
|
|
|
- display: block;
|
|
|
- top: 5px;
|
|
|
- right: -2px;
|
|
|
- width: 1px;
|
|
|
- height: 12px;
|
|
|
- background: #e9ecf7;
|
|
|
- }
|
|
|
-
|
|
|
- //状态样式
|
|
|
- .executory,
|
|
|
- .inExecution,
|
|
|
- .done {
|
|
|
- width: 6px;
|
|
|
- height: 6px;
|
|
|
- display: inline-block;
|
|
|
- border-radius: 50%;
|
|
|
- position: relative;
|
|
|
- top: -1px;
|
|
|
- font-size: 14px;
|
|
|
- }
|
|
|
-
|
|
|
- .executory {
|
|
|
- background: #ff9f24;
|
|
|
- }
|
|
|
-
|
|
|
- .inExecution {
|
|
|
- background: #5878e8;
|
|
|
- }
|
|
|
-
|
|
|
- .done {
|
|
|
- background: #50cad4;
|
|
|
- }
|
|
|
-
|
|
|
- .putstorage.el-button--default,
|
|
|
- .deliverystorage.el-button--default {
|
|
|
- border-color: #8890b1;
|
|
|
- background-color: #fff;
|
|
|
- color: #8890b1;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-table td,
|
|
|
- /deep/.el-table th.is-leaf {
|
|
|
- border-right: 1px solid #e9ecf7;
|
|
|
- text-align: center;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-table tr td:first-child,
|
|
|
- /deep/.el-table tr th.is-leaf:first-child {
|
|
|
- border-left: 1px solid #e9ecf7;
|
|
|
- }
|
|
|
-
|
|
|
- .record,
|
|
|
- .adjustment {
|
|
|
- display: inline-block;
|
|
|
- color: #5878e8;
|
|
|
- padding: 0 4px !important;
|
|
|
- position: relative;
|
|
|
- }
|
|
|
-
|
|
|
- .record:after {
|
|
|
- position: absolute;
|
|
|
- content: '';
|
|
|
- display: block;
|
|
|
- top: 5px;
|
|
|
- right: -2px;
|
|
|
- width: 1px;
|
|
|
- height: 12px;
|
|
|
- background: #e9ecf7;
|
|
|
- }
|
|
|
-
|
|
|
- .el-row {
|
|
|
- height: 60px;
|
|
|
- }
|
|
|
-
|
|
|
- .base_header_layout .grid-content {
|
|
|
- margin-top: 80px;
|
|
|
- }
|
|
|
-
|
|
|
- .el-input--small .el-input__inner {
|
|
|
- margin-left: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- .dialog-footer {
|
|
|
- margin-top: 33px;
|
|
|
- }
|
|
|
-
|
|
|
- .el-range-editor--small.el-input__inner {
|
|
|
- height: 32px;
|
|
|
- margin: 0 10px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.el-pagination {
|
|
|
- text-align: center;
|
|
|
- white-space: nowrap;
|
|
|
- padding: 2px 5px;
|
|
|
- color: #303133;
|
|
|
- font-weight: 700;
|
|
|
- margin-bottom: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- .el-select {
|
|
|
- width: 30%;
|
|
|
- margin-right: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.zengjia .el-textarea__inner {
|
|
|
- display: block;
|
|
|
- padding: 13px 9px;
|
|
|
- line-height: 0.5;
|
|
|
- box-sizing: border-box;
|
|
|
- width: 80%;
|
|
|
- font-size: inherit;
|
|
|
- color: #606266;
|
|
|
- background-color: #fff;
|
|
|
- background-image: none;
|
|
|
- border: 1px solid #dcdfe6;
|
|
|
- border-radius: 4px;
|
|
|
- margin-left: 180px;
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.xiugai .el-textarea__inner {
|
|
|
- display: block;
|
|
|
- padding: 13px 17px;
|
|
|
- line-height: 0.5;
|
|
|
- box-sizing: border-box;
|
|
|
- width: 105%;
|
|
|
- font-size: inherit;
|
|
|
- color: #606266;
|
|
|
- background-color: #fff;
|
|
|
- background-image: none;
|
|
|
- border: 1px solid #dcdfe6;
|
|
|
- border-radius: 4px;
|
|
|
- transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
|
- margin-left: 95px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.tuihui .el-textarea__inner {
|
|
|
- display: block;
|
|
|
- padding: 13px 9px;
|
|
|
- line-height: 0.5;
|
|
|
- box-sizing: border-box;
|
|
|
- width: 80%;
|
|
|
- font-size: inherit;
|
|
|
- color: #606266;
|
|
|
- background-color: #fff;
|
|
|
- background-image: none;
|
|
|
- border: 1px solid #dcdfe6;
|
|
|
+ .center {
|
|
|
+ margin: 0 auto;
|
|
|
+ background: #ffffff;
|
|
|
+ // height: calc(100vh - 13vh);
|
|
|
border-radius: 4px;
|
|
|
- margin-left: 180px;
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
+ padding: 20px 0;
|
|
|
|
|
|
- /deep/.dingjin {
|
|
|
- width: 98px;
|
|
|
- margin-left: 30px;
|
|
|
- margin-bottom: -37px;
|
|
|
- padding-top: 20px;
|
|
|
+ /deep/.el-table td,
|
|
|
+ /deep/.el-table th {
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- /deep/.el-textarea__inner {
|
|
|
- display: block;
|
|
|
- padding: 13px 17px;
|
|
|
- line-height: 0.5;
|
|
|
- box-sizing: border-box;
|
|
|
- width: 90%;
|
|
|
- font-size: inherit;
|
|
|
- color: #606266;
|
|
|
- background-color: #fff;
|
|
|
- background-image: none;
|
|
|
- border: 1px solid #dcdfe6;
|
|
|
+ .row_top {
|
|
|
+ background: #F6F7FC;
|
|
|
border-radius: 4px;
|
|
|
- transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
|
- margin-left: 155px;
|
|
|
- margin-top: 10px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.addprice {
|
|
|
- width: 98px;
|
|
|
- margin-left: 50px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.returnprice {
|
|
|
- width: 98px;
|
|
|
- margin-left: 50px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.yuan {
|
|
|
- width: 10px;
|
|
|
- margin-left: 150%;
|
|
|
- margin-top: -32px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.addpricejine {
|
|
|
- width: 98px;
|
|
|
- margin-left: 50px;
|
|
|
- margin-bottom: -37px;
|
|
|
- padding-top: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.returnpricejine {
|
|
|
- width: 98px;
|
|
|
- margin-left: 50px;
|
|
|
- margin-bottom: -37px;
|
|
|
- padding-top: 20px;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.typeselect .el-input__inner {
|
|
|
- color: #8890b1;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.yifudingjin {
|
|
|
- margin-left: 135px;
|
|
|
- width: 70px;
|
|
|
- margin-top: -19px;
|
|
|
- }
|
|
|
-
|
|
|
- .inputChenge {
|
|
|
- width: 50%;
|
|
|
- display: inline-flex;
|
|
|
- }
|
|
|
-
|
|
|
- .inputs {
|
|
|
- margin: 0 auto;
|
|
|
- }
|
|
|
-
|
|
|
- /deep/.ketuidingjin {
|
|
|
- margin-left: 135px;
|
|
|
- width: 70px;
|
|
|
- margin-top: -19px;
|
|
|
+ margin-bottom: 10px;
|
|
|
+
|
|
|
+ .bg-left {
|
|
|
+ padding-left: 30px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .bg-right {
|
|
|
+ padding-right: 10px;
|
|
|
+ text-align: right;
|
|
|
+ }
|
|
|
+
|
|
|
+ .title {
|
|
|
+ position: relative;
|
|
|
+ }
|
|
|
+
|
|
|
+ .title::before {
|
|
|
+ content: '';
|
|
|
+ display: inline-block;
|
|
|
+ width: 5px;
|
|
|
+ height: 30px;
|
|
|
+ background: #5473e8;
|
|
|
+ position: absolute;
|
|
|
+ left: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .datascreen {
|
|
|
+ display: flex;
|
|
|
+
|
|
|
+ .data_css {
|
|
|
+ width: 40%;
|
|
|
+ }
|
|
|
+
|
|
|
+ .input_css {
|
|
|
+ width: 50%;
|
|
|
+ margin: 0 10px;
|
|
|
+ }
|
|
|
+
|
|
|
+ .find {
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .fromdata {
|
|
|
+ margin: 20px 0;
|
|
|
+ overflow-y: scroll;
|
|
|
+ height: 546px;
|
|
|
+ }
|
|
|
+ .top_info{
|
|
|
+ margin: 10px 0 0 10px;
|
|
|
+ min-width: 712px;
|
|
|
+ .info_css{
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .bg-right{
|
|
|
+ padding-top:15px;
|
|
|
}
|
|
|
</style>
|