Browse Source

供应商文档

java8
常熟吴彦祖 5 months ago
parent
commit
b44ff632f7
  1. 33
      src/views/modules/srmDocument/srmSupplierDocumentListDefinition.vue
  2. 252
      src/views/modules/srmSupplier/com_srmSupplier_DocumentDefinition.vue
  3. 306
      src/views/modules/srmSupplier/supplierList.vue

33
src/views/modules/srmDocument/srmSupplierDocumentListDefinition.vue

@ -11,7 +11,7 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="'供应商类'">
<el-form-item :label="'供应商类'">
<el-select v-model="searchData.supplierDocType" placeholder="请选择" clearable style="width: 130px">
<el-option
v-for = "i in supplierDocTypeList"
@ -92,10 +92,10 @@
layout="total, sizes, prev, pager, next, jumper">
</el-pagination>
<el-dialog title="供应商文档清单" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="500px">
<el-dialog title="供应商文档清单" :close-on-click-modal="false" v-drag :visible.sync="modalFlag" width="400px">
<el-form :inline="true" label-position="top" :model="modalData" :rules="rules" style="margin-left: 7px;margin-top: -5px;">
<el-row :gutter="20">
<el-col :span="8">
<el-col :span="12">
<el-form-item label="BU" prop="bu" :rules="rules.bu">
<el-select v-model="modalData.bu" placeholder="请选择" :disabled="modalDisableFlag" style="">
<el-option
@ -110,8 +110,8 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商类" prop="projectCategory" style="margin-left: 15px" :rules="rules.supplierDocType">
<el-col :span="12">
<el-form-item label="供应商类" prop="projectCategory" style="margin-left: 0px" :rules="rules.supplierDocType">
<el-select v-model="modalData.supplierDocType" placeholder="请选择" clearable style="" @input="handleInput">
<el-option
v-for = "i in supplierDocTypeList"
@ -124,32 +124,32 @@
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="8">
<el-col :span="12">
<el-form-item prop="documentTypeId" :rules="rules.documentTypeIdType" v-if="!disableButton">
<span slot="label" style="" @click="getBaseList(1060,2)"><a herf="#">文档类型ID</a></span>
<el-input v-model="modalData.documentTypeId" disabled style=""></el-input>
</el-form-item>
<el-form-item label="文档类型ID" prop="documentTypeId" style="margin-left: 15px" :rules="rules.documentTypeIdType" v-if="disableButton">
<el-form-item label="文档类型ID" prop="documentTypeId" style="margin-left: 0px" :rules="rules.documentTypeIdType" v-if="disableButton">
<el-input v-model="modalData.documentTypeId" disabled style=""></el-input>
</el-form-item>
</el-col>
<!-- <el-form-item label="文档类型ID" prop="documentTypeId" :rules="rules.documentTypeIdType">-->
<!-- <el-input v-model="modalData.documentTypeId" style="width: 230px"></el-input>-->
<!-- </el-form-item>-->
<el-col :span="16">
<el-form-item label="文档类型" prop="documentType" style="margin-left: 15px" :rules="rules.documentTypeType">
<el-col :span="12">
<el-form-item label="文档类型" prop="documentType" style="margin-left: 0px" :rules="rules.documentTypeType">
<el-input v-model="modalData.documentType" disabled style="width: 100%"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="8">
<el-col :span="12">
<el-form-item label="责任部门" prop="responsibleDepartment" :rules="rules.responsibleDepartmentType">
<el-input v-model="modalData.responsibleDepartment" disabled style=""></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="预计完成天数" prop="estimatedCompletionDays" style="margin-left: 15px" :rules="rules.estimatedCompletionDaysType">
<el-col :span="12">
<el-form-item label="预计完成天数" prop="estimatedCompletionDays" style="margin-left: 0px" :rules="rules.estimatedCompletionDaysType">
<el-input v-model="modalData.estimatedCompletionDays" disabled style=""></el-input>
</el-form-item>
</el-col>
@ -181,8 +181,9 @@
getTableDefaultListLanguage,
getTableUserListLanguage,
} from "@/api/table.js"
import {EventBus} from "../../main";
import {updateColumnSize} from "../../../api/table";
import {EventBus} from '../../../main'
export default {
components: {
@ -281,7 +282,7 @@
columnProp: 'supplierDocType',
headerAlign: "center",
align: "left",
columnLabel: '供应商类',
columnLabel: '供应商类',
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -692,7 +693,7 @@
site: this.$store.state.user.site,
documentTypeId: '',
documentType: '',
supplierDocType: '',
supplierDocType: 'common',
responsibleDepartment: '',
estimatedCompletionDays: '',
// active: 'Y',
@ -769,7 +770,7 @@
return
}
if (this.modalData.supplierDocType === '' || this.modalData.supplierDocType == null) {
this.$message.warning('请选择供应商类!')
this.$message.warning('请选择供应商类!')
return
}
if (this.modalData.documentTypeId === '' || this.modalData.documentTypeId == null) {

252
src/views/modules/srmSupplier/com_srmSupplier_DocumentDefinition.vue

@ -0,0 +1,252 @@
<template>
<div class="customer-css">
<el-form label-position="top" style="margin-top: 1px; margin-left: 0px;">
<el-form :inline="true" label-position="top" style="margin-top: 0px">
<el-button type="primary" @click="addModal()">新增</el-button>
</el-form>
</el-form>
<el-table
:data="dataList"
:height=searchData.height
border
v-loading="dataListLoading"
style="width: 100%; ">
<el-table-column
v-for="(item,index) in columnList" :key="index"
:sortable="item.columnSortable"
:prop="item.columnProp"
:header-align="item.headerAlign"
:show-overflow-tooltip="item.showOverflowTooltip"
:align="item.align"
:fixed="item.fixed==''?false:item.fixed"
:min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<span v-if="!item.columnHidden"> {{scope.row[item.columnProp]}}</span>
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
style="width: 100px; height: 80px"/></span>
</template>
</el-table-column>
<el-table-column
header-align="center"
align="center"
width="180"
fixed="right"
label="操作">
<template slot-scope="scope">
<a type="text" size="small" v-if="scope.row.needRenew=='Y'" @click="renewModew(scope.row)">Renew |</a>
<a type="text" size="small" @click="editModel(scope.row)">Edit |</a>
<a type="text" size="small" @click="deleteData(scope.row)"> Delete</a>
</template>
</el-table-column>
</el-table>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
</template>
<script>
import {
createNewSupplierContract,getNewSupplierContract,deleteSupplierContract
} from '@/api/srm/srmSupplier.js'
import Chooselist from '@/views/modules/common/Chooselist_eam'
import {ossUploadNoSaveOSS, previewOssFileById, queryOss} from "../../../api/oss/oss";
export default {
components: {
Chooselist
},
data() {
return {
dataList: [],
searchData: {
site: '',
username: this.$store.state.user.name,
supplierNo: '',
height:'300',
page: 1,
limit: 1000
},
dataListLoading: false,
currentRow:'',
columnList: [
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5ContractNo',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'contractNo',
headerAlign: 'center',
align: 'left',
columnLabel: '合同编号',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 120
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5ContractName',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'contractName',
headerAlign: 'center',
align: 'left',
columnLabel: '合同名称',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 120
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5ContractDetail',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'contractDetail',
headerAlign: 'center',
align: 'left',
columnLabel: '合同描述',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 240
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5ContractDate',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'contractDate',
headerAlign: 'center',
align: 'left',
columnLabel: '合同日期',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 120
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5CreatedBy',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'createBy',
headerAlign: 'center',
align: 'center',
columnLabel: 'CreatedBy',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5CreateDate',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'createDate',
headerAlign: 'center',
align: 'center',
columnLabel: 'Created Time',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 120
},
{
userId: this.$store.state.user.name,
functionId: 811001,
serialNumber: '811001Table5ValidTo',
tableId: '811001Table5',
tableName: '供应商合同',
columnProp: 'validTo',
headerAlign: 'center',
align: 'center',
columnLabel: 'Valid To',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100
},
],
tagNo:'',
tagNo1:'',
uploadLoading:false,
}
},
methods: {
// S
getBaseList (val, type) {
this.tagNo = val
this.tagNo1 = type
this.$nextTick(() => {
let strVal = ''
this.$refs.baseList.init(val, strVal)
})
},
/* 列表方法的回调 */
getBaseData (val) {
},
//
init(inData) {
//
this.searchData = JSON.parse(JSON.stringify(inData));
//
this.searchTable();
},
searchTable(){
getNewSupplierContract(this.searchData).then(({data}) => {
//
if (data && data.code == 0) {
this.dataList = data.rows
console.log(this.dataList)
} else {
this.dataList = [];
}
});
},
},
}
</script>
<style scoped lang="scss">
.rq .auto /deep/ .el-form-item__content{
height: auto;
line-height: 1.5;
}
</style>

306
src/views/modules/srmSupplier/supplierList.vue

@ -211,6 +211,312 @@ export default {
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1SupplierDocType',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "supplierDocType",
headerAlign: "center",
align: "left",
columnLabel: "供应商类别",
columnWidth: "80",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1TaxCode',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "taxCode",
headerAlign: "center",
align: "left",
columnLabel: "Tax Code",
columnWidth: "200",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1FaxNo',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "faxNo",
headerAlign: "center",
align: "left",
columnLabel: "Fax No",
columnWidth: "150",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1PhoneNo',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "phoneNo",
headerAlign: "center",
align: "left",
columnLabel: "Phone No",
columnWidth: "150",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Contact',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "contact",
headerAlign: "center",
align: "left",
columnLabel: "Contact",
columnWidth: "150",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Address',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "address",
headerAlign: "center",
align: "left",
columnLabel: "Address",
columnWidth: "250",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1PaymentTerm',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "paymentTerm",
headerAlign: "center",
align: "left",
columnLabel: "Payment Term",
columnWidth: "120",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1DeliveryTerm',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "deliveryTerm",
headerAlign: "center",
align: "left",
columnLabel: "Delivery Term",
columnWidth: "120",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Buyer',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "buyer",
headerAlign: "center",
align: "left",
columnLabel: "Buyer",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Currency',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "currency",
headerAlign: "center",
align: "left",
columnLabel: "Currency",
columnWidth: "80",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1ABC',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "abc",
headerAlign: "center",
align: "left",
columnLabel: "ABC Classification",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Active',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "active",
headerAlign: "center",
align: "center",
columnLabel: "Active",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1BankName',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "bankName",
headerAlign: "center",
align: "left",
columnLabel: "Bank Name",
columnWidth: "150",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1BankAccount',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "bankAccount",
headerAlign: "center",
align: "left",
columnLabel: "Bank Account",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1TaxNo',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "taxNo",
headerAlign: "center",
align: "left",
columnLabel: "Tax No",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Email',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "email",
headerAlign: "center",
align: "left",
columnLabel: "Email",
columnWidth: "150",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
},
{
userId: this.$store.state.user.name,
functionId: this.functionId,
serialNumber: '811001Table1Memo',
tableId: "811001Table1",
tableName: "供应商信息",
columnProp: "memo",
headerAlign: "center",
align: "left",
columnLabel: "Memo",
columnWidth: "100",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: false
}
],
columnArray3: [
{

Loading…
Cancel
Save