盘点报废+退料接收优化

This commit is contained in:
bb_pan 2025-03-04 10:42:21 +08:00
parent 5f5ba22e0d
commit b7f45c8aed
13 changed files with 2244 additions and 84 deletions

View File

@ -1,5 +1,5 @@
module.exports = {
tabWidth: 4,
tabWidth: 2,
semi: false,
vueIndentScriptAndStyle: false,
singleQuote: true,

View File

@ -0,0 +1,77 @@
import request from '@/utils/request';
//
//获取机具类型树
export function equipmentTypeTree(data) {
return request({
url: '/material/select/getDeviceTypeTree',
method: 'post',
data: data
});
}
//获取设备编号列表
export function getMachineListByCode(query) {
return request({
url: '/material/base/machine/getMachineList',
method: 'get',
params: query
});
}
//新增盘带报废
export function addScrapInfo(data) {
return request({
url: '/material/scrap/addList ',
method: 'post',
data: data
});
}
//获取盘带报废列表
export function getInventoryList(query) {
return request({
url: '/material/scrap/inventoryList',
method: 'get',
params: query
});
}
//获取盘带报废详情
export function getScrapInfo(query) {
return request({
url: '/material/scrap/getDetailsList',
method: 'get',
params: query
});
}
//修改盘带报废
export function editScrapInfo(data) {
return request({
url: '/material/scrap/updateList ',
method: 'post',
data: data
});
}
//一级页面删除盘带报废
export function applyRemove(data) {
return request({
url: '/material/scrap/delete ',
method: 'post',
data: data
});
}
//盘点报废通过与驳回
export function inventoryPass(data) {
return request({
url: '/material/scrap/inventoryApprove',
method: 'post',
data: data
});
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

View File

@ -0,0 +1,37 @@
// 下载blob文件
export const downloadFile = ({ fileData, fileType, fileName }) => {
const blob = new Blob([fileData], {
type: fileType
});
const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.download = fileName;
link.style.display = 'none';
document.body.appendChild(link);
link.click();
URL.revokeObjectURL(link.href);
document.body.removeChild(link);
};
// 通用a链接下载
export const downloadFileByUrl = (url) => {
const link = document.createElement('a');
link.href = url; // 设置文件 URL
link.download = ''; // 提供下载提示
document.body.appendChild(link); // 将链接添加到 DOM
link.click(); // 模拟点击下载
document.body.removeChild(link); // 下载后移除链接
};
// pdf、doc、docx等文件下载
export const downloadFileData = ({ fileName, fileUrl }) => {
const link = document.createElement('a');
link.setAttribute('download', '');
link.style.display = 'none';
link.href = fileUrl;
link.download = fileName;
document.body.appendChild(link);
link.click();
// URL.revokeObjectURL(link.href)
document.body.removeChild(link);
};

View File

@ -107,6 +107,17 @@
}}</span>
</template> -->
</el-table-column>
<el-table-column
label="工程名称"
align="center"
width="80"
prop="lotName"
show-overflow-tooltip
>
<template slot-scope="scope">
<span>{{ lotName }}</span>
</template>
</el-table-column>
<el-table-column
label="类型名称"
align="center"
@ -748,6 +759,9 @@ export default {
rejectTaskId: {
type: [String, Number],
},
lotName: {
type: String,
},
},
data() {
return {
@ -984,7 +998,8 @@ export default {
if (response.code == 200) {
this.$modal.msgSuccess('操作成功')
// this.back()
this.$emit('goBackPage')
// this.$emit('goBackPage')
this.getList()
}
})
},

View File

@ -469,7 +469,7 @@ export default {
// taskId: row.taskId,
// },
// })
this.$emit('receiveReturn', row.id, row.taskId)
this.$emit('receiveReturn', row)
},
/** 导出按钮操作 */
handleExport() {

View File

@ -12,6 +12,7 @@
:isView="isView"
:rejectId="rejectId"
:rejectTaskId="rejectTaskId"
:lotName="lotName"
@receiveView="receiveView"
@receiveReturn="receiveReturn"
@goBackPage="goBack"
@ -36,6 +37,7 @@ export default {
rejectId: '',
rejectTaskId: '',
isView: false,
lotName: '', // 退
}
},
methods: {
@ -47,9 +49,10 @@ export default {
this.isShowComponent = 'HandlePage'
},
// 退
receiveReturn(id, taskId) {
this.rejectId = id
this.rejectTaskId = taskId
receiveReturn(row) {
this.rejectId = row.id
this.rejectTaskId = row.taskId
this.lotName = row.lotName
this.isView = false
this.pageContent = '退料处理'
this.isShowComponent = 'HandlePage'

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,424 @@
<template>
<div>
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="100px"
>
<el-form-item>
<el-date-picker
v-model="queryParams.time"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 240px"
>
</el-date-picker>
</el-form-item>
<el-form-item prop="keyword">
<el-input
v-model="queryParams.keyword"
placeholder="请输入关键字"
clearable
maxlength="50"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item prop="taskStatus">
<el-select
v-model="queryParams.taskStatus"
placeholder="请选择状态"
clearable
filterable
style="width: 240px"
>
<el-option label="进行中" value="0"></el-option>
<el-option label="已通过" value="1"></el-option>
<el-option label="已驳回" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置
</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增报废
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
@click="batchPass"
icon="el-icon-check"
size="mini"
:disabled="multiple"
>通过</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
@click="batchReject"
icon="el-icon-close"
size="mini"
:disabled="multiple"
>驳回</el-button
>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row>
<el-table
v-loading="loading"
:data="typeList"
row-key="id"
@selection-change="handleSelectionChange"
border
>
<el-table-column
type="selection"
width="55"
align="center"
:selectable="selectable"
/>
<el-table-column width="60" align="center" label="序号" type="index">
<template slot-scope="scope">
<span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column
label="报废单号"
align="center"
prop="scrapCode"
width="160"
:show-overflow-tooltip="true"
/>
<el-table-column
label="物资类型"
align="center"
prop="type"
:show-overflow-tooltip="true"
/>
<el-table-column
label="提交人"
align="center"
prop="createName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="提交时间"
align="center"
prop="createTime"
:show-overflow-tooltip="true"
/>
<el-table-column
label="状态"
align="center"
prop="taskStatus"
:show-overflow-tooltip="true"
width="150"
>
<template slot-scope="scope">
<span v-if="scope.row.taskStatus == 0">进行中</span>
<span v-if="scope.row.taskStatus == 1">已通过</span>
<span v-if="scope.row.taskStatus == 2">已驳回</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button
size="mini"
style="margin-bottom: 10px"
type="normal"
@click="handleView(scope.row)"
>查看</el-button
>
<el-button
size="mini"
style="margin-bottom: 10px"
type="primary"
@click="handleUpdate(scope.row)"
v-if="scope.row.taskStatus != 1"
>编辑</el-button
>
<el-button
size="mini"
type="danger"
@click="handleDeletePurchase(scope.row)"
v-if="scope.row.taskStatus != 1"
>删除</el-button
>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import {
getInventoryList,
applyRemove,
inventoryPass,
} from '@/api/repairTest/inventoryScrap'
export default {
name: 'Home',
data() {
return {
//
loading: true,
loadingTwo: true,
updateTime: '',
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
showPeople: false,
peopleOpen: false,
//
total: 0,
totalTwo: 0,
//
typesList: [],
modelList: [],
//
typeList: [],
getListPeople: [],
configUserList: [],
phoneNumbers: [],
userList: [],
//
title: '',
//
dateRange: [],
statusDataRange: [],
//
queryParams: {
pageNum: 1,
pageSize: 10,
time: null, //
keyword: '',
taskStatus: null, //
},
form: {
remark: '',
},
open: false,
checkDataInfo: {},
//
supplierStr: '',
//
leaseApplyData: {},
sendTemp: [],
//
showView: false,
titleView: '',
getListViewInfo: [],
}
},
created() {
this.getList()
},
methods: {
//
handleSelectionChange(selection) {
// this.sendTemp = [];
this.ids = selection.map((item) => item.taskId)
// selection.forEach((item) => {
// this.sendTemp.push({ id: item.id, taskId: item.taskId });
// });
this.single = selection.length != 1
this.multiple = !selection.length
},
//
selectable(row) {
if (row.taskStatus == 0) {
return true
} else {
return false
}
},
getList() {
this.loading = true
const params = {
keyword: this.queryParams.keyword,
startTime: this.queryParams.time && this.queryParams.time[0],
endTime: this.queryParams.time && this.queryParams.time[1],
pageSize: this.queryParams.pageSize,
pageNum: this.queryParams.pageNum,
taskStatus: this.queryParams.taskStatus,
}
getInventoryList(params)
.then((response) => {
this.typeList = response.data.rows
this.total = response.data.total
this.loading = false
})
.catch(() => {
this.loading = false
})
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams.time = []
this.resetForm('queryForm')
this.queryParams.keyWord = ''
this.handleQuery()
},
/** 新增按钮操作 */
handleAdd() {
this.$emit('addTools')
},
/** 查看按钮操作 */
handleView(row) {
this.$emit('queryTools', row.taskId)
},
/** 修改按钮操作 */
handleUpdate(row) {
this.$emit('editTools', row.taskId, row.id)
},
//
reset() {
this.form = {
taskId: '',
remark: '',
}
this.resetForm('form')
},
//
closeDialogAndRefresh() {
this.openPrint = false
},
codeInfo(row) {
this.showView = true
this.titleView = '查看'
this.getListViewInfo = row.maCodeVoList
},
/** 删除按钮操作 */
handleDeletePurchase(row) {
this.$modal
.confirm('是否确认删除所选择的数据项?')
.then(function () {
return applyRemove({ taskId: row.taskId })
})
.then(() => {
this.getList()
this.$modal.msgSuccess('删除成功')
})
.catch(() => {})
},
//
batchPass() {
if (this.ids == 0) {
this.$alert('未勾选数据', '提示', {
type: 'warning',
confirmButtonText: '确定',
})
return
}
inventoryPass({ idList: this.ids, status: 1 }).then((response) => {
this.$modal.msgSuccess('通过成功')
this.ids = []
this.getList()
this.$refs.multipleTable.clearSelection()
})
},
//
batchReject() {
if (this.ids == 0) {
this.$alert('未勾选数据', '提示', {
type: 'warning',
confirmButtonText: '确定',
})
return
}
inventoryPass({ idList: this.ids, status: 2 }).then((response) => {
this.$modal.msgSuccess('驳回成功')
this.ids = []
this.getList()
this.$refs.multipleTable.clearSelection()
})
},
},
}
</script>
<style lang="scss" scoped>
// ::v-deep.el-table .fixed-width .el-button--mini {
// width: 70px !important;
// margin-bottom: 10px;
// }
.image-type {
/* 旋转图片 */
transform: rotate(-90deg);
/* 确保旋转后的图片不会超出容器 */
max-width: 100%;
/* 保持图片的宽高比 */
width: 40px;
height: 100px;
}
.sign-type {
width: 100px;
height: 40px;
}
</style>

View File

@ -0,0 +1,347 @@
<template>
<div>
<el-form
:model="maForm"
ref="maForm"
size="small"
:inline="true"
label-width="120px"
>
<el-form-item prop="keyword">
<el-input
v-model="maForm.keyword"
placeholder="请输入关键字"
clearable
maxlength="50"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置
</el-button>
</el-form-item>
<el-form-item label="附件" prop="bmFileInfos">
<el-upload
:action="uploadUrl"
:file-list="maForm.bmFileInfos"
:show-file-list="true"
:auto-upload="true"
:key="uploadKey"
:limit="5"
list-type="picture-card"
accept=".png, .jpg, .jpeg, .pdf"
:class="{ disabledFbs: uploadDisabled }"
:on-preview="picturePreviewFbs"
>
<!-- 文件格式下载图片格式预览 -->
<div slot="file" slot-scope="{ file }">
<img
v-if="isImage(file)"
class="el-upload-list__item-thumbnail"
:src="file.url"
alt=""
/>
<div v-else class="picture-card-container">
<img class="picture-card" :src="urlTemp" alt="" />
<p class="file-name">{{ file.name }}</p>
</div>
<span class="el-upload-list__item-actions">
<span
v-if="updataIf(file)"
class="el-upload-list__item-delete"
@click="handleDownload(file)"
>
<i class="el-icon-download" />
</span>
<span
v-else
class="el-upload-list__item-preview"
@click="picturePreviewFbs(file)"
>
<i class="el-icon-zoom-in" />
</span>
</span>
</div>
<i class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
</el-form>
<!-- <el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
>导出</el-button
>
</el-col>
</el-row> -->
<el-table v-loading="loading" :data="equipmentList">
<el-table-column label="序号" align="center" type="index" />
<el-table-column
label="物资类型"
align="center"
prop="machineTypeName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="规格型号"
align="center"
prop="specificationType"
:show-overflow-tooltip="true"
/>
<el-table-column
label="计量单位"
align="center"
prop="unitName"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
label="当前库存"
align="center"
prop="storageNum"
:show-overflow-tooltip="true"
>
</el-table-column>
<el-table-column
label="报废数量"
align="center"
prop="scrapNum"
:show-overflow-tooltip="true"
/>
<el-table-column
label="设备编码"
align="center"
prop="maCode"
:show-overflow-tooltip="true"
/>
<el-table-column
label="报废原因"
align="center"
prop="scrapReason"
:show-overflow-tooltip="true"
/>
</el-table>
<!-- 图片查看弹窗 -->
<el-dialog :visible.sync="dialogVisible" width="600px" height="600px">
<img width="100%" height="500px" :src="dialogImageUrl" />
</el-dialog>
</div>
</template>
<script>
import { getScrapInfo } from '@/api/repairTest/inventoryScrap'
import { downloadFile, downloadFileData } from '@/utils/download'
import { getToken } from '@/utils/auth'
export default {
name: 'QueryTools',
components: {
// UploadImg,
},
props: {
isView: {
type: Boolean,
default: () => {
return false
},
},
queryTaskId: {
type: [String, Number],
default: () => {
return ''
},
},
queryId: {
type: [String, Number],
default: () => {
return ''
},
},
},
data() {
return {
//ID
taskId: '',
//
loading: true,
//
equipmentList: [],
//
open: false,
rowData: {},
maForm: {
keyword: '',
bmFileInfos: [],
},
urlTemp: '',
//
dialogImageUrl: '',
dialogVisible: false,
uploadKey: Date.now(),
//
// upload: {
// //
// headers: {Authorization: 'Bearer ' + getToken()},
// //
// url: process.env.VUE_APP_BASE_API + '/file/upload'
// },
uploadUrl: process.env.VUE_APP_BASE_API + '/system/user/imgUpLoad', //
}
},
computed: {
//1
uploadDisabled() {
return this.maForm.bmFileInfos && this.maForm.bmFileInfos.length <= 5
},
},
mounted() {
this.taskId = this.queryTaskId
this.getTaskInfo()
},
methods: {
/** 搜索按钮操作 */
handleQuery() {
this.getTaskInfo()
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm('maForm')
this.maForm.keyword = ''
this.handleQuery()
},
//-
getTaskInfo() {
this.loading = true
console.log('xxxxxxxxxxxxxxxxxxxxx', this.taskId)
getScrapInfo({ taskId: this.taskId, keyword: this.maForm.keyword }).then(
(response) => {
this.equipmentList = response.data.scrapApplyDetailsList
this.maForm.bmFileInfos = response.data.fileList
this.loading = false
},
)
},
isImage(file) {
this.urlTemp = require('@/assets/images/file.png')
if (this.updataIf(file)) {
return false
} else {
return true
}
},
// ,
updataIf(e) {
if (e.fileName) {
const parts = e.fileName.split('.')
const extension = parts.pop()
if (
extension === 'png' ||
extension === 'jpeg' ||
extension === 'jpg'
) {
return false
} else {
return true
}
} else {
const parts = e.name.split('.')
const extension = parts.pop()
if (
extension === 'png' ||
extension === 'jpeg' ||
extension === 'jpg'
) {
return false
} else {
return true
}
}
},
//-
picturePreviewFbs(file) {
console.log('yyyyyyyyyy', file)
this.dialogImageUrl = file.url.replaceAll('#', '%23')
const parts = file.name.split('.')
const extension = parts.pop()
if (extension === 'pdf') {
const windowName = file.name
window.open(file.url, windowName)
} else {
this.dialogVisible = true
}
},
handleDownload(file) {
console.log(file)
if (file.status === 'ready') {
downloadFile({
fileName: file.name,
fileData: file.raw,
fileType: 'application/vnd.ms-excel;charset=utf-8',
})
} else if (file.status === 'success') {
downloadFileData({ fileName: file.name, fileUrl: file.url })
// downloadFileData({ fileName: file.name,fileUrl:file.url })
}
},
/** 导出按钮操作 */
// handleExport() {
// this.download(
// "/material/lease_apply_info/exportDetails",
// { id: this.id },
// `_${new Date().getTime()}.xlsx`
// );
// },
},
}
</script>
<style lang="scss" scoped>
::v-deep.disabledFbs {
.el-upload--picture-card {
display: none;
}
}
::v-deep.el-table .fixed-width .el-button--mini {
width: 60px !important;
margin-bottom: 10px;
}
//css
::v-deep.disabled {
.el-upload--picture-card {
display: none;
}
}
.custom-textarea {
width: 300px;
height: 100px;
}
.accept-img {
color: #409eff;
.a-two {
margin-left: 20px;
}
}
.left-tip {
font-size: 16px;
letter-spacing: 1px;
}
</style>

View File

@ -1,31 +0,0 @@
export const config = {
handleColShow: true, // 是否显示操作列
pageShow: true, // 是否显示分页组件
isSelShow: true,// 表格是否需要复选框
isFormShow: true, // 是否显示表单查询组件
handleWidth: '', // 操作列宽度
formLabel: [
{ f_label: '关键字', f_model: 'keyword', f_type: 'ipt' },
{ f_label: '单位名称', f_model: 'backUnit', f_type: 'sel', f_selList: [] },
{ f_label: '工程名称', f_model: 'backPro', f_type: 'sel', f_selList: [] },
{ f_label: '工机具类型', f_model: 'type', f_type: 'selCas', f_selList: [], optionProps: { value: 'id', } },
{ f_label: '报废单号', f_model: 'laiyuan', f_type: 'ipt', },
{ f_label: '审批状态', f_model: 'taskStatus', f_type: 'sel', f_selList: [] },
{ f_label: '报废类型', f_model: 'taskStatus', f_type: 'sel', f_selList: [] },
{ f_label: '创建时间', f_model: 'time', f_type: 'date' },
],
columnsList: [
// { t_width: '55px', t_props: '', t_label: '序号' },
{ t_props: '', t_label: '预报废单号' },
{ t_props: '', t_label: '机具类型' },
{ t_props: '', t_label: '任务创建人' },
{ t_props: '', t_label: '任务创建时间' },
{ t_props: '', t_label: '审核状态' },
],
handleBtn: [
{ btn_title: '查看', id: 1 },
{ btn_title: '新增报废', id: 2 },
{ btn_title: '驳回退料', id: 3 },
{ btn_title: '审批详情', id: 4 },
],
}

View File

@ -1,51 +1,87 @@
<template>
<div class="app-container">
<!-- 盘点报废 -->
<TableModel :config="config" :handleWidth="`240px`">
<template slot="export">
<el-row :gutter="10" class="mb8">
<el-button
plain
size="mini"
type="success"
icon="el-icon-download"
>导出数据</el-button
>
</el-row>
</template>
<!-- 列表操作栏 -->
<template slot="handle" slot-scope="data">
<el-button
size="mini"
type="text"
:key="btn.id"
v-for="btn in config.handleBtn"
@click="handleBtn(data, btn.id)"
>
{{ btn.btn_title }}
</el-button>
</template>
</TableModel>
</div>
<!-- 盘点报废管理 -->
<div class="app-container">
<PageHeader
v-if="isShowComponent != 'Home'"
:pageContent="pageContent"
@goBack="goBack"
/>
<component
:is="isShowComponent"
:isEdit="isEdit"
:editTaskId="editTaskId"
:editId="editId"
:queryTaskId="queryTaskId"
:queryId="queryId"
:isView="isView"
:codingTaskId="codingTaskId"
@addTools="addTools"
@editTools="editTools"
@addToolsSuccess="addToolsSuccess"
@queryTools="queryTools"
/>
</div>
</template>
<script>
import { config } from './config'
import TableModel from '@/components/TableModel'
import PageHeader from '@/components/pageHeader'
import Home from "./component/homeApply.vue"; //
import AddTools from "./component/addToolsApply.vue"; //
import QueryTools from "./component/queryToolsApply.vue"; //
export default {
name: 'Inventory',
components: {
TableModel,
},
data() {
return {
config,
}
},
methods: {
handleBtn() {},
},
}
</script>
components: {
Home,
PageHeader,
AddTools,
QueryTools,
},
data() {
return {
isShowComponent: "Home",
pageContent: "盘点报废申请",
isEdit: false,
editTaskId: "",
editId: "",
queryId: "",
queryTaskId: "",
isView: false,
codingTaskId: "",
};
},
<style></style>
methods: {
/* 新增工机具 */
addTools() {
this.isEdit = false;
this.editTaskId = "";
this.queryTaskId = "";
this.pageContent = "报废新增";
this.isShowComponent = "AddTools";
},
/* 新增成功 */
addToolsSuccess() {
this.isShowComponent = "Home";
},
/* 编辑工机具 */
editTools(taskId, id) {
this.isEdit = true;
this.pageContent = "报废编辑";
this.editTaskId = taskId;
this.editId = id;
this.isShowComponent = "AddTools";
},
/* 查询工机具 */
queryTools(taskId, id) {
this.isView = true;
this.pageContent = "详情信息";
this.queryTaskId = taskId;
this.queryId = id;
this.isShowComponent = "QueryTools";
},
/* 返回按钮 */
goBack() {
this.isShowComponent = "Home";
},
},
};
</script>

View File

@ -43,7 +43,7 @@ module.exports = {
// target: `https://test-cc.zhgkxt.com`,//线上环境-南网
// target: `https://z.csgmall.com.cn`,
target: `http://192.168.2.127:28080`, //超
target: `http://192.168.2.131:28080`, //超
// target: `http://10.40.92.81:28080`, //韩/
// target: `http://192.168.2.82:28080`,//旭/
// target: `http://192.168.2.248:28080`, //帅