Merge pull request 'wxy' (#30) from wxy into master
Reviewed-on: http://git.feashow.cn/feashow/SmartOpsWeb/pulls/30
This commit is contained in:
@@ -1,2 +1,2 @@
|
||||
# 开发环境基地址
|
||||
VITE_BASE_URL='/api'
|
||||
VITE_BASE_URL='http://frp.feashow.cn:31800/'
|
||||
|
||||
40
src/api/order/order.js
Normal file
40
src/api/order/order.js
Normal file
@@ -0,0 +1,40 @@
|
||||
import request from '@/utils/request.js'
|
||||
|
||||
|
||||
export const orderGetList=(params)=>{
|
||||
return request({
|
||||
url:'/order/list',
|
||||
method:'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
export const orderGetDetails =(params)=>{
|
||||
return request({
|
||||
url:`/order/info/${params}`,
|
||||
method:'get'
|
||||
})
|
||||
}
|
||||
|
||||
export const orderAdd=(data)=>{
|
||||
return request({
|
||||
url:'/order/create',
|
||||
method:'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export const orderdDetele =(params)=>{
|
||||
return request({
|
||||
url:`/order/delete/${params}`,
|
||||
method:'delete'
|
||||
})
|
||||
}
|
||||
|
||||
export const orderdClose =(params)=>{
|
||||
return request({
|
||||
url:`/order/${params}`,
|
||||
method:'post'
|
||||
})
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { getToken, removeToken } from "./auth";
|
||||
|
||||
axios.defaults.headers['Content-Type']='application/json'
|
||||
console.log(import.meta.env.VITE_BASE_URL);
|
||||
|
||||
const serveice = axios.create({
|
||||
baseURL: import.meta.env.VITE_BASE_URL,
|
||||
|
||||
@@ -2,15 +2,17 @@
|
||||
<fvSearchForm :searchConfig="searchConfig" @search="search">
|
||||
</fvSearchForm>
|
||||
<fvTable ref="tableIns" :tableConfig="tableConfig" :data="mockData" @headBtnClick="headBtnClick"></fvTable>
|
||||
<WorkDialog ref="workDialogRef"></WorkDialog>
|
||||
|
||||
<WorkDialog ref="workDialogRef" :rowData="rowData" />
|
||||
</template>
|
||||
|
||||
<script setup lang="jsx">
|
||||
import { shallowRef } from 'vue';
|
||||
import { isShallow, reactive, shallowRef } from 'vue';
|
||||
import fvSelect from '@/fvcomponents/fvSelect/index.vue'
|
||||
import WorkDialog from '../components/WorkDialog.vue';
|
||||
import { orderdDetele, orderdClose, orderAdd } from "@/api/order/order.js"
|
||||
|
||||
const rowData = ref()
|
||||
const isShow = ref(false)
|
||||
const workDialogRef = ref()
|
||||
const router = useRouter()
|
||||
const tableIns = ref()
|
||||
@@ -119,22 +121,25 @@ const tableConfig = reactive({
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderNumber',
|
||||
label: '工单号',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'siteName',
|
||||
label: '工单名称',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderContent',
|
||||
label: '工单内容',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'state',
|
||||
prop: 'orderState',
|
||||
label: '工单状态',
|
||||
align: 'center',
|
||||
showOverflowTooltip: false,
|
||||
@@ -160,29 +165,29 @@ const tableConfig = reactive({
|
||||
}
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'operationUser',
|
||||
label: '处理人',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'processedContent',
|
||||
label: '处理内容',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'createTime',
|
||||
label: '创建时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'processedTime',
|
||||
label: '处理时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'completionTime',
|
||||
label: '完成时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
@@ -195,6 +200,8 @@ const tableConfig = reactive({
|
||||
width: 150,
|
||||
showOverflowTooltip: false,
|
||||
currentRender: ({ row, index }) => {
|
||||
// console.log(row);
|
||||
|
||||
let btn = []
|
||||
btn.push({ label: '详情', prem: auths.detail, func: () => handleDetail(row), type: 'primary' })
|
||||
btn.push({ label: '关单', prem: auths.detail, func: () => handleClose(row), type: 'primary' })
|
||||
@@ -218,14 +225,14 @@ const tableConfig = reactive({
|
||||
}
|
||||
}
|
||||
],
|
||||
api: '',
|
||||
api: '/order/list',
|
||||
params: {},
|
||||
btns: [
|
||||
// {name: '新增', key: 'add', color: '#DED0B2', auth: auths.report},
|
||||
]
|
||||
})
|
||||
const headBtnClick = (key) => {
|
||||
console.log(key);
|
||||
// console.log(key);
|
||||
|
||||
switch (key) {
|
||||
case 'add':
|
||||
@@ -236,9 +243,12 @@ const headBtnClick = (key) => {
|
||||
|
||||
const handleDetail = (row) => {
|
||||
workDialogRef.value.open(row)
|
||||
rowData.value = row
|
||||
}
|
||||
|
||||
const handleClose = (row) => {
|
||||
const handleClose = async (row) => {
|
||||
// console.log(row.orderNumber);
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要关单吗?',
|
||||
'温馨提示',
|
||||
@@ -248,7 +258,8 @@ const handleClose = (row) => {
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdClose(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '关闭成功',
|
||||
@@ -262,7 +273,8 @@ const handleClose = (row) => {
|
||||
})
|
||||
}
|
||||
|
||||
const handleDelete = (row) => {
|
||||
const handleDelete = async (row) => {
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要删除吗?',
|
||||
'温馨提示',
|
||||
@@ -272,7 +284,8 @@ const handleDelete = (row) => {
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdDetele(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '删除成功',
|
||||
|
||||
@@ -1,15 +1,56 @@
|
||||
<script setup>
|
||||
import { ref } from "vue";
|
||||
import { onMounted, reactive, ref, watch } from "vue";
|
||||
import { ElMessageBox } from "element-plus";
|
||||
import { MoreFilled } from "@element-plus/icons-vue";
|
||||
import { time } from "echarts";
|
||||
import { defineExpose } from "vue";
|
||||
import { defineProps } from "vue";
|
||||
import { orderGetDetails } from "@/api/order/order.js"
|
||||
|
||||
//控制显示隐藏
|
||||
const dialogVisible = ref(false);
|
||||
|
||||
const props = defineProps({
|
||||
rowData: Object
|
||||
})
|
||||
let dataDetails = {};
|
||||
let opsCallList = {};
|
||||
const open = (row) => {
|
||||
dialogVisible.value = true;
|
||||
console.log(row);
|
||||
};
|
||||
|
||||
const getData = async () => {
|
||||
console.log(123);
|
||||
const data = await orderGetDetails(props.rowData.orderNumber)
|
||||
|
||||
// console.log("111", data);
|
||||
return data
|
||||
|
||||
}
|
||||
|
||||
watch(() => props.rowData, (newRowData) => {
|
||||
if (newRowData) {
|
||||
// console.log(getData(newRowData));
|
||||
|
||||
getData(newRowData).then((data) => {
|
||||
// console.log(data.data);
|
||||
dataDetails = data.data
|
||||
console.log(dataDetails.value);
|
||||
opsCallList = dataDetails.opsCallList
|
||||
console.log(opsCallList);
|
||||
|
||||
})
|
||||
|
||||
|
||||
|
||||
}
|
||||
}, {
|
||||
immediate: true // 立即执行一次,以便在rowData初始值非空时也能触发
|
||||
});
|
||||
// getData()
|
||||
|
||||
|
||||
|
||||
const test = [
|
||||
{
|
||||
content: "待处理",
|
||||
@@ -58,10 +99,12 @@ const data = [
|
||||
state: '已接通',
|
||||
time: '18 : 32',
|
||||
}]
|
||||
|
||||
defineExpose({
|
||||
open,
|
||||
});
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
@@ -70,7 +113,7 @@ defineExpose({
|
||||
<div class="common-layout">
|
||||
<el-container>
|
||||
<el-header class="header"><span>工单号 :</span>
|
||||
<span>666</span>
|
||||
<span>{{ rowData.orderNumber }}</span>
|
||||
</el-header>
|
||||
<el-container class="main-container">
|
||||
<el-aside width="200px" :style="{ position: 'static' }">
|
||||
@@ -79,7 +122,7 @@ defineExpose({
|
||||
<el-timeline-item v-for="(activity, index) in test" :key="index" :icon="activity.icon"
|
||||
:type="activity.type" :color="activity.color" :size="activity.size"
|
||||
:hollow="activity.hollow" :timestamp="activity.timestamp">
|
||||
{{ activity.content }}
|
||||
<p style="font-size: 17px;"> {{ activity.content }}</p>
|
||||
</el-timeline-item>
|
||||
</el-timeline>
|
||||
</div>
|
||||
@@ -87,28 +130,28 @@ defineExpose({
|
||||
<el-main :style="{ position: 'static' }" class="main-content">
|
||||
<div class="top">
|
||||
<div class="info">
|
||||
<span>创始人 :</span>
|
||||
<span>处理人 :</span>
|
||||
<span>创始人 : {{ rowData.createBy }}</span>
|
||||
<span>处理人 :{{ rowData.operationUser }}</span>
|
||||
</div>
|
||||
<div class="info">
|
||||
<span>工单名称 :</span>
|
||||
<span>关单人 :</span>
|
||||
<span>工单名称 :{{ rowData.siteName }}</span>
|
||||
<span>关单人 :{{ rowData.knotter }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="body">
|
||||
<div>
|
||||
<div>工单内容 :</div>
|
||||
<div class="text"></div>
|
||||
<div class="text">{{ rowData.orderContent }}</div>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<div>工单内容 :</div>
|
||||
<div class="text"></div>
|
||||
<div>处理内容 :</div>
|
||||
<div class="text">{{ rowData.processedContent }}</div>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<div>工单内容 :</div>
|
||||
<div class="text"></div>
|
||||
<div>录音信息 :</div>
|
||||
<div class="text">{{ rowData.recordUrl }}</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -118,18 +161,23 @@ defineExpose({
|
||||
<div>
|
||||
<el-scrollbar height="20vh">
|
||||
<el-timeline style="max-width: 99%" class="timeline">
|
||||
<el-timeline-item v-for="(activity, index) in test2" :key="index"
|
||||
<el-timeline-item v-for="(activity, index) in opsCallList" :key="index"
|
||||
:icon="activity.icon" :type="activity.type" :color="activity.color"
|
||||
:size="activity.size">
|
||||
<div class="custom-card">
|
||||
<div>{{ activity.date }}</div>
|
||||
<div v-for="(info, index) in data" :key="index">
|
||||
<div>{{ activity.createTime }}</div>
|
||||
<!-- <div v-for="(info, index) in data" :key="index"> -->
|
||||
<div>
|
||||
<span :style="{color:'#a8abb2'}">{{ info.number }}</span>
|
||||
<span :style="{ color: info.state === '通话中' ? '#6cc23a' : '#409eff' }">{{ info.state }}</span>
|
||||
<span class="span-3th" :style="{color:'#a8abb2'}">{{ info.time }}</span>
|
||||
</div>
|
||||
<span :style="{ color: '#a8abb2' }">{{ activity.callIdNumber
|
||||
}}</span>
|
||||
<span :style="{
|
||||
color: activity.callState
|
||||
=== '通话中' ? '#6cc23a' : '#409eff'
|
||||
}">{{ activity.callState }}</span>
|
||||
<span class="span-3th" :style="{ color: '#a8abb2' }">{{
|
||||
activity.answer_time }}</span>
|
||||
</div>
|
||||
<!-- </div> -->
|
||||
</div>
|
||||
</el-timeline-item>
|
||||
</el-timeline>
|
||||
@@ -172,7 +220,8 @@ defineExpose({
|
||||
|
||||
.main-content .info {
|
||||
border-bottom: 1.5px solid #e4e7ed;
|
||||
margin-bottom: 50px
|
||||
margin-bottom: 50px;
|
||||
font-size: 17px;
|
||||
}
|
||||
|
||||
.main-content .body {
|
||||
@@ -212,10 +261,11 @@ defineExpose({
|
||||
|
||||
}
|
||||
|
||||
.custom-card{
|
||||
.custom-card {
|
||||
width: 100%;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.custom-card span {
|
||||
padding-top: 10px;
|
||||
width: 20%;
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
<template>
|
||||
<fvSearchForm :searchConfig="searchConfig" @search="search">
|
||||
<FvSelect></FvSelect>
|
||||
</fvSearchForm>
|
||||
<fvTable ref="tableIns" :tableConfig="tableConfig" :data="mockData" @headBtnClick="headBtnClick"></fvTable>
|
||||
<WorkDialog ref="workDialogRef"></WorkDialog>
|
||||
|
||||
<WorkDialog ref="workDialogRef" :rowData="rowData" />
|
||||
</template>
|
||||
|
||||
<script setup lang="jsx">
|
||||
import { shallowRef } from 'vue';
|
||||
import { isShallow, reactive, shallowRef } from 'vue';
|
||||
import fvSelect from '@/fvcomponents/fvSelect/index.vue'
|
||||
import WorkDialog from '../components/WorkDialog.vue';
|
||||
import { orderdDetele, orderdClose, orderAdd } from "@/api/order/order.js"
|
||||
|
||||
const rowData = ref()
|
||||
const isShow = ref(false)
|
||||
const workDialogRef = ref()
|
||||
const router = useRouter()
|
||||
const tableIns = ref()
|
||||
@@ -59,7 +60,6 @@ const searchConfig = reactive([
|
||||
cacheKey: 'work_order_status',
|
||||
clearable: true,
|
||||
filterable: true,
|
||||
filterable: true,
|
||||
},
|
||||
component: shallowRef(fvSelect),
|
||||
}, {
|
||||
@@ -83,7 +83,7 @@ const searchConfig = reactive([
|
||||
},
|
||||
{
|
||||
label: '创建日期',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -92,7 +92,7 @@ const searchConfig = reactive([
|
||||
component: 'el-date-picker',
|
||||
}, {
|
||||
label: '处理时间',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -101,7 +101,7 @@ const searchConfig = reactive([
|
||||
component: 'el-date-picker',
|
||||
}, {
|
||||
label: '完成时间',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -121,22 +121,25 @@ const tableConfig = reactive({
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderNumber',
|
||||
label: '工单号',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'siteName',
|
||||
label: '工单名称',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderContent',
|
||||
label: '工单内容',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'state',
|
||||
prop: 'orderState',
|
||||
label: '工单状态',
|
||||
align: 'center',
|
||||
showOverflowTooltip: false,
|
||||
@@ -162,29 +165,29 @@ const tableConfig = reactive({
|
||||
}
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'operationUser',
|
||||
label: '处理人',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'processedContent',
|
||||
label: '处理内容',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'createTime',
|
||||
label: '创建时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'processedTime',
|
||||
label: '处理时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'completionTime',
|
||||
label: '完成时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
@@ -197,6 +200,8 @@ const tableConfig = reactive({
|
||||
width: 150,
|
||||
showOverflowTooltip: false,
|
||||
currentRender: ({ row, index }) => {
|
||||
// console.log(row);
|
||||
|
||||
let btn = []
|
||||
btn.push({ label: '详情', prem: auths.detail, func: () => handleDetail(row), type: 'primary' })
|
||||
btn.push({ label: '关单', prem: auths.detail, func: () => handleClose(row), type: 'primary' })
|
||||
@@ -220,14 +225,14 @@ const tableConfig = reactive({
|
||||
}
|
||||
}
|
||||
],
|
||||
api: '',
|
||||
api: '/order/list',
|
||||
params: {},
|
||||
btns: [
|
||||
// {name: '新增', key: 'add', color: '#DED0B2', auth: auths.report},
|
||||
]
|
||||
})
|
||||
const headBtnClick = (key) => {
|
||||
console.log(key);
|
||||
// console.log(key);
|
||||
|
||||
switch (key) {
|
||||
case 'add':
|
||||
@@ -238,19 +243,23 @@ const headBtnClick = (key) => {
|
||||
|
||||
const handleDetail = (row) => {
|
||||
workDialogRef.value.open(row)
|
||||
rowData.value = row
|
||||
}
|
||||
|
||||
const handleClose = (row) => {
|
||||
const handleClose = async (row) => {
|
||||
// console.log(row.orderNumber);
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要关单吗?',
|
||||
'温馨提示',
|
||||
{
|
||||
confirmButtonText: 'OK',
|
||||
cancelButtonText: 'Cancel',
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdClose(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '关闭成功',
|
||||
@@ -264,17 +273,19 @@ const handleClose = (row) => {
|
||||
})
|
||||
}
|
||||
|
||||
const handleDelete = (row) => {
|
||||
const handleDelete = async (row) => {
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要删除吗?',
|
||||
'温馨提示',
|
||||
{
|
||||
confirmButtonText: 'OK',
|
||||
cancelButtonText: 'Cancel',
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdDetele(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '删除成功',
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
<template>
|
||||
<fvSearchForm :searchConfig="searchConfig" @search="search">
|
||||
<FvSelect></FvSelect>
|
||||
</fvSearchForm>
|
||||
<fvTable ref="tableIns" :tableConfig="tableConfig" :data="mockData" @headBtnClick="headBtnClick"></fvTable>
|
||||
<WorkDialog ref="workDialogRef"></WorkDialog>
|
||||
|
||||
<WorkDialog ref="workDialogRef" :rowData="rowData" />
|
||||
</template>
|
||||
|
||||
<script setup lang="jsx">
|
||||
import { shallowRef } from 'vue';
|
||||
import { isShallow, reactive, shallowRef } from 'vue';
|
||||
import fvSelect from '@/fvcomponents/fvSelect/index.vue'
|
||||
import WorkDialog from '../components/WorkDialog.vue';
|
||||
import { orderdDetele, orderdClose, orderAdd } from "@/api/order/order.js"
|
||||
|
||||
const rowData = ref()
|
||||
const isShow = ref(false)
|
||||
const workDialogRef = ref()
|
||||
const router = useRouter()
|
||||
const tableIns = ref()
|
||||
@@ -59,7 +60,6 @@ const searchConfig = reactive([
|
||||
cacheKey: 'work_order_status',
|
||||
clearable: true,
|
||||
filterable: true,
|
||||
filterable: true,
|
||||
},
|
||||
component: shallowRef(fvSelect),
|
||||
}, {
|
||||
@@ -83,7 +83,7 @@ const searchConfig = reactive([
|
||||
},
|
||||
{
|
||||
label: '创建日期',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -92,7 +92,7 @@ const searchConfig = reactive([
|
||||
component: 'el-date-picker',
|
||||
}, {
|
||||
label: '处理时间',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -101,7 +101,7 @@ const searchConfig = reactive([
|
||||
component: 'el-date-picker',
|
||||
}, {
|
||||
label: '完成时间',
|
||||
prop: 'requirementName',
|
||||
prop: 'requirementDate',
|
||||
props: {
|
||||
placeholder: '请选择',
|
||||
clearable: true,
|
||||
@@ -121,22 +121,25 @@ const tableConfig = reactive({
|
||||
width: 80,
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderNumber',
|
||||
label: '工单号',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'siteName',
|
||||
label: '工单名称',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'orderContent',
|
||||
label: '工单内容',
|
||||
align: 'center'
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'state',
|
||||
prop: 'orderState',
|
||||
label: '工单状态',
|
||||
align: 'center',
|
||||
showOverflowTooltip: false,
|
||||
@@ -162,29 +165,29 @@ const tableConfig = reactive({
|
||||
}
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'operationUser',
|
||||
label: '处理人',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderNumber',
|
||||
prop: 'processedContent',
|
||||
label: '处理内容',
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'createTime',
|
||||
label: '创建时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'processedTime',
|
||||
label: '处理时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
},
|
||||
{
|
||||
prop: 'workOrderTime',
|
||||
prop: 'completionTime',
|
||||
label: '完成时间',
|
||||
align: 'center',
|
||||
width: 200
|
||||
@@ -197,6 +200,8 @@ const tableConfig = reactive({
|
||||
width: 150,
|
||||
showOverflowTooltip: false,
|
||||
currentRender: ({ row, index }) => {
|
||||
// console.log(row);
|
||||
|
||||
let btn = []
|
||||
btn.push({ label: '详情', prem: auths.detail, func: () => handleDetail(row), type: 'primary' })
|
||||
btn.push({ label: '关单', prem: auths.detail, func: () => handleClose(row), type: 'primary' })
|
||||
@@ -220,14 +225,14 @@ const tableConfig = reactive({
|
||||
}
|
||||
}
|
||||
],
|
||||
api: '',
|
||||
api: '/order/list',
|
||||
params: {},
|
||||
btns: [
|
||||
// {name: '新增', key: 'add', color: '#DED0B2', auth: auths.report},
|
||||
]
|
||||
})
|
||||
const headBtnClick = (key) => {
|
||||
console.log(key);
|
||||
// console.log(key);
|
||||
|
||||
switch (key) {
|
||||
case 'add':
|
||||
@@ -238,19 +243,23 @@ const headBtnClick = (key) => {
|
||||
|
||||
const handleDetail = (row) => {
|
||||
workDialogRef.value.open(row)
|
||||
rowData.value = row
|
||||
}
|
||||
|
||||
const handleClose = (row) => {
|
||||
const handleClose = async (row) => {
|
||||
// console.log(row.orderNumber);
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要关单吗?',
|
||||
'温馨提示',
|
||||
{
|
||||
confirmButtonText: 'OK',
|
||||
cancelButtonText: 'Cancel',
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdClose(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '关闭成功',
|
||||
@@ -264,17 +273,19 @@ const handleClose = (row) => {
|
||||
})
|
||||
}
|
||||
|
||||
const handleDelete = (row) => {
|
||||
const handleDelete = async (row) => {
|
||||
|
||||
ElMessageBox.confirm(
|
||||
'确定要删除吗?',
|
||||
'温馨提示',
|
||||
{
|
||||
confirmButtonText: 'OK',
|
||||
cancelButtonText: 'Cancel',
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning',
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
.then(async () => {
|
||||
await orderdDetele(row.orderNumber)
|
||||
ElMessage({
|
||||
type: 'success',
|
||||
message: '删除成功',
|
||||
|
||||
Reference in New Issue
Block a user