禅道bug修复

This commit is contained in:
BianLzhaoMin 2025-08-28 13:03:08 +08:00
parent 526f87d0dd
commit 7fc7bbed00
28 changed files with 365 additions and 73 deletions

View File

@ -5,4 +5,4 @@ VUE_APP_TITLE = 实名制管理系统
ENV = 'production' ENV = 'production'
# 实名制管理系统/生产环境 # 实名制管理系统/生产环境
VUE_APP_BASE_API = '/prod-api' VUE_APP_BASE_API = '/hd-realname/prod-api'

View File

@ -424,8 +424,8 @@ export default {
// //
onHandleClear(tag) { onHandleClear(tag) {
this.filterQueryList.forEach((item) => { this.filterQueryList.forEach((item) => {
if (item.label === tag.label) { if (item.label === tag.pLabel) {
item.value = '全部' item.value = ''
} }
}) })
this.onHandleQuery() this.onHandleQuery()
@ -517,6 +517,7 @@ export default {
(j) => j.value === item.value, (j) => j.value === item.value,
).label, ).label,
value: item.value, value: item.value,
pLabel: item.label,
} }
}) })
}, },

View File

@ -68,6 +68,10 @@
type="danger" type="danger"
icon="el-icon-delete" icon="el-icon-delete"
v-hasPermi="['main:project:delete']" v-hasPermi="['main:project:delete']"
v-if="
data.pmProjectVoList &&
data.pmProjectVoList.length === 0
"
@click="onHandleDeleteAllProject(data)" @click="onHandleDeleteAllProject(data)"
> >
删除 删除
@ -93,6 +97,8 @@
<el-form-item label="总工程名称" prop="mainProName"> <el-form-item label="总工程名称" prop="mainProName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入总工程名称" placeholder="请输入总工程名称"
v-model="addOrEditForm.mainProName" v-model="addOrEditForm.mainProName"
/> />
@ -225,6 +231,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入总工程名称', message: '请输入总工程名称',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
volLevel: [ volLevel: [
{ {

View File

@ -68,6 +68,10 @@
type="danger" type="danger"
icon="el-icon-delete" icon="el-icon-delete"
v-hasPermi="['dept:project:delete']" v-hasPermi="['dept:project:delete']"
v-if="
data.pmProjectVoList &&
data.pmProjectVoList.length === 0
"
@click="onHandleDeleteDeptProject(data)" @click="onHandleDeleteDeptProject(data)"
> >
删除 删除
@ -113,6 +117,8 @@
<el-form-item label="项目部名称" prop="orgName"> <el-form-item label="项目部名称" prop="orgName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入项目部名称" placeholder="请输入项目部名称"
v-model="addOrEditForm.orgName" v-model="addOrEditForm.orgName"
/> />
@ -252,6 +258,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入项目部名称', message: '请输入项目部名称',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
isEnable: [ isEnable: [
{ {

View File

@ -51,6 +51,8 @@
<el-form-item label="标段工程名称" prop="proName"> <el-form-item label="标段工程名称" prop="proName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入标段工程名称" placeholder="请输入标段工程名称"
v-model="addOrEditForm.proName" v-model="addOrEditForm.proName"
/> />
@ -60,6 +62,8 @@
<el-form-item label="标段工程简称" prop="simpleName"> <el-form-item label="标段工程简称" prop="simpleName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入标段工程简称" placeholder="请输入标段工程简称"
v-model="addOrEditForm.simpleName" v-model="addOrEditForm.simpleName"
/> />
@ -138,6 +142,8 @@
<el-form-item label="工程地址" prop="proAddress"> <el-form-item label="工程地址" prop="proAddress">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入总工程名称" placeholder="请输入总工程名称"
v-model="addOrEditForm.proAddress" v-model="addOrEditForm.proAddress"
/> />
@ -219,14 +225,14 @@ export default {
data() { data() {
// //
const validatePlanEndTime = (rule, value, callback) => { const validatePlanEndTime = (rule, value, callback) => {
if (value <= this.addOrEditForm.planStartTime) { if (value <= this.addOrEditForm.startTime) {
callback(new Error('竣工时间不能小于开工时间')) callback(new Error('竣工时间不能小于开工时间'))
} }
callback() callback()
} }
const validatePlanStartTime = (rule, value, callback) => { const validatePlanStartTime = (rule, value, callback) => {
if (value >= this.addOrEditForm.planEndTime) { if (value >= this.addOrEditForm.endTime) {
callback(new Error('开工时间不能大于竣工时间')) callback(new Error('开工时间不能大于竣工时间'))
} }
callback() callback()
@ -272,6 +278,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入标段工程名称', message: '请输入标段工程名称',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
simpleName: [ simpleName: [
{ {
@ -279,6 +289,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入标段工程简称', message: '请输入标段工程简称',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
proType: [ proType: [
{ {
@ -310,6 +324,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入工程地址', message: '请输入工程地址',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
startTime: [ startTime: [
{ {

View File

@ -135,6 +135,10 @@ export default {
type: Object, type: Object,
default: () => {}, default: () => {},
}, },
formType: {
type: Number,
default: () => 1,
},
}, },
data() { data() {
return { return {

View File

@ -80,6 +80,7 @@
> >
<template slot="outerContent"> <template slot="outerContent">
<AddOrEditForm <AddOrEditForm
:formType="formType"
:editFormData="editFormData" :editFormData="editFormData"
ref="addOrEditSubBaseInfoRef" ref="addOrEditSubBaseInfoRef"
/> />
@ -144,6 +145,7 @@ export default {
name: 'corporateSeal', name: 'corporateSeal',
}, },
], ],
formType: 1,
} }
}, },
methods: { methods: {
@ -161,6 +163,7 @@ export default {
// //
onHandleAddOrEditSubBaseInfo(type, data, title) { onHandleAddOrEditSubBaseInfo(type, data, title) {
this.dialogConfig.outerTitle = `${title}分包商` this.dialogConfig.outerTitle = `${title}分包商`
this.formType = type
if (type === 2) { if (type === 2) {
Object.assign(this.editFormData, data) Object.assign(this.editFormData, data)
@ -172,7 +175,7 @@ export default {
// //
onHandleDeleteSubBaseInfo(data) { onHandleDeleteSubBaseInfo(data) {
this.$confirm('确定删除该工程吗?', '温馨提示', { this.$confirm('确定删除该分包商吗?', '温馨提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning',

View File

@ -18,8 +18,8 @@ export const formLabel = [
f_model: 'subName', f_model: 'subName',
}, },
{ {
f_type: 'sel', f_type: 'ipt',
f_selList: [], // f_selList: [],
isShow: false, // 是否展示label isShow: false, // 是否展示label
f_model: 'proName', f_model: 'proName',
f_label: '工程名称', f_label: '工程名称',

View File

@ -91,13 +91,33 @@
:file-list.sync="addOrEditForm.fileList_1" :file-list.sync="addOrEditForm.fileList_1"
/> --> /> -->
<el-tag <!-- <el-tag
type="primary" type="primary"
:key="item.id" :key="item.id"
v-for="item in addOrEditForm.fileList_1" v-for="item in addOrEditForm.fileList_1"
> >
{{ item.name }} {{ item.name }}
</el-tag> -->
<div
:key="item.id"
class="files-content"
v-for="item in addOrEditForm.fileList_1"
>
<el-tag
@click="onHandlePreviewFile(item)"
style="cursor: pointer"
>
{{ item.name }}
</el-tag> </el-tag>
<span
class="cursor-blue"
@click="onHandleDownloadFile(item)"
>
下载
</span>
</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -122,13 +142,33 @@
prop="businessLicense" prop="businessLicense"
label="农民工工资已支付完成承诺书" label="农民工工资已支付完成承诺书"
> >
<el-tag <!-- <el-tag
type="primary" type="primary"
:key="item.id" :key="item.id"
v-for="item in addOrEditForm.fileList_2" v-for="item in addOrEditForm.fileList_2"
> >
{{ item.name }} {{ item.name }}
</el-tag> -->
<div
:key="item.id"
class="files-content"
v-for="item in addOrEditForm.fileList_2"
>
<el-tag
@click="onHandlePreviewFile(item)"
style="cursor: pointer"
>
{{ item.name }}
</el-tag> </el-tag>
<span
class="cursor-blue"
@click="onHandleDownloadFile(item)"
>
下载
</span>
</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -322,6 +362,16 @@ export default {
}) })
} }
}, },
//
onHandlePreviewFile(item) {
window.open(item.url, '_blank')
},
//
onHandleDownloadFile(item) {
window.open(item.url, '_blank')
},
}, },
async created() { async created() {
@ -355,3 +405,12 @@ export default {
}, },
} }
</script> </script>
<style lang="scss" scoped>
.files-content {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
</style>

View File

@ -12,6 +12,8 @@
<el-form-item label="分包商合同编码" prop="subContractCode"> <el-form-item label="分包商合同编码" prop="subContractCode">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入分包商合同编码" placeholder="请输入分包商合同编码"
v-model="addOrEditForm.subContractCode" v-model="addOrEditForm.subContractCode"
/> />
@ -23,6 +25,8 @@
<el-form-item label="分包商合同名称" prop="subContractName"> <el-form-item label="分包商合同名称" prop="subContractName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入分包商合同名称" placeholder="请输入分包商合同名称"
v-model="addOrEditForm.subContractName" v-model="addOrEditForm.subContractName"
/> />
@ -140,6 +144,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入分包商合同编码', message: '请输入分包商合同编码',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
subContractName: [ subContractName: [
{ {
@ -147,6 +155,10 @@ export default {
trigger: 'blur', trigger: 'blur',
message: '请输入分包商合同名称', message: '请输入分包商合同名称',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
subId: [ subId: [
{ {

View File

@ -88,7 +88,7 @@
> >
修改 修改
</el-button> </el-button>
<el-button <!-- <el-button
size="mini" size="mini"
type="danger" type="danger"
icon="el-icon-delete" icon="el-icon-delete"
@ -97,7 +97,7 @@
@click="onHandleDeleteSubEntry(data)" @click="onHandleDeleteSubEntry(data)"
> >
删除 删除
</el-button> </el-button> -->
<el-button <el-button
size="mini" size="mini"
type="primary" type="primary"

View File

@ -114,7 +114,7 @@
:limit="3" :limit="3"
:file-size="20" :file-size="20"
:multiple="true" :multiple="true"
:is-detail="formType === 3" v-if="formType === 2"
:uploadTip=" :uploadTip="
formType === 3 formType === 3
? '' ? ''
@ -130,6 +130,28 @@
'docx', 'docx',
]" ]"
/> />
<template v-if="formType === 3">
<div
:key="item.url"
class="files-content"
v-for="item in addOrEditForm.businessLicense"
>
<el-tag
@click="onHandlePreviewFile(item)"
style="cursor: pointer"
>
{{ item.name }}
</el-tag>
<span
class="cursor-blue"
@click="onHandleDownloadFile(item)"
>
下载
</span>
</div>
</template>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -308,9 +330,42 @@ export default {
(item) => item.value === val, (item) => item.value === val,
).label ).label
const team = await getTeamSelectListAPI({ subId: val }) this.getTeamAndProject(val)
// const team = await getTeamSelectListAPI({ subId: val })
// const lotProject = await getLotProjectSelectListBySubIdAPI({
// subId: val,
// })
// this.teamSelectList = team.rows.map((item) => {
// return {
// value: item.id,
// label: item.teamName,
// }
// })
// this.lotProjectSelectList = lotProject.rows.map((item) => {
// return {
// value: item.id,
// label: item.proName,
// }
// })
},
onChangeTeamIdFun(val) {
this.addOrEditForm.teamName = this.teamSelectList.find(
(item) => item.value === val,
).label
},
onChangeProIdFun(val) {
this.addOrEditForm.proName = this.lotProjectSelectList.find(
(item) => item.value === val,
).label
},
//
async getTeamAndProject(subId) {
const team = await getTeamSelectListAPI({ subId })
const lotProject = await getLotProjectSelectListBySubIdAPI({ const lotProject = await getLotProjectSelectListBySubIdAPI({
subId: val, subId,
}) })
this.teamSelectList = team.rows.map((item) => { this.teamSelectList = team.rows.map((item) => {
@ -326,15 +381,15 @@ export default {
} }
}) })
}, },
onChangeTeamIdFun(val) {
this.addOrEditForm.teamName = this.teamSelectList.find( //
(item) => item.value === val, onHandlePreviewFile(item) {
).label window.open(item.url, '_blank')
}, },
onChangeProIdFun(val) {
this.addOrEditForm.proName = this.lotProjectSelectList.find( //
(item) => item.value === val, onHandleDownloadFile(item) {
).label window.open(item.url, '_blank')
}, },
}, },
@ -369,6 +424,7 @@ export default {
editFormData: { editFormData: {
handler(newVal) { handler(newVal) {
if (Object.keys(newVal).length > 0) { if (Object.keys(newVal).length > 0) {
this.getTeamAndProject(newVal.subId)
Object.assign(this.addOrEditForm, newVal) Object.assign(this.addOrEditForm, newVal)
if (newVal.contractFile && newVal.contractFile.length > 0) { if (newVal.contractFile && newVal.contractFile.length > 0) {
this.addOrEditForm.businessLicense = this.addOrEditForm.businessLicense =
@ -379,6 +435,8 @@ export default {
} }
}) })
} }
//
} }
}, },
deep: true, deep: true,
@ -387,3 +445,12 @@ export default {
}, },
} }
</script> </script>
<style lang="scss" scoped>
.files-content {
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}
</style>

View File

@ -117,16 +117,16 @@ export const personFormLabel = [
f_type: 'ipt', f_type: 'ipt',
isShow: false, // 是否展示label isShow: false, // 是否展示label
}, },
{ // {
f_label: '状态', // f_label: '状态',
f_model: 'status', // f_model: 'status',
f_type: 'sel', // f_type: 'sel',
isShow: false, // 是否展示label // isShow: false, // 是否展示label
f_selList: [ // f_selList: [
{ value: 1, label: '正常' }, // { value: 1, label: '正常' },
{ value: 2, label: '异常' }, // { value: 2, label: '异常' },
], // ],
}, // },
{ {
f_label: '日期', f_label: '日期',
f_model: 'time', f_model: 'time',

View File

@ -195,10 +195,13 @@ export default {
editRow: {}, // editRow: {}, //
editUploadFileList: [], // editUploadFileList: [], //
isAdd: true,
} }
}, },
methods: { methods: {
handleSelectPerson() { handleSelectPerson() {
this.editRow = {}
this.dialogConfig.outerTitle = '新增补卡人员以及补卡日期'
this.dialogConfig.outerVisible = true this.dialogConfig.outerVisible = true
}, },
handleCloseDialogOuter() { handleCloseDialogOuter() {

View File

@ -38,6 +38,7 @@
size="mini" size="mini"
type="primary" type="primary"
icon="el-icon-edit" icon="el-icon-edit"
v-if="data.checkStatus === 2"
v-hasPermi="['attendance:machine:unbind']" v-hasPermi="['attendance:machine:unbind']"
@click="onHandleEditCardReplacementApply(data)" @click="onHandleEditCardReplacementApply(data)"
> >
@ -196,8 +197,8 @@ export default {
this.selectProjectName = data.proName this.selectProjectName = data.proName
this.dialogConfig.outerTitle = '修改补卡申请' this.dialogConfig.outerTitle = '修改补卡申请'
this.dialogConfig.outerWidth = '80%' this.dialogConfig.outerWidth = '80%'
this.dialogConfig.minHeight = '80vh' this.dialogConfig.minHeight = '96vh'
this.dialogConfig.maxHeight = '80h' this.dialogConfig.maxHeight = '96vh'
this.dialogConfig.outerVisible = true this.dialogConfig.outerVisible = true
}, },

View File

@ -1658,7 +1658,9 @@ export default {
// //
onHandleDownloadDriver() { onHandleDownloadDriver() {
window.open(window.origin + '/ZKIDROnline-Driven.zip') window.open(
window.origin + '/hd-realname' + '/ZKIDROnline-Driven.zip',
)
}, },
// websocket // websocket
@ -1668,15 +1670,17 @@ export default {
// //
async onUploadChangeFaceImg(fileList) { async onUploadChangeFaceImg(fileList) {
console.log('人脸照片验证', fileList)
if (fileList.length > 0) { if (fileList.length > 0) {
// //
const formData = new FormData() const formData = new FormData()
formData.append('file', fileList[0].raw) formData.append('file', fileList[0].raw)
const res = await checkFaceImageAPI(formData) const res = await checkFaceImageAPI(formData)
console.log(res, 'res人脸照片验证结果')
if (res.code !== 200) {
this.$modal.msgError(res.msg)
this.idCardInfoForm.faceImg = []
}
} }
}, },
}, },

View File

@ -254,7 +254,7 @@ export default {
// //
handleCloseDialogOuter() { handleCloseDialogOuter() {
this.$refs.addOrEditFormContentRef.resetForm() // this.$refs.addOrEditFormContentRef.resetForm()
this.dialogConfig.outerVisible = false this.dialogConfig.outerVisible = false
}, },
@ -269,7 +269,7 @@ export default {
// //
async onHandleDownloadTemplate() { async onHandleDownloadTemplate() {
window.open(window.origin + '/人员入场-模版.xlsx') window.open(window.origin + '/hd-realname' + '/人员入场-模版.xlsx')
// this.download( // this.download(
// '/bmw/download/workerEinTemplate', // '/bmw/download/workerEinTemplate',
// {}, // {},
@ -285,6 +285,7 @@ export default {
// //
async onHandleConfirmImport() { async onHandleConfirmImport() {
if (this.importFileList.length > 0) {
const formData = new FormData() const formData = new FormData()
formData.append('file', this.importFileList[0].raw) formData.append('file', this.importFileList[0].raw)
const res = await importEntryPersonAPI(formData) const res = await importEntryPersonAPI(formData)
@ -296,6 +297,23 @@ export default {
} else { } else {
this.$modal.msgError(res.msg) this.$modal.msgError(res.msg)
} }
} else {
this.$confirm(
'当前未选择文件,确定后将关闭上传页面?',
'温馨提示',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
},
)
.then(async () => {
this.dialogConfig.outerVisible = false
})
.catch(() => {
// console.log('')
})
}
}, },
}, },

View File

@ -52,6 +52,7 @@
show-overflow-tooltip show-overflow-tooltip
/> />
<el-table-column <el-table-column
width="200"
align="center" align="center"
show-overflow-tooltip show-overflow-tooltip
label="离场人员工资结算确认单" label="离场人员工资结算确认单"

View File

@ -212,8 +212,9 @@ export default {
} }
}) })
const res = await batchExitPersonAPI(params) const res = await batchExitPersonAPI(params)
if (res.code === 200) { if (res.code === 200) {
this.$modal.msgSuccess('批量出场成功') this.$modal.msgWarning(res.msg)
this.$refs.personExitTableRef.getTableList() this.$refs.personExitTableRef.getTableList()
} else { } else {
this.$modal.msgError(res.msg) this.$modal.msgError(res.msg)

View File

@ -411,7 +411,7 @@ export default {
// //
async onHandleDownloadTemplate() { async onHandleDownloadTemplate() {
window.open(window.origin + '/失信人员-模板.xlsx') window.open(window.origin + '/hd-realname' + '/失信人员-模板.xlsx')
// this.download( // this.download(
// '/bmw/download/workerEinTemplate', // '/bmw/download/workerEinTemplate',
// {}, // {},
@ -479,6 +479,7 @@ export default {
// //
async onHandleConfirmImport() { async onHandleConfirmImport() {
if (this.importFileList.length > 0) {
const formData = new FormData() const formData = new FormData()
formData.append('file', this.importFileList[0].raw) formData.append('file', this.importFileList[0].raw)
const res = await importDishonestyPersonAPI(formData) const res = await importDishonestyPersonAPI(formData)
@ -490,6 +491,23 @@ export default {
} else { } else {
this.$modal.msgError(res.msg) this.$modal.msgError(res.msg)
} }
} else {
this.$confirm(
'当前未选择文件,确定后将关闭上传页面?',
'温馨提示',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
},
)
.then(async () => {
this.dialogConfig.outerVisible = false
})
.catch(() => {
// console.log('')
})
}
}, },
}, },

View File

@ -11,6 +11,17 @@
}" }"
:request-api="getRedAndGreenCountProjectListAPI" :request-api="getRedAndGreenCountProjectListAPI"
> >
<template slot="btn" slot-scope="{ queryParams }">
<el-button
plain
size="mini"
type="success"
icon="el-icon-download"
@click="onHandleExportProject(queryParams)"
>
导出
</el-button>
</template>
<template slot="proName" slot-scope="{ data }"> <template slot="proName" slot-scope="{ data }">
<span <span
class="cursor-blue" class="cursor-blue"
@ -37,6 +48,17 @@
}" }"
:request-api="getRedAndGreenCountPersonListAPI" :request-api="getRedAndGreenCountPersonListAPI"
> >
<template slot="btn" slot-scope="{ queryParams }">
<el-button
plain
size="mini"
type="success"
icon="el-icon-download"
@click="onHandleExportPerson(queryParams)"
>
导出
</el-button>
</template>
<template slot="lightStatus" slot-scope="{ data }"> <template slot="lightStatus" slot-scope="{ data }">
<el-tag <el-tag
size="mini" size="mini"
@ -167,6 +189,28 @@ export default {
} }
}, },
methods: { methods: {
//
onHandleExportProject(queryParams) {
// this.download(
// '/bmw/',
// {
// ...queryParams,
// },
// `.xlsx`,
// )
},
//
onHandleExportPerson(queryParams) {
// this.download(
// '/bmw/',
// {
// ...queryParams,
// },
// `.xlsx`,
// )
},
// //
onHandleClickProName(proId) { onHandleClickProName(proId) {
this.proId = proId this.proId = proId

View File

@ -25,8 +25,8 @@ const commonColumnsList = [
] ]
// 总工程列表和分包信息列表公共字段 // 总工程列表和分包信息列表公共字段
const commonColumnsListTwo = [ const commonColumnsListTwo = [
{ t_props: 'projectCount', t_label: '所在工程' }, { t_props: 'proName', t_label: '所在工程' },
{ t_props: 'projectCount', t_label: '所属分公司' }, { t_props: 'subCompanyName', t_label: '所属分公司' },
] ]
export const allProjectFormLabel = [ export const allProjectFormLabel = [

View File

@ -109,7 +109,7 @@ export default {
color: '#fcaf03', color: '#fcaf03',
dataKey: 'attNum', dataKey: 'attNum',
name: '固定人员考勤率', name: '固定人员考勤率',
rateKey: 'tempWorkerAttPercentage', rateKey: 'workerAttPercentage',
}, },
{ {
color: '#fb4150', color: '#fb4150',

View File

@ -48,7 +48,7 @@
" "
@click="onHandleOpenDialog('temp')" @click="onHandleOpenDialog('temp')"
> >
{{ personAttendanceData.einAttPercentage }} {{ personAttendanceData.tempWorkerPercentage }}
</div> </div>
</div> </div>
</div> </div>
@ -90,12 +90,13 @@ export default {
const { data: res } = await getPersonAttendanceAPI({ const { data: res } = await getPersonAttendanceAPI({
subComId: this.selectCompany, subComId: this.selectCompany,
}) })
const { einNum, tempNum, workerPercentage, einAttPercentage } = res const { einNum, tempNum, workerPercentage, tempWorkerPercentage } =
res
this.personAttendanceData = { this.personAttendanceData = {
einNum, einNum,
tempNum, tempNum,
workerPercentage, workerPercentage,
einAttPercentage, tempWorkerPercentage,
} }
this.percentage = workerPercentage.replace('%', '') * 1 this.percentage = workerPercentage.replace('%', '') * 1

View File

@ -69,7 +69,7 @@ export default {
{ {
type: 'bar', type: 'bar',
barWidth: 12, barWidth: 12,
silent: false, silent: true,
itemStyle: { color: '#e9eef4' }, itemStyle: { color: '#e9eef4' },
barGap: '-100%', // barGap: '-100%', //
data: new Array(xAxisData.length).fill( data: new Array(xAxisData.length).fill(

View File

@ -83,6 +83,8 @@
<el-form-item label="公司名称" prop="companyName"> <el-form-item label="公司名称" prop="companyName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入公司名称" placeholder="请输入公司名称"
v-model="addOrEditForm.companyName" v-model="addOrEditForm.companyName"
/> />
@ -156,6 +158,10 @@ export default {
message: '请输入公司名称', message: '请输入公司名称',
trigger: 'blur', trigger: 'blur',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
isEnable: [ isEnable: [
{ required: true, message: '请选择状态', trigger: 'blur' }, { required: true, message: '请选择状态', trigger: 'blur' },

View File

@ -89,6 +89,8 @@
<el-form-item label="分公司名称" prop="subCompanyName"> <el-form-item label="分公司名称" prop="subCompanyName">
<el-input <el-input
clearable clearable
maxlength="60"
show-word-limit
placeholder="请输入分公司名称" placeholder="请输入分公司名称"
v-model="addOrEditForm.subCompanyName" v-model="addOrEditForm.subCompanyName"
/> />
@ -167,6 +169,10 @@ export default {
message: '请输入分公司名称', message: '请输入分公司名称',
trigger: 'blur', trigger: 'blur',
}, },
{
max: 60,
message: '最大长度为60个字符',
},
], ],
isEnable: [ isEnable: [
{ required: true, message: '请选择状态', trigger: 'blur' }, { required: true, message: '请选择状态', trigger: 'blur' },
@ -249,10 +255,9 @@ export default {
// //
async onHandleAddOrEditJobTypeConfirm(data) { async onHandleAddOrEditJobTypeConfirm(data) {
const res = await addAndEditDivideCompanyManageAPI(data) const res = await addAndEditDivideCompanyManageAPI(data)
if (res.code === 200) { if (res.code === 200) {
this.$modal.msgSuccess( this.$modal.msgSuccess(this.dialogConfig.outerTitle + '成功')
this.dialogConfig.outerTitle === '修改' + '成功',
)
this.handleCloseDialogOuter() this.handleCloseDialogOuter()
this.$refs.divideCompanyManageTableRef.getTableList() this.$refs.divideCompanyManageTableRef.getTableList()
this.$store.dispatch('getSubCompanySelectList') // store this.$store.dispatch('getSubCompanySelectList') // store

View File

@ -83,6 +83,8 @@
<el-form-item label="工种名称" prop="postName"> <el-form-item label="工种名称" prop="postName">
<el-input <el-input
clearable clearable
maxlength="30"
show-word-limit
placeholder="请输入工种名称" placeholder="请输入工种名称"
v-model="addOrEditForm.postName" v-model="addOrEditForm.postName"
/> />
@ -169,6 +171,10 @@ export default {
message: '请输入工种名称', message: '请输入工种名称',
trigger: 'blur', trigger: 'blur',
}, },
{
max: 30,
message: '最大长度为60个字符',
},
], ],
isSpecial: [ isSpecial: [
{ {