失信人员字段添加 考勤机管理字段添加
This commit is contained in:
parent
a27bd10842
commit
feba0428da
|
|
@ -35,3 +35,20 @@ export const getAttendanceMachineListAPI = (data) => {
|
|||
params: data,
|
||||
})
|
||||
}
|
||||
|
||||
// 根据工程查询分包下拉接口
|
||||
export const getSubListByProIdAPI = (data) => {
|
||||
return request({
|
||||
url: '/bmw/pmSub/getSublistByProId',
|
||||
method: 'GET',
|
||||
params: data,
|
||||
})
|
||||
}
|
||||
// 根据工程和分包查询班组下拉接口
|
||||
export const getTeamListBySubIdAndProIdAPI = (data) => {
|
||||
return request({
|
||||
url: '/bmw/subTeamContract/getSubTeamContractList',
|
||||
method: 'GET',
|
||||
params: data,
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ export const getDishonestyPersonListAPI = (data) => {
|
|||
|
||||
// 红绿灯统计 新增失信人员
|
||||
export const addDishonestyPersonAPI = (data) => {
|
||||
return request({
|
||||
return requestFormData({
|
||||
url: '/bmw/workerBlack/insert',
|
||||
method: 'POST',
|
||||
data,
|
||||
|
|
|
|||
|
|
@ -56,6 +56,7 @@
|
|||
filterable
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
@change="getSubListByProId"
|
||||
v-model="addOrEditForm.proId"
|
||||
>
|
||||
<el-option
|
||||
|
|
@ -68,6 +69,47 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="分包名称">
|
||||
<el-select
|
||||
clearable
|
||||
filterable
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
v-model="addOrEditForm.subId"
|
||||
@change="getTeamListBySubIdAndProId"
|
||||
>
|
||||
<el-option
|
||||
:key="item.id"
|
||||
:value="item.id"
|
||||
:label="item.subName"
|
||||
v-for="item in subSelectList"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="班组名称">
|
||||
<el-select
|
||||
clearable
|
||||
filterable
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
v-model="addOrEditForm.teamId"
|
||||
>
|
||||
<el-option
|
||||
:key="item.teamId"
|
||||
:label="item.teamName"
|
||||
:value="item.teamId"
|
||||
v-for="item in teamSelectList"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
|
|
@ -77,6 +119,8 @@ import UploadImgFormData from '@/components/UploadImgFormData'
|
|||
import {
|
||||
addAttendanceMachineAPI,
|
||||
editAttendanceMachineAPI,
|
||||
getSubListByProIdAPI,
|
||||
getTeamListBySubIdAndProIdAPI,
|
||||
} from '@/api/construction-person/attendance-manage/attendance-machine'
|
||||
|
||||
import { getLotProjectSelectListCommonFun } from '@/utils/getCommonData'
|
||||
|
|
@ -104,6 +148,8 @@ export default {
|
|||
deviceCode: '',
|
||||
deviceName: '',
|
||||
serialNumber: '',
|
||||
subId: '',
|
||||
teamId: '',
|
||||
},
|
||||
addOrEditFormRules: {
|
||||
deviceCode: [
|
||||
|
|
@ -138,7 +184,9 @@ export default {
|
|||
},
|
||||
],
|
||||
},
|
||||
lotProjectList: [],
|
||||
lotProjectList: [], // 工程下拉列表
|
||||
subSelectList: [], // 分包下拉列表
|
||||
teamSelectList: [], // 班组下拉列表
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
@ -154,6 +202,8 @@ export default {
|
|||
deviceCode,
|
||||
deviceName,
|
||||
serialNumber,
|
||||
subId,
|
||||
teamId,
|
||||
} = this.addOrEditForm
|
||||
|
||||
const params = {
|
||||
|
|
@ -161,6 +211,8 @@ export default {
|
|||
deviceCode,
|
||||
deviceName,
|
||||
serialNumber,
|
||||
subId,
|
||||
teamId,
|
||||
}
|
||||
|
||||
const API = isUpdate
|
||||
|
|
@ -188,6 +240,34 @@ export default {
|
|||
resetForm() {
|
||||
this.$refs.addOrEditFormRef.resetFields()
|
||||
},
|
||||
|
||||
// 根据工程查询分包下拉
|
||||
async getSubListByProId(val) {
|
||||
this.subSelectList = []
|
||||
this.teamSelectList = []
|
||||
this.addOrEditForm.teamId = ''
|
||||
this.addOrEditForm.subId = ''
|
||||
if (!val) {
|
||||
return
|
||||
}
|
||||
const { rows: res } = await getSubListByProIdAPI({ proId: val })
|
||||
this.subSelectList = res
|
||||
},
|
||||
|
||||
// 根据工程和分包查询班组下拉
|
||||
async getTeamListBySubIdAndProId(val) {
|
||||
this.teamSelectList = []
|
||||
this.addOrEditForm.teamId = ''
|
||||
if (!val) {
|
||||
return
|
||||
}
|
||||
const { data: res } = await getTeamListBySubIdAndProIdAPI({
|
||||
subId: val,
|
||||
proId: this.addOrEditForm.proId,
|
||||
})
|
||||
|
||||
this.teamSelectList = res
|
||||
},
|
||||
},
|
||||
|
||||
async created() {
|
||||
|
|
|
|||
|
|
@ -40,6 +40,8 @@ export const columnsList = [
|
|||
{ t_props: 'deviceName', t_label: '考勤机名称' },
|
||||
{ t_props: 'serialNumber', t_label: '出厂编号' },
|
||||
{ t_props: 'proName', t_label: '工程名称' },
|
||||
{ t_props: 'subName', t_label: '分包名称' },
|
||||
{ t_props: 'teamName', t_label: '班组名称' },
|
||||
{ t_slot: 'isShanghai', t_label: '工程类型' },
|
||||
{
|
||||
t_label: '状态',
|
||||
|
|
|
|||
|
|
@ -60,6 +60,8 @@ export const columnsList = [
|
|||
t_label: '分包名称',
|
||||
},
|
||||
{ t_props: 'reason', t_label: '事件' },
|
||||
{ t_props: 'remark', t_label: '备注' },
|
||||
{ t_slot: 'file', t_label: '附件', t_width: '200px' },
|
||||
{
|
||||
t_label: '起止时间',
|
||||
t_slot: 'time',
|
||||
|
|
|
|||
|
|
@ -47,6 +47,25 @@
|
|||
</el-button>
|
||||
</template>
|
||||
|
||||
<template slot="file" slot-scope="{ data }">
|
||||
<template
|
||||
v-if="data.contractFile && data.contractFile.length > 0"
|
||||
>
|
||||
<a
|
||||
target="_blank"
|
||||
:key="item.id"
|
||||
:href="item.lsUrl"
|
||||
class="cursor-blue"
|
||||
style="padding: 0 2px"
|
||||
v-for="(item, index) in data.contractFile"
|
||||
>
|
||||
附件{{ index + 1 }}
|
||||
</a>
|
||||
</template>
|
||||
|
||||
<span v-else> 0 </span>
|
||||
</template>
|
||||
|
||||
<template slot="isRemove" slot-scope="{ data }">
|
||||
<el-tag size="mini" type="warning" v-if="data.isRemove === 0">
|
||||
执行中
|
||||
|
|
@ -248,6 +267,46 @@
|
|||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="20">
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input
|
||||
clearable
|
||||
show-word-limit
|
||||
type="textarea"
|
||||
maxlength="100"
|
||||
placeholder="请输入备注"
|
||||
v-model="addDishonestyPersonForm.remark"
|
||||
:autosize="{ minRows: 4, maxRows: 4 }"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="20">
|
||||
<el-form-item label="附件" prop="fileList">
|
||||
<UploadFileFormData
|
||||
:limit="3"
|
||||
:file-size="20"
|
||||
:multiple="true"
|
||||
uploadTip="请上传附件"
|
||||
:file-list.sync="
|
||||
addDishonestyPersonForm.fileList
|
||||
"
|
||||
:file-type="[
|
||||
'jpg',
|
||||
'png',
|
||||
'jpeg',
|
||||
'pdf',
|
||||
'doc',
|
||||
'docx',
|
||||
]"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<el-row class="dialog-footer-btn">
|
||||
|
|
@ -314,6 +373,7 @@ import {
|
|||
importDishonestyPersonAPI,
|
||||
downloadDishonestyPersonTemplateAPI,
|
||||
} from '@/api/construction-person/red-green-light-mange/dishonesty-person'
|
||||
|
||||
export default {
|
||||
name: 'DishonestyPerson',
|
||||
components: {
|
||||
|
|
@ -338,6 +398,8 @@ export default {
|
|||
reason: '', // 事件
|
||||
endTime: '', // 结束日期
|
||||
startTime: '', // 开始日期
|
||||
remark: '', // 备注
|
||||
fileList: [], // 文件列表
|
||||
},
|
||||
addDishonestyPersonFormRules: {
|
||||
name: [
|
||||
|
|
@ -448,6 +510,10 @@ export default {
|
|||
// 关闭弹框
|
||||
handleCloseDialogOuter() {
|
||||
this.importFileList = []
|
||||
|
||||
if (this.dialogConfig.outerTitle === '新增失信人员') {
|
||||
this.$refs.addDishonestyPersonFormRef.resetFields()
|
||||
}
|
||||
this.dialogConfig.outerVisible = false
|
||||
},
|
||||
|
||||
|
|
@ -461,9 +527,48 @@ export default {
|
|||
onHandleConfirmAddOrEdit() {
|
||||
this.$refs.addDishonestyPersonFormRef.validate(async (valid) => {
|
||||
if (valid) {
|
||||
const res = await addDishonestyPersonAPI(
|
||||
this.addDishonestyPersonForm,
|
||||
)
|
||||
// 组装参数
|
||||
|
||||
const {
|
||||
name, // 姓名
|
||||
idNumber, // 身份证
|
||||
postName, // 工种名称
|
||||
proName, // 工程名称
|
||||
subName, // 所属分包单位
|
||||
reason, // 事件
|
||||
endTime, // 结束日期
|
||||
startTime, // 开始日期
|
||||
remark, // 备注
|
||||
fileList,
|
||||
} = this.addDishonestyPersonForm
|
||||
|
||||
const params = {
|
||||
name, // 姓名
|
||||
idNumber, // 身份证
|
||||
postName, // 工种名称
|
||||
proName, // 工程名称
|
||||
subName, // 所属分包单位
|
||||
reason, // 事件
|
||||
endTime, // 结束日期
|
||||
startTime, // 开始日期
|
||||
remark, // 备注
|
||||
}
|
||||
const formData = new FormData()
|
||||
const fileMsg = []
|
||||
|
||||
if (fileList.length > 0) {
|
||||
fileList.forEach((e) => {
|
||||
formData.append('files', e.raw)
|
||||
fileMsg.push({
|
||||
type: 1,
|
||||
name: '附件',
|
||||
})
|
||||
})
|
||||
}
|
||||
formData.append('params', JSON.stringify(params))
|
||||
formData.append('fileMsg', JSON.stringify(fileMsg))
|
||||
|
||||
const res = await addDishonestyPersonAPI(formData)
|
||||
|
||||
if (res.code === 200) {
|
||||
this.$modal.msgSuccess('新增成功')
|
||||
|
|
|
|||
Loading…
Reference in New Issue