parent
2d0267c80d
commit
51d7a11f61
File diff suppressed because one or more lines are too long
@ -0,0 +1,177 @@
|
||||
<template>
|
||||
<transition name="el-zoom-in-center">
|
||||
<div class="JNPF-preview-main">
|
||||
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
|
||||
<div class="JNPF-common-page-header">
|
||||
<el-page-header @back="goBack"
|
||||
content="详情"/>
|
||||
<div class="options">
|
||||
<el-button @click="goBack">取 消</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-row :gutter="15" class=" main" :style="{margin: '0 auto',width: '100%'}">
|
||||
<el-form ref="formRef" :model="dataForm" size="small" label-width="150px" label-position="right" >
|
||||
<template v-if="!loading">
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item label="采购计划单号"
|
||||
prop="procurementNumber" >
|
||||
<p>{{dataForm.procurementNumber}}</p>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item label="单据日期"
|
||||
prop="procurementDate" >
|
||||
<p>{{dataForm.procurementDate}}</p>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item label="年月"
|
||||
prop="procurementYearMonth" >
|
||||
<p>{{dataForm.procurementYearMonth}}</p>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item label="物料需求计划单号"
|
||||
prop="planNumber" >
|
||||
<p>{{dataForm.planNumber}}</p>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="24" >
|
||||
<jnpf-form-tip-item label="备注"
|
||||
prop="reamrk" >
|
||||
<p>{{dataForm.reamrk}}</p>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="24" >
|
||||
<jnpf-form-tip-item label-width="0">
|
||||
<div class="JNPF-common-title">
|
||||
<h2>物料明细</h2>
|
||||
</div>
|
||||
<el-table :data="dataForm.tableField107" size='mini' >
|
||||
<el-table-column type="index" width="50" label="序号" align="center" />
|
||||
<el-table-column prop="materialCode" label="物料编码" >
|
||||
<template slot-scope="scope">
|
||||
<p>{{scope.row.materialCode}}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="materialName" label="物料名称" >
|
||||
<template slot-scope="scope">
|
||||
<p>{{scope.row.materialName}}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="materialType" label="物料类型" >
|
||||
<template slot-scope="scope">
|
||||
<p>{{scope.row.materialType}}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="specification" label="规格型号" >
|
||||
<template slot-scope="scope">
|
||||
<p>{{scope.row.specification}}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="lackNumber" label="欠缺量" >
|
||||
<template slot-scope="scope">
|
||||
<JnpfNumber v-model="scope.row.lackNumber"
|
||||
placeholder="数字文本" disabled
|
||||
:step="1" >
|
||||
</JnpfNumber>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="procurementPlanNumber" label="拟采购量" >
|
||||
<template slot-scope="scope">
|
||||
<JnpfNumber v-model="scope.row.procurementPlanNumber"
|
||||
placeholder="数字文本" disabled
|
||||
:step="1" >
|
||||
</JnpfNumber>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="unit" label="计量单位" >
|
||||
<template slot-scope="scope">
|
||||
<p>{{scope.row.unit}}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
</template>
|
||||
</el-form>
|
||||
</el-row>
|
||||
</div>
|
||||
</transition>
|
||||
</template>
|
||||
<script>
|
||||
import request from '@/utils/request'
|
||||
|
||||
import { getConfigData } from '@/api/onlineDev/visualDev'
|
||||
import jnpf from '@/utils/jnpf'
|
||||
import Detail from '@/views/basic/dynamicModel/list/detail'
|
||||
import { thousandsFormat } from "@/components/Generator/utils/index"
|
||||
export default {
|
||||
components: { Detail},
|
||||
props: [],
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
detailVisible: false,
|
||||
loading: false,
|
||||
|
||||
dataForm: {
|
||||
id :'',
|
||||
procurementNumber : '',
|
||||
procurementDate : '',
|
||||
procurementYearMonth : '',
|
||||
planNumber : "",
|
||||
reamrk : '',
|
||||
yysmaterialprocurementitemList:[],
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
created() {
|
||||
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
toDetail(defaultValue, modelId) {
|
||||
if (!defaultValue) return
|
||||
getConfigData(modelId).then(res => {
|
||||
if (!res.data || !res.data.formData) return
|
||||
let formData = JSON.parse(res.data.formData)
|
||||
formData.popupType = 'general'
|
||||
this.detailVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.Detail.init(formData, modelId, defaultValue)
|
||||
})
|
||||
})
|
||||
},
|
||||
dataInfo(dataAll){
|
||||
let _dataAll =dataAll
|
||||
this.dataForm = _dataAll
|
||||
},
|
||||
|
||||
goBack() {
|
||||
this.$emit('refresh')
|
||||
},
|
||||
init(id) {
|
||||
this.dataForm.id = id || 0;
|
||||
this.visible = true;
|
||||
this.$nextTick(() => {
|
||||
if(this.dataForm.id){
|
||||
this.loading = true
|
||||
request({
|
||||
url: '/api/example/YysMaterialProcurementPlan/detail/'+this.dataForm.id,
|
||||
method: 'get'
|
||||
}).then(res => {
|
||||
this.dataInfo(res.data)
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
</script>
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,606 @@
|
||||
|
||||
|
||||
|
||||
<template>
|
||||
<transition name="el-zoom-in-center">
|
||||
<div class="JNPF-preview-main">
|
||||
<div class="JNPF-common-page-header">
|
||||
<el-page-header @back="goBack"
|
||||
:content="!dataForm.id ? '新建':'编辑'"/>
|
||||
<div class="options">
|
||||
<el-dropdown class="dropdown" placement="bottom">
|
||||
<el-button style="width:70px">
|
||||
更 多<i class="el-icon-arrow-down el-icon--right"></i>
|
||||
</el-button>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<template v-if="dataForm.id">
|
||||
<el-dropdown-item @click.native="prev" :disabled='prevDis'>
|
||||
{{'上一条'}}
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item @click.native="next" :disabled='nextDis'>
|
||||
{{'下一条'}}
|
||||
</el-dropdown-item>
|
||||
</template>
|
||||
<el-dropdown-item type="primary" @click.native="dataFormSubmit(2)"
|
||||
:loading="continueBtnLoading" :disabled='btnLoading'>
|
||||
{{!dataForm.id ?'确定并新增':'确定并继续'}}</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
<el-button type="primary" @click="dataFormSubmit()" :loading="btnLoading" :disabled='continueBtnLoading'> 保 存</el-button>
|
||||
<el-button @click="goBack"> 取 消</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-row :gutter="15" class=" main" :style="{margin: '0 auto',width: '100%'}">
|
||||
<el-form ref="formRef" :model="dataForm" :rules="dataRule" size="small" label-width="150px" label-position="right" >
|
||||
<template v-if="!loading">
|
||||
<!-- 具体表单 -->
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item
|
||||
label="采购计划单号" prop="procurementNumber" >
|
||||
<JnpfInput v-model="dataForm.procurementNumber" @change="changeData('procurementNumber',-1)"
|
||||
placeholder="系统自动生成" readonly :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item
|
||||
label="单据日期" prop="procurementDate" >
|
||||
<JnpfDatePicker v-model="dataForm.procurementDate" @change="changeData('procurementDate',-1)"
|
||||
:startTime="dateTime(false,1,1,'','')" :endTime="dateTime(false,1,1,'','')" placeholder="请选择" clearable :style='{"width":"100%"}' type="date" format="yyyy-MM-dd" >
|
||||
</JnpfDatePicker>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item
|
||||
label="年月" prop="procurementYearMonth" >
|
||||
<JnpfDatePicker v-model="dataForm.procurementYearMonth" @change="changeData('procurementYearMonth',-1)"
|
||||
:startTime="dateTime(false,1,1,'','')" :endTime="dateTime(false,1,1,'','')" placeholder="请选择" clearable :style='{"width":"100%"}' type="month" format="yyyy-MM" >
|
||||
</JnpfDatePicker>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="8" >
|
||||
<jnpf-form-tip-item
|
||||
label="物料需求计划单号" prop="planNumber" >
|
||||
<JnpfPopupSelect v-model="dataForm.planNumber" @change="changeData('planNumber',-1)"
|
||||
:rowIndex="null" :formData="dataForm" :templateJson="interfaceRes.planNumber" placeholder="请选择" propsValue="plan_number" popupWidth="800px" popupTitle="选择数据" popupType="dialog" relationField='plan_number' field='planNumber' interfaceId="591169965881556997" :pageSize="20" :columnOptions="planNumbercolumnOptions" clearable :style='{"width":"100%"}'>
|
||||
</JnpfPopupSelect>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="24" >
|
||||
<jnpf-form-tip-item
|
||||
label="备注" prop="reamrk" >
|
||||
<JnpfTextarea v-model="dataForm.reamrk" @change="changeData('reamrk',-1)"
|
||||
placeholder="请输入" :style='{"width":"100%"}' true type="textarea" :autosize='{"minRows":4,"maxRows":4}' >
|
||||
</JnpfTextarea>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<el-col :span="24" >
|
||||
<jnpf-form-tip-item label-width="0">
|
||||
<div class="JNPF-common-title">
|
||||
<h2>物料明细</h2>
|
||||
</div>
|
||||
<el-table :data="dataForm.yysMaterialProcurementItemList" size='mini' >
|
||||
<el-table-column type="index" width="50" label="序号" align="center" />
|
||||
<el-table-column
|
||||
label="物料编码" prop="materialCode" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>物料编码
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInput v-model="scope.row.materialCode" @change="changeData('yysmaterialprocurementitem-materialCode',scope.$index)"
|
||||
placeholder="请输入" clearable :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="物料名称" prop="materialName" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>物料名称
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInput v-model="scope.row.materialName" @change="changeData('yysmaterialprocurementitem-materialName',scope.$index)"
|
||||
placeholder="请输入" clearable :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="物料类型" prop="materialType" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>物料类型
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInput v-model="scope.row.materialType" @change="changeData('yysmaterialprocurementitem-materialType',scope.$index)"
|
||||
placeholder="请输入" clearable :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="规格型号" prop="specification" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>规格型号
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInput v-model="scope.row.specification" @change="changeData('yysmaterialprocurementitem-specification',scope.$index)"
|
||||
placeholder="请输入" clearable :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="欠缺量" prop="lackNumber" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>欠缺量
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInputNumber v-model="scope.row.lackNumber" @change="changeData('yysmaterialprocurementitem-lackNumber',scope.$index)"
|
||||
placeholder="数字文本" :precision="2" :step="1" >
|
||||
</JnpfInputNumber>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="拟采购量" prop="procurementPlanNumber" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>拟采购量
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInputNumber v-model="scope.row.procurementPlanNumber" @change="changeData('yysmaterialprocurementitem-procurementPlanNumber',scope.$index)"
|
||||
placeholder="数字文本" :precision="2" :step="1" >
|
||||
</JnpfInputNumber>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="计量单位" prop="unit" >
|
||||
<template slot="header" v-if="false" >
|
||||
<span class="required-sign" >*</span>计量单位
|
||||
</template>
|
||||
<template slot-scope="scope">
|
||||
<JnpfInput v-model="scope.row.unit" @change="changeData('yysmaterialprocurementitem-unit',scope.$index)"
|
||||
placeholder="请输入" clearable :style='{"width":"100%"}'>
|
||||
</JnpfInput>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="50" >
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" class="JNPF-table-delBtn" @click="delyysMaterialProcurementItemList(scope.$index)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="table-actions" @click="addyysMaterialProcurementItemList()" >
|
||||
<el-button type="text" icon="el-icon-plus">添加</el-button>
|
||||
</div>
|
||||
</jnpf-form-tip-item>
|
||||
</el-col>
|
||||
<!-- 表单结束 -->
|
||||
</template>
|
||||
</el-form>
|
||||
<SelectDialog v-if="selectDialogVisible" :config="currTableConf" :formData="dataForm"
|
||||
ref="selectDialog" @select="addForSelect" @close="selectDialogVisible=false"/>
|
||||
</el-row>
|
||||
</div>
|
||||
</transition>
|
||||
</template>
|
||||
|
||||
|
||||
<script>
|
||||
import request from '@/utils/request'
|
||||
import {mapGetters} from "vuex";
|
||||
import { getDataInterfaceRes } from '@/api/systemData/dataInterface'
|
||||
import { getDictionaryDataSelector } from '@/api/systemData/dictionary'
|
||||
import { getDefaultCurrentValueUserId } from '@/api/permission/user'
|
||||
import { getDefaultCurrentValueDepartmentId } from '@/api/permission/organize'
|
||||
import { getDateDay, getLaterData, getBeforeData, getBeforeTime, getLaterTime } from '@/components/Generator/utils/index.js'
|
||||
import { thousandsFormat } from "@/components/Generator/utils/index"
|
||||
export default {
|
||||
components: { },
|
||||
props: [],
|
||||
data() {
|
||||
return {
|
||||
dataFormSubmitType: 0,
|
||||
continueBtnLoading: false,
|
||||
index: 0,
|
||||
prevDis: false,
|
||||
nextDis: false,
|
||||
allList: [],
|
||||
visible: false,
|
||||
loading: false,
|
||||
btnLoading: false,
|
||||
formRef: 'formRef',
|
||||
setting:{},
|
||||
eventType: '',
|
||||
userBoxVisible:false,
|
||||
selectDialogVisible: false,
|
||||
currTableConf:{},
|
||||
dataValueAll:{},
|
||||
addTableConf:{
|
||||
yysMaterialProcurementItemList :{"popupType":"dialog","hasPage":true,"popupTitle":"选择数据","pageSize":20,"columnOptions":[],"interfaceId":"","interfaceName":"","relationOptions":[],"templateJson":[],"popupWidth":"800px"},
|
||||
},
|
||||
//可选范围默认值
|
||||
ableAll:{
|
||||
},
|
||||
tableRows:{
|
||||
yysMaterialProcurementItemList:{
|
||||
materialCode : '',
|
||||
materialCodeOptions:[],
|
||||
materialName : '',
|
||||
materialNameOptions:[],
|
||||
materialType : '',
|
||||
materialTypeOptions:[],
|
||||
specification : '',
|
||||
specificationOptions:[],
|
||||
lackNumber : undefined,
|
||||
lackNumberOptions:[],
|
||||
procurementPlanNumber : undefined,
|
||||
procurementPlanNumberOptions:[],
|
||||
unit : '',
|
||||
unitOptions:[],
|
||||
enabledmark:undefined
|
||||
},
|
||||
},
|
||||
Vmodel:"",
|
||||
currVmodel:"",
|
||||
dataForm: {
|
||||
procurementNumber : undefined,
|
||||
procurementDate : undefined,
|
||||
procurementYearMonth : undefined,
|
||||
planNumber : undefined,
|
||||
reamrk : undefined,
|
||||
yysMaterialProcurementItemList:[],
|
||||
},
|
||||
tableRequiredData: {},
|
||||
dataRule:
|
||||
{
|
||||
},
|
||||
planNumbercolumnOptions:[ {"label":"物料需求计划单","value":"plan_number"}, {"label":"物料信息","value":"material_names"}, {"label":"年月","value":"plan_year_month"}, {"label":"单据日期","value":"order_date"}, {"label":"备注","value":"reamrk"},],
|
||||
childIndex:-1,
|
||||
isEdit:false,
|
||||
interfaceRes: {
|
||||
procurementNumber:[] ,
|
||||
procurementDate:[] ,
|
||||
procurementYearMonth:[] ,
|
||||
planNumber:[] ,
|
||||
reamrk:[] ,
|
||||
yysmaterialprocurementitemmaterialCode: [] ,
|
||||
yysmaterialprocurementitemmaterialName: [] ,
|
||||
yysmaterialprocurementitemmaterialType: [] ,
|
||||
yysmaterialprocurementitemspecification: [] ,
|
||||
yysmaterialprocurementitemlackNumber: [] ,
|
||||
yysmaterialprocurementitemprocurementPlanNumber: [] ,
|
||||
yysmaterialprocurementitemunit: [] ,
|
||||
},
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['userInfo'])
|
||||
},
|
||||
watch: {},
|
||||
created() {
|
||||
this.dataAll()
|
||||
this.initDefaultData()
|
||||
this.dataValueAll = JSON.parse(JSON.stringify(this.dataForm))
|
||||
},
|
||||
mounted() {},
|
||||
methods: {
|
||||
prev() {
|
||||
this.index--
|
||||
if (this.index === 0) {
|
||||
this.prevDis = true
|
||||
}
|
||||
this.nextDis = false
|
||||
for (let index = 0; index < this.allList.length; index++) {
|
||||
const element = this.allList[index];
|
||||
if (this.index == index) {
|
||||
this.getInfo(element.id)
|
||||
}
|
||||
}
|
||||
},
|
||||
next() {
|
||||
this.index++
|
||||
if (this.index === this.allList.length - 1) {
|
||||
this.nextDis = true
|
||||
}
|
||||
this.prevDis = false
|
||||
for (let index = 0; index < this.allList.length; index++) {
|
||||
const element = this.allList[index];
|
||||
if (this.index == index) {
|
||||
this.getInfo(element.id)
|
||||
}
|
||||
}
|
||||
},
|
||||
getInfo(id) {
|
||||
request({
|
||||
url: '/api/example/YysMaterialProcurementPlan/'+ id,
|
||||
method: 'get'
|
||||
}).then(res => {
|
||||
this.dataInfo(res.data)
|
||||
});
|
||||
},
|
||||
goBack() {
|
||||
this.visible = false
|
||||
this.$emit('refreshDataList', true)
|
||||
},
|
||||
changeData(model, index) {
|
||||
this.isEdit = false
|
||||
this.childIndex = index
|
||||
let modelAll = model.split("-");
|
||||
let faceMode = "";
|
||||
for (let i = 0; i < modelAll.length; i++) {
|
||||
faceMode += modelAll[i];
|
||||
}
|
||||
for (let key in this.interfaceRes) {
|
||||
if (key != faceMode) {
|
||||
let faceReList = this.interfaceRes[key]
|
||||
for (let i = 0; i < faceReList.length; i++) {
|
||||
if (faceReList[i].relationField == model) {
|
||||
let options = 'get' + key + 'Options';
|
||||
if(this[options]){
|
||||
this[options]()
|
||||
}
|
||||
this.changeData(key, index)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
changeDataFormData(type, data, model,index,defaultValue) {
|
||||
if(!this.isEdit) {
|
||||
if (type == 2) {
|
||||
for (let i = 0; i < this.dataForm[data].length; i++) {
|
||||
if (index == -1) {
|
||||
this.dataForm[data][i][model] = defaultValue
|
||||
} else if (index == i) {
|
||||
this.dataForm[data][i][model] = defaultValue
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.dataForm[data] = defaultValue
|
||||
}
|
||||
}
|
||||
},
|
||||
dataAll(){
|
||||
},
|
||||
yysmaterialprocurementitemExist() {
|
||||
let isOk = true;
|
||||
for(let i=0;i<this.dataForm.yysMaterialProcurementItemList.length;i++){
|
||||
const e = this.dataForm.yysMaterialProcurementItemList[i];
|
||||
}
|
||||
return isOk;
|
||||
},
|
||||
goBack() {
|
||||
this.$emit('refresh')
|
||||
},
|
||||
clearData(){
|
||||
this.dataForm = JSON.parse(JSON.stringify(this.dataValueAll))
|
||||
},
|
||||
init(id,isDetail,allList) {
|
||||
this.prevDis = false
|
||||
this.nextDis = false
|
||||
this.allList = allList || []
|
||||
if (allList.length) {
|
||||
this.index = this.allList.findIndex(item => item.id === id)
|
||||
if (this.index == 0) {
|
||||
this.prevDis = true
|
||||
}
|
||||
if (this.index == this.allList.length - 1) {
|
||||
this.nextDis = true
|
||||
}
|
||||
} else {
|
||||
this.prevDis = true
|
||||
this.nextDis = true
|
||||
}
|
||||
this.dataForm.id = id || 0;
|
||||
this.visible = true;
|
||||
this.$nextTick(() => {
|
||||
if(this.dataForm.id){
|
||||
this.loading = true
|
||||
request({
|
||||
url: '/api/example/YysMaterialProcurementPlan/'+this.dataForm.id,
|
||||
method: 'get'
|
||||
}).then(res => {
|
||||
this.dataInfo(res.data)
|
||||
this.loading = false
|
||||
});
|
||||
}else{
|
||||
this.clearData()
|
||||
this.initDefaultData()
|
||||
}
|
||||
});
|
||||
this.$store.commit('generator/UPDATE_RELATION_DATA', {})
|
||||
},
|
||||
//初始化默认数据
|
||||
initDefaultData() {
|
||||
|
||||
},
|
||||
// 表单提交
|
||||
dataFormSubmit(type) {
|
||||
this.dataFormSubmitType = type ? type : 0
|
||||
this.$refs['formRef'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (!this.yysmaterialprocurementitemExist()) return
|
||||
this.request()
|
||||
}
|
||||
})
|
||||
},
|
||||
request() {
|
||||
let _data =this.dataList()
|
||||
if (this.dataFormSubmitType == 2) {
|
||||
this.continueBtnLoading = true
|
||||
} else {
|
||||
this.btnLoading = true
|
||||
}
|
||||
if (!this.dataForm.id) {
|
||||
request({
|
||||
url: '/api/example/YysMaterialProcurementPlan',
|
||||
method: 'post',
|
||||
data: _data
|
||||
}).then((res) => {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
if (this.dataFormSubmitType == 2) {
|
||||
this.$nextTick(() => {
|
||||
this.clearData()
|
||||
this.initDefaultData()
|
||||
})
|
||||
this.continueBtnLoading = false
|
||||
return
|
||||
}
|
||||
this.visible = false
|
||||
this.btnLoading = false
|
||||
this.$emit('refresh', true)
|
||||
}
|
||||
})
|
||||
}).catch(()=>{
|
||||
this.btnLoading = false
|
||||
this.continueBtnLoading = false
|
||||
})
|
||||
}else{
|
||||
request({
|
||||
url: '/api/example/YysMaterialProcurementPlan/'+this.dataForm.id,
|
||||
method: 'PUT',
|
||||
data: _data
|
||||
}).then((res) => {
|
||||
this.$message({
|
||||
message: res.msg,
|
||||
type: 'success',
|
||||
duration: 1000,
|
||||
onClose: () => {
|
||||
if (this.dataFormSubmitType == 2) return this.continueBtnLoading = false
|
||||
this.visible = false
|
||||
this.btnLoading = false
|
||||
this.$emit('refresh', true)
|
||||
}
|
||||
})
|
||||
}).catch(()=>{
|
||||
this.btnLoading = false
|
||||
this.continueBtnLoading = false
|
||||
})
|
||||
}
|
||||
},
|
||||
addyysMaterialProcurementItemList(){
|
||||
let item = {
|
||||
materialCode:undefined,
|
||||
materialName:undefined,
|
||||
materialType:undefined,
|
||||
specification:undefined,
|
||||
lackNumber:undefined,
|
||||
procurementPlanNumber:undefined,
|
||||
unit:undefined,
|
||||
}
|
||||
this.getyysMaterialProcurementItemList(item)
|
||||
},
|
||||
delyysMaterialProcurementItemList(index) {
|
||||
this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
this.dataForm.yysMaterialProcurementItemList.splice(index, 1);
|
||||
}).catch(() => {
|
||||
});
|
||||
},
|
||||
getyysMaterialProcurementItemList(value){
|
||||
let item={...this.tableRows.yysMaterialProcurementItemList,...value}
|
||||
this.dataForm.yysMaterialProcurementItemList.push(item)
|
||||
this.childIndex=this.dataForm.yysMaterialProcurementItemList.length-1
|
||||
this.isEdit = true
|
||||
this.isEdit = false
|
||||
this.childIndex = -1
|
||||
},
|
||||
openSelectDialog(key) {
|
||||
this.currTableConf=this.addTableConf[key]
|
||||
this.currVmodel=key
|
||||
this.selectDialogVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.selectDialog.init()
|
||||
})
|
||||
},
|
||||
addForSelect(data) {
|
||||
for (let i = 0; i < data.length; i++) {
|
||||
let t = data[i]
|
||||
if(this['get'+this.currVmodel]){
|
||||
this['get'+this.currVmodel](t)
|
||||
}
|
||||
}
|
||||
},
|
||||
dateTime(timeRule, timeType, timeTarget, timeValueData, dataValue) {
|
||||
let timeDataValue = null;
|
||||
let timeValue = Number(timeValueData)
|
||||
if (timeRule) {
|
||||
if (timeType == 1) {
|
||||
timeDataValue = timeValue
|
||||
} else if (timeType == 2) {
|
||||
timeDataValue = dataValue
|
||||
} else if (timeType == 3) {
|
||||
timeDataValue = new Date().getTime()
|
||||
} else if (timeType == 4) {
|
||||
let previousDate = '';
|
||||
if (timeTarget == 1 || timeTarget == 2) {
|
||||
previousDate = getDateDay(timeTarget, timeType, timeValue)
|
||||
timeDataValue = new Date(previousDate).getTime()
|
||||
} else if (timeTarget == 3) {
|
||||
previousDate = getBeforeData(timeValue)
|
||||
timeDataValue = new Date(previousDate).getTime()
|
||||
} else {
|
||||
timeDataValue = getBeforeTime(timeTarget, timeValue).getTime()
|
||||
}
|
||||
} else if (timeType == 5) {
|
||||
let previousDate = '';
|
||||
if (timeTarget == 1 || timeTarget == 2) {
|
||||
previousDate = getDateDay(timeTarget, timeType, timeValue)
|
||||
timeDataValue = new Date(previousDate).getTime()
|
||||
} else if (timeTarget == 3) {
|
||||
previousDate = getLaterData(timeValue)
|
||||
timeDataValue = new Date(previousDate).getTime()
|
||||
} else {
|
||||
timeDataValue = getLaterTime(timeTarget, timeValue).getTime()
|
||||
}
|
||||
}
|
||||
}
|
||||
return timeDataValue;
|
||||
},
|
||||
time(timeRule, timeType, timeTarget, timeValue, formatType, dataValue) {
|
||||
let format = formatType == 'HH:mm' ? 'HH:mm:00' : formatType
|
||||
let timeDataValue = null
|
||||
if (timeRule) {
|
||||
if (timeType == 1) {
|
||||
timeDataValue = timeValue || '00:00:00'
|
||||
if (timeDataValue.split(':').length == 3) {
|
||||
timeDataValue = timeDataValue
|
||||
} else {
|
||||
timeDataValue = timeDataValue + ':00'
|
||||
}
|
||||
} else if (timeType == 2) {
|
||||
timeDataValue = dataValue
|
||||
} else if (timeType == 3) {
|
||||
timeDataValue = this.jnpf.toDate(new Date(), format)
|
||||
} else if (timeType == 4) {
|
||||
let previousDate = '';
|
||||
previousDate = getBeforeTime(timeTarget, timeValue)
|
||||
timeDataValue = this.jnpf.toDate(previousDate, format)
|
||||
} else if (timeType == 5) {
|
||||
let previousDate = '';
|
||||
previousDate = getLaterTime(timeTarget, timeValue)
|
||||
timeDataValue = this.jnpf.toDate(previousDate, format)
|
||||
}
|
||||
}
|
||||
return timeDataValue;
|
||||
},
|
||||
dataList(){
|
||||
var _data = this.dataForm;
|
||||
return _data;
|
||||
},
|
||||
dataInfo(dataAll){
|
||||
let _dataAll =dataAll
|
||||
this.dataForm = _dataAll
|
||||
this.isEdit = true
|
||||
this.dataAll()
|
||||
for(let i=0;i<_dataAll.yysMaterialProcurementItemList.length;i++){
|
||||
this.childIndex = i
|
||||
}
|
||||
this.childIndex=-1
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
</script>
|
File diff suppressed because one or more lines are too long
Loading…
Reference in new issue