首页领料任务催办功能完善,页面优化等问题

This commit is contained in:
BianLzhaoMin 2024-06-14 17:24:17 +08:00
parent e4e4ce6dea
commit 2e0814935e
10 changed files with 592 additions and 443 deletions

View File

@ -54,11 +54,11 @@
style="width: 240px"
></el-input>
</el-form-item>
<el-form-item label="设备类型" prop="selDeviceTypeChangeValue">
<el-form-item label="设备类型" prop="companyId">
<el-select
@change="selDeviceTypeChange"
style="width: 240px"
v-model="selDeviceTypeChangeValue"
v-model="queryParams.companyId"
:disabled="leaseApplyDetails.length > 0"
placeholder="请选择设备类型"
clearable
@ -399,6 +399,13 @@ export default {
type: 'number',
},
],
companyId: [
{
required: true,
message: '请选择设备类型',
trigger: 'change',
},
],
// leasePerson: [
// {
// required: true, message: '', trigger: 'blur',
@ -557,6 +564,7 @@ export default {
this.queryParams.examineStatusId = '32'
}
this.queryParams.unitId = data.unitId
this.queryParams.companyId = data.companyId
this.queryParams.proId = data.proId
this.queryParams.leaseApplyInfo.phone =
data.leaseApplyInfoList[0].phone
@ -586,6 +594,7 @@ export default {
this.queryParams.examineStatusId = '32'
}
this.queryParams.unitId = data.unitId
this.queryParams.companyId = data.companyId
this.queryParams.proId = data.proId
this.queryParams.leaseApplyInfo.phone =
data.leaseApplyInfoList[0].phone
@ -699,7 +708,7 @@ export default {
throw e
}
this.queryParams.createBy = this.user.userName
this.queryParams.companyId = this.user.companyId
// this.queryParams.companyId = this.user.companyId
this.queryParams.userId = this.user.userId
let res

View File

@ -255,7 +255,9 @@
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<span>{{ scope.row.leaseApplyInfoList[0].remark }}</span>
<span>{{
scope.row.leaseApplyInfoList[0].remark || ''
}}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="160">

View File

@ -179,7 +179,7 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="领料人"
label="现场领料人"
align="center"
prop="leasePerson"
:show-overflow-tooltip="true"
@ -191,7 +191,7 @@
:show-overflow-tooltip="true"
/>
<el-table-column
label="申请人"
label="领料申请人"
align="center"
prop="applyFor"
:show-overflow-tooltip="true"

View File

@ -6,7 +6,7 @@
:pageContent="pageContent"
@goBack="goBack"
/>
<keep-alive include="Home">
<keep-alive :include="includeCom">
<component
:is="isShowComponent"
:isView="isView"
@ -35,11 +35,13 @@ export default {
pageContent: '',
auditingTaskId: '',
isView: false,
includeCom: '',
}
},
methods: {
/* 审核按钮 */
pickingAuditing(taskId) {
this.includeCom = ''
this.auditingTaskId = taskId
this.isView = false
this.pageContent = '领料任务审批'
@ -47,6 +49,7 @@ export default {
},
/* 查看按钮 */
pickingView(taskId) {
this.includeCom = 'Home'
this.auditingTaskId = taskId
this.isView = true
this.pageContent = '领料审批详情'

View File

@ -51,10 +51,23 @@
style="width: 240px"
></el-input>
</el-form-item>
<el-form-item label="设备类型" prop="selDeviceTypeChangeValue">
<el-select
@change="selDeviceTypeChange"
style="width: 240px"
v-model="selDeviceTypeChangeValue"
:disabled="leaseApplyDetails.length > 0"
placeholder="请选择设备类型"
clearable
>
<el-option label="机具设备" value="101"></el-option>
<el-option label="调试设备" value="102"></el-option>
</el-select>
</el-form-item>
<el-form-item label="物品类型" prop="status">
<el-cascader
placeholder="请输入物品类型"
:options="deviceTypeTree"
:options="deviceTypeTreeNew"
:props="deviceTypeTreeProps"
v-model="deviceType"
@change="deviceTypeChange"
@ -466,8 +479,11 @@ export default {
},
companyId: '',
createBy: '',
userId: '',
isEdit: 'true',
rowId: '',
selDeviceTypeChangeValue: '',
deviceTypeTreeNew: [],
}
},
mounted() {
@ -488,6 +504,7 @@ export default {
getInfo().then((res) => {
this.companyId = res.user.companyId
this.createBy = res.user.userName
this.userId = res.user.userId
})
},
computed: {
@ -722,6 +739,7 @@ export default {
}
this.queryParams.createBy = this.user.name
this.queryParams.companyId = this.companyId
this.queryParams.userId = this.userId
this.queryParams.backApplyInfo = {
backPerson: this.queryParams.backPerson,
phone: this.queryParams.phone,
@ -733,6 +751,7 @@ export default {
let params = {
companyId: this.companyId,
createBy: this.createBy,
userId: this.userId,
id: this.rowId,
agreementId: this.queryParams.agreementId,
backApplyInfo: this.queryParams.backApplyInfo,
@ -754,6 +773,7 @@ export default {
let params = {
companyId: this.companyId,
createBy: this.createBy,
userId: this.userId,
agreementId: this.queryParams.agreementId,
backApplyInfo: this.queryParams.backApplyInfo,
backApplyDetails:
@ -894,6 +914,17 @@ export default {
template.useNum = node.data.useNum
return template
},
//
selDeviceTypeChange(val) {
console.log(val, '设备类型选择-----')
console.log(this.deviceTypeTree, '树形数据源--')
this.deviceTypeTreeNew = this.deviceTypeTree.filter(
(e) => e.companyId == val,
)
},
},
}
</script>

View File

@ -285,7 +285,7 @@
size="medium"
type="text"
icon="el-icon-edit"
v-if="scope.row.applyStatus == '0'"
v-if="scope.row.taskStatus == '37'"
v-hasPermi="['return:auditing:auditing']"
@click="handleUpdate(scope.row, 'update')"
>

View File

View File

@ -203,12 +203,17 @@
type="text"
icon="el-icon-edit-outline"
style="color: #e6a23c"
v-if="row.taskTypeId == 29"
v-if="
row.taskTypeId == 29 &&
userId === parseInt(row.createBy)
"
@click="
handleUrging(
row.taskTypeId,
parseInt(row.taskTypeId), //
parseInt(row.companyId), //
row.taskEvent, //
parseInt(row.createBy), //
row.taskCode,
row.taskEvent,
row.taskId,
)
"
@ -267,6 +272,22 @@
>
</div>
</el-dialog>
<!-- 催办详情 -->
<DialogModel
:dialogConfig="dialogConfig"
@closeDialogOuter="closeDialogOuter"
>
<template slot="outerContent">
<el-tag
style="margin-right: 8px"
v-for="item in toPersonInfoDetails"
:key="item.v_user_id"
>
{{ item.v_name }}
</el-tag>
</template>
</DialogModel>
</div>
</template>
@ -277,8 +298,13 @@ import {
getToPersonInfoAp,
sendUrgingMessageApi,
} from '@/api/index'
import DialogModel from '@/components/DialogModel'
export default {
name: 'myIndex',
components: {
DialogModel,
},
data() {
return {
//
@ -356,6 +382,16 @@ export default {
//
bmNoticeInfoList: [],
},
dialogConfig: {
outerWidth: '50%',
outerTitle: '催办人详情',
outerVisible: false,
},
userId: parseInt(sessionStorage.getItem('userId')),
deptId: parseInt(sessionStorage.getItem('deptId')),
toPersonInfoDetails: [],
}
},
created() {
@ -422,18 +458,30 @@ export default {
},
/* 催办按钮 */
async handleUrging(id, taskCode, taskStatus, taskId) {
async handleUrging(
taskTypeId,
companyId,
taskStatus,
createBy,
taskCode,
taskId,
) {
const personParams = {
taskTypeId, //
companyId, //
taskStatus, //
createBy, //
deptId: this.deptId, //
}
/* 先获取催办人信息 */
const { data: res } = await getToPersonInfoAp({
taskStatus,
})
const { data: res } = await getToPersonInfoAp(personParams)
res.map((e) => {
this.toPersonInfo.push({
noticeUser: e.userId,
phone: e.phonenumber,
modelName: '领料催办',
companyId: e.companyId,
v_name: e.nickName,
v_name: e.userName,
})
})
@ -465,6 +513,31 @@ export default {
this.toPersonInfo = []
this.urgingDialogVisible = false
},
/* 查看催办人详情 */
async handleViewDetails(taskTypeId, companyId, taskStatus, createBy) {
this.toPersonInfoDetails = []
const personParams = {
taskTypeId, //
companyId, //
taskStatus, //
createBy, //
deptId: this.deptId, //
}
/* 先获取催办人信息 */
const { data: res } = await getToPersonInfoAp(personParams)
res.map((e) => {
this.toPersonInfoDetails.push({
v_user_id: e.userId,
v_name: e.userName,
})
})
this.dialogConfig.outerVisible = true
},
/* 关闭外层弹框 */
closeDialogOuter(val) {
this.dialogConfig.outerVisible = val
},
},
}
</script>

View File

@ -1,36 +1,44 @@
<template>
<el-dialog
v-dialogDrag
v-loading.fullscreen.lock="fullscreenLoading"
:before-close="cancel"
:title="dialogTitle"
:visible.sync="dialogShowFlag"
append-to-body
width="600px"
>
<div class="form_box_one" v-if="!isShow">
<el-form ref="dynamicValidateForm" :model="dynamicValidateForm" class="demo-dynamic" label-width="90px">
<div class="bor_box">
<p class="form_box_title">编码管理设备</p>
<div class="form_box_line"></div>
<div class="form_box_item">
<el-form-item label="报废原因:">
<el-input
v-model="dynamicValidateForm.scrapReason"
placeholder="请输入"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group style="width: 350px" v-model="dynamicValidateForm.scrapType">
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="损坏照片:">
<!-- <uploadImage
<el-dialog
v-dialogDrag
v-loading.fullscreen.lock="fullscreenLoading"
:before-close="cancel"
:title="dialogTitle"
:visible.sync="dialogShowFlag"
append-to-body
width="600px"
>
<div class="form_box_one" v-if="!isShow">
<el-form
ref="dynamicValidateForm"
:model="dynamicValidateForm"
class="demo-dynamic"
label-width="90px"
>
<div class="bor_box">
<p class="form_box_title">编码管理设备</p>
<div class="form_box_line"></div>
<div class="form_box_item">
<el-form-item label="报废原因:">
<el-input
v-model="dynamicValidateForm.scrapReason"
placeholder="请输入"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group
style="width: 350px"
v-model="dynamicValidateForm.scrapType"
>
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="损坏照片:">
<!-- <uploadImage
style="width: 250px"
:value="fileList"
:limit="limit"
@ -39,75 +47,87 @@
:isShowTip="isShowTip"
@fileListChange="fileListChange"
></uploadImage> -->
<upload
style="width: 350px"
:file-list="fileList"
:action-url="actionUrl"
:limit="3"
:multiple="true"
@remove="handleRemove"
@preview="handlePreview"
@before-remove="beforeRemove"
@success="handleSuccess"
>
<template>
<el-row class="upload-tip">
<el-button size="small" type="primary">点击上传</el-button>
</el-row>
<el-row class="upload-tip">
<span class="tip-text">请上传jpgjpegpng格式的图片单张图片大小不可超过5M最多可上传3张</span>
</el-row>
</template>
</upload>
</el-form-item>
</div>
<upload
style="width: 350px"
:file-list="fileList"
:action-url="actionUrl"
:limit="3"
:multiple="true"
@remove="handleRemove"
@preview="handlePreview"
@before-remove="beforeRemove"
@success="handleSuccess"
>
<template>
<el-row class="upload-tip">
<el-button size="small" type="primary"
>点击上传</el-button
>
</el-row>
<el-row class="upload-tip">
<span class="tip-text"
>请上传jpgjpegpng格式的图片单张图片大小不可超过5M最多可上传3张</span
>
</el-row>
</template>
</upload>
</el-form-item>
</div>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取消</el-button>
<el-button type="primary" @click="submit">保存</el-button>
</div>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取消</el-button>
<el-button type="primary" @click="submit">保存</el-button>
</div>
</div>
<div class="form_box_two" v-if="isShow">
<el-form ref="dynamicValidateFormTwo" :model="dynamicValidateFormTwo" class="demo-dynamic" label-width="100px">
<p class="form_box_title">数量管理设备</p>
<div class="form_box_line"></div>
<div class="form_box_item">
<el-form-item
label="报废数量:"
prop="scrapNum"
:rules="{
required: true,
validator: numberIntegerValidator,
trigger: 'blur',
}"
>
<el-input
v-model="dynamicValidateFormTwo.scrapNum"
placeholder="请输入"
size="small"
maxlength="10"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="报废原因:">
<el-input
v-model="dynamicValidateFormTwo.scrapReason"
placeholder="请输入"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group style="width: 350px" v-model="dynamicValidateFormTwo.scrapType">
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
</el-form-item>
<div class="form_box_two" v-if="isShow">
<el-form
ref="dynamicValidateFormTwo"
:model="dynamicValidateFormTwo"
class="demo-dynamic"
label-width="100px"
>
<p class="form_box_title">数量管理设备</p>
<div class="form_box_line"></div>
<div class="form_box_item">
<el-form-item
label="报废数量:"
prop="scrapNum"
:rules="{
required: true,
validator: numberIntegerValidator,
trigger: 'blur',
}"
>
<el-input
v-model="dynamicValidateFormTwo.scrapNum"
placeholder="请输入"
size="small"
maxlength="10"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="报废原因:">
<el-input
v-model="dynamicValidateFormTwo.scrapReason"
placeholder="请输入"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group
style="width: 350px"
v-model="dynamicValidateFormTwo.scrapType"
>
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="损坏照片:">
<!-- <uploadImage
<el-form-item label="损坏照片:">
<!-- <uploadImage
style="width: 250px"
:value="fileList"
:limit="limit"
@ -116,368 +136,379 @@
:isShowTip="isShowTip"
@fileListChange="fileListChange"
></uploadImage> -->
<upload
style="width: 350px"
:file-list="fileList"
:action-url="actionUrl"
:limit="3"
:multiple="true"
@remove="handleRemove"
@preview="handlePreview"
@before-remove="beforeRemove"
@success="handleSuccess"
>
<template>
<el-row class="upload-tip">
<el-button size="small" type="primary">点击上传</el-button>
</el-row>
<el-row class="upload-tip">
<span class="tip-text">请上传jpgjpegpng格式的图片单张图片大小不可超过5M最多可上传3张</span>
</el-row>
</template>
</upload>
</el-form-item>
<upload
style="width: 350px"
:file-list="fileList"
:action-url="actionUrl"
:limit="3"
:multiple="true"
@remove="handleRemove"
@preview="handlePreview"
@before-remove="beforeRemove"
@success="handleSuccess"
>
<template>
<el-row class="upload-tip">
<el-button size="small" type="primary"
>点击上传</el-button
>
</el-row>
<el-row class="upload-tip">
<span class="tip-text"
>请上传jpgjpegpng格式的图片单张图片大小不可超过5M最多可上传3张</span
>
</el-row>
</template>
</upload>
</el-form-item>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取消</el-button>
<el-button type="primary" @click="submitTwo">保存</el-button>
</div>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取消</el-button>
<el-button type="primary" @click="submitTwo">保存</el-button>
</div>
</div>
</el-dialog>
</el-dialog>
</template>
<script>
import uploadImage from './uploadImage.vue'
import upload from './upload.vue'
import { submitRepairApplyApi, getRepairMaTypeListApi } from '@/api/repairTest/repair'
import {
submitRepairApplyApi,
getRepairMaTypeListApi,
} from '@/api/repairTest/repair'
import { getInfo } from '@/api/login'
export default {
components: {
uploadImage,
upload,
},
props: {
//
isShowFlag: {
type: Boolean,
default: false,
components: {
uploadImage,
upload,
},
//
priKey: {
type: [String, Number],
default: '',
props: {
//
isShowFlag: {
type: Boolean,
default: false,
},
//
priKey: {
type: [String, Number],
default: '',
},
//
dialogTitle: {
type: String,
default: '',
},
rowObj: {
type: Object,
default: {},
},
},
//
dialogTitle: {
type: String,
default: '',
watch: {
isShowFlag(val) {
if (val) {
this.init()
}
},
},
rowObj: {
type: Object,
default: {},
computed: {
dialogShowFlag: {
get() {
return this.isShowFlag
},
set(v) {
this.$emit('update:isShowFlag', v)
},
},
},
},
watch: {
isShowFlag(val) {
if (val) {
this.init()
}
},
},
computed: {
dialogShowFlag: {
get() {
return this.isShowFlag
},
set(v) {
this.$emit('update:isShowFlag', v)
},
},
},
data() {
return {
// actionUrl: process.env.VUE_APP_BASE_API + '/sgzb-system/sys/file/upload',
actionUrl: process.env.VUE_APP_BASE_API + '/system/sys/file/upload',
// uploadTip: 'jpg/png500kb',
fileIds: [],
fileList: [],
limit: 3,
fileSize: 5,
fileType: ['png', 'jpg', 'jpeg'],
isShowTip: true,
fullscreenLoading: false,
dynamicValidateForm: {},
dynamicValidateFormTwo: {},
taskId: '',
companyId: '',
isShow: true,
}
},
mounted() {
this.$eventBus.$on('taskId', taskId => {
this.taskId = taskId
})
getInfo().then(res => {
this.companyId = res.user.companyId
})
},
methods: {
handleRemove(file, fileList) {
this.fileList = fileList
console.log('fileListRemove', fileList)
fileList.map(item => {
this.fileIds = fileList.map(item => item.response.data.id).join(',')
})
},
handlePreview(file) {
console.log('file')
},
beforeRemove(file, fileList) {
// return this.$confirm(` ${file.name}`);
},
handleSuccess(response, fileList) {
this.fileList = fileList
fileList.map(item => {
this.fileIds = fileList.map(item => item.response.data.id).join(',')
})
},
//--
numberIntegerValidator(rule, value, callback) {
const reg = /^\+?[1-9][0-9]*$/
if ((value && reg.test(value)) && value <= this.rowObj.repairNum) {
callback()
} else {
callback(new Error('请输入大于0并且小于维修总量的正整数'))
}
},
getList() {
let params = {
taskId: this.taskId,
}
this.loading = true
getRepairMaTypeListApi(params).then(res => {
if (res.code == 200) {
this.repairList = res.rows
this.total = res.total
this.loading = false
data() {
return {
// actionUrl: process.env.VUE_APP_BASE_API + '/sgzb-system/sys/file/upload',
actionUrl: process.env.VUE_APP_BASE_API + '/system/sys/file/upload',
// uploadTip: 'jpg/png500kb',
fileIds: [],
fileList: [],
limit: 3,
fileSize: 5,
fileType: ['png', 'jpg', 'jpeg'],
isShowTip: true,
fullscreenLoading: false,
dynamicValidateForm: {},
dynamicValidateFormTwo: {},
taskId: '',
companyId: '',
isShow: true,
}
})
},
submit() {
this.$refs['dynamicValidateForm'].validate(valid => {
if (valid) {
//
let params = {
taskId: this.rowObj.taskId,
maId: this.rowObj.maId,
typeId: this.rowObj.typeId,
id: this.rowObj.id,
repairType: 3,
companyId: this.companyId,
scrapReason: this.dynamicValidateForm.scrapReason,
scrapType: this.dynamicValidateForm.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: 1,
}
this.fullscreenLoading = true
submitRepairApplyApi(params)
.then(res => {
if (res.code == 200) {
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
mounted() {
this.$eventBus.$on('taskId', (taskId) => {
this.taskId = taskId
})
getInfo().then((res) => {
this.companyId = res.user.companyId
})
},
methods: {
handleRemove(file, fileList) {
this.fileList = fileList
console.log('fileListRemove', fileList)
fileList.map((item) => {
this.fileIds = fileList
.map((item) => item.response.data.id)
.join(',')
})
.catch(() => {
this.fullscreenLoading = false
},
handlePreview(file) {
console.log('file')
},
beforeRemove(file, fileList) {
// return this.$confirm(` ${file.name}`);
},
handleSuccess(response, fileList) {
this.fileList = fileList
fileList.map((item) => {
this.fileIds = fileList
.map((item) => item.response.data.id)
.join(',')
})
} else {
return false
}
})
},
submitTwo() {
this.$refs['dynamicValidateFormTwo'].validate(valid => {
if (valid) {
//
let params = {
taskId: this.rowObj.taskId,
maId: this.rowObj.maId,
typeId: this.rowObj.typeId,
id: this.rowObj.id,
companyId: this.companyId,
repairType: 3,
companyId: this.companyId,
scrapReason: this.dynamicValidateFormTwo.scrapReason,
scrapType: this.dynamicValidateFormTwo.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: this.dynamicValidateFormTwo.scrapNum,
}
this.fullscreenLoading = true
submitRepairApplyApi(params)
.then(res => {
if (res.code == 200) {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
},
//--
numberIntegerValidator(rule, value, callback) {
const reg = /^\+?[1-9][0-9]*$/
if (value && reg.test(value) && value <= this.rowObj.repairNum) {
callback()
} else {
callback(new Error('请输入大于0并且小于维修总量的正整数'))
}
},
getList() {
let params = {
taskId: this.taskId,
}
this.loading = true
getRepairMaTypeListApi(params).then((res) => {
if (res.code == 200) {
this.repairList = res.rows
this.total = res.total
this.loading = false
}
})
.catch(() => {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fullscreenLoading = false
},
submit() {
this.$refs['dynamicValidateForm'].validate((valid) => {
if (valid) {
//
let params = {
taskId: this.rowObj.taskId,
maId: this.rowObj.maId,
typeId: this.rowObj.typeId,
id: this.rowObj.id,
repairType: 3,
companyId: this.companyId,
scrapReason: this.dynamicValidateForm.scrapReason,
scrapType: this.dynamicValidateForm.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: 1,
}
this.fullscreenLoading = true
submitRepairApplyApi(params)
.then((res) => {
if (res.code == 200) {
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
})
.catch(() => {
this.fullscreenLoading = false
})
} else {
return false
}
})
} else {
return false
}
})
},
submitTwo() {
this.$refs['dynamicValidateFormTwo'].validate((valid) => {
if (valid) {
//
let params = {
taskId: this.rowObj.taskId,
maId: this.rowObj.maId,
typeId: this.rowObj.typeId,
id: this.rowObj.id,
companyId: this.companyId,
repairType: 3,
companyId: this.companyId,
scrapReason: this.dynamicValidateFormTwo.scrapReason,
scrapType: this.dynamicValidateFormTwo.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: this.dynamicValidateFormTwo.scrapNum,
}
this.fullscreenLoading = true
submitRepairApplyApi(params)
.then((res) => {
if (res.code == 200) {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
})
.catch(() => {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fullscreenLoading = false
})
} else {
return false
}
})
},
fileListChange(data) {
data.map((item) => {
this.fileIds = data.map((item) => item.id).join(',')
})
},
init() {
if (this.rowObj.code !== null && this.rowObj.code !== '') {
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = false
} else {
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = true
}
getInfo().then((res) => {
this.companyId = res.user.companyId
})
this.fileList = []
this.fileIds = []
},
//
cancel() {
// this.$refs.dynamicValidateFormTwo.clearValidate()
this.dialogShowFlag = false
this.fileList = []
},
addDomainOne() {
this.dynamicValidateForm.premiumList.push({
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
addDomainTwo() {
this.dynamicValidateForm.premiumListTwo.push({
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
},
fileListChange(data) {
data.map(item => {
this.fileIds = data.map(item => item.id).join(',')
})
},
init() {
if (this.rowObj.code !== null && this.rowObj.code !== '') {
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = false
} else {
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = true
}
getInfo().then(res => {
this.companyId = res.user.companyId
})
this.fileList = []
this.fileIds = []
},
//
cancel() {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.dialogShowFlag = false
this.fileList = []
},
addDomainOne() {
this.dynamicValidateForm.premiumList.push({
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
addDomainTwo() {
this.dynamicValidateForm.premiumListTwo.push({
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
},
}
</script>
<style lang="scss" scoped>
.form_box_one {
display: flex;
flex-direction: column;
.form_box_title {
display: flex;
flex-direction: row;
justify-content: flex-start;
font-size: 12px;
}
.form_box_line {
margin: 8px 0;
width: 100%;
border-bottom: 2px solid #1a1c22;
}
.form_box_item {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.add_box {
display: flex;
justify-content: flex-end;
margin-right: 3%;
}
.form_box_title {
display: flex;
flex-direction: row;
justify-content: flex-start;
font-size: 12px;
}
.form_box_line {
margin: 8px 0;
width: 100%;
border-bottom: 2px solid #1a1c22;
}
.form_box_item {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.add_box {
display: flex;
justify-content: flex-end;
margin-right: 3%;
}
}
.form_box_two {
display: flex;
flex-direction: column;
.form_box_title {
display: flex;
flex-direction: row;
justify-content: flex-start;
font-size: 12px;
}
.form_box_line {
margin: 8px 0;
width: 100%;
border-bottom: 2px solid #1a1c22;
}
.form_box_item {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.add_box {
display: flex;
justify-content: flex-end;
margin-right: 3%;
}
.form_box_title {
display: flex;
flex-direction: row;
justify-content: flex-start;
font-size: 12px;
}
.form_box_line {
margin: 8px 0;
width: 100%;
border-bottom: 2px solid #1a1c22;
}
.form_box_item {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.add_box {
display: flex;
justify-content: flex-end;
margin-right: 3%;
}
}
.dialog-footer {
display: flex;
justify-content: flex-end;
align-items: center;
display: flex;
justify-content: flex-end;
align-items: center;
}
.upload-tip {
text-align: left;
text-align: left;
.tip-text {
font-size: 13px;
color: red;
letter-spacing: 1px;
}
.tip-text {
font-size: 13px;
color: red;
letter-spacing: 1px;
}
}
</style>

View File

@ -46,8 +46,8 @@ module.exports = {
// target: `http://10.40.92.51:28080`, //超
// target: `http://10.40.92.81:8080`, //韩/
// target: `http://10.40.92.74:8080`,//旭/
target: `http://10.40.92.138:28080`, //帅
// target: `http://10.40.92.253:28080`, //福
// target: `http://10.40.92.138:28080`, //帅
target: `http://10.40.92.253:28080`, //福
//******** 注意事项 ********* */
//1.全局替换qrUrl二维码扫码提供的网址-发布服务器的地址target;