This commit is contained in:
liushuai
2018-12-21 08:41:25 +08:00
29 changed files with 1319 additions and 464 deletions

View File

@@ -17,6 +17,7 @@
"echarts": "^4.2.0-rc.2",
"element-ui": "2.4.6",
"file-saver": "^1.3.8",
"jquery": "^3.3.1",
"js-cookie": "2.2.0",
"node-sass": "^4.10.0",
"normalize.css": "7.0.0",

View File

@@ -28,7 +28,19 @@ export function searchInbound(data1, data2, data3) {
method: 'post',
data: {
type: '1',
name: '库存管理_入库记录_查询',
name: '库存管理_入库记录_采购部查询',
param: '采购合同流水号=' + data1 + '&到货时间=' + data2 + '&仓库流水号=' + data3
}
})
}
// 入库记录查询
export function searchShopInbound(data1, data2, data3) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '库存管理_入库记录_车间采购查询',
param: '采购合同流水号=' + data1 + '&到货时间=' + data2 + '&仓库流水号=' + data3
}
})

View File

@@ -109,6 +109,18 @@ export function deleteReplacementCard(Number) {
}
})
}
// 补投删除
export function deleteCardDetail(Number) {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '库存管理_补投单_补投单明细删除',
param: '补投单明细流水号=' + Number
}
})
}
// 补投增加
export function addCardDetail(Number, project, machine, team, name, mass, locate, parttype, reason) {
return request({
@@ -121,3 +133,16 @@ export function addCardDetail(Number, project, machine, team, name, mass, locate
}
})
}
// 补投单明细查询
export function searchCardDetail(cardNumber) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '库存管理_仓库补投_补投单明细_查询',
param: '补投单流水号=' + cardNumber
}
})
}

View File

@@ -0,0 +1,13 @@
import request from '@/utils/request'
// 初始化 项目名称
export function getEntryNameValue() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间生产管理工艺_传递后_项目名称_查询数据',
param: '考核状态=5=int'
}
})
}

View File

@@ -129,7 +129,7 @@ export function initPerson() {
data: {
type: '1',
name: '人事档案管理_人员_部门与人员_查询数据_根据部门编号',
param: '考核部门编号=17'
param: '考核部门编号=9'
}
})
}

View File

@@ -18,8 +18,8 @@ export function selectBidBond() {
data: {
type: '1',
name: '投标保证金管理_投标保证金查询',
param: '是否收回_check=' + arguments[0] + '&是否收回=' + arguments[1] + '&保金类型_check=' + arguments[2] + '&保金类型=' + arguments[3] + '&投标人_check=' + arguments[4] + '&投标人=' + arguments[5] + '&招标企业_check=' + arguments[6] + '&招标企业=' + arguments[7] + '&开始日期_check=' + arguments[8] + '&开始日期=' + arguments[9] + '&结束日期_check=' + arguments[10] + '&结束日期=' + arguments[11],
Pagination: arguments[12] + '&' + arguments[13]
param: '保金类型_check=' + arguments[0] + '&保金类型=' + arguments[1] + '&投标人_check=' + arguments[2] + '&投标人=' + arguments[3] + '&招标企业_check=' + arguments[4] + '&招标企业=' + arguments[5] + '&开始日期_check=' + arguments[6] + '&开始日期=' + arguments[7] + '&结束日期_check=' + arguments[8] + '&结束日期=' + arguments[9],
Pagination: arguments[10] + '&' + arguments[11]
}
})
}
@@ -90,7 +90,7 @@ export function addBidBond() {
data: {
type: '2',
name: '投标保证金管理_投标保证金信息_增加',
param: '招标企业=' + arguments[0] + '&联系人=' + arguments[1] + '&联系电话=' + arguments[2] + '&保证金金额=' + arguments[3] + '&人员流水号=' + arguments[4] + '&保证金类型流水号=' + arguments[5] + '&投标日期=' + arguments[6] + '&预计收回日期=' + arguments[7] + '&备注=' + arguments[8] + '&提前X天提醒=' + arguments[9]
param: '招标企业=' + arguments[0] + '&联系人=' + arguments[1] + '&联系电话=' + arguments[2] + '&保证金金额=' + arguments[3] + '&人员流水号=' + arguments[4] + '&保证金类型流水号=' + arguments[5] + '&投标日期=' + arguments[6] + '&备注=' + arguments[7] + '&提前X天提醒=' + arguments[8]
}
})
}
@@ -101,7 +101,7 @@ export function editBidBond() {
data: {
type: '2',
name: '投标保证金管理_投标保证金信息_修改',
param: '招标企业=' + arguments[0] + '&联系人=' + arguments[1] + '&联系电话=' + arguments[2] + '&保证金金额=' + arguments[3] + '&人员流水号=' + arguments[4] + '&保证金类型流水号=' + arguments[5] + '&投标日期=' + arguments[6] + '&预计收回日期=' + arguments[7] + '&备注=' + arguments[8] + '&提前X天提醒=' + arguments[9] + '&招标保证金流水号=' + arguments[10]
param: '招标企业=' + arguments[0] + '&联系人=' + arguments[1] + '&联系电话=' + arguments[2] + '&保证金金额=' + arguments[3] + '&人员流水号=' + arguments[4] + '&保证金类型流水号=' + arguments[5] + '&投标日期=' + arguments[6] + '&备注=' + arguments[7] + '&提前X天提醒=' + arguments[8] + '&招标保证金流水号=' + arguments[9]
}
})
}
@@ -116,3 +116,45 @@ export function delBidBond() {
}
})
}
export function winningBid() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '投标保证金管理_投标保证金信息_投标结果',
param: '招标保证金流水号=' + arguments[0] + '&投标结果=' + arguments[1] + '&公布日期=' + arguments[2] + '&中标服务费=' + arguments[3]
}
})
}
export function executionProgressID() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '合同信息管理_执行进度_查询'
}
})
}
export function intProject() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '合同信息管理_投标保证金转履约保证金_项目名称查询'
}
})
}
export function submitPerformanceBond() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '合同信息管理_投标保证金转履约保证金',
param: '招标保证金流水号=' + arguments[0] + '&项目流水号=' + arguments[1] + '&保证金金额=' + arguments[2] + '&保证金类型流水号=' + arguments[3] + '&收回条件=' + arguments[4] + '&截止时间=' + arguments[5]
}
})
}

View File

@@ -261,7 +261,7 @@ export function selectBidBond() {
data: {
type: '1',
name: '投标保证金管理_投标保证金查询',
param: '是否收回_check=' + arguments[0] + '&是否收回=' + arguments[1] + '&保金类型_check=' + arguments[2] + '&保金类型=' + arguments[3] + '&投标人_check=' + arguments[4] + '&投标人=' + arguments[5] + '&招标企业_check=' + arguments[6] + '&招标企业=' + arguments[7] + '&开始日期_check=' + arguments[8] + '&开始日期=' + arguments[9] + '&结束日期_check=' + arguments[10] + '&结束日期=' + arguments[11]
param: '保金类型_check=' + arguments[0] + '&保金类型=' + arguments[1] + '&投标人_check=' + arguments[2] + '&投标人=' + arguments[3] + '&招标企业_check=' + arguments[4] + '&招标企业=' + arguments[5] + '&开始日期_check=' + arguments[6] + '&开始日期=' + arguments[7] + '&结束日期_check=' + arguments[8] + '&结束日期=' + arguments[9]
}
})
}

View File

@@ -163,7 +163,7 @@ export function addInvoice() {
data: {
type: '2',
name: '发货管理_发货单_增加数据',
param: '装箱单编号=' + arguments[0] + '&车辆牌号=' + arguments[1] + '&运输状态=' + arguments[2] + '&收货地址流水号=' + arguments[3] + '&发货日期=' + arguments[4]
param: '装箱单编号=' + arguments[0] + '&车辆牌号=' + arguments[1] + '&运输状态=' + arguments[2] + '&收货地址流水号=' + arguments[3] + '&发货日期=' + arguments[4] + '&运费=' + arguments[5]
}
})
}
@@ -185,7 +185,7 @@ export function editInvoice() {
data: {
type: '2',
name: '发货管理_发货单_修改数据',
param: '车辆牌号=' + arguments[0] + '&运输状态=' + arguments[1] + '&收货地址流水号=' + arguments[2] + '&发货日期=' + arguments[3] + '&发货单编号=' + arguments[4]
param: '车辆牌号=' + arguments[0] + '&运输状态=' + arguments[1] + '&收货地址流水号=' + arguments[2] + '&发货日期=' + arguments[3] + '&发货单编号=' + arguments[4] + '&运费=' + arguments[5]
}
})
}
@@ -255,3 +255,14 @@ export function submitRremove() {
}
})
}
export function selectDelivery() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '发货管理_发货单二维码扫描查询',
param: '发货单编号=' + arguments[0]
}
})
}

View File

@@ -10,14 +10,14 @@ export function initProject() {
}
})
}
export function searchTable1(pageCurrent, pageSize, num1, num2) {
export function searchTable1(pageCurrent, pageSize, num1) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '安全保证金管理_安全保证金信息查询',
param: '项目流水号=' + num1 + '=int&查询类型=' + num2 + '=int',
param: '项目流水号=' + num1 + '=int',
Pagination: pageCurrent + '&' + pageSize
}
})
@@ -41,7 +41,7 @@ export function addSafetyMargin() {
data: {
type: '2',
name: '安全保证金管理_安全保证金信息_增加',
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&交付日期=' + arguments[2] + '&提前X天提醒=' + arguments[3] + '&预计收回日期=' + arguments[4] + '&备注=' + arguments[5]
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&交付日期=' + arguments[2] + '&提前X天提醒=' + arguments[3] + '&执行进度流水号=' + arguments[4] + '&备注=' + arguments[5]
}
})
}
@@ -52,7 +52,7 @@ export function editSafetyMargin() {
data: {
type: '2',
name: '安全保证金管理_安全保证金信息_修改',
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&交付日期=' + arguments[2] + '&提前X天提醒=' + arguments[3] + '&预计收回日期=' + arguments[4] + '&备注=' + arguments[5] + '&安全保证金流水号=' + arguments[6]
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&交付日期=' + arguments[2] + '&提前X天提醒=' + arguments[3] + '&执行进度流水号=' + arguments[4] + '&备注=' + arguments[5] + '&安全保证金流水号=' + arguments[6]
}
})
}
@@ -74,7 +74,7 @@ export function delSafetyMargin() {
data: {
type: '2',
name: '安全保证金管理_安全保证金信息_删除',
param: '安全保证金流水号=' + arguments[0]
param: '安全保证金流水号=' + arguments[0] + '&项目流水号=' + arguments[1]
}
})
}
@@ -112,3 +112,25 @@ export function TakeBack() {
}
})
}
export function searchTableDataProject(pageCurrent, pageSize, num1, num2, num3, num4, num5, num6) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '合同信息管理_安全保证金_合同信息统计_查询',
param: '项目流水号=' + num1 + '=int&项目流水号_check=' + num2 + '=int&开始日期_check=' + num3 + '=int&结束日期_check=' + num4 + '=int&开始日期=' + num5 + '=date&结束日期=' + num6 + '=date',
Pagination: pageCurrent + '&' + pageSize
}
})
}
export function executionProgressID() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '合同信息管理_执行进度_查询'
}
})
}

View File

@@ -7,7 +7,7 @@ export function initArrivalStateContact() {
method: 'post',
data: {
type: '1',
name: '采购管理_到货情况_查询数据'
name: '采购管理_采购请款表_查询数据'
}
})
}

View File

@@ -11,15 +11,14 @@ export function initContract() {
}
})
}
// 初始化采购员 考核部门编号采购部16
// 初始化采购员
export function initBuyer() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '人事档案管理_人员_部门与人员_查询数据_根据部门编号',
param: '考核部门编号=16'
name: '人事档案管理_人员与角色_查询数据_采购员'
}
})
}

View File

@@ -11,27 +11,14 @@ export function initContract() {
}
})
}
// 初始化采购员(考核部门编号采购部16)
// 初始化采购员
export function initBuyer() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '人事档案管理_人员_部门与人员_查询数据_根据部门编号',
param: '考核部门编号=16'
}
})
}
// 查询供应商
export function searchSupplier(check1, value1, check2, value2, check3, value3, check4, value4, check5, value5, check6, value6, check7, value7, check8, value8, check9, value9, check10, value10, check11, value11, check12, value12) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '采购管理_供应商_查询数据_根据条件',
param: '供应商名称_check=' + check1 + '&供应商名称=' + value1 + '&企业性质_check=' + check2 + '&企业性质=' + value2 + '&创立日期_check=' + check3 + '&创立日期=' + value3 + '&注册资本_check=' + check4 + '&注册资本=' + value4 + '&税号_check=' + check5 + '&税号=' + value5 + '&电子信箱_check=' + check6 + '&电子信箱=' + value6 + '&地址_check=' + check7 + '&地址=' + value7 + '&帐号_check=' + check8 + '&帐号=' + value8 + '&开户行_check=' + check9 + '&开户行=' + value9 + '&电话号码_check=' + check10 + '&电话号码=' + value10 + '&传真_check=' + check11 + '&传真=' + value11 + '&货期_check=' + check12 + '&货期=' + value12
name: '人事档案管理_人员与角色_查询数据_采购员'
}
})
}

View File

@@ -34,15 +34,14 @@ export function initProject() {
}
})
}
// 初始化采购员 考核部门编号采购部16
// 初始化采购员
export function initBuyer() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '人事档案管理_人员_部门与人员_查询数据_根据部门编号',
param: '考核部门编号=16'
name: '人事档案管理_人员与角色_查询数据_采购员'
}
})
}

View File

@@ -1,81 +1,83 @@
<template>
<div class="app-container">
<el-card>
<span>采购合同编号:</span>
<el-select v-model="ContractValue" filterable clearable size="small" placeholder="采购合同" style="width: 200px">
<el-option
v-for="item in Contract"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span class="demonstration">入库日期</span>
<el-date-picker
v-model="InboundDate"
type="date"
size="small"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期"/>
<span>仓库:</span>
<el-select v-model="InventoryValue" filterable clearable size="small" placeholder="仓库" style="width: 200px">
<el-option
v-for="item in Inventory"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button size="small" type="success" icon="el-icon-search" style="margin: 0 0 0 10px" @click="searchPartinfo()">查询</el-button><br>
</el-card>
<el-card>
<el-table
v-loading="listLoading"
:data="tableData"
border
style="width: 100%;"
height="400">
<el-table-column
label="序号"
align="center"
type="index"
width="50"/>
<el-table-column label="存货编码" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.采购合同编号 }}
</template>
</el-table-column>
<el-table-column label="存货名称" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料名称 }}
</template>
</el-table-column>
<el-table-column label="规格型号" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料型号 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.实际到货数量 }}
</template>
</el-table-column>
<el-table-column label="本币单价" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.单价 }}
</template>
</el-table-column>
<el-table-column label="本币单价" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.单价 * scope.row.实际到货数量 }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" min-width="120">
<template slot-scope="scope" align="center">
<el-button size="small" type="warning" icon="el-icon-sort-up" style="margin: 0 0 0 0px" @click="selecting(scope.row)">选入</el-button>
</template>
</el-table-column>
</el-table>
</el-card>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="采购部采购" name="first">
<el-card>
<span>采购合同编号:</span>
<el-select v-model="ContractValue" filterable clearable size="small" placeholder="采购合同" style="width: 200px">
<el-option
v-for="item in Contract"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<span class="demonstration">入库日期</span>
<el-date-picker
v-model="InboundDate"
type="date"
size="small"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期"/>
<span>仓库:</span>
<el-select v-model="InventoryValue" filterable clearable size="small" placeholder="仓库" style="width: 200px">
<el-option
v-for="item in Inventory"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
<el-button size="small" type="success" icon="el-icon-search" style="margin: 0 0 0 10px" @click="searchPartinfo()">查询</el-button>
<el-button size="small" type="primary" icon="el-icon-download" style="margin: 0 0 0 10px" @click="searchPartinfo()">导出</el-button>
</el-card>
<el-card>
<el-table
v-loading="listLoading"
:data="tableData"
size="mini"
border
style="width: 100%;"
height="400">
<el-table-column
label="序号"
align="center"
type="index"
width="50"/>
<el-table-column label="存货名称" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料名称 }}
</template>
</el-table-column>
<el-table-column label="规格型号" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.物料型号 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.实际到货数量 }}
</template>
</el-table-column>
<el-table-column label="本币单价" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.单价 }}
</template>
</el-table-column>
<el-table-column label="本币单价" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.单价 * scope.row.实际到货数量 }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" min-width="120">
<template slot-scope="scope" align="center">
<el-button size="small" type="warning" icon="el-icon-sort-up" style="margin: 0 0 0 0px" @click="selecting(scope.row)">选入</el-button>
</template>
</el-table-column>
</el-table>
</el-card>
</el-tab-pane>
<el-tab-pane label="车间采购" name="second">配置管理</el-tab-pane>
</el-tabs>
</div>
</template>
@@ -91,7 +93,8 @@ export default {
InventoryValue: '',
InboundDate: '',
listLoading: '',
tableData: []
tableData: [],
activeName: 'first'
}
},
computed: {

View File

@@ -42,7 +42,7 @@
</el-card>
<el-card v-show="altershow">
<el-table
v-loading="loading1"
v-loading="loading"
:data="tableData1"
border
style="width: 100%;max-height: 300px;"
@@ -103,10 +103,10 @@
</el-table>
<div class="block" style="margin-top: 10px;">
<el-pagination
:current-page="pageCurrent1"
:current-page="pageCurrent"
:page-sizes="[10, 20, 30, 40]"
:page-size="pageSize1"
:total="total1"
:page-size="pageSize"
:total="total"
style="display:inline-block;width:50%"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChange"
@@ -115,13 +115,13 @@
</el-card>
<el-card v-show="errorshow">
<el-table
v-loading="loading1"
v-loading="loading2"
:data="tableData2"
border
style="width: 100%;max-height: 300px;"
height="300px"
size="mini"
@selection-change="handleSelectionChange">
@selection-change="handleSelectionChange2">
<el-table-column type="selection" align="center" width="55"/>
<el-table-column label="项目名称" min-width="100" align="center">
<template slot-scope="scope">
@@ -143,7 +143,7 @@
{{ scope.row.名称 }}
</template>
</el-table-column>
<el-table-column label="异常数量" min-width="50" align="center">
<el-table-column label="异常数量" min-width="100" align="center">
<template slot-scope="scope">
{{ scope.row.异常数量 }}
</template>
@@ -183,7 +183,7 @@
</el-card>
<el-card>
<span>补投单号:</span>
<el-input v-model="repleacecard" placeholder="补投单号" size="small" clearable style="width: 150px"/>
<el-input v-model="repleacecard" placeholder="补投单号" size="small" clearable style="width: 200px"/>
<span>仓库:</span>
<el-select v-model="HouseNumber" placeholder="请选择仓库" size="small" @change="searchDemo();payMethodChange()">
<el-option
@@ -209,16 +209,10 @@
size="small"
icon="el-icon-download"
style="margin-left: 10px"
@click="addMateriel">选入物料</el-button>
@click="submitCardDetail">选入物料</el-button>
</el-card>
<el-card>
<el-table v-loading="" :data="tableData3" border style="max-height: 300px;" height="300px" size="mini" highlight-current-row @row-click="searchTable3">
<el-table-column label="补投单状态" align="center" width="80" fixed="left">
<template slot-scope="scope">
<el-tag v-if="parseInt(scope.row.是否传递)===0" type="warning" size="small">未传递</el-tag>
<el-tag v-if="parseInt(scope.row.是否传递)===1" type="primary" size="small">已传递</el-tag>
</template>
</el-table-column>
<el-table v-loading="loading3" :data="tableData3" border style="max-height: 300px;" height="300px" size="mini" highlight-current-row @row-click="searchTable4">
<el-table-column label="补投单编号" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.补投单编号 }}
@@ -242,7 +236,7 @@
<el-table-column label="操作" align="center" width="280" fixed="right">
<template slot-scope="scope">
<el-button :disabled="parseInt(scope.row.离线合同状态) === 1" type="danger" size="mini" icon="el-icon-delete" @click="deleteOfflineContract(scope.row)">作废</el-button>
<el-button type="warning" size="mini" icon="el-icon-download" @click="doneRequestCard()">传递</el-button>
<el-button type="warning" size="mini" icon="el-icon-download" @click="doneRequestCard()">导出</el-button>
</template>
</el-table-column>
</el-table>
@@ -257,35 +251,50 @@
@size-change="handleSizeChange3"
@current-change="handleCurrentChange3"/>
</div>
<el-table v-loading="" :data="tableData4" border style="max-height: 300px;" height="300px" size="mini">
<el-table-column label="离线请购单编号" align="center" min-width="150">
<el-table v-loading="loading4" :data="tableData4" border style="max-height: 300px;" height="300px" size="mini">
<el-table-column label="补投单编号" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.请购单编号 }}
{{ scope.row.补投单编号 }}
</template>
</el-table-column>
<el-table-column label="物料名称" align="center" min-width="150">
<el-table-column label="项目名称" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.物料名称 }}
{{ scope.row.项目名称 }}
</template>
</el-table-column>
<el-table-column label="物料规格" align="center" min-width="100">
<el-table-column label="机床图号" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.物料规格 }}
{{ scope.row.机床图号 }}
</template>
</el-table-column>
<el-table-column label="物料型号" align="center" min-width="200">
<el-table-column label="号" align="center" min-width="200">
<template slot-scope="scope">
{{ scope.row.物料型 }}
{{ scope.row. }}
</template>
</el-table-column>
<el-table-column label="名称" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.名称 }}
</template>
</el-table-column>
<el-table-column label="数量" align="center" min-width="100">
<template slot-scope="scope">
<el-input v-model="scope.row.数量" :disabled="disable" size="mini" style="width:70px"/>
{{ scope.row.数量 }}
</template>
</el-table-column>
<el-table-column label="仓库名称" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.仓库名称 }}
</template>
</el-table-column>
<el-table-column label="类型名称" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.类型名称 }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" min-width="100">
<template slot-scope="scope">
<el-button :disabled="disable" type="danger" size="mini" icon="el-icon-delete" @click="deleteMateriel(scope.row)">移除</el-button>
<el-button :disabled="disable" type="danger" size="mini" icon="el-icon-delete" @click="deleteDetail(scope.row)">移除</el-button>
</template>
</el-table-column>
</el-table>
@@ -294,7 +303,7 @@
</template>
<script>
import { initProject, searchmachine, searchTeam, searchAlterRecord, searchErrorRecord, searchReplacementCard, addReplacementCard, initWarehouse } from '@/api/Inventory/PartsReplacement'
import { initProject, searchmachine, searchTeam, searchAlterRecord, searchErrorRecord, searchReplacementCard, addReplacementCard, initWarehouse, addCardDetail, searchCardDetail, deleteReplacementCard, deleteCardDetail } from '@/api/Inventory/PartsReplacement'
import { mapGetters } from 'vuex'
export default {
data() {
@@ -309,18 +318,18 @@ export default {
tableData2: [],
tableData3: [],
tableData4: [],
listLoading: false,
listLoading2: false,
listLoading3: false,
listLoading4: false,
PageCurrent: 1,
PageSize: 10,
loading: false,
loading2: false,
loading3: false,
loading4: false,
pageCurrent: 1,
pageSize: 10,
total: 0,
PageCurrent2: 1,
PageSize2: 10,
pageCurrent2: 1,
pageSize2: 10,
total2: 0,
PageCurrent3: 1,
PageSize3: 10,
pageCurrent3: 1,
pageSize3: 10,
total3: 0,
ProjectValue_check: '',
MachineValue_check: '',
@@ -332,7 +341,16 @@ export default {
House: [],
radio: '',
altershow: true,
errorshow: false
errorshow: false,
projectGroup: [],
machineGroup: [],
partGroup: [],
nameGroup: [],
numberGroup: [],
locateGroup: [],
partType: [],
reasonGroup: [],
cardNumber: ''
}
},
computed: {
@@ -361,6 +379,46 @@ export default {
}
})
},
handleSelectionChange(val) {
this.projectGroup = []
this.machineGroup = []
this.partGroup = []
this.nameGroup = []
this.numberGroup = []
this.locateGroup = []
this.partType = []
this.reasonGroup = []
for (let i = 0; i < val.length; i++) {
this.projectGroup.push(val[i].项目流水号)
this.machineGroup.push(val[i].机床流水号)
this.partGroup.push(val[i].组件流水号)
this.nameGroup.push(val[i].名称)
this.numberGroup.push(val[i].数量)
this.locateGroup.push(val[i].货位流水号)
this.partType.push(val[i].零件类型)
this.reasonGroup.push(val[i].原因)
}
},
handleSelectionChange2(val) {
this.projectGroup = []
this.machineGroup = []
this.partGroup = []
this.nameGroup = []
this.numberGroup = []
this.locateGroup = []
this.partType = []
this.reasonGroup = []
for (let i = 0; i < val.length; i++) {
this.projectGroup.push(val[i].项目流水号)
this.machineGroup.push(val[i].机床流水号)
this.partGroup.push(val[i].组件流水号)
this.nameGroup.push(val[i].名称)
this.numberGroup.push(val[i].异常数量)
this.locateGroup.push(val[i].货位流水号)
this.partType.push(val[i].零件类型)
this.reasonGroup.push(val[i].异常原因)
}
},
fetchData() {
this.getSelect(initProject, ['项目名称', '项目流水号'], 'Project') // 项目名称
},
@@ -395,7 +453,7 @@ export default {
},
// 查询修改记录
getAlterRecord() {
this.listLoading = true
this.loading = true
this.tableData1 = []
if (this.ProjectValue === '') {
this.ProjectValue_check = 0
@@ -412,16 +470,18 @@ export default {
} else {
this.GroupNumValue_check = 1
}
searchAlterRecord(this.PageCurrent, this.PageSize, this.ProjectValue_check, this.ProjectValue, this.MachineValue_check, this.MachineValue, this.GroupNumValue_check, this.GroupNumValue).then(response => {
searchAlterRecord(this.pageCurrent, this.pageSize, this.rojectValue_check, this.ProjectValue, this.MachineValue_check, this.MachineValue, this.GroupNumValue_check, this.GroupNumValue).then(response => {
this.tableData1 = response.data.rows
console.log(response.data)
console.log(this.tableData1)
this.total = response.data.total
this.listLoading = false
this.loading = false
})
this.getErrorRecord()
},
// 查询异常记录
getErrorRecord() {
this.listLoading2 = true
this.loading2 = true
this.tableData2 = []
if (this.ProjectValue === '') {
this.ProjectValue_check = 0
@@ -438,54 +498,67 @@ export default {
} else {
this.GroupNumValue_check = 1
}
searchErrorRecord(this.PageCurrent2, this.PageSize2, this.ProjectValue_check, this.ProjectValue, this.MachineValue_check, this.MachineValue, this.GroupNumValue_check, this.GroupNumValue).then(response => {
searchErrorRecord(this.pageCurrent2, this.pageSize2, this.ProjectValue_check, this.ProjectValue, this.MachineValue_check, this.MachineValue, this.GroupNumValue_check, this.GroupNumValue).then(response => {
this.tableData2 = response.data.rows
this.total2 = response.data.total
this.listLoading2 = false
this.loading2 = false
})
},
handleSizeChange(val) {
this.PageCurrent = 1
this.PageSize = val
this.searchPartinfo()
this.getAlterRecord()
},
handleCurrentChange(val) {
this.PageCurrent = val
this.searchPartinfo()
this.getAlterRecord()
},
handleSizeChange2(val) {
this.PageCurrent2 = 1
this.PageSize2 = val
this.searchPartinfo()
this.getErrorRecord()
},
handleCurrentChange2(val) {
this.PageCurrent2 = val
this.searchPartinfo()
this.getErrorRecord()
},
handleSizeChange3(val) {
this.PageCurrent3 = 1
this.PageSize3 = val
this.getReplacement()
},
handleCurrentChange3(val) {
this.PageCurrent3 = val
this.getReplacement()
},
// 查询补投单
getReplacement() {
this.listLoading3 = true
this.loading3 = true
this.tableData3 = []
if (this.repleacecard === '') {
this.repleacecard_check = 0
} else {
this.repleacecard_check = 1
}
searchReplacementCard(this.PageCurrent3, this.PageSize3, this.repleacecard_check, this.repleacecard).then(response => {
searchReplacementCard(this.pageCurrent3, this.pageSize3, this.repleacecard_check, this.repleacecard).then(response => {
this.tableData3 = response.data.rows
this.total3 = response.data.total
this.listLoading3 = false
this.loading3 = false
})
},
addCard() {
addReplacementCard(this.people, this.HouseNumber).then(response => {
if (response.data[0].result === '1') {
this.$message.success('增加成功')
this.getReplacement()
} else {
this.$message.error('删除失败')
}
})
if (this.HouseNumber === '') {
this.$message.error('请选择仓库')
} else {
addReplacementCard(this.people, this.HouseNumber).then(response => {
if (response.data[0].result === '1') {
this.$message.success('增加成功')
this.getReplacement()
} else {
this.$message.error('删除失败')
}
})
}
},
BasicShow() {
if (this.radio === 1) {
@@ -495,6 +568,76 @@ export default {
this.altershow = false
this.errorshow = true
}
},
searchTable4(row) {
this.cardNumber = row.补投单流水号
this.getdetail()
},
submitCardDetail() {
if (this.cardNumber === '') {
this.$message.error('请选择领料单')
} else {
addCardDetail(this.cardNumber, this.projectGroup, this.machineGroup, this.partGroup, this.nameGroup, this.numberGroup, this.locateGroup, this.partType, this.reasonGroup, this.CardDetail).then(response => {
if (response.data[0].result === '1') {
this.$message.success('增加成功')
this.searchTable4()
} else {
this.$message.error('增加失败')
}
})
}
},
// 查询补投单明细
getdetail() {
this.loading4 = true
searchCardDetail(this.cardNumber).then(response => {
this.tableData4 = response.data
this.loading4 = false
})
},
// 删除补投单
deleteOfflineContract(row) { // 删除请购单
this.$confirm('确定删除该补投单?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteReplacementCard(row.补投单流水号).then(response => {
if (response.data[0].result === '1') {
this.$message.success('删除成功')
this.getReplacement()
} else {
this.$message.error('数据占用')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
// 删除补投单明细
deleteDetail(row) {
this.$confirm('确定删除该补投单明细?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteCardDetail(row.补投单明细流水号).then(response => {
if (response.data[0].result === '1') {
this.$message.success('删除成功')
this.getdetail()
} else {
this.$message.error('删除失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
}
}
}

View File

@@ -2,8 +2,10 @@
<div class="app-container">
<!--顶栏结构-->
<el-card>
<el-radio v-model="radio" label="1">未收回</el-radio>
<el-radio v-model="radio" label="2">已收回</el-radio>
<!--<el-radio v-model="radio" label="1">未收回</el-radio>-->
<!--<el-radio v-model="radio" label="2">已收回</el-radio>-->
<span style="margin-left: 10px">招标企业</span>
<el-input v-model="TenderingEnterprise" clearable size="small" style="width:140px" placeholder="请输入招标企业"/>
<span style="margin-left: 20px">保金类型</span>
<el-select v-model="TypeOfGoldDepositValue" clearable filterable placeholder="请选择" size="small" style="margin-left: 10px;width: 100px">
<el-option
@@ -14,8 +16,6 @@
</el-select>
<span style="margin-left: 10px">投标人</span>
<el-input v-model="Bidder" clearable size="small" style="width:100px" placeholder="请选择" readonly @dblclick.native="dialogFormVisiblePeople = true;flag2 = 1" @clear="clear()"/>
<span style="margin-left: 10px">招标企业</span>
<el-input v-model="TenderingEnterprise" clearable size="small" style="width:140px" placeholder="请输入招标企业"/>
<span style="margin-left: 10px">开始日期</span>
<el-date-picker
v-model="startTime"
@@ -35,25 +35,30 @@
<el-button type="success" icon="el-icon-search" size="small" style="margin-left: 10px" @click="PageSize = 10;PageCurrent = 1;fetchTableData1()">查询</el-button>
<el-button type="primary" icon="el-icon-circle-plus-outline" size="small" style="margin-left: 10px;margin-right: 15px" @click="addBidBond();flag1 = 2">增加</el-button>
</el-card>
<el-card>
<span>预警颜色说明</span>
<el-tag type="info">未到时间</el-tag>
<el-tag type="warning">即将拖期</el-tag>
<el-tag type="danger">已拖期</el-tag>
<el-tag type="success">已收回</el-tag>
<el-tag style="background-color: lightgrey;color: #666666">履约金</el-tag>
</el-card>
<!--投标保证金表格-->
<el-card>
<el-table
v-loading="tableData1Loading"
:row-style="tableRowClassName"
:data="tableData1"
style="width: 100%"
height="600"
border>
<el-table-column align="center" label="招标企业" width="300">
border
size="mini">
<el-table-column align="center" label="投标结果" width="190">
<template slot-scope="scope">
<el-radio-group v-model="scope.row.投标结果" @change="changeTenderResult(scope.row)">
<el-radio :disabled="scope.row.是否禁用已中标" label="1">已中标</el-radio>
<el-radio :disabled="scope.row.是否禁用未中标" label="2">未中标</el-radio>
</el-radio-group>
</template>
</el-table-column>
<el-table-column align="center" label="公布日期" width="100">
<template slot-scope="scope">
{{ !scope.row.公布日期 ? '未公布' : scope.row.公布日期.substring(0 , scope.row.公布日期.length - 8) }}
</template>
</el-table-column>
<el-table-column align="center" label="招标企业" width="180">
<template slot-scope="scope">
{{ scope.row.招标企业 }}
</template>
@@ -70,7 +75,28 @@
</el-table-column>
<el-table-column align="center" label="保证金金额" width="100">
<template slot-scope="scope">
{{ scope.row.保证金金额 }}
<el-tag style="width: 80px" size="small">{{ scope.row.保证金金额 }}</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="中标服务费" width="100">
<template slot-scope="scope">
{{ scope.row.中标服务费 }}
</template>
</el-table-column>
<el-table-column align="center" label="转履约保证金金额" width="150">
<template slot-scope="scope">
{{ scope.row.转履约保证金金额 }}
</template>
</el-table-column>
<el-table-column align="center" label="应收回金额" width="100">
<template slot-scope="scope">
{{ scope.row.应收回金额 }}
</template>
</el-table-column>
<el-table-column align="center" label="实收回金额" width="100">
<template slot-scope="scope">
<el-tag v-if="parseInt(scope.row.是否收回) === 2" size="small" type="success" style="width: 66px">{{ scope.row.应收回金额 }}</el-tag>
<el-tag v-else slot="reference" type="danger" size="small" style="width: 66px">未收回</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="投标人" width="100">
@@ -85,25 +111,26 @@
</el-table-column>
<el-table-column align="center" label="投标日期" width="150">
<template slot-scope="scope">
{{ scope.row.投标日期 }}
{{ scope.row.投标日期.substring(0, scope.row.投标日期.length - 8) }}
</template>
</el-table-column>
<el-table-column align="center" label="计划收回日期" width="150">
<template slot-scope="scope">
{{ scope.row.预计收回日期 }}
{{ !scope.row.预计收回日期 ? '结果未公布' : scope.row.预计收回日期.substring(0, scope.row.预计收回日期.length - 8) }}
</template>
</el-table-column>
<el-table-column align="center" label="实际收回日期" width="150">
<template slot-scope="scope">
{{ scope.row.实际收回日期 }}
{{ !scope.row.实际收回日期 ? '未收回' : scope.row.实际收回日期.substring(0, scope.row.实际收回日期.length - 8) }}
</template>
</el-table-column>
<el-table-column align="center" label="状态" width="120">
<template slot-scope="scope">
<div v-if="scope.row.状态 === '0'">未到预警时间</div>
<div v-else-if="scope.row.状态 === '1'">即将拖期</div>
<div v-else-if="scope.row.状态 === '2'">已拖期</div>
<div v-else >已收回</div>
<el-tag v-if="scope.row.预计收回日期===''||scope.row.预计收回日期===null" slot="reference" size="small" style="width: 66px">未公布</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&&scope.row.预计收回日期!==null&&parseInt(scope.row.是否收回)===2" slot="reference" type="success" size="small" style="width: 66px">已收回</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&&scope.row.预计收回日期!==null&&parseInt(scope.row.状态) ===0" slot="reference" type="primary" size="small" style="width: 66px">未开始</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&&scope.row.预计收回日期!==null&&parseInt(scope.row.状态) ===1" slot="reference" type="warning" size="small" style="width: 66px">即将拖期</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&&scope.row.预计收回日期!==null&&parseInt(scope.row.状态) ===2" slot="reference" type="danger" size="small" style="width: 66px">已拖期</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="备注">
@@ -126,13 +153,13 @@
icon="el-icon-edit"
@click.stop="ComplianceGold(scope.row)">履约</el-button>
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用编辑"
size="mini"
type="primary"
icon="el-icon-edit"
@click.stop="editBidBond(scope.row);flag1 = 3">编辑</el-button>
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用删除"
size="mini"
type="danger"
icon="el-icon-delete"
@@ -233,7 +260,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="保证金金额" prop="保证金金额">
<el-input v-model="form2.保证金金额" size="small" placeholder="请输入保证金金额" style="width: 200px;"/>
<el-input-number v-model="form2.保证金金额" :precision="2" :step="0.1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
</el-row>
@@ -268,26 +295,26 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划收回日期" prop="计划收回日期">
<el-date-picker
v-model="form2.计划收回日期"
style="width: 200px;"
value-format="yyyy-MM-dd"
size="small"
type="date"
placeholder="收回日期"/>
<el-form-item label="公布后X天收回" prop="提前X天提醒我">
<el-input-number v-model="form2.提前X天提醒我" :step="1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
<!--<el-col :span="12">-->
<!--<el-form-item label="计划收回日期" prop="计划收回日期">-->
<!--<el-date-picker-->
<!--v-model="form2.计划收回日期"-->
<!--style="width: 200px;"-->
<!--value-format="yyyy-MM-dd"-->
<!--size="small"-->
<!--type="date"-->
<!--placeholder="收回日期"/>-->
<!--</el-form-item>-->
<!--</el-col>-->
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="提前X天提醒我" prop="提前X天提醒我">
<el-input v-model="form2.提前X天提醒我" size="small" placeholder="提前X天提醒我" style="width: 200px;"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注" prop="备注">
<el-input v-model="form2.备注" size="small" placeholder="请输入备注" style="width: 200px;"/>
<el-input v-model="form2.备注" size="small" placeholder="请输入备注" style="width: 560px;"/>
</el-form-item>
</el-col>
</el-row>
@@ -297,19 +324,102 @@
<el-button type="primary" @click="submit('form2')"> </el-button>
</div>
</el-dialog>
<el-dialog :visible.sync="dialogTimeVisible" :show-close="false" :close-on-click-modal="false" title="请输入" center style="min-height: 300px" width="23%">
<el-form ref="Timeform" :model="Timeform" :rules="TimeRules" label-width="150px">
<el-form-item label="投标结果公布日期" prop="投标结果公布日期">
<el-date-picker
v-model="Timeform.投标结果公布日期"
style="width: 200px;"
value-format="yyyy-MM-dd"
size="small"
type="date"
placeholder="请选择结果公布日期"/>
</el-form-item>
<el-form-item label="中标服务费" prop="中标服务费">
<el-input-number :disabled="tenderResultDisabled" v-model="Timeform.中标服务费" :precision="2" :step="0.1" :max="tenderResultMax" style="width: 200px" size="small"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="callOffTime('Timeform')">取消</el-button>
<el-button type="primary" @click="submitTime('Timeform')"> </el-button>
</div>
</el-dialog>
<el-dialog :visible.sync="dialogPerformanceBondVisible" title="转履约保证金" center style="min-height: 300px" width="40%">
<el-form ref="PerformanceBondform" :model="PerformanceBondform" :rules="PerformanceBondrules" label-position="left" label-width="120px" class="demo-ruleForm">
<el-row>
<el-col :span="12">
<el-form-item label="项目名称" prop="项目名称">
<el-select v-model="PerformanceBondform.项目名称" filterable clearable placeholder="请选择项目名称" style="width: 560px" size="small">
<el-option
v-for="item in entryName"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="保证金金额" prop="保证金金额">
<el-input-number v-model="PerformanceBondform.保证金金额" :precision="2" :step="0.1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保证金类型" prop="保证金类型">
<el-select v-model="PerformanceBondform.保证金类型" filterable placeholder="请选择保证金类型" style="width: 200px" size="small">
<el-option
v-for="item in TypeOfGoldDeposit1"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="收回条件" prop="收回条件">
<el-select v-model="PerformanceBondform.收回条件" filterable placeholder="请选择收回条件" style="width: 200px" size="small">
<el-option
v-for="item in plannedTime"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="截止时间(天)" prop="截止时间">
<el-input-number v-model="PerformanceBondform.截止时间" placeholder="请输入截止时间" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="callOffPerformanceBondform('PerformanceBondform')">取消</el-button>
<el-button type="primary" @click="submitPerformanceBondform('PerformanceBondform')"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import elInput from 'element-ui/packages/input'
import { initType, selectBidBond, getTree, tree, getTablePeople, TakeBack, ComplianceGold, addBidBond, editBidBond, delBidBond } from '@/api/MarketingCenter/BidBond'
import { initType, selectBidBond, getTree, tree, getTablePeople, TakeBack, ComplianceGold, addBidBond, editBidBond, delBidBond, winningBid, executionProgressID, intProject, submitPerformanceBond } from '@/api/MarketingCenter/BidBond'
export default {
components: {
elInput
},
data() {
return {
entryName: [],
plannedTime: [],
disabled: false,
tenderResultDisabled: false,
dialogPerformanceBondVisible: false, // 转履约保证金对话框
BidBondCode: '',
MoneyTypeCode: '',
TypeOfGoldDeposit1: [],
@@ -331,8 +441,9 @@ export default {
TenderingEnterprise: '', // 招标企业
TenderingEnterprise_check: '',
time: [], // 时间区间
radio: '1',
radio: '',
tableData1: [],
tenderResultMax: null,
PageSize: 10,
PageCurrent: 1,
total: null,
@@ -342,9 +453,21 @@ export default {
peopleid: '',
peoplename: '',
dialogFormVisible1: false,
dialogTimeVisible: false,
form1: {
收回日期: ''
},
Timeform: {
投标结果公布日期: '',
中标服务费: ''
},
PerformanceBondform: {
项目名称: '',
保证金类型: 1,
收回条件: 1,
截止时间: 15,
保证金金额: ''
},
form2: {
招标企业: '',
联系人: '',
@@ -354,12 +477,23 @@ export default {
投标人: '',
投标日期: '',
计划收回日期: '',
提前X天提醒我: '',
提前X天提醒我: 15,
备注: ''
},
rules1: { // 表单验证规则
收回日期: [{ required: true, message: '请输入收回日期', trigger: 'change' }]
},
PerformanceBondrules: { // 表单验证规则
项目名称: [{ required: true, message: '请选择项目', trigger: 'change' }],
保证金类型: [{ required: true, message: '请选择保证金类型', trigger: 'change' }],
收回条件: [{ required: true, message: '请选择收回条件', trigger: 'change' }],
截止时间: [{ required: true, message: '请选择截止日期', trigger: 'change' }],
保证金金额: [{ required: true, message: '请输入保证金金额', trigger: 'change' }]
},
TimeRules: { // 表单验证规则
投标结果公布日期: [{ required: true, message: '请选择投标结果公布日期', trigger: 'change' }],
中标服务费: [{ required: true, message: '请输入中标服务费', trigger: 'change' }]
},
rules2: { // 表单验证规则
招标企业: [{ required: true, message: '请输入招标企业', trigger: 'blur' }],
联系人: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
@@ -375,11 +509,14 @@ export default {
},
created() {
this.init()
this.fetchTableData1()
},
methods: {
init() {
this.getSelect(initType, ['保证金类型', '保证金类型流水号'], 'TypeOfGoldDeposit')
this.getSelect(initType, ['保证金类型', '保证金类型流水号'], 'TypeOfGoldDeposit1')
this.getSelect(executionProgressID, ['执行进度名', '执行进度ID'], 'plannedTime')
this.getSelect(intProject, ['项目名称', '项目流水号'], 'entryName')
getTree().then(response => { // 获取人员信息树
const data = response.data
this.dataPeople = tree(data, 0)
@@ -411,27 +548,25 @@ export default {
} else {
this.endTime_check = 1
}
if (this.radio === '1') {
this.disabled = false
} else {
this.disabled = true
}
this.tableData1Loading = true
selectBidBond(1, this.radio, this.TypeOfGoldDepositValue_check, this.TypeOfGoldDepositValue, this.Bidder_check, this.peopleid, this.TenderingEnterprise_check, this.TenderingEnterprise, this.startTime_check, this.startTime, this.endTime_check, this.endTime, this.PageCurrent, this.PageSize).then(response => {
selectBidBond(this.TypeOfGoldDepositValue_check, this.TypeOfGoldDepositValue, this.Bidder_check, this.peopleid, this.TenderingEnterprise_check, this.TenderingEnterprise, this.startTime_check, this.startTime, this.endTime_check, this.endTime, this.PageCurrent, this.PageSize).then(response => {
console.log(response)
this.tableData1Loading = false
const data = response.data.rows
for (let i = 0; i < data.length; i++) {
data[i].履约金 === '1' ? data[i].是否禁用 = true : data[i].是否禁用 = false
data[i].履约金 === '1' ? data[i].是否禁用履约 = true : data[i].是否禁用履约 = false
data[i].投标日期 = data[i].投标日期.substring(0, data[i].投标日期.length - 8)
data[i].预计收回日期 = data[i].预计收回日期.substring(0, data[i].预计收回日期.length - 8)
}
if (this.radio === '2') {
for (let i = 0; i < data.length; i++) {
data[i].是否禁用 = true
data[i].投标日期 = data[i].投标日期.substring(0, data[i].投标日期.length - 8)
data[i].预计收回日期 = data[i].预计收回日期.substring(0, data[i].预计收回日期.length - 8)
data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8)
data[i].公布日期 === '' || data[i].公布日期 === null || parseInt(data[i].履约金) === 1 || parseInt(data[i].投标结果) === 2 || parseInt(data[i].是否收回) === 2 ? data[i].是否禁用履约 = true : data[i].是否禁用履约 = false
parseInt(data[i].是否收回) === 2 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 2 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
data[i].公布日期 === '' || data[i].公布日期 === null || parseInt(data[i].是否收回) === 2 ? data[i].是否禁用 = true : data[i].是否禁用 = false
if (data[i].投标结果 === '1') {
data[i].是否禁用已中标 = false
data[i].是否禁用未中标 = true
} else if (data[i].投标结果 === '2') {
data[i].是否禁用已中标 = true
data[i].是否禁用未中标 = false
} else {
data[i].是否禁用已中标 = false
data[i].是否禁用未中标 = false
}
}
this.tableData1 = data
@@ -447,22 +582,6 @@ export default {
this.PageCurrent = val
this.fetchTableData1()
},
tableRowClassName({ row }) {
if (parseInt(row.是否收回) === 2) {
return 'background: #66cc33'
} else {
if (parseInt(row.履约金) === 1) {
return 'background: lightgrey'
}
if (parseInt(row.状态) === 1) {
return 'background: #ffff66'
} else if (parseInt(row.状态) === 2) {
return 'background: #ff6666'
} else {
return ''
}
}
},
handleNodeClick(data) { // 树节点点击
this.getData(getTablePeople, 'ListPeople', data.id)
},
@@ -520,20 +639,24 @@ export default {
this.dialogFormVisible2 = false
},
ComplianceGold(row) {
this.$confirm('此操作会将此投标保证金转为履约保证金, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
ComplianceGold(row.招标保证金流水号).then(response => {
if (response.data[0].result === '1') {
this.fetchTableData1()
this.$message.success('操作成功')
} else {
this.$message.error('操作失败')
}
})
})
this.addForm('PerformanceBondform')
// this.$confirm('此操作会将此投标保证金转为履约保证金, 是否继续?', '提示', {
// confirmButtonText: '确定',
// cancelButtonText: '取消',
// type: 'warning'
// }).then(() => {
// ComplianceGold(row.招标保证金流水号).then(response => {
// if (response.data[0].result === '1') {
// this.fetchTableData1()
// this.$message.success('操作成功')
// } else {
// this.$message.error('操作失败')
// }
// })
// })
this.code = row.招标保证金流水号
this.dialogPerformanceBondVisible = true
this.PerformanceBondform.保证金金额 = row.应收回金额
},
addBidBond() {
this.addForm('form2')
@@ -541,7 +664,7 @@ export default {
this.dialogFormVisible2 = true
},
addTableData1() {
addBidBond(this.form2.招标企业, this.form2.联系人, this.form2.联系电话, this.form2.保证金金额, this.peopleid, this.form2.保证金类型, this.form2.投标日期, this.form2.计划收回日期, this.form2.备注, this.form2.提前X天提醒我).then(response => {
addBidBond(this.form2.招标企业, this.form2.联系人, this.form2.联系电话, this.form2.保证金金额, this.peopleid, this.form2.保证金类型, this.form2.投标日期, this.form2.备注, this.form2.提前X天提醒我).then(response => {
if (response.data[0].result === '1') {
this.$message.success('添加成功')
this.title = ''
@@ -565,20 +688,20 @@ export default {
this.form2.保证金类型 = parseInt(row.保证金类型流水号)
// this.MoneyTypeCode = row.保证金类型流水号
this.form2.投标日期 = row.投标日期
this.form2.计划收回日期 = row.预计收回日期
// this.form2.计划收回日期 = row.预计收回日期
this.form2.备注 = row.备注
this.form2.提前X天提醒我 = row.提前x天提醒
this.BidBondCode = row.招标保证金流水号
},
editTableData1() {
editBidBond(this.form2.招标企业, this.form2.联系人, this.form2.联系电话, this.form2.保证金金额, this.peopleid, this.form2.保证金类型, this.form2.投标日期, this.form2.计划收回日期, this.form2.备注, this.form2.提前X天提醒我, this.BidBondCode).then(response => {
editBidBond(this.form2.招标企业, this.form2.联系人, this.form2.联系电话, this.form2.保证金金额, this.peopleid, this.form2.保证金类型, this.form2.投标日期, this.form2.备注, this.form2.提前X天提醒我, this.BidBondCode).then(response => {
if (response.data[0].result === '1') {
this.$message.success('编辑成功')
this.title = ''
this.dialogFormVisible2 = false
this.fetchTableData1()
} else {
this.$message.error('编辑失败,请检查金额于提醒天数是否为数字')
this.$message.error('编辑失败')
}
})
},
@@ -588,6 +711,52 @@ export default {
this.dialogFormVisible2 = false
}
this.deleteRow(delBidBond, row.招标保证金流水号, a)
},
changeTenderResult(row) {
this.code = row.招标保证金流水号
this.tenderResultMax = row.应收回金额
if (row.投标结果 === '1') {
this.radio = '1'
this.dialogTimeVisible = true
this.tenderResultDisabled = false
} else if (row.投标结果 === '2') {
this.radio = '2'
this.dialogTimeVisible = true
this.tenderResultDisabled = true
}
},
callOffTime() {
this.dialogTimeVisible = false
this.fetchTableData1()
},
submitTime() {
winningBid(this.code, this.radio, this.Timeform.投标结果公布日期, this.Timeform.中标服务费).then(response => {
if (response.data[0].result === '1') {
this.fetchTableData1()
this.dialogTimeVisible = false
this.$message.success('操作成功')
} else {
this.$message.error('操作失败')
}
})
},
callOffPerformanceBondform() {
this.dialogPerformanceBondVisible = false
},
submitPerformanceBondform(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
submitPerformanceBond(this.code, this.PerformanceBondform.项目名称, this.PerformanceBondform.保证金金额, this.PerformanceBondform.保证金类型, this.PerformanceBondform.收回条件, this.PerformanceBondform.截止时间).then(response => {
if (response.data[0].result === '1') {
this.fetchTableData1()
this.dialogPerformanceBondVisible = false
this.$message.success('操作成功')
} else {
this.$message.error('操作失败')
}
})
}
})
}
}
}

View File

@@ -1164,7 +1164,7 @@ export default {
this.dialogFormVisibleBidding = true
},
searchBidding() {
selectBidBond(0, '', 0, '', 0, '', 1, this.enterprise, 0, '', 0, '').then(response => {
selectBidBond(0, '', 0, '', 1, this.enterprise, 0, '', 0, '').then(response => {
const data = response.data
for (let i = 0; i < data.length; i++) {
if (data[i].投标日期 !== '' && data[i].投标日期 !== null) {

View File

@@ -0,0 +1,19 @@
// 导出Excel方法表格id不加扩展名的文件名sheet名
export function exportExcelMethod(tableId, fileName, sheetName) {
tableToExcel(tableId, fileName, sheetName)
}
const tableToExcel = (function() {
const uri = 'data:application/vnd.ms-excel;base64,'
// 设置导出表格的单元格默认高度/宽度/边框样式/字体颜色/背景颜色/居中网页显示表格宽度建议1240tr/td视情况而定
const template = `<html xmlns:x="urn:schemas-microsoft-com:office:excel"><head><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><meta charset="UTF-8"><style type="text/css">table td {border: 1px solid #000000;width:100px;text-align: center;color: #000000;} th {border: 1px solid #000000;width:100px;text-align: center;color: #000000;}</style></head><body><table>{table}</table></body></html>`
const base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) }
const format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p] }) }
return function(table, filename, sheetname) {
if (!table.nodeType) table = document.getElementById(table)
const ctx = { worksheet: sheetname || 'Worksheet', table: table.innerHTML }
const aTag = document.createElement('a')
aTag.href = uri + base64(format(template, ctx))
aTag.download = filename
aTag.click()
}
})()

View File

@@ -1,7 +1,7 @@
<template>
<div>
<el-card>
<el-select v-model="projectNameValue" clearable filterable placeholder="请选择项目名称" size="small" style="margin-left: 10px;width: 200px" @change="searchPackingList();searchPackingListDetails();searchInvoice()">
<el-select v-model="projectNameValue" clearable filterable placeholder="请选择项目名称" size="small" style="margin-left: 10px;width: 200px" @change="searchPackingList();searchPackingListDetails();searchInvoice()" @clear="clearProject()">
<el-option
v-for="item in projectName"
:key="item.value"
@@ -28,6 +28,7 @@
highlight-current-row
style="width: 100%"
height="315"
size="mini"
@row-click="searchCargoBox"
>
<el-table-column align="center" label="发货单号" width="150">
@@ -65,9 +66,14 @@
{{ scope.row.运输状态 }}
</template>
</el-table-column>
<el-table-column align="center" label="运费" width="80">
<template slot-scope="scope">
{{ scope.row.运费 }}
</template>
</el-table-column>
<el-table-column align="center" label="签收人" width="80">
<template slot-scope="scope">
{{ scope.row.签收人 }}
{{ scope.row.签收人 === '' || scope.row.签收人 === null ? '未签收' : scope.row.签收人 }}
</template>
</el-table-column>
<el-table-column align="center" label="追溯码" width="150">
@@ -81,7 +87,7 @@
size="mini"
type="warning"
icon="el-icon-edit"
@click.stop="editWithdrawing(scope.row);flag1 = 4">导出</el-button>
@click.stop="exportTable()">导出</el-button>
<el-button
size="mini"
type="primary"
@@ -104,6 +110,7 @@
:file-list="fileList"
:before-upload="beforeUpload"
:on-success="onSuccess"
:limit="5"
:action="'http://localhost:8411/submit/upload2.ashx?InvoiceNum='+ invoiceNum"
list-type="picture-card">
<i class="el-icon-plus"/>
@@ -128,7 +135,8 @@
highlight-current-row
border
style="width: 100%"
height="500"
height="300"
size="mini"
@expand-change="selectMachine"
>
<el-table-column type="expand">
@@ -139,13 +147,14 @@
style="width: 600px; text-align: center"
height="300"
highlight-current-row
size="mini"
@row-click="choiceParts"
>
<el-table-column
align="center"
label="序号"
type="index"
width="100"/>
width="50"/>
<el-table-column label="代号" align="center">
<template slot-scope="scope">
{{ scope.row.代号 }}
@@ -209,7 +218,8 @@
highlight-current-row
border
style="width: 100%"
height="500"
height="300"
size="mini"
@row-click="choiceSpare"
>
<el-table-column align="center" label="序号" type="index" width="50"/>
@@ -252,7 +262,8 @@
highlight-current-row
border
style="width: 100%"
height="500"
height="300"
size="mini"
@row-click="choiceFile"
>
<el-table-column align="center" label="序号" type="index" width="50"/>
@@ -282,7 +293,7 @@
</div></el-col>
<el-col :span="2">
<div class="grid-content bg-purple">
<div style="height:554px">
<div style="height:300px">
<div>
<el-button :disabled="disabledmoveInto" round type="primary" size="small" style="margin-top: 200px;margin-left: 45px" @click="moveInto()"></el-button>
</div>
@@ -319,7 +330,7 @@
:data="tableData6"
border
style="width: 100%;margin-top: 3px"
height="500"
height="300"
highlight-current-row
@row-click="choiceGoods"
>
@@ -405,6 +416,13 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="运费" prop="运费" label-width="110px">
<el-input-number v-model="form1.运费" :precision="2" :step="0.1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="callOffInvoice('form1')">取消</el-button>
@@ -513,6 +531,69 @@
<el-button type="primary" @click="submitRremove('form3')"> </el-button>
</div>
</el-dialog>
<el-card>
<div style="width: 100%">
<table id="table" class="tg" style="table-layout: fixed; width: 1228px;margin: auto;left: 50%;right: 50%">
<colgroup>
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
<col style="width: 100px">
</colgroup>
<tr>
<th class="tg-v15n" colspan="8" style="font-size: 38px">江苏高精机电装备有限公司</th>
<th class="tg-c3ow" rowspan="2" style="text-align: center; line-height: 114px">二维码</th>
</tr>
<tr>
<td class="tg-uys7" colspan="8" style="text-align: center;font-size: 26px">{{ 装箱单名称 }}发货单</td>
</tr>
<tr>
<td class="tg-c3ow">发货单号</td>
<td class="tg-c3ow" colspan="2">{{ 发货单号 }}</td>
<td class="tg-c3ow">收货人</td>
<td class="tg-c3ow" colspan="2">{{ 收货人 }}</td>
<td class="tg-c3ow">联系电话</td>
<td class="tg-c3ow" colspan="2">{{ 联系电话 }}</td>
</tr>
<tr>
<td class="tg-c3ow">收货地址</td>
<td class="tg-c3ow" colspan="2">{{ 收货地址 }}</td>
<td class="tg-c3ow">委托车辆</td>
<td class="tg-c3ow" colspan="2">{{ 委托车辆 }}</td>
<td class="tg-c3ow">发货日期</td>
<td class="tg-c3ow" colspan="2">{{ 发货日期 }}</td>
</tr>
<tr>
<td class="tg-c3ow">序号</td>
<td class="tg-c3ow">代号</td>
<td class="tg-c3ow" colspan="2">名称</td>
<td class="tg-c3ow">规格</td>
<td class="tg-c3ow">数量</td>
<td class="tg-c3ow" colspan="2">备注</td>
<td class="tg-c3ow">确认</td>
</tr>
<tr v-for="(list, index) in table" :key="index">
<td class="tg-c3ow">{{ index + 1 }}</td>
<td class="tg-c3ow">{{ list.代号 }}</td>
<td class="tg-c3ow" colspan="2">{{ list.名称 }}</td>
<td class="tg-c3ow">{{ list.规格 }}</td>
<td class="tg-c3ow">{{ list.数量 }}</td>
<td class="tg-c3ow" colspan="2">{{ list.备注 }}</td>
<td class="tg-c3ow"/>
</tr>
<tr>
<td class="tg-c3ow" colspan="7">本清单一式两份一份请收货人清点货物一份请签收人签收后交还司机带回本公司请签收人在货物卸车后立即清点</td>
<td class="tg-c3ow">签收人签字</td>
<td class="tg-c3ow"/>
</tr>
</table>
</div>
</el-card>
</div>
</template>
@@ -520,7 +601,8 @@
import request from '@/utils/request'
// import { sleep } from '@/utils/tool'
import elInput from 'element-ui/packages/input'
import { submitRremove, searchCargoBoxDetailed, submitMoveInto, delCargoBox, addCargoBox, searchCargoBox, editInvoice, delInvoice, addInvoice, editAdress, addAdress, deleteAdress, citySearch, provinceSearch, addressSearch, searchParts, searchHost, searchSparePart, searchProjectName, searchPackingList, searchFile, searchInvoice } from '@/api//MarketingCenter/DeliveryManagement'
import { exportExcelMethod } from './exportExcel'
import { selectDelivery, submitRremove, searchCargoBoxDetailed, submitMoveInto, delCargoBox, addCargoBox, searchCargoBox, editInvoice, delInvoice, addInvoice, editAdress, addAdress, deleteAdress, citySearch, provinceSearch, addressSearch, searchParts, searchHost, searchSparePart, searchProjectName, searchPackingList, searchFile, searchInvoice } from '@/api//MarketingCenter/DeliveryManagement'
import QRCode from 'qrcode'
export default {
components: {
@@ -528,10 +610,18 @@ export default {
},
data() {
return {
table: [],
canvas: [],
show: false,
num: '',
fileList: [],
发货单号: '',
收货人: '',
收货地址: '',
联系电话: '',
委托车辆: '',
发货日期: '',
装箱单名称: '',
a: 1, // 嵌套表格交换变量
b: 1, // 嵌套表格交换变量
flag1: '', // 发货单旗帜变量
@@ -612,7 +702,8 @@ export default {
发货日期: '',
运输状态: 0,
联系人: '',
联系方式: ''
联系方式: '',
运费: ''
},
form2: {
名称: '',
@@ -628,7 +719,8 @@ export default {
联系人: [{ required: true, message: '请选择联系人', trigger: 'blur' }],
联系方式: [{ required: true, message: '请选择联系方式', trigger: 'blur' }],
发货日期: [{ required: true, message: '请选择发货日期', trigger: 'change' }],
运输状态: [{ required: true, message: '请选择运输状态' }]
运输状态: [{ required: true, message: '请选择运输状态' }],
运费: [{ required: true, message: '请输入运费' }]
},
rules2: {}
}
@@ -705,6 +797,8 @@ export default {
},
// 发货单查询
searchInvoice() {
this.cargoBoxValue = ''
this.tableData6 = []
this.tableData5Loading = true
searchInvoice(this.projectNameValue).then(response => {
const data = response.data
@@ -724,7 +818,7 @@ export default {
return data
}).then(res => {
for (let i = 0; i < res.length; i++) {
QRCode.toCanvas(document.getElementById(this.canvas[i]), 'http://192.168.1.132:8080/#/DeliveryManagement/index?id=' + res[i].发货单编号.toString(), function(error) {
QRCode.toCanvas(document.getElementById(this.canvas[i]), 'http://192.168.0.110:8080/#/DeliveryManagement/index?id=' + res[i].发货单编号.toString(), function(error) {
if (error) console.error(error)
console.log('success!')
})
@@ -747,7 +841,7 @@ export default {
this.$refs[formName].validate((valid) => {
if (valid) {
if (this.flag1 === 1) {
addInvoice(this.projectNameValue, this.form1.车辆牌号, this.form1.运输状态, this.adressNum, this.form1.发货日期).then(response => {
addInvoice(this.projectNameValue, this.form1.车辆牌号, this.form1.运输状态, this.adressNum, this.form1.发货日期, this.form1.运费).then(response => {
this.dialogFormVisible1 = false
if (response.data[0].result === '1') {
this.$message.success('添加成功')
@@ -758,7 +852,7 @@ export default {
}
})
} else {
editInvoice(this.form1.车辆牌号, this.form1.运输状态, this.adressNum, this.form1.发货日期, this.invoiceNum).then(response => {
editInvoice(this.form1.车辆牌号, this.form1.运输状态, this.adressNum, this.form1.发货日期, this.invoiceNum, this.form1.运费).then(response => {
this.dialogFormVisible1 = false
if (response.data[0].result === '1') {
this.$message.success('信息更新成功')
@@ -784,6 +878,8 @@ export default {
this.form1.联系方式 = row.联系方式
this.adressNum = row.收货地址流水号
this.invoiceNum = row.发货单编号
this.title1 = '编辑'
this.form1.运费 = row.运费
},
// 删除发货单
delInvoice(row) {
@@ -899,6 +995,18 @@ export default {
this.invoiceNum = row.发货单编号
this.getFileList()
this.getSelect(searchCargoBox, ['货箱号', '货箱号编号'], 'cargoBox', this.invoiceNum)
selectDelivery(this.invoiceNum).then(response => {
this.table = response.data
this.装箱单名称 = response.data[0].装箱单名称
this.发货单号 = response.data[0].发货单号
this.收货人 = response.data[0].联系人
this.收货地址 = response.data[0].省份 + response.data[0].市名 + response.data[0].详细地址
this.委托车辆 = response.data[0].车辆牌号
this.联系电话 = response.data[0].联系方式
if (response.data[0].发货日期 !== '' || response.data[0].发货日期 !== null) {
this.发货日期 = response.data[0].发货日期.substring(0, response.data[0].发货日期.length - 8)
}
})
},
addCargoBox() {
this.$confirm('此操作将新增货箱, 是否继续?', '提示', {
@@ -907,12 +1015,16 @@ export default {
type: 'warning'
}).then(() => {
addCargoBox(this.invoiceNum).then(response => {
console.log(response)
if (response.data[0].result === '1') {
this.$message.sucess('增加成功')
this.getSelect(searchCargoBox, ['货箱号', '货箱号编号'], 'cargoBox', this.invoiceNum)
this.$message.success('增加成功')
this.cargoBox = []
this.cargoBoxValue = ''
} else {
this.$message.error('增加失败')
}
}).then(() => {
this.getSelect(searchCargoBox, ['货箱号', '货箱号编号'], 'cargoBox', this.invoiceNum)
})
})
},
@@ -924,11 +1036,14 @@ export default {
}).then(() => {
delCargoBox(this.cargoBoxValue).then(response => {
if (response.data[0].result === '1') {
this.$message.sucess('删除成功')
this.getSelect(searchCargoBox, ['货箱号', '货箱号编号'], 'cargoBox', this.invoiceNum)
this.$message.success('删除成功')
this.cargoBox = []
this.cargoBoxValue = ''
} else {
this.$message.error('数据占用')
}
}).then(() => {
this.getSelect(searchCargoBox, ['货箱号', '货箱号编号'], 'cargoBox', this.invoiceNum)
})
})
},
@@ -1068,7 +1183,7 @@ export default {
// 生成的二维码内容,可以添加变量
this.QueryDetail = this.cargoBoxValue.toString()
var canvas = document.getElementById('canvas')
QRCode.toCanvas(canvas, 'http://192.168.1.132:8080/#/searchBoxDetails/index?id=' + this.QueryDetail, function(error) {
QRCode.toCanvas(canvas, 'http://192.168.0.110:8080/#/searchBoxDetails/index?id=' + this.QueryDetail, function(error) {
if (error) console.error(error)
console.log('success!')
})
@@ -1138,6 +1253,14 @@ export default {
} else {
this.$message.error('上传失败')
}
},
exportTable() {
exportExcelMethod('table', '发货单', 'sheet1')
},
clearProject() {
this.cargoBox = []
this.cargoBoxValue = ''
this.tableData6 = []
}
}
}
@@ -1152,4 +1275,10 @@ export default {
width: 120px !important;
height: auto!important;
}
.tg {border-collapse:collapse;border-spacing:0;}
.tg td{font-family:Arial, sans-serif;font-size:14px;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:black;}
.tg th{font-family:Arial, sans-serif;font-size:14px;font-weight:normal;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:black;}
.tg .tg-v15n{font-weight:bold;font-size:24px;border-color:inherit;text-align:center}
.tg .tg-c3ow{border-color:inherit;text-align:center;vertical-align:top}
.tg .tg-kluc{font-size:24px;border-color:inherit;text-align:center}
</style>

View File

@@ -186,10 +186,12 @@
type="success"
@click.stop="takeBack(scope.row)">收回</el-button>
<el-button
:disabled="scope.row.是否禁用编辑"
size="mini"
type="warning"
@click.stop="openEditPerformanceBondDialog(scope.row); flag = 2">编辑</el-button>
<el-button
:disabled="scope.row.是否禁用删除"
size="mini"
type="danger"
@click.stop="delPerformanceBond(scope.row)">删除</el-button >
@@ -426,6 +428,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -476,6 +480,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -536,6 +542,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -579,6 +587,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -632,6 +642,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -672,6 +684,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})
@@ -778,6 +792,8 @@ export default {
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用编辑 = true : data[i].是否禁用编辑 = false
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用删除 = true : data[i].是否禁用删除 = false
}
this.tableData2 = data
})

View File

@@ -2,9 +2,7 @@
<div class="app-container">
<!--顶栏结构-->
<el-card>
<el-radio v-model="radio" label="1">未收回</el-radio>
<el-radio v-model="radio" label="2">已收回</el-radio>
<span style="margin-left: 20px">项目名称</span>
<span>项目名称</span>
<el-select v-model="entryNameValue" clearable filterable placeholder="项目名称:" size="small" style="margin-left: 10px">
<el-option
v-for="item in entryName"
@@ -12,38 +10,138 @@
:label="item.label"
:value="item.value"/>
</el-select>
<el-button type="success" icon="el-icon-search" size="small" style="margin-left: 10px" @click="PageSize = 10;PageCurrent = 1;fetchTableData1()">查询</el-button>
<el-button type="primary" icon="el-icon-circle-plus-outline" size="small" style="margin-left: 10px;margin-right: 15px" @click="addSafetyMargin();flag1 = 1">增加</el-button>
<span>预警颜色说明</span>
<el-tag type="info">未到时间</el-tag>
<el-tag type="warning">即将拖期</el-tag>
<el-tag type="danger">已拖期</el-tag>
<el-tag type="success">已收回</el-tag>
<span style="margin-left: 10px">开始日期</span>
<el-date-picker
v-model="startTime"
style="width: 200px;"
value-format="yyyy-MM-dd"
size="small"
type="date"
placeholder="请选择开始日期"/>
<span style="margin-left: 10px">结束日期</span>
<el-date-picker
v-model="endTime"
style="width: 200px;"
value-format="yyyy-MM-dd"
size="small"
type="date"
placeholder="请选择结束日期"/>
<el-button type="success" icon="el-icon-search" size="small" style="margin-left: 10px" @click="PageSizeProject = 10;PageCurrentProject = 1;searchTableDataProject()">查询</el-button>
</el-card>
<!--安全保证金表格-->
<el-card>
<el-table
v-loading="tableData1Loading"
:row-style="tableRowClassName"
:data="tableData1"
v-loading="listLoadingProject"
:data="projectTableData"
style="width: 100%"
height="400"
border
@row-click="fetchTableData2">
<el-table-column align="center" label="项目名称" width="300">
size="mini"
highlight-current-row
@row-click="fetchTableData1">
<el-table-column align="center" label="合同编号" width="200">
<template slot-scope="scope">
<el-tag type="primary">{{ scope.row.合同编号 }}</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="项目名称" width="200">
<template slot-scope="scope">
{{ scope.row.项目名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="交付日期" width="100">
<el-table-column align="center" label="已完成进度" width="100">
<template slot-scope="scope">
{{ scope.row.执行进度名 }}
</template>
</el-table-column>
<el-table-column align="center" label="合同签订日期">
<template slot-scope="scope">
{{ scope.row.合同签订日期 }}
</template>
</el-table-column>
<el-table-column align="center" label="销售经理" width="80">
<template slot-scope="scope">
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column align="center" label="客户名称">
<template slot-scope="scope">
{{ scope.row.客户名称 }}
</template>
</el-table-column>
<el-table-column align="center" label="联系人" width="80">
<template slot-scope="scope">
{{ scope.row.联系人 }}
</template>
</el-table-column>
<el-table-column align="center" label="联系电话" width="100">
<template slot-scope="scope">
{{ scope.row.电话 }}
</template>
</el-table-column>
<el-table-column align="center" label="合同信息备注">
<template slot-scope="scope">
{{ scope.row.合同信息备注 }}
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" align="center" width="125px">
<template slot-scope="scope">
<el-button
:disabled="scope.row.是否禁用增加安全保证金"
size="mini"
type="primary"
icon="el-icon-circle-plus-outline"
@click.stop="addSafetyMargin(scope.row);flag1 = 1">安全保证金
</el-button>
</template>
</el-table-column>
</el-table>
<div class="block" style="margin-top: 10px;">
<el-pagination
:current-page="PageCurrentProject"
:page-sizes="[10, 20, 30, 40]"
:page-size="PageSizeProject"
:total="totalProject"
layout="total, sizes, prev, pager, next, jumper"
@size-change="handleSizeChangeProject"
@current-change="handleCurrentChangeProject"/>
</div>
</el-card>
<!--安全保证金表格-->
<el-card>
<span style="float: right; margin-bottom: 15px">安全保证金记录</span>
<el-table
v-loading="tableData1Loading"
:data="tableData1"
style="width: 100%"
height="79"
border
size="mini"
@row-click="fetchTableData2">
<!--<el-table-column align="center" label="项目名称" width="300">-->
<!--<template slot-scope="scope">-->
<!--{{ scope.row.项目名称 }}-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column align="center" label="保证金金额" width="100">
<template slot-scope="scope">
<el-tag type="primary" size="small">{{ scope.row.保证金金额 }}</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="交付日期" width="120">
<template slot-scope="scope">
{{ scope.row.交付日期 }}
</template>
</el-table-column>
<el-table-column align="center" label="保证金金额" width="100">
<el-table-column align="center" label="收回条件" width="100">
<template slot-scope="scope">
{{ scope.row.保证金金额 }}
{{ scope.row.执行进度名 }}
</template>
</el-table-column>
<el-table-column align="center" label="截止时间(天)" width="120">
<template slot-scope="scope">
{{ scope.row.提前x天提醒 }}天内收回
</template>
</el-table-column>
<el-table-column align="center" label="扣款金额" width="100">
@@ -51,27 +149,58 @@
{{ scope.row.扣款金额 }}
</template>
</el-table-column>
<el-table-column :label="AmountReceivable" align="center" width="100">
<el-table-column :label="AmountReceivable" align="center" width="120">
<template slot-scope="scope">
{{ scope.row.应收回金额 }}
</template>
</el-table-column>
<el-table-column align="center" label="计划收回日期" width="150">
<el-table-column label="实际收回金额" align="center" width="120">
<template slot-scope="scope">
{{ scope.row.预计收回日期 }}
{{ scope.row.实际收回日期 === '' || scope.row.实际收回日期 === null ? '0' : scope.row.应收回金额 }}
</template>
</el-table-column>
<el-table-column align="center" label="实际收回日期" width="150">
<!--<el-table-column align="center" label="计划收回日期" width="150">-->
<!--<template slot-scope="scope">-->
<!--{{ scope.row.预计收回日期 }}-->
<!--</template>-->
<!--</el-table-column>-->
<el-table-column align="center" label="是否收回" width="100">
<template slot-scope="scope">
{{ scope.row.实际收回日期 }}
<el-tag v-if="parseInt(scope.row.是否收回) === 2" slot="reference" size="small" type="success" style="width: 66px">已收回</el-tag>
<el-tag v-else-if="parseInt(scope.row.是否收回) === 1" slot="reference" type="danger" size="small" style="width: 66px">未收回</el-tag>
</template>
</el-table-column>
<el-table-column align="center" label="状态" width="120">
<el-table-column align="center" label="实际收回日期" width="130">
<template slot-scope="scope">
<div v-if="scope.row.状态 === '0'">未到预警时间</div>
<div v-else-if="scope.row.状态 === '1'">即将拖期</div>
<div v-else-if="scope.row.状态 === '2'">已拖期</div>
<div v-else >已收回</div>
{{ scope.row.实际收回日期 === '' || scope.row.实际收回日期 === null ? '未收回' : scope.row.实际收回日期 }}
</template>
</el-table-column>
<el-table-column align="center" label="状态" width="100">
<template slot-scope="scope">
<el-popover
placement="top-start"
title="收回计划"
width="200"
trigger="hover">
<div v-show="(scope.row.预计收回日期 === '' || scope.row.预计收回日期 === null) && parseInt(scope.row.是否收回)!== 2 " style="text-align: center">
<h4>{{ scope.row.执行进度名 }} 未完成</h4>
</div>
<div v-show="scope.row.预计收回日期 !== '' && scope.row.预计收回日期 !== null && parseInt(scope.row.是否收回)!== 2">
<h4>{{ scope.row.执行进度名 }}{{ scope.row.节点日期 }}完成计划于{{ scope.row.预计收回日期 }}进行收款距离计划截止还剩{{ parseInt(scope.row.剩余天数) > 0 ? scope.row.剩余天数 : 0 }}</h4>
</div>
<div v-show="parseInt(scope.row.是否收回)=== 2 " style="text-align: center">
<h4>已于{{ scope.row.实际收回日期 }}收回</h4>
</div>
<el-tag v-if="scope.row.预计收回日期!==''&& scope.row.预计收回日期!==null && parseInt(scope.row.是否收回) === 1 && parseInt(scope.row.状态) === 1" slot="reference" size="small" type="warning" style="width: 66px">即将拖期</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&& scope.row.预计收回日期!==null &&parseInt(scope.row.是否收回) === 1 && parseInt(scope.row.状态) === 2" slot="reference" type="danger" size="small" style="width: 66px">已经拖期</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&& scope.row.预计收回日期!==null &&parseInt(scope.row.是否收回) === 1 && parseInt(scope.row.状态) === 0" slot="reference" type="primer" size="small" style="width: 66px">无计划</el-tag>
<el-tag v-else-if="scope.row.预计收回日期!==''&& scope.row.预计收回日期!==null &&parseInt(scope.row.是否收回) === 2" slot="reference" type="success" size="small" style="width: 66px">已完成</el-tag>
<el-tag v-else-if="scope.row.预计收回日期===''||scope.row.预计收回日期===null" slot="reference" size="small" style="width: 66px">进度未完</el-tag>
<div v-show="false">{{ scope.row.预计收回日期===''||scope.row.预计收回日期===null || parseInt(scope.row.是否收回) === 2 ? scope.row.是否禁用收回 = true : scope.row.是否禁用收回 = false }}</div>
<div v-show="false">{{ parseInt(scope.row.是否收回) === 2 ? scope.row.是否禁用扣款 = true : scope.row.是否禁用扣款 = false }}</div>
<div v-show="false">{{ parseInt(scope.row.是否收回) === 2 ? scope.row.是否禁用编辑 = true : scope.row.是否禁用编辑 = false }}</div>
<div v-show="false">{{ parseInt(scope.row.是否收回) === 2 ? scope.row.是否禁用删除 = true : scope.row.是否禁用删除 = false }}</div>
</el-popover>
</template>
</el-table-column>
<el-table-column align="center" label="备注">
@@ -79,28 +208,28 @@
{{ scope.row.备注 }}
</template>
</el-table-column>
<el-table-column label="操作" fixed="right" align="center" width="400">
<el-table-column label="操作" fixed="right" align="center" width="370">
<template slot-scope="scope">
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用收回"
size="mini"
type="success"
icon="el-icon-edit"
@click.stop="TakeBack(scope.row);flag1 = 5">收回</el-button>
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用扣款"
size="mini"
type="info"
icon="el-icon-edit"
@click.stop="Withdrawing(scope.row);flag1 = 3">扣款</el-button>
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用编辑"
size="mini"
type="primary"
icon="el-icon-edit"
@click.stop="editSafetyMargin(scope.row);flag1 = 2">编辑</el-button>
<el-button
:disabled="disabled"
:disabled="scope.row.是否禁用删除"
size="mini"
type="danger"
icon="el-icon-delete"
@@ -108,7 +237,7 @@
</template>
</el-table-column>
</el-table>
<div class="block" style="margin-top: 10px;">
<div v-show="false" class="block" style="margin-top: 10px;">
<el-pagination
:current-page="PageCurrent"
:page-sizes="[10, 20, 30, 40]"
@@ -119,16 +248,16 @@
@current-change="handleCurrentChange"/>
</div>
</el-card>
<!--扣款记录表格-->
<el-card>
<span style="float: right">扣款记录</span>
<span style="float: right; margin-bottom: 15px">扣款记录</span>
<el-table
v-loading="tableData2Loading"
:data="tableData2"
style="width: 100%;margin-top: 15px"
height="230"
border>
border
size="mini">
<el-table-column align="center" label="扣款金额">
<template slot-scope="scope">
{{ scope.row.扣款金额 }}
@@ -177,29 +306,17 @@
@current-change="handleCurrentChange2"/>
</div>
</el-card>
<!--新增编辑保证金信息对话框-->
<el-dialog :title="title" :visible.sync="dialogFormVisible1" center style="min-height: 300px" width="800px">
<el-form ref="form" :model="form" :rules="rules1" label-position="left" label-width="120px" class="demo-ruleForm">
<el-row>
<el-col :span="12">
<el-form-item label="项目名称" prop="项目名称">
<el-select v-model="form.项目名称" clearable filterable placeholder="请选择项目:" size="small">
<el-option
v-for="item in entryName1"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保证金金额" prop="保证金金额">
<el-input v-model="form.保证金金额" size="small" placeholder="请输入保证金金额" style="width:200px"/>
<el-input-number v-model="form.保证金金额" :precision="2" :step="0.1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="交付日期" prop="交付日期">
<el-form-item label="缴纳日期" prop="交付日期">
<el-date-picker
v-model="form.交付日期"
style="width: 200px;"
@@ -209,25 +326,40 @@
placeholder="请选择交付日期"/>
</el-form-item>
</el-col>
</el-row>
<!--<el-col :span="12">-->
<!--<el-form-item label="计划收回日期" prop="预计收回日期">-->
<!--<el-date-picker-->
<!--v-model="form.预计收回日期"-->
<!--style="width: 200px;"-->
<!--value-format="yyyy-MM-dd"-->
<!--size="small"-->
<!--type="date"-->
<!--placeholder="请选择计划收回日期"/>-->
<!--</el-form-item>-->
<!--</el-col>-->
<el-row>
<el-col :span="12">
<el-form-item label="计划收回日期" prop="预计收回日期">
<el-date-picker
v-model="form.预计收回日期"
style="width: 200px;"
value-format="yyyy-MM-dd"
size="small"
type="date"
placeholder="请选择计划收回日期"/>
<el-form-item label="收回条件" prop="收回条件">
<el-select v-model="form.收回条件" filterable placeholder="请选择收回条件" style="width: 200px" size="small">
<el-option
v-for="item in plannedTime"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="提前X天提醒我" prop="提前X天提醒我">
<el-input v-model="form.提前X天提醒我" size="small" placeholder="提前X天提醒我" style="width:200px"/>
<el-form-item label="截止时间(天)" prop="提前X天提醒我">
<el-input-number v-model="form.提前X天提醒我" placeholder="请输入截止时间" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="备注" prop="备注">
<el-input v-model="form.备注" size="small" placeholder="请输入备注" style="width:200px"/>
<el-input v-model="form.备注" type="textarea" autosize size="small" placeholder="请输入备注" style="width:575px"/>
</el-form-item>
</el-col>
</el-row>
@@ -366,7 +498,7 @@
<script>
import elInput from 'element-ui/packages/input'
import { initProject, searchTable1, searchTable2, addSafetyMargin, editSafetyMargin, delSafetyMargin, Withdrawing, delWithdrawing, edtWithdrawing, TakeBack } from '@/api/MarketingCenter/SafetyMargin'
import { initProject, searchTable1, searchTable2, addSafetyMargin, editSafetyMargin, delSafetyMargin, Withdrawing, delWithdrawing, edtWithdrawing, TakeBack, searchTableDataProject, executionProgressID } from '@/api/MarketingCenter/SafetyMargin'
export default {
components: {
elInput
@@ -374,12 +506,23 @@ export default {
data() {
const validateValue = (rule, value, callback) => {
if (value === 0) {
callback(new Error('金额不能为0或大于剩余保证金金额'))
callback(new Error('金额不能为0'))
} else {
callback()
}
}
return {
listLoadingProject: false, // 项目信息加载动画
projectTableData: [], // 项目信息表格
startTime: '', // 开始时间
endTime: '', // 结束时间
PageCurrentProject: 1, // 项目信息表格翻页
PageSizeProject: 10, // 项目信息表格每页显示条数
totalProject: null, // 总条数
plannedTime: [], // 执行情况
entryNameValue_check: '',
startTime_check: '',
endTime_check: '',
disabled: false,
AmountReceivable: '应收回金额',
WithdrawingCode: '',
@@ -390,8 +533,8 @@ export default {
projectCode: '',
projectName: '',
flag1: null,
entryName: '', // 项目名称
entryNameValue: [], // 项目名称数组
entryName: [], // 项目名称
entryNameValue: '', // 项目名称数组
tableData1: [], // 安全保证金信息表数组
tableData2: [], // 安全保证金信息表数组
tableData1Loading: false, // 安全保证金信息表加载动画
@@ -416,7 +559,8 @@ export default {
保证金金额: '',
交付日期: '',
预计收回日期: '',
提前X天提醒我: ''
提前X天提醒我: 15,
收回条件: 1
},
form2: {
扣款金额: '',
@@ -436,9 +580,11 @@ export default {
},
rules1: { // 表单验证规则
项目名称: [{ required: true, message: '请选择项目', trigger: 'change' }],
保证金金额: [{ required: true, message: '请输入保证金金额', trigger: 'blur' }],
保证金金额: [{ required: true, message: '请输入保证金金额', trigger: 'blur' },
{ required: true, trigger: 'blur', validator: validateValue }],
交付日期: [{ required: true, message: '请选择交付日期', trigger: 'change' }],
预计收回日期: [{ required: true, message: '请选择预计收回日期', trigger: 'change' }],
收回条件: [{ required: true, message: '请选择收回条件', trigger: 'change' }],
提前X天提醒我: [{ required: true, message: '提前X天提醒我', trigger: 'blur' }]
},
rules2: { // 表单验证规则
@@ -462,22 +608,61 @@ export default {
},
created() {
this.init()
this.searchTableDataProject()
},
methods: {
init() {
this.getSelect(initProject, ['项目名称', '项目流水号'], 'entryName')
this.getSelect(initProject, ['项目名称', '项目流水号'], 'entryName1')
this.getSelect(executionProgressID, ['执行进度名', '执行进度ID'], 'plannedTime')
},
fetchTableData1() {
if (this.radio === '1') {
this.disabled = false
this.AmountReceivable = '应收回金额'
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
// 查询合同(项目)信息
searchTableDataProject() {
if (this.entryNameValue === '' || this.entryNameValue === null) {
this.entryNameValue_check = 0
} else {
this.disabled = true
this.AmountReceivable = '实收回金额'
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
this.entryNameValue_check = 1
}
if (this.startTime === '' || this.startTime === null) {
this.startTime_check = 0
} else {
this.startTime_check = 1
}
if (this.endTime === '' || this.endTime === null) {
this.endTime_check = 0
} else {
this.endTime_check = 1
}
this.listLoadingProject = true
searchTableDataProject(this.PageCurrentProject, this.PageSizeProject, this.entryNameValue, this.entryNameValue_check, this.startTime_check, this.endTime_check, this.startTime, this.endTime).then(response => {
this.tableData1 = []
this.tableData2 = []
this.listLoadingProject = false
const data = response.data
for (let i = 0; i < data.rows.length; i++) {
data.rows[i].合同签订日期 = data.rows[i].合同签订日期.substring(0, data.rows[i].合同签订日期.length - 8)
parseInt(data.rows[i].安全保证金类型) === 1 ? data.rows[i].是否禁用增加安全保证金 = true : data.rows[i].是否禁用增加安全保证金 = false
}
this.projectTableData = data.rows
this.totalProject = data.total
})
},
// 项目信息表格改变每页显示条数
handleSizeChangeProject(val) {
this.PageCurrentProject = 1
this.PageSizeProject = val
this.searchTableDataProject()
},
// 项目信息表格翻页
handleCurrentChangeProject(val) {
this.PageCurrentProject = val
this.searchTableDataProject()
},
fetchTableData1(row) {
this.projectCode = row.项目流水号
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData1 = []
this.tableData2 = []
},
fetchTableData2(row) {
this.code = row.安全保证金流水号
@@ -488,11 +673,15 @@ export default {
handleSizeChange(val) {
this.PageCurrent = 1
this.PageSize = val
this.fetchTableData1()
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData1 = []
this.tableData2 = []
},
handleCurrentChange(val) {
this.PageCurrent = val
this.fetchTableData1()
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData1 = []
this.tableData2 = []
},
handleSizeChange2(val) {
this.PageCurrent2 = 1
@@ -503,57 +692,46 @@ export default {
this.PageCurrent2 = val
this.fetchTableData2()
},
tableRowClassName({ row }) {
if (parseInt(row.是否收回) === 2) {
return 'background: #66cc33'
} else {
if (parseInt(row.状态) === 1) {
return 'background: #ffff66'
} else if (parseInt(row.状态) === 2) {
return 'background: #ff6666'
} else {
return ''
}
}
},
addSafetyMargin() {
addSafetyMargin(row) {
this.title = '增加'
this.dialogFormVisible1 = true
this.projectCode = row.项目流水号
this.addForm('form')
},
editSafetyMargin(row) {
this.editForm(row, 'form')
this.title = '编辑'
this.dialogFormVisible1 = true
this.form.项目名称 = parseInt(row.项目流水号)
this.form.保证金金额 = row.保证金金额
this.form.交付日期 = row.交付日期
this.form.预计收回日期 = row.预计收回日期
this.form.收回条件 = parseInt(row.执行进度流水号)
this.form.提前X天提醒我 = row.提前x天提醒
this.form.备注 = row.备注
this.code = row.安全保证金流水号
// this.projectCode = parseInt(row.项目流水号)
this.projectCode = row.项目流水号
},
addTableData1() {
addSafetyMargin(this.form.项目名称, this.form.保证金金额, this.form.交付日期, this.form.提前X天提醒我, this.form.预计收回日期, this.form.备注).then(response => {
addSafetyMargin(this.projectCode, this.form.保证金金额, this.form.交付日期, this.form.提前X天提醒我, this.form.收回条件, this.form.备注).then(response => {
this.dialogFormVisible1 = false
if (response.data[0].result === '1') {
this.$message.success('添加成功')
this.title = ''
this.fetchTableData1()
this.searchTableDataProject()
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData2 = []
} else {
this.$message.error('添加失败')
}
})
},
editTableData1() {
editSafetyMargin(this.form.项目名称, this.form.保证金金额, this.form.交付日期, this.form.提前X天提醒我, this.form.预计收回日期, this.form.备注, this.code).then(response => {
editSafetyMargin(this.projectCode, this.form.保证金金额, this.form.交付日期, this.form.提前X天提醒我, this.form.收回条件, this.form.备注, this.code).then(response => {
this.dialogFormVisible1 = false
if (response.data[0].result === '1') {
this.$message.success('信息更新成功')
this.fetchTableData1()
this.code = ''
this.projectCode = ''
this.searchTableDataProject()
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData2 = []
} else {
this.$message.error('信息更新失败')
}
@@ -589,12 +767,27 @@ export default {
this.dialogFormVisible4 = false
},
delSafetyMargin(row) {
this.deleteRow(delSafetyMargin, row.安全保证金流水号, function() { this.fetchTableData1() })
this.$confirm('此操作将永久删除该行, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
delSafetyMargin(row.安全保证金流水号, this.projectCode).then(response => {
if (response.data[0].result === '1') {
this.$message.success('删除成功')
this.searchTableDataProject()
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.tableData2 = []
} else {
this.$message.error('数据占用')
}
})
})
},
delWithdrawing(row) {
function a() {
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable2, [this.PageCurrent2, this.PageSize2, this.code], ['tableData2', 'total2', 'tableData2Loading'])
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
this.dialogFormVisible2 = false
}
this.deleteRow(delWithdrawing, row.扣款流水号, a)
@@ -614,7 +807,7 @@ export default {
if (response.data[0].result === '1') {
this.$message.success('扣款成功')
this.title = ''
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable2, [this.PageCurrent2, this.PageSize2, this.code], ['tableData2', 'total2', 'tableData2Loading'])
} else {
this.$message.error('扣款失败')
@@ -636,7 +829,7 @@ export default {
this.dialogFormVisible3 = false
if (response.data[0].result === '1') {
this.$message.success('信息更新成功')
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable2, [this.PageCurrent2, this.PageSize2, this.code], ['tableData2', 'total2', 'tableData2Loading'])
} else {
this.$message.error('信息更新失败')
@@ -654,7 +847,7 @@ export default {
this.dialogFormVisible4 = false
if (response.data[0].result === '1') {
this.$message.success('信息更新成功')
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.entryNameValue, this.radio], ['tableData1', 'total', 'tableData1Loading'])
this.getTable(searchTable1, [this.PageCurrent, this.PageSize, this.projectCode], ['tableData1', 'total', 'tableData1Loading'])
} else {
this.$message.error('信息更新失败')
}

View File

@@ -14,9 +14,6 @@
</el-select>
<span>供应商:</span>
<el-input v-model="supplierName" placeholder="供应商" size="small" clearable/>
<span>提前</span>
<el-input-number v-model="warningValue" :min="1" controls-position="right" size="small" style="width: 90px"/>
<span>天预警</span>
<el-button
type="success"
size="small"
@@ -45,12 +42,12 @@
{{ scope.row.采购合同名称 }}
</template>
</el-table-column>
<el-table-column label="规定到货时间" align="center" min-width="100">
<el-table-column label="交货日期" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.规定到货时间.split(' ')[0] }}
{{ scope.row.交货日期 }}
</template>
</el-table-column>
<el-table-column label="供应商" align="center" min-width="250">
<el-table-column label="供应商" align="center" min-width="150">
<template slot-scope="scope">
{{ scope.row.供应商名称 }}
</template>
@@ -60,20 +57,12 @@
{{ scope.row.姓名 }}
</template>
</el-table-column>
<el-table-column label="到货情况" align="center" min-width="70">
<template slot-scope="scope">
<el-tag v-if="judge[scope.$index]===1" type="success" size="small">全部到货</el-tag>
<el-tag v-if="judge[scope.$index]===2" type="warning" size="small">即将拖期</el-tag>
<el-tag v-if="judge[scope.$index]===3" type="danger" size="small">已拖期</el-tag>
<el-tag v-if="judge[scope.$index]===4" type="primary" size="small">进度正常</el-tag>
</template>
</el-table-column>
<el-table-column label="到货进度" align="center" min-width="150">
<template slot-scope="scope">
<el-progress
:text-inside="true"
:stroke-width="18"
:percentage="parseFloat((100*scope.row.合同物料到货总数/scope.row.合同物料采购总数).toFixed(2))"
:percentage="parseFloat((100*scope.row.合同到货总数/scope.row.合同采购总数).toFixed(2))"
status="success"/>
</template>
</el-table-column>
@@ -95,29 +84,29 @@
{{ scope.row.采购合同编号 }}
</template>
</el-table-column>
<el-table-column label="物料名称" align="center" min-width="100">
<el-table-column label="图号" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.物料名称 }}
{{ scope.row.物料型号 ? scope.row.物料型号 : scope.row.零件图号 }}
</template>
</el-table-column>
<el-table-column label="物料规格" align="center" min-width="100">
<el-table-column label="名称" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.物料规格 }}
{{ scope.row.物料名称 ? scope.row.物料名称 : scope.row.零件名称 }}
</template>
</el-table-column>
<el-table-column label="物料型号" align="center" min-width="100">
<el-table-column label="规格" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.物料型号 }}
{{ scope.row.物料规格 ? scope.row.物料规格 : scope.row.规格 }}
</template>
</el-table-column>
<el-table-column label="采购总数量" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.数量 }}
{{ scope.row.采购总数量 }}
</template>
</el-table-column>
<el-table-column label="已到货数量" align="center" min-width="100">
<template slot-scope="scope">
{{ scope.row.总到货数量 ? scope.row.总到货数量 : 0 }}
{{ scope.row.已到货数量 }}
</template>
</el-table-column>
</el-table>
@@ -133,7 +122,6 @@ export default {
name: '', // 项目总价查询
data() {
return {
warningValue: 3,
check1: 0,
check2: 0,
contractNumValue: '',
@@ -143,10 +131,7 @@ export default {
pageSize1: 10,
pageCurrent1: 1,
total1: 0,
tableData2: [],
now: '',
arrival: [],
judge: []
tableData2: []
}
},
computed: {
@@ -159,6 +144,7 @@ export default {
},
created() {
this.fetchData()
this.searchTable1()
},
methods: {
fetchData() {
@@ -173,24 +159,9 @@ export default {
})
},
searchTable1() {
this.warningValue ? this.warningValue : this.warningValue = 1
this.arrival = [] // 规定到货时间数组
this.now = new Date()
this.contractNumValue ? this.check1 = 1 : this.check1 = 0
this.supplierName ? this.check2 = 1 : this.check2 = 0
searchArrivalState(this.pageCurrent1, this.pageSize1, this.check1, this.contractNumValue, this.check2, this.supplierName).then(response => {
for (let i = 0; i < response.data.rows.length; i++) {
this.arrival.push(new Date(response.data.rows[i].规定到货时间))
if (parseInt(response.data.rows[i].合同物料到货总数) === parseInt(response.data.rows[i].合同物料采购总数)) {
this.judge[i] = 1 // 全部到货
} else if (parseInt(response.data.rows[i].合同物料到货总数) !== parseInt(response.data.rows[i].合同物料采购总数) && (this.arrival[i] - this.now) > 0 && (this.arrival[i] - this.now) < (86400000 * this.warningValue)) {
this.judge[i] = 2 // 即将拖期
} else if (parseInt(response.data.rows[i].合同物料到货总数) !== parseInt(response.data.rows[i].合同物料采购总数) && (this.arrival[i] - this.now) < 0) {
this.judge[i] = 3 // 已拖期
} else if (parseInt(response.data.rows[i].合同物料到货总数) !== parseInt(response.data.rows[i].合同物料采购总数) && (this.arrival[i] - this.now) > (86400000 * this.warningValue)) {
this.judge[i] = 4 // 进度正常
}
}
this.tableData1 = response.data.rows
this.total1 = response.data.total
})

View File

@@ -130,11 +130,20 @@
@click="addMateriel">选入物料</el-button>
</div>
<el-table v-loading="" :data="tableData2" border style="max-height: 460px;" height="460px" size="mini" highlight-current-row @row-click="searchTable3">
<el-table-column label="合同状态" align="center" width="80" fixed="left">
<el-table-column type="expand" fixed="left">
<template slot-scope="scope">
<el-form label-position="left" inline class="demo-table-expand">
<el-form-item label="离线合同备注">
{{ scope.row.离线合同备注 }}
</el-form-item>
</el-form>
</template>
</el-table-column>
<el-table-column label="合同状态" align="center" width="100" fixed="left">
<template slot-scope="scope">
<el-tag v-if="Number(scope.row.离线合同状态)===1" type="warning" size="small">编辑中</el-tag>
<el-tag v-if="Number(scope.row.离线合同状态)===2" type="success" size="small">已采购</el-tag>
<el-tag v-if="Number(scope.row.离线合同状态)===5" type="danger" size="small">已作废</el-tag>
<el-tag v-if="Number(scope.row.离线合同状态)===2&&Number(scope.row.总采购数量)!==Number(scope.row.总到货数量)" type="primary" size="small">已采购</el-tag>
<el-tag v-if="Number(scope.row.总采购数量)===Number(scope.row.总到货数量)" type="success" size="small">全部到货</el-tag>
</template>
</el-table-column>
<el-table-column label="离线合同编号" align="center" min-width="170">
@@ -152,7 +161,7 @@
{{ scope.row.供应商名称 }}
</template>
</el-table-column>
<el-table-column label="采购员" align="center" min-width="100">
<el-table-column label="采购员" align="center" min-width="80">
<template slot-scope="scope">
{{ scope.row.采购员 }}
</template>
@@ -167,16 +176,11 @@
{{ scope.row.规定到货时间.split(' ')[0] }}
</template>
</el-table-column>
<el-table-column label="离线合同备注" align="center" min-width="250">
<template slot-scope="scope">
{{ scope.row.离线合同备注 }}
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="200" fixed="right">
<template slot-scope="scope">
<el-button :disabled="parseInt(scope.row.离线合同状态)!==1" type="primary" size="mini" icon="el-icon-edit" @click="editOfflineContract(scope.row)"/>
<el-button :disabled="parseInt(scope.row.离线合同状态)!==1" type="danger" size="mini" icon="el-icon-delete" @click="deleteOfflineContract(scope.row)"/>
<el-button type="warning" size="mini" icon="el-icon-download"/>
<el-button type="warning" size="mini" icon="el-icon-download" @click="exportExcel(scope.row)"/>
</template>
</el-table-column>
</el-table>
@@ -414,12 +418,55 @@
@click="submitEditOfflineContract">确定</el-button>
</div>
</el-dialog>
<div id="offlineContract" style="width: 800px;margin: 0 auto;display: none">
<table class="offlineContract" cellspacing="0px" align="center" border="1 solid black" width="100%">
<tr>
<th colspan="8" style="font-size: 30px;font-weight: bold">离线合同</th>
</tr>
<tr>
<td colspan="2" rowspan="2" style="text-align:center;font-size: 30px;font-weight: bold">GAOJING</td>
<td>合同名称</td>
<td id="contractName"/>
<td>供应商</td>
<td id="supplier"/>
<td colspan="2" rowspan="2" style="width: 40px;height: 100px;">二维码粘贴处</td>
</tr>
<tr>
<td>合同编号</td>
<td id="contractNum"/>
<td>采购员</td>
<td id="buyer"/>
</tr>
<tr id="tablehead">
<td>序号</td>
<td>名称</td>
<td>规格</td>
<td>型号</td>
<td>数量</td>
<td>单价</td>
<td>合计</td>
<td>备注</td>
</tr>
<tr>
<td>总计</td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td id="total"/>
<td/>
</tr>
</table>
</div>
</div>
</template>
<script>
import { searchInventoryNum, searchOfflineContract, searchOfflineContract2, searchSupplier, addOfflineContract, editOfflineContract, deleteOfflineContract, searchMateriel,
addMateriel, deleteMateriel, doneOfflineContact, setSafeValue } from '@/api/PurchasingCenter/OfflineContract'
import { exportExcelMethod } from './exportExcel'
import { mapGetters } from 'vuex'
export default {
@@ -645,7 +692,6 @@ export default {
})
},
editOfflineContract(row) {
console.log(row)
if (this.$refs['form2'] !== undefined) {
this.$refs['form2'].resetFields()
}
@@ -688,25 +734,25 @@ export default {
}
})
},
deleteOfflineContract(row) { // 作废离线合同
this.$confirm('确定作废该合同?', '提示', {
deleteOfflineContract(row) { // 删除离线合同
this.$confirm('确定删除该合同?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteOfflineContract(row.离线合同流水号).then(response => {
if (response.data[0].result === '1') {
this.$message.success('作废成功')
this.$message.success('删除成功')
this.searchTable2()
searchMateriel(this.offlineContractNum).then(response => {
this.tableData3 = response.data
})
} else { this.$message.error('作废失败') }
} else { this.$message.error('数据占用,删除失败') }
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消作废'
message: '已取消删除'
})
})
},
@@ -867,6 +913,52 @@ export default {
message: '已取消操作'
})
})
},
exportExcel(row) {
this.$confirm('确定导出该合同?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const children = document.getElementsByClassName('tableData')
const parent = document.getElementsByClassName('offlineContract')[0]
if (children.length !== 0) {
for (let i = children.length - 1; i >= 0; i--) {
parent.removeChild(children[i])
}
}
const tr = []
for (let i = 0; i < this.tableData3.length; i++) {
tr[i] = document.createElement('tr')
tr[i].setAttribute('class', 'tableData')
tr[i].innerHTML = `<td/><td/><td/><td/><td/><td/><td/><td/>`
document.getElementById('tablehead').after(tr[i])
}
let total = 0
for (let j = 0; j < this.tableData3.length; j++) {
document.getElementsByClassName('tableData')[j].children[0].innerHTML = j + 1
document.getElementsByClassName('tableData')[j].children[1].innerHTML = this.tableData3[j].物料名称
document.getElementsByClassName('tableData')[j].children[2].innerHTML = this.tableData3[j].物料规格
document.getElementsByClassName('tableData')[j].children[3].innerHTML = this.tableData3[j].物料型号
document.getElementsByClassName('tableData')[j].children[4].innerHTML = this.tableData3[j].数量
document.getElementsByClassName('tableData')[j].children[5].innerHTML = this.tableData3[j].单价
document.getElementsByClassName('tableData')[j].children[6].innerHTML = this.tableData3[j].数量 * this.tableData3[j].单价
document.getElementsByClassName('tableData')[j].children[7].innerHTML = ''
total += this.tableData3[j].数量 * this.tableData3[j].单价
}
document.getElementById('contractNum').innerHTML = row.离线合同编号
document.getElementById('contractName').innerHTML = row.离线合同名称
document.getElementById('supplier').innerHTML = row.供应商名称
document.getElementById('buyer').innerHTML = row.采购员
document.getElementById('total').innerHTML = total
exportExcelMethod('offlineContract', '离线合同', '离线合同sheet')
}).catch(res => {
console.log(res)
this.$message({
type: 'info',
message: '已取消操作'
})
})
}
}
}

View File

@@ -57,7 +57,7 @@
</el-table-column>
<el-table-column label="优惠后小计(元)" align="center" min-width="100" prop="金额">
<template slot-scope="scope">
{{ scope.row.金额 = Number(scope.row.优惠后单价) * Number(scope.row.数量) }}
{{ scope.row.金额 = (Number(scope.row.优惠后单价) * Number(scope.row.数量)).toFixed(2) }}
</template>
</el-table-column>
</el-table>

View File

@@ -142,7 +142,7 @@
<b>二维码</b><br>
<img id="img">
</div>
<div style="min-height:500px;margin: 0px auto;width:800px;border:1px solid black" v-html="returns"/>
<div id="print" class="print" style="min-height:500px;margin: 0px auto;width:800px;border:1px solid black" v-html="returns"/>
<el-card v-show="searchView">
<!--将新一般处理页添加至通讯服务器-->
<div>附件图</div>
@@ -155,7 +155,8 @@
import { initContract, initBuyer, searchTable1, searchTable2 } from '@/api/PurchasingCenter/PurchaseContractSearch'
import { searchFile } from '@/api/PurchasingCenter/CreateContract'
import QRCode from 'qrcode'
import { exportExcelMethod } from './exportExcel'
import $ from 'jquery'
// import { exportExcelMethod } from './exportExcel'
export default {
data() {
@@ -212,8 +213,16 @@ export default {
},
methods: {
download() {
if (this.contract) {
exportExcelMethod('print', '采购合同', '采购合同sheet1')
if (this.contractValue) {
// exportExcelMethod('print', '采购合同', '采购合同sheet1')
const htmlNode = $('#print').html()
const body = $('body')
body.children().hide()
const printNode = $(htmlNode)
body.append(printNode)
window.print()
body.children().show()
printNode.remove()
} else {
this.$message.error('请选择合同')
}
@@ -237,7 +246,7 @@ export default {
},
searchPic() {
// 读取图片时查找合同流水号获取其下所有图片id根据拼接成的路径查询图片显示出来。
searchFile(this.contract).then(response => {
searchFile(this.contractValue).then(response => {
if (response.data.length !== 0) {
this.searchView = 'http://localhost:8022/Img/' + response.data[0].文件名
} else {

View File

@@ -2,7 +2,7 @@
<div class="app-container">
<el-card>
<span>供应商名称:</span>
<el-select v-model="supplierNumValue" placeholder="供应商" size="small" filterable clearable @change="searchContract1">
<el-select v-model="supplierNumValue" placeholder="供应商" size="small" filterable clearable>
<el-option
v-for="item in supplierNum"
:key="item.value"

View File

@@ -84,7 +84,7 @@
stripe
@selection-change="handleSelectionChange1">
<el-table-column :selectable="selectable" align="center" type="selection"/>
<el-table-column align="center" label="采购情况" min-width="70px">
<el-table-column align="center" label="采购情况" min-width="80px">
<template slot-scope="scope">
<el-tag v-if="scope.row.人员编号===''" type="primary" size="small">未分配</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!==''" type="warning" size="small">未询价</el-tag>
@@ -218,7 +218,7 @@
stripe
@selection-change="handleSelectionChange2">
<el-table-column :selectable="selectable" align="center" type="selection"/>
<el-table-column align="center" label="采购情况" min-width="70px">
<el-table-column align="center" label="采购情况" min-width="80px">
<template slot-scope="scope">
<el-tag v-if="scope.row.人员编号===''" type="primary" size="small">未分配</el-tag>
<el-tag v-if="parseInt(scope.row.询价状态编号)===1&&scope.row.人员编号!==''" type="warning" size="small">未询价</el-tag>