6 changed files with 53 additions and 470 deletions
Before Width: | Height: | Size: 273 KiB |
@ -1,191 +0,0 @@ |
|||||
<template> |
|
||||
<el-dialog |
|
||||
title="合同基本信息" |
|
||||
:close-on-click-modal="false" |
|
||||
:visible.sync="visible"> |
|
||||
<el-form :model="dataForm" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="114px"> |
|
||||
<el-row> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="合同类型"> |
|
||||
<el-select v-model="dataForm.type" placeholder="合同类型"> |
|
||||
<el-option label="区域一" value="shanghai"></el-option> |
|
||||
<el-option label="区域二" value="beijing"></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="工单编号"> |
|
||||
<el-input v-model="dataForm.code" placeholder="工单编号"></el-input> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
<el-col :span="6"> |
|
||||
<el-form-item label="是否主合同"> |
|
||||
<el-switch |
|
||||
v-model="dataForm.isS" |
|
||||
active-color="#13ce66" |
|
||||
inactive-color="#ff4949"> |
|
||||
</el-switch> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
</el-row> |
|
||||
<el-row> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="关联主合同编号"> |
|
||||
<el-input v-model="dataForm.code" placeholder="关联主合同编号"></el-input> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="客户"> |
|
||||
<el-select v-model="dataForm.type" placeholder="客户"> |
|
||||
<el-option label="区域一" value="shanghai"></el-option> |
|
||||
<el-option label="区域二" value="beijing"></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
</el-row> |
|
||||
<el-row> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="保修期"> |
|
||||
<el-input v-model="dataForm.code" placeholder="保修期"></el-input> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="付款方式"> |
|
||||
<el-select v-model="dataForm.type" placeholder="付款方式"> |
|
||||
<el-option label="区域一" value="shanghai"></el-option> |
|
||||
<el-option label="区域二" value="beijing"></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
</el-row> |
|
||||
<el-row type="flex" justify="space-between"> |
|
||||
<el-col :span="6"> |
|
||||
<el-button type="primary">新增一行</el-button> |
|
||||
</el-col> |
|
||||
<el-col :span="9"> |
|
||||
<el-form-item label="总计"> |
|
||||
<el-input v-model="dataForm.code" placeholder="总计"></el-input> |
|
||||
</el-form-item> |
|
||||
</el-col> |
|
||||
</el-row> |
|
||||
</el-form> |
|
||||
<el-table |
|
||||
:data="dataList" |
|
||||
border |
|
||||
style="width: 100%;" |
|
||||
max-height="200"> |
|
||||
<el-table-column |
|
||||
type="selection" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
width="50"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="code" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="物料编号"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="物料名称"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="型号"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="单价"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="价格系数"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="价格系数"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="对外价格"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="数量"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="总价"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="总价"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="备注"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
fixed="right" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
width="70" |
|
||||
label="操作"> |
|
||||
<template slot-scope="scope"> |
|
||||
<el-button type="text" size="small">删除行</el-button> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
</el-table> |
|
||||
<span slot="footer" class="dialog-footer"> |
|
||||
<el-button @click="visible = false">取消</el-button> |
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button> |
|
||||
</span> |
|
||||
</el-dialog> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
export default { |
|
||||
data () { |
|
||||
return { |
|
||||
visible: false, |
|
||||
dataForm: { |
|
||||
type: '', |
|
||||
code: '', |
|
||||
isS: true |
|
||||
}, |
|
||||
dataList: [{code: '100010'}, {code: '100010'}, {code: '100010'}] |
|
||||
} |
|
||||
}, |
|
||||
methods: { |
|
||||
init (id) { |
|
||||
this.visible = true |
|
||||
this.$nextTick(() => { |
|
||||
this.$refs['dataForm'].resetFields() |
|
||||
}) |
|
||||
}, |
|
||||
// 表单提交 |
|
||||
dataFormSubmit () {} |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
@ -1,246 +0,0 @@ |
|||||
<template> |
|
||||
<div class="mod-order"> |
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()"> |
|
||||
<el-form-item label="合同类型"> |
|
||||
<el-select v-model="dataForm.type" placeholder="合同类型"> |
|
||||
<el-option label="区域一" value="shanghai"></el-option> |
|
||||
<el-option label="区域二" value="beijing"></el-option> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="合同编号"> |
|
||||
<el-input v-model="dataForm.number" placeholder="合同编号" clearable></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="客户名称"> |
|
||||
<el-input v-model="dataForm.name" placeholder="客户名称" clearable></el-input> |
|
||||
</el-form-item> |
|
||||
<el-form-item> |
|
||||
<el-button @click="getDataList()">查询</el-button> |
|
||||
<el-button type="primary" @click="addOrUpdateHandle">新增</el-button> |
|
||||
<el-button type="primary" @click="addAndPrint">打印</el-button> |
|
||||
<el-button type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">删除</el-button> |
|
||||
</el-form-item> |
|
||||
</el-form> |
|
||||
<el-table |
|
||||
:data="dataList" |
|
||||
border |
|
||||
v-loading="dataListLoading" |
|
||||
@selection-change="selectionChangeHandle" |
|
||||
style="width: 100%;"> |
|
||||
<el-table-column |
|
||||
type="selection" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
width="50"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="合同编号"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="合同类型"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="是否主合同"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="客户名称"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="关联主合同号"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="是否验收"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="生成时间"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="验收时间"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="备注"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
prop="roleName" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
label="质保期限(月)"> |
|
||||
</el-table-column> |
|
||||
<el-table-column |
|
||||
fixed="right" |
|
||||
header-align="center" |
|
||||
align="center" |
|
||||
width="150" |
|
||||
label="操作"> |
|
||||
<template slot-scope="scope"> |
|
||||
<el-button type="text" size="small" @click="addTempHandle(scope.row.id)">模板生成</el-button> |
|
||||
<el-button type="text" size="small">上传附件</el-button> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
</el-table> |
|
||||
<el-pagination |
|
||||
@size-change="sizeChangeHandle" |
|
||||
@current-change="currentChangeHandle" |
|
||||
:current-page="pageIndex" |
|
||||
:page-sizes="[10, 20, 50, 100]" |
|
||||
:page-size="pageSize" |
|
||||
:total="totalPage" |
|
||||
layout="total, sizes, prev, pager, next, jumper"> |
|
||||
</el-pagination> |
|
||||
<!-- 弹窗, 新增 / 修改 --> |
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update> |
|
||||
<temp-add-or-update v-if="tempVisible" ref="tempAdd"></temp-add-or-update> |
|
||||
</div> |
|
||||
</template> |
|
||||
|
|
||||
<script> |
|
||||
import AddOrUpdate from './contract-add-or-update' |
|
||||
import TempAddOrUpdate from './temp-add-or-update' |
|
||||
import { getLodop } from '@/utils/lodop/LodopFuncs' |
|
||||
export default { |
|
||||
components: { |
|
||||
AddOrUpdate, |
|
||||
TempAddOrUpdate |
|
||||
}, |
|
||||
data () { |
|
||||
return { |
|
||||
dataForm: { |
|
||||
type: '', |
|
||||
number: '', |
|
||||
name: '' |
|
||||
}, |
|
||||
dataList: [], |
|
||||
pageIndex: 1, |
|
||||
pageSize: 10, |
|
||||
totalPage: 0, |
|
||||
dataListLoading: false, |
|
||||
dataListSelections: [], |
|
||||
addOrUpdateVisible: false, |
|
||||
tempVisible: false |
|
||||
} |
|
||||
}, |
|
||||
activated () { |
|
||||
this.getDataList() |
|
||||
}, |
|
||||
methods: { |
|
||||
// 获取数据列表 |
|
||||
getDataList () { |
|
||||
this.dataListLoading = true |
|
||||
this.$http({ |
|
||||
url: this.$http.adornUrl('/sys/role/list'), |
|
||||
method: 'get', |
|
||||
params: this.$http.adornParams({ |
|
||||
'page': this.pageIndex, |
|
||||
'limit': this.pageSize, |
|
||||
'roleName': this.dataForm.roleName |
|
||||
}) |
|
||||
}).then(({data}) => { |
|
||||
if (data && data.code === 0) { |
|
||||
this.dataList = data.page.list |
|
||||
this.totalPage = data.page.totalCount |
|
||||
} else { |
|
||||
this.dataList = [] |
|
||||
this.totalPage = 0 |
|
||||
} |
|
||||
this.dataListLoading = false |
|
||||
}) |
|
||||
}, |
|
||||
// 每页数 |
|
||||
sizeChangeHandle (val) { |
|
||||
this.pageSize = val |
|
||||
this.pageIndex = 1 |
|
||||
this.getDataList() |
|
||||
}, |
|
||||
// 当前页 |
|
||||
currentChangeHandle (val) { |
|
||||
this.pageIndex = val |
|
||||
this.getDataList() |
|
||||
}, |
|
||||
// 多选 |
|
||||
selectionChangeHandle (val) { |
|
||||
this.dataListSelections = val |
|
||||
}, |
|
||||
// 新增 |
|
||||
addOrUpdateHandle (id) { |
|
||||
this.addOrUpdateVisible = true |
|
||||
this.$nextTick(() => { |
|
||||
this.$refs.addOrUpdate.init(id) |
|
||||
}) |
|
||||
}, |
|
||||
// 打印 |
|
||||
addAndPrint () { |
|
||||
const LODOP = getLodop() |
|
||||
LODOP.SET_SHOW_MODE('HIDE_DISBUTTIN_SETUP', 1)// 隐藏那些无效按钮 |
|
||||
// 打印纸张大小设置https://www.it610.com/article/2094844.html |
|
||||
LODOP.SET_PRINT_PAGESIZE(1, '60mm', '40mm', '1') |
|
||||
// LODOP.ADD_PRINT_RECT('0mm', '0mm', '50mm', '30mm', 0, 1) |
|
||||
LODOP.ADD_PRINT_BARCODE('4.3mm', '8mm', '50mm', '30mm', '128Auto', {a: 1}) |
|
||||
LODOP.PREVIEW()// 预览 |
|
||||
// LODOP.PRINT()// 打印 |
|
||||
}, |
|
||||
// 删除 |
|
||||
deleteHandle (id) { |
|
||||
var ids = id ? [id] : this.dataListSelections.map(item => { |
|
||||
return item.roleId |
|
||||
}) |
|
||||
this.$confirm(`确定对[id=${ids.join(',')}]进行[${id ? '删除' : '批量删除'}]操作?`, '提示', { |
|
||||
confirmButtonText: '确定', |
|
||||
cancelButtonText: '取消', |
|
||||
type: 'warning' |
|
||||
}).then(() => { |
|
||||
this.$http({ |
|
||||
url: this.$http.adornUrl('/sys/role/delete'), |
|
||||
method: 'post', |
|
||||
data: this.$http.adornData(ids, false) |
|
||||
}).then(({data}) => { |
|
||||
if (data && data.code === 0) { |
|
||||
this.$message({ |
|
||||
message: '操作成功', |
|
||||
type: 'success', |
|
||||
duration: 1500, |
|
||||
onClose: () => { |
|
||||
this.getDataList() |
|
||||
} |
|
||||
}) |
|
||||
} else { |
|
||||
this.$message.error(data.msg) |
|
||||
} |
|
||||
}) |
|
||||
}).catch(() => {}) |
|
||||
}, |
|
||||
// 生成模板 |
|
||||
addTempHandle (id) { |
|
||||
this.tempVisible = true |
|
||||
this.$nextTick(() => { |
|
||||
this.$refs.tempAdd.init(id) |
|
||||
}) |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
</script> |
|
Loading…
Reference in new issue