业务流程添加重新发起&取消

This commit is contained in:
zhujiyan
2024-06-04 16:54:33 +08:00
parent ed9bce09b3
commit a0c64a4232
19 changed files with 532 additions and 226 deletions

View File

@@ -38,7 +38,12 @@ import { setTempLinedebugLedgerSync } from '@/api/supervision-boot/jointDebugLis
import debug from './debug.vue'
import { any } from 'vue-types'
const dictData = useDictData()
const { push } = useRouter()
const { push, beforeEach } = useRouter()
beforeEach((to, from) => {
if (from.path == '/bpm/instanceDetail') {
console.log('联调333')
}
})
const TableHeaderRef = ref()
const tableRef = ref()
const areaOptionList = dictData.getBasicData('jibei_area')

View File

@@ -161,33 +161,33 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item for="-" label="PT变比" prop="ptRatio">
<el-form-item for="-" label="PT变比" prop="pt1">
<el-input
style="width: 48%"
v-model="form.ptRatio"
v-model="form.pt1"
autocomplete="off"
placeholder="请输入PT变比"
oninput="value=value.replace(/[^0-9.]/g,'')"
/>
<el-input
style="width: 48%"
v-model="form.ptRatio2"
v-model="form.pt2"
autocomplete="off"
placeholder="请输入PT变比"
oninput="value=value.replace(/[^0-9.]/g,'')"
/>
</el-form-item>
<el-form-item for="-" label="CT变比" prop="ctRatio">
<el-form-item for="-" label="CT变比" prop="ct1">
<el-input
v-model="form.ctRatio"
v-model="form.ct1"
style="width: 48%"
autocomplete="off"
oninput="value=value.replace(/[^0-9.]/g,'')"
placeholder="请输入CT变比"
/>
<el-input
v-model="form.ctRatio2"
v-model="form.ct2"
style="width: 48%"
autocomplete="off"
oninput="value=value.replace(/[^0-9.]/g,'')"
@@ -304,8 +304,8 @@
</el-form-item>
<el-form-item for="-" label="是否参与统计:" prop="isStatistical">
<el-radio-group v-model="form.isStatistical">
<el-radio value="1"></el-radio>
<el-radio value="0"></el-radio>
<el-radio :value="1"></el-radio>
<el-radio :value="0"></el-radio>
</el-radio-group>
</el-form-item>
<!-- <el-form-item for="-" label="对象名称(对端)" prop="objName">
@@ -316,8 +316,8 @@
</el-form-item>
<el-form-item for="-" label="是否并网点:" prop="isGridConnectionPoint">
<el-radio-group v-model="form.isGridConnectionPoint">
<el-radio value="1"></el-radio>
<el-radio value="0"></el-radio>
<el-radio :value="1"></el-radio>
<el-radio :value="0"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item for="-" label="主接线图:" prop="mainWiringDiagram" class="uploadFile">
@@ -427,15 +427,15 @@ const operationStatusList = [
//定义接线方式下拉框数据
const ptTypeList = [
{
id: '0',
id: 0,
name: '星型接法'
},
{
id: '1',
id: 1,
name: '三角型接法'
},
{
id: '2',
id: 2,
name: '开口三角型接法'
}
]
@@ -527,16 +527,16 @@ const resetForm = () => {
//监测点信息实体
businessType: '', // 干扰源类别
connectedBus: '', // 接入母线
ctRatio: '300', //CT变比
ctRatio2: '5', //CT变比2
ptRatio: 1, // PT变比
ptRatio2: 1, // PT变比2
ct1: 300, //CT变比1
ct2: 5, //CT变比2
pt1: 1, // PT变比1
pt2: 1, // PT变比2
shortCapacity: '10', // 短路容量
dealCapacity: '10', //协议容量
devCapacity: '10', //设备容量
standardCapacity: '10', //基准容量
isGridConnectionPoint: '0', //是否并网点
isStatistical: '0', // 是否参与统计
isGridConnectionPoint: 0, //是否并网点
isStatistical: 0, // 是否参与统计
lineId: '', // 监测点编码
lineName: '', // 监测点名称
loadType: '', //干扰源类型
@@ -558,18 +558,22 @@ const resetForm = () => {
userNameList.value = res.data
//初始化
let obj = res.data[0]
form.value = {
...form.value,
city: obj.city,
reporter: obj.reporter,
reporterName: obj.reporterName,
reportDate: obj.reportDate,
orgId: obj.orgId,
orgName: obj.orgName,
expectedProductionDate: obj.expectedProductionDate,
userName: userNameList.value[0]?.projectName,
userId: userNameList.value[0]?.id,
objName: userNameList.value[0]?.projectName
console.log(obj,"99999999");
if (title.value != '重新发起') {
form.value = {
...form.value,
city: obj.city,
reporter: obj.reporter,
reporterName: obj.reporterName,
reportDate: obj.reportDate,
orgId: obj.orgId,
orgName: obj.orgName,
expectedProductionDate: obj.expectedProductionDate,
userName: userNameList.value[0]?.projectName,
userId: userNameList.value[0]?.id,
objName: userNameList.value[0]?.projectName
}
}
})
changevoltageDeviationLimit()
@@ -594,12 +598,12 @@ const changevoltageDeviationLimit = async () => {
}
//PT变比 电压<0.48kv 1:1 电压>0.48 *1000/100
if (Number(val) <= 0.48) {
form.value.ptRatio = 1
form.value.ptRatio2 = 1
form.value.pt1 = 1
form.value.pt2 = 1
}
if (Number(val) > 0.48) {
form.value.ptRatio = val * 10
form.value.ptRatio2 = 1
form.value.pt1 = val * 10
form.value.pt2 = 1
}
}
findAllMonitoringTerminalList()
@@ -637,6 +641,8 @@ const changeUserName = () => {
let obj: any = projectList.value.find((item: any) => {
return form.value.userName == item.id
})
// console.log(userNameList.value,11111,projectList.value);
console.log(obj,"88888888");
form.value = {
...form.value,
city: obj?.city,
@@ -761,14 +767,14 @@ const rules = ref({
trigger: 'blur'
}
],
ctRatio: [
ct1: [
{
required: true,
message: '请输入CT变化',
trigger: 'blur'
}
],
ptRatio: [
pt1: [
{
required: true,
message: '请输入PT变化',
@@ -867,37 +873,35 @@ const rules = ref({
}
]
})
watch(
() => form.value,
(val, oldVal) => {},
{
deep: true,
immediate: true
}
)
const resendId = ref('')
const rowValue:any=ref({})
const open = (row: any) => {
dialogFormVisible.value = true
title.value = row.title
//初始化数据
resetForm()
title.value = row.title
nextTick(() => {
if (row.row) {
resendId.value = row.row.id
getTempLineDetailsById({ id: row.row.id }).then(res => {
form.value = res.data
form.value.loadType = loadTypeList.value.filter((item: any) => item.name == res.data.loadType)[0]?.id
form.value.businessType = businessTypeList.value.filter(
(item: any) => item.name == res.data.businessType
)[0]?.id
form.value.mainWiringDiagram = [
if (row.row) {
resendId.value = row.row.id
rowValue.value=row.row
getTempLineDetailsById({ id: row.row.id }).then(res => {
form.value = res.data
form.value.loadType = loadTypeList.value.filter((item: any) => item.name == res.data.loadType)[0]?.id
form.value.businessType = businessTypeList.value.filter(
(item: any) => item.name == res.data.businessType
)[0]?.id
mainWiringDiagram.value = JSON.parse(JSON.stringify(res.data.mainWiringDiagram))
form.value.mainWiringDiagram = JSON.parse(
JSON.stringify([
{
name: res.data.mainWiringDiagram.split('/')[2]
}
]
mainWiringDiagram.value = res.data.mainWiringDiagram
})
}
])
)
})
} else {
resendId.value = ''
}
})
}
const close = () => {
@@ -911,6 +915,27 @@ const close = () => {
onMounted(() => {
console.log()
})
watch(
() => projectList.value,
(val, oldVal) => {
if(val&&val.length!=0&&resendId.value){
let obj: any = projectList.value.find((item: any) => {
return rowValue.value.createBy == item.createBy
})
console.log(projectList.value, '000000', obj, rowValue.value.createBy)
form.value = {
...form.value,
reporter: obj?.reporter,
reporterName: obj?.reporterName
}
}
},
{
deep: true,
immediate: true
}
)
// 上传报告
const uploadRef = ref()
const handleExceed: UploadProps['onExceed'] = files => {
@@ -959,9 +984,15 @@ const confirmForm = () => {
//处理填报日期时间格式
form.value.reportDate = window.XEUtils.toDateString(form.value.reportDate, 'yyyy-MM-dd')
let confirmFormData = JSON.parse(JSON.stringify(form.value))
if (!mainWiringDiagram.value) {
if (!form.value.pt1 || !form.value.pt2) {
return ElMessage({
message: '请上传主接线图',
message: '请输入PT变比',
type: 'warning'
})
}
if (!form.value.ct1 || !form.value.ct2) {
return ElMessage({
message: '请输入CT变比',
type: 'warning'
})
}
@@ -969,9 +1000,9 @@ const confirmForm = () => {
confirmFormData = {
...confirmFormData,
lineFilePath: lineFilePath?.value, //监测点信息
mainWiringDiagram: mainWiringDiagram.value, //主接线图
ptRatio: form.value.ptRatio / form.value.ptRatio2, //PT变比
ctRatio: form.value.ctRatio / form.value.ctRatio2 //CT变比
mainWiringDiagram: mainWiringDiagram.value //主接线图
// pt1: form.value.pt1 / form.value.pt2, //PT变比
// ct1: form.value.ct1 / form.value.ct2 //CT变比
}
if (title.value == '监测点信息') {
addMointorPointFormData(confirmFormData).then(res => {
@@ -985,6 +1016,7 @@ const confirmForm = () => {
})
} else {
confirmFormData.id = resendId.value
console.log(confirmFormData, '99999999999')
updateMointorPointFormData(confirmFormData).then(res => {
if (res.code == 'A0000') {
ElMessage({

View File

@@ -62,10 +62,10 @@
{{ detailData.standardCapacity }}
</el-descriptions-item>
<el-descriptions-item label="CT变比">
{{ detailData.ctRatio }}
{{ detailData.ct1 }}{{ detailData.ct2?'/'+detailData.ct2:'' }}
</el-descriptions-item>
<el-descriptions-item label="PT变比">
{{ detailData.ptRatio }}
{{ detailData.pt1 }}{{ detailData.pt2?'/'+detailData.pt2:'' }}
</el-descriptions-item>
<el-descriptions-item label="监测点编码">
{{ detailData.lineId }}

View File

@@ -35,8 +35,21 @@ import { useRouter } from 'vue-router'
import { useDictData } from '@/stores/dictData'
import { getLoadTypeUserList } from '@/api/process-boot/interference'
import addForm from './addForm.vue'
import { useAdminInfo } from '@/stores/adminInfo'
import { ElMessage } from 'element-plus'
import { ElMessageBox } from 'element-plus/es'
import { cancelMointorPointFormData } from '@/api/supervision-boot/monitorpoint/index'
//获取登陆用户姓名和部门
const adminInfo = useAdminInfo()
const dictData = useDictData()
const { push } = useRouter()
const { push, beforeEach } = useRouter()
beforeEach((to, from) => {
if (from.path == '/bpm/instanceDetail') {
if (to.path == '/admin/terminalNetwotk') {
console.log('监测点2222')
}
}
})
const TableHeaderRef = ref()
const tableRef = ref()
const areaOptionList = dictData.getBasicData('jibei_area')
@@ -94,7 +107,7 @@ const tableStore = new TableStore({
icon: 'el-icon-EditPen',
render: 'basicButton',
click: row => {
handleAudit(row.processInstanceId,row.historyInstanceId)
handleAudit(row.processInstanceId, row.historyInstanceId)
}
},
{
@@ -104,7 +117,9 @@ const tableStore = new TableStore({
icon: 'el-icon-Open',
render: 'basicButton',
disabled: row => {
return row.status == 1 || row.status == 2
return (
row.createBy != adminInfo.$state.id || row.status !=3
)
},
click: row => {
addForms.value.open({
@@ -120,10 +135,10 @@ const tableStore = new TableStore({
icon: 'el-icon-Open',
render: 'basicButton',
disabled: row => {
return row.status == 3 || row.status == 2 || row.status == 4
return row.createBy != adminInfo.$state.id || row.status !=1
},
click: row => {
// cancelLeave(row)
cancelLeave(row)
}
}
]
@@ -150,7 +165,26 @@ const addFormModel = () => {
})
}, 0)
}
/**取消流程操作*/
const cancelLeave = async (row: any) => {
// 二次确认
const { value } = await ElMessageBox.prompt('请输入取消原因', '取消流程', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputPattern: /^[\s\S]*.*\S[\s\S]*$/, // 判断非空,且非空格
inputErrorMessage: '取消原因不能为空'
})
// 发起取消
let data = {
id: row.id,
processInstanceId: row.processInstanceId,
reason: value
}
await cancelMointorPointFormData(data)
ElMessage.success('取消成功')
// 加载数据
tableStore.index()
}
const exportEvent = () => {
let form = JSON.parse(JSON.stringify(tableStore.table.params))
form.pageNum = 1
@@ -173,16 +207,15 @@ onMounted(() => {
})
/** 处理审批按钮 */
const handleAudit = (instanceId: any,historyInstanceId:any) => {
const handleAudit = (instanceId: any, historyInstanceId: any) => {
push({
name: 'BpmProcessInstanceDetail',
query: {
state: {
id: instanceId,
historyInstanceId
}
})
}
</script>
<style scoped lang="scss">

View File

@@ -727,7 +727,6 @@ const getFrontEndMachineList = () => {
})
}
const changeSubstationFlag = () => {
console.log(form.value.customSubstaionFlag)
//处理所属变电站手都输入/下拉数据
if (form.value.customSubstaionFlag == '0') {
form.value.substationName = substationList.value.find((item: any) => {
@@ -1378,6 +1377,8 @@ const open = async (row: any) => {
performanceTestReport.value = res.data.performanceTestReport
informationSecurityTestReport.value = res.data.informationSecurityTestReport
otherAttachments.value = res.data.otherAttachments
form.value.reporter = adminInfo.$state.name
form.value.orgId = adminInfo.$state.deptName
})
}
}
@@ -1423,10 +1424,11 @@ const confirmForm = () => {
}
})
} else {
confirmFormData.reporter = adminInfo.$state.id
confirmFormData.orgId = adminInfo.$state.deptId
console.log(confirmFormData)
form.value.orgId = adminInfo.$state.deptName
confirmFormData.supervisionTempDeviceReportParam.commissioningTime =
confirmFormData.supervisionTempDeviceReportParam.commissioningTime.replace('T', ' ')
confirmFormData.supervisionTempDeviceReportParam.commissioningTime.replace('T', ' ')
confirmFormData.id = resendId.value
updateTerminalFormData(confirmFormData).then((res: any) => {
if (res.code == 'A0000') {

View File

@@ -19,9 +19,22 @@ import TableHeader from '@/components/table/header/index.vue'
import { useRouter } from 'vue-router'
import { useDictData } from '@/stores/dictData'
import { getLoadTypeUserList } from '@/api/process-boot/interference'
import { ElMessage } from 'element-plus'
import { ElMessageBox } from 'element-plus/es'
import { cancelTerminalFormData } from '@/api/supervision-boot/terminal/index'
import addForm from './addForm.vue'
import { useAdminInfo } from '@/stores/adminInfo'
//获取登陆用户姓名和部门
const adminInfo = useAdminInfo()
const dictData = useDictData()
const { push } = useRouter()
const { push, beforeEach } = useRouter()
beforeEach((to, from) => {
if (from.path == '/bpm/instanceDetail') {
if (to.path == '/admin/terminalNetwotk') {
console.log('终端1111')
}
}
})
const TableHeaderRef = ref()
const tableRef = ref()
const areaOptionList = dictData.getBasicData('jibei_area')
@@ -134,7 +147,7 @@ const tableStore = new TableStore({
icon: 'el-icon-Open',
render: 'basicButton',
disabled: row => {
return row.status == 1 || row.status == 2
return row.createBy != adminInfo.$state.id || row.status != 3
},
click: row => {
addForms.value.open({
@@ -150,10 +163,10 @@ const tableStore = new TableStore({
icon: 'el-icon-Open',
render: 'basicButton',
disabled: row => {
return row.status == 3 || row.status == 2 || row.status == 4
return row.createBy != adminInfo.$state.id || row.status != 1
},
click: row => {
// cancelLeave(row)
cancelLeave(row)
}
}
]
@@ -179,7 +192,26 @@ const addFormModel = () => {
})
}, 0)
}
/**取消流程操作*/
const cancelLeave = async (row: any) => {
// 二次确认
const { value } = await ElMessageBox.prompt('请输入取消原因', '取消流程', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputPattern: /^[\s\S]*.*\S[\s\S]*$/, // 判断非空,且非空格
inputErrorMessage: '取消原因不能为空'
})
// 发起取消
let data = {
id: row.id,
processInstanceId: row.processInstanceId,
reason: value
}
await cancelTerminalFormData(data)
ElMessage.success('取消成功')
// 加载数据
tableStore.index()
}
const exportEvent = () => {
let form = JSON.parse(JSON.stringify(tableStore.table.params))
form.pageNum = 1