Merge branch 'master' of http://gitea.xxhhcty.xyz:8080/zcdsj/factory_web
This commit is contained in:
commit
e1dfdae4fb
|
|
@ -231,4 +231,39 @@ export default {
|
|||
}
|
||||
},
|
||||
},
|
||||
empjoin: {
|
||||
list: {
|
||||
name: "人员交接",
|
||||
req: async function(data){
|
||||
return await http.get(
|
||||
`${config.API_URL}/hrm/empjoin/`,
|
||||
data
|
||||
);
|
||||
}
|
||||
},
|
||||
item: {
|
||||
name: "人员交接申请",
|
||||
req: async function(id){
|
||||
return await http.get(
|
||||
`${config.API_URL}/hrm/empjoin/${id}/`,
|
||||
);
|
||||
}
|
||||
},
|
||||
create: {
|
||||
name: "人员交接新增",
|
||||
req: async function(data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/hrm/empjoin/`,
|
||||
data);
|
||||
}
|
||||
},
|
||||
delete: {
|
||||
name: "人员交接删除",
|
||||
req: async function(id){
|
||||
return await http.delete(
|
||||
`${config.API_URL}/hrm/empjoin/${id}/`
|
||||
);
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,48 @@
|
|||
<template>
|
||||
<el-container>
|
||||
<el-header>
|
||||
<div class="left-panel">
|
||||
<el-button type="primary" @click="handleAdd">新增</el-button>
|
||||
</div>
|
||||
</el-header>
|
||||
<el-main class="nopadding">
|
||||
<scTable
|
||||
ref="table"
|
||||
:apiObj="API.hrm.empneed.list"
|
||||
row-key="id"
|
||||
stripe
|
||||
:query="query"
|
||||
@row-click="(row)=>{t_id=row.id;mode='show';drawerVisible=true;}"
|
||||
>
|
||||
<el-table-column label="部门" prop="dept_need_name" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="入职日期" prop="join_date" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="审批状态" width="200" show-overflow-tooltip>
|
||||
<template #default="scope">
|
||||
<el-tag :type="actStateEnum[scope.row.ticket_?.act_state]?.type">
|
||||
{{ actStateEnum[scope.row.ticket_?.act_state]?.text }}
|
||||
</el-tag>
|
||||
<el-tag type="info" effect="plain">{{ scope.row.ticket_?.state_.name }}</el-tag>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
</scTable>
|
||||
</el-main>
|
||||
</el-container>
|
||||
<el-drawer title="员工需求审核" v-model="drawerVisible" :size="'80%'" destroy-on-close>
|
||||
<empneed_form :mode="mode" :t_id="t_id"></empneed_form>
|
||||
</el-drawer>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import API from '@/api'
|
||||
import empneed_form from './empneed_form.vue'
|
||||
import { actStateEnum, interveneTypeEnum } from "@/utils/enum.js";
|
||||
const query = ref({});
|
||||
const drawerVisible = ref(false);
|
||||
const mode = ref('add');
|
||||
const t_id = ref(null);
|
||||
const handleAdd = () => {
|
||||
mode.value = 'add';
|
||||
drawerVisible.value = true;
|
||||
}
|
||||
</script>
|
||||
|
|
@ -0,0 +1,234 @@
|
|||
<template>
|
||||
<el-container>
|
||||
<el-main class="nopadding">
|
||||
<el-form label-width="80px" :model="formData" style="padding: 20px;" :disabled="localMode === 'show'">
|
||||
<el-form-item label="需求部门" required>
|
||||
<el-cascader
|
||||
v-model="formData.dept_need"
|
||||
:options="group"
|
||||
:props="groupsProps"
|
||||
:show-all-levels="false"
|
||||
clearable
|
||||
style="width: 220px"
|
||||
></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="日期" required>
|
||||
<el-date-picker
|
||||
v-model="formData.join_date"
|
||||
type="date"
|
||||
placeholder="日期"
|
||||
value-format="YYYY-MM-DD"
|
||||
:readonly="localMode === 'show'"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<sc-form-table
|
||||
v-model="formData.person"
|
||||
:addTemplate="addTemplate"
|
||||
:hideAdd="hideAdd"
|
||||
:hideDelete="hideDelete"
|
||||
placeholder="暂无数据"
|
||||
>
|
||||
<el-table-column prop="name" label="姓名" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-input
|
||||
v-model="scope.row.name"
|
||||
placeholder="请输入姓名"
|
||||
></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="gender" label="性别" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-select v-model="scope.row.gender" placeholder="请选择">
|
||||
<el-option label="男" :value="1"></el-option>
|
||||
<el-option label="女" :value="2"></el-option>
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="IDcard" label="身份证号" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-input
|
||||
v-model="scope.row.IDcard"
|
||||
placeholder="请输入身份证号"
|
||||
></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="phone" label="手机号" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-input
|
||||
v-model="scope.row.phone"
|
||||
placeholder="请输手机号"
|
||||
></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="note" label="备注" min-width="150">
|
||||
<template #default="scope">
|
||||
<el-input
|
||||
v-model="scope.row.note"
|
||||
placeholder="请输入备注"
|
||||
></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="post" label="岗位" min-width="150" v-if="['交接部门负责人','结束'].includes(formData.ticket_?.state_?.name)">
|
||||
<template #default="scope">
|
||||
<xtSelect
|
||||
:apiObj="apiObjPost"
|
||||
v-model="scope.row.post"
|
||||
v-model:label="scope.row.post_name"
|
||||
style="width: 150px"
|
||||
>
|
||||
<el-table-column label="名称" prop="name"></el-table-column>
|
||||
</xtSelect>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</sc-form-table>
|
||||
<el-footer>
|
||||
<el-button type="danger"
|
||||
v-if="localMode=='edit'"
|
||||
style="margin-right: 4px;"
|
||||
@click="handleDel"
|
||||
:loading="saveLoading"
|
||||
>删除</el-button>
|
||||
<ticketd_b
|
||||
v-if = "formData.ticket_ && localMode=='show'"
|
||||
:t_id="formData.id"
|
||||
:ticket_="formData.ticket_"
|
||||
:ticket_data="ticket_data"
|
||||
@success="$emit('success', localMode)"
|
||||
ref="ticketd_b"
|
||||
></ticketd_b>
|
||||
<el-button
|
||||
v-if="localMode!='show'"
|
||||
type="primary"
|
||||
style="margin-right: 4px;"
|
||||
@click="handleSave"
|
||||
:loading="saveLoading"
|
||||
>提交审批</el-button>
|
||||
</el-footer>
|
||||
</el-main>
|
||||
<el-aside width="20%" v-if="formData.ticket_">
|
||||
<ticketd :ticket_="formData.ticket_" @success="$emit('success')"></ticketd>
|
||||
</el-aside>
|
||||
</el-container>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ticketd_b from "@/views/wf/ticketd_b.vue";
|
||||
import ticketd from '@/views/wf/ticketd.vue';
|
||||
import { genTree } from "@/utils/verificate";
|
||||
|
||||
export default {
|
||||
name: 'EnpJoinForm',
|
||||
components: {
|
||||
ticketd_b,
|
||||
ticketd
|
||||
},
|
||||
props: {
|
||||
mode: {
|
||||
type: String,
|
||||
default: 'show'
|
||||
},
|
||||
t_id: {
|
||||
type: String,
|
||||
default: ""
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
formData: {
|
||||
person: [],
|
||||
},
|
||||
ticket_data: {},
|
||||
localMode: this.mode,
|
||||
saveLoading: false,
|
||||
group:[],
|
||||
post:[],
|
||||
apiObjPost: this.$API.system.post.list,
|
||||
hideAdd:false,
|
||||
hideDelete:false,
|
||||
addTemplate: {
|
||||
name: "",
|
||||
gender: "",
|
||||
age: "",
|
||||
phone: "",
|
||||
note: "",
|
||||
},
|
||||
groupsProps: {
|
||||
multiple: false,
|
||||
emitPath: false,
|
||||
checkStrictly: true,
|
||||
},
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
formData: {
|
||||
handler(val){
|
||||
Object.assign(this.ticket_data,{
|
||||
person: val.person,
|
||||
})
|
||||
},
|
||||
deep: true,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getGroup();
|
||||
if (this.t_id) {
|
||||
this.getTid();
|
||||
} else {
|
||||
this.localMode = "add";
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
async getTid() {
|
||||
try {
|
||||
let res = await this.$API.hrm.empjoin.item.req(this.t_id);
|
||||
this.formData = res;
|
||||
if (res.ticket_ && res.ticket_.state_.type == 1 && res.create_by == this.$TOOL.data.get("USER_INFO").id) {
|
||||
this.localMode = "edit";
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取数据失败:', error);
|
||||
}
|
||||
},
|
||||
async getGroup() {
|
||||
let res = await this.$API.system.dept.list.req({ page: 0 });
|
||||
this.group = genTree(res);
|
||||
},
|
||||
async getPost() {
|
||||
let res = await this.$API.hrm.post.list.req({ page: 0 });
|
||||
this.post = res;
|
||||
},
|
||||
handleDel() {
|
||||
this.$confirm(`确定删除吗?`, "提示", {
|
||||
type: "warning",
|
||||
})
|
||||
.then(()=>{
|
||||
this.$API.hrm.empjoin.delete.req(this.formData.id).then(res=>{
|
||||
this.$message.success("删除成功");
|
||||
this.$emit('success');
|
||||
})
|
||||
})
|
||||
},
|
||||
async handleSave() {
|
||||
if (this.localMode == "add") {
|
||||
try {
|
||||
console.log('formData', this.formData);
|
||||
let res = await this.$API.hrm.empjoin.create.req(this.formData);
|
||||
this.$message.success("提交成功");
|
||||
this.$emit('success', this.localMode);
|
||||
} catch (error) {
|
||||
console.error('提交申请失败:', error);
|
||||
throw error;
|
||||
}
|
||||
} else if (this.localMode == "edit") {
|
||||
this.$message.error("不支持编辑");
|
||||
}
|
||||
},
|
||||
handleQuery() {
|
||||
this.$refs.table.queryData(this.query);
|
||||
},
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -24,14 +24,14 @@
|
|||
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="需求岗位" prop="post_name" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="需求岗位" prop="post_need" width="120" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="需求人数" prop="count_need" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="工资报酬" prop="salary" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="到岗日期" prop="arrival_date" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="申请理由" prop="reason" width="100" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="岗位人员职责描述" prop="duty" width="100" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="到岗日期" prop="arrival_date" width="120" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="岗位人员职责描述" prop="duty" width="130" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="性别要求" prop="gender" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="学历要求" prop="education" width="80" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="申请理由" prop="reason" width="150" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="相关专业及技能要求" prop="professional_requirement" width="200" show-overflow-tooltip></el-table-column>
|
||||
</scTable>
|
||||
</el-main>
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import API from '@/api'
|
||||
import empneed_form from './enpneed_form.vue'
|
||||
import empneed_form from './empneed_form.vue'
|
||||
import { actStateEnum, interveneTypeEnum } from "@/utils/enum.js";
|
||||
const query = ref({});
|
||||
const drawerVisible = ref(false);
|
||||
|
|
@ -54,15 +54,24 @@
|
|||
:readonly="localMode === 'show'"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="申请理由" required>
|
||||
<el-select
|
||||
v-model="formData.reason"
|
||||
placeholder="请选择申请理由"
|
||||
clearable
|
||||
style="width: 300px"
|
||||
>
|
||||
<el-option label="新增人员" :value="0" />
|
||||
<el-option label="该岗原人员离职或辞职或辞退需补充" :value="1" />
|
||||
<el-option label="其他原因" :value="2" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="职责描述" required>
|
||||
<el-input v-model="formData.duty"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="相关专业及技能要求" required>
|
||||
<el-input v-model="formData.professional_requirement" type="textarea" :rows="3"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="申请理由" required>
|
||||
<el-input v-model="formData.reason" type="textarea" :rows="3"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-footer>
|
||||
<el-button type="danger"
|
||||
|
|
@ -72,14 +81,14 @@
|
|||
:loading="saveLoading"
|
||||
>删除</el-button>
|
||||
<ticketd_b
|
||||
v-if = "formData.ticket_"
|
||||
v-if = "formData.ticket_ && localMode=='show'"
|
||||
:t_id="formData.id"
|
||||
:ticket_="formData.ticket_"
|
||||
@success="$emit('success', localMode)"
|
||||
ref="ticketd_b"
|
||||
></ticketd_b>
|
||||
<el-button
|
||||
v-else
|
||||
v-if="localMode!='show'"
|
||||
type="primary"
|
||||
style="margin-right: 4px;"
|
||||
@click="handleSave"
|
||||
|
|
@ -183,7 +192,7 @@ export default {
|
|||
this.$message.success("提交成功");
|
||||
this.$emit('success', this.localMode);
|
||||
} catch (error) {
|
||||
console.error('提交离职申请失败:', error);
|
||||
console.error('提交人员需求申请失败:', error);
|
||||
throw error;
|
||||
}
|
||||
} else if (this.localMode == "edit") {
|
||||
|
|
@ -170,6 +170,9 @@ export default {
|
|||
reciver: "",
|
||||
remark: ""
|
||||
},
|
||||
rules: {
|
||||
name: [{ required: true, message: "资料名称", trigger: "blur" }],
|
||||
},
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
label-width="100px"
|
||||
label-position="left"
|
||||
>
|
||||
<el-form-item label="档案名称">
|
||||
<el-form-item label="档案名称" prop="borrow_file">
|
||||
<xtSelect
|
||||
:apiObj="apiObjM2"
|
||||
:multiple = "true"
|
||||
|
|
@ -111,9 +111,12 @@ export default {
|
|||
fileList: [],
|
||||
ticket_data: {},
|
||||
rules: {
|
||||
file_name: [
|
||||
{ required: true, message: "请选择档案", trigger: "blur" },
|
||||
],
|
||||
borrow_file: [{ required: true, message: "请选择档案", trigger: "change" }],
|
||||
contacts: [{ required: true, message: "请填写手机号", trigger: "blur" }],
|
||||
borrow_date: [{ required: true, message: "请选择借阅时间", trigger: "change" }],
|
||||
return_date: [{ required: true, message: "请选择归还时间", trigger: "change" }],
|
||||
count: [{ required: true, message: "请选择借阅数量", trigger: "change" }],
|
||||
remark: [{ required: true, message: "请选择用途", trigger: "blur" }],
|
||||
},
|
||||
};
|
||||
},
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<el-form-item label="送审稿件标题" prop="title">
|
||||
<el-input v-model="addForm.title" clearable :disabled="localMode ==='show'"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="文件内容">
|
||||
<el-form-item label="文件内容" prop="pfile">
|
||||
<sc-upload-file
|
||||
v-model="addForm.pfile"
|
||||
:multiple="false"
|
||||
|
|
@ -175,9 +175,19 @@ export default {
|
|||
addForm:{},
|
||||
localMode : this.mode,
|
||||
rules: {
|
||||
file_name: [
|
||||
{ required: true, message: "请选择档案", trigger: "blur" },
|
||||
],
|
||||
title: [{ required: true, message: "送审稿件标题", trigger: "blur" }],
|
||||
pfile: [{ required: true, message: "文件内容", trigger: "blur" }],
|
||||
participants: [{ required: true, message: "所有撰稿人", trigger: "blur" }],
|
||||
pub_dept: [{ required: true, message: "部室/研究院", trigger: "blur" }],
|
||||
level: [{ required: true, message: "第一撰稿人涉密等级", trigger: "blur" }],
|
||||
content: [{ required: true, message: "稿件内容涉及", trigger: "blur" }],
|
||||
report_purpose: [{ required: true, message: "宣传报道目的", trigger: "blur" }],
|
||||
channel: [{ required: true, message: "宣传渠道", trigger: "blur" }],
|
||||
review: [{ required: true, message: "第一撰稿人自审", trigger: "blur" }],
|
||||
dept_opinion: [{ required: true, message: "所在部室定密意见", trigger: "blur" }],
|
||||
dept_opinion_review: [{ required: true, message: "综合管理部审查意见", trigger: "blur" }],
|
||||
publicity_opinion: [{ required: true, message: "总经理审查意见", trigger: "blur" }],
|
||||
|
||||
},
|
||||
}
|
||||
},
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@
|
|||
<el-tag :type="actStateEnum[scope.row.ticket_?.act_state]?.type">
|
||||
{{ actStateEnum[scope.row.ticket_?.act_state]?.text }}
|
||||
</el-tag>
|
||||
<el-tag type="info" effect="plain">{{ scope.row.ticket_?.state_.name }}</el-tag>
|
||||
<el-tag type="info" effect="plain">{{ scope.row.ticket_?.state_?.name }}</el-tag>
|
||||
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
<el-input v-model="localForm.contacts" clearable :disabled="localMode ==='show'"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="印章类型">
|
||||
<el-form-item label="印章类型" prop="seal">
|
||||
<el-checkbox-group v-model="localForm.seal" :disabled="localMode ==='show'">
|
||||
<el-checkbox label="公章"></el-checkbox>
|
||||
<el-checkbox label="法人章"></el-checkbox>
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
style="margin-top: 10;"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否借出">
|
||||
<el-form-item label="是否借出" prop="is_lending">
|
||||
<el-radio-group v-model="localForm.is_lending" :disabled="localMode ==='show'">
|
||||
<el-radio :label="true">是</el-radio>
|
||||
<el-radio :label="false">否</el-radio>
|
||||
|
|
@ -45,7 +45,7 @@
|
|||
</el-date-picker>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="实际归还日期"
|
||||
<el-form-item label="实际归还日期" prop="actual_return_date"
|
||||
v-if="['借用中', '结束'].includes(localForm.ticket_?.state_?.name)">
|
||||
<el-date-picker
|
||||
v-model="localForm.actual_return_date"
|
||||
|
|
@ -67,7 +67,7 @@
|
|||
:disabled="localMode ==='show'">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="文件内容">
|
||||
<el-form-item label="文件内容" prop="file">
|
||||
<sc-upload-file
|
||||
v-model="localForm.file"
|
||||
:multiple="false"
|
||||
|
|
@ -133,6 +133,12 @@ export default {
|
|||
timeRange: [],
|
||||
rules: {
|
||||
filename: [{ required: true, message: "请输入文件名称", trigger: "blur" }],
|
||||
contacts: [{ required: true, message: "请输入手机号", trigger: "blur" }],
|
||||
seal: [{ required: true, message: "请选择印章类型", trigger: "blur" }],
|
||||
is_lending: [{ required: true, message: "请选择是否借出", trigger: "change" }],
|
||||
actual_return_date: [{ required: true, message: "请选择实际归还日期", trigger: "change" }],
|
||||
file: [{ required: true, message: "请上传用印文件", trigger: "change" }],
|
||||
file_count: [{ required: true, message: "请输入用印份数", trigger: "change" }]
|
||||
},
|
||||
};
|
||||
},
|
||||
|
|
@ -157,6 +163,7 @@ export default {
|
|||
},
|
||||
async submit_b_func() {
|
||||
let that = this;
|
||||
|
||||
if(that.localMode == "add") {
|
||||
let res = await that.$API.ofm.lendingseal.create.req(that.localForm);
|
||||
that.localForm.id = res.id;
|
||||
|
|
@ -170,7 +177,7 @@ export default {
|
|||
that.$API.ofm.lendingseal.item.req(that.t_id).then(res=>{
|
||||
that.localForm = res;
|
||||
that.initTimeRange();
|
||||
if(res.ticket_.state_.type == 1 && res.create_by == that.$TOOL.data.get("USER_INFO").id ) {
|
||||
if(res.ticket_&& res.ticket_.state_.type == 1 && res.create_by == that.$TOOL.data.get("USER_INFO").id ) {
|
||||
that.localMode = "edit";
|
||||
}else{
|
||||
that.localMode = "show";
|
||||
|
|
|
|||
|
|
@ -38,13 +38,13 @@
|
|||
<el-input v-model="form.location" clearable :readonly="localMode ==='show'"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<!-- <el-col :span="12">
|
||||
<el-form-item label="出发公里数" prop="start_km">
|
||||
<el-input v-model="form.start_km" clearable :readonly="localMode ==='show'" type="number">
|
||||
<template #append>km</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
<el-col :span="12">
|
||||
<el-form-item label="归还公里数" prop="end_km" v-if="form.ticket_?.state_?.name=='用车中'">
|
||||
<el-input v-model="form.end_km" clearable type="number">
|
||||
|
|
@ -137,7 +137,13 @@ export default {
|
|||
rules: {
|
||||
vehreg: [{ required: true, message: "请输入车辆名称", trigger: "blur" }],
|
||||
vdate: [{ required: true, message: "请选择时间", trigger: "blur" }],
|
||||
// title: [{ required: true, message: "请输入容纳人数", trigger: "blur" }],
|
||||
reason: [{ required: true, message: "请输入用车事由", trigger: "blur" }],
|
||||
is_city: [{ required: true, message: "请输入用车范围", trigger: "change" }],
|
||||
location: [{ required: true, message: "请输入出发地点", trigger: "blur" }],
|
||||
end_km: [{ required: true, message: "请输入归还公里数", trigger: "change" }],
|
||||
via: [{ required: true, message: "请输入途经地点", trigger: "blur" }],
|
||||
destination: [{ required: true, message: "请输入到达地点", trigger: "blur" }],
|
||||
|
||||
},
|
||||
timesList:[
|
||||
{value:0,label:'00:00-00:30',isSelect:false,sloted:false},
|
||||
|
|
|
|||
|
|
@ -138,9 +138,13 @@ export default {
|
|||
ticket_:null
|
||||
},
|
||||
rules: {
|
||||
filename: [{ required: true, message: "请输入文件名称", trigger: "blur" }],
|
||||
paper_name: [{ required: true, message: "请输入文件名称", trigger: "blur" }],
|
||||
orginization: [{ required: true, message: "请输入发布单位", trigger: "blur" }],
|
||||
publication_name: [{ required: true, message: "请输入拟投期刊名称", trigger: "blur" }],
|
||||
author: [{ required: true, message: "请输入文件作者", trigger: "blur" }],
|
||||
paper_type: [{ required: true, message: "请输入拟发表文章类型", trigger: "change" }],
|
||||
affiliated_projects: [{ required: true, message: "请输入所属项目", trigger: "blur" }],
|
||||
},
|
||||
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@
|
|||
<el-radio :label="false">否</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="拟申请地域">
|
||||
<el-form-item label="拟申请地域" prop="area">
|
||||
<el-radio-group v-model="localForm.area" :disabled="localMode ==='show'">
|
||||
<el-radio label="国内申请" value="Domestic"></el-radio>
|
||||
<el-radio label="国外申请" value="Foreign"></el-radio>
|
||||
|
|
@ -132,7 +132,11 @@ export default {
|
|||
ticketTitle: "专利申请",
|
||||
localMode : this.mode,
|
||||
rules: {
|
||||
filename: [{ required: true, message: "请输入文件名称", trigger: "blur" }],
|
||||
name: [{ required: true, message: "拟申请专利名称", trigger: "blur" }],
|
||||
author: [{ required: true, message: "请输入发明人", trigger: "blur" }],
|
||||
organization: [{ required: true, message: "请输入发布单位", trigger: "blur" }],
|
||||
type: [{ required: true, message: "请输专利类型", trigger: "blur" }],
|
||||
area: [{ required: true, message: "拟申请地域", trigger: "change" }],
|
||||
},
|
||||
localForm:{
|
||||
name: "",
|
||||
|
|
@ -190,7 +194,7 @@ export default {
|
|||
if (that.t_id) {
|
||||
that.$API.srm.patentinfo.item.req(that.t_id).then(res=>{
|
||||
that.localForm = res;
|
||||
if(res.ticket_.state_.type == 1 && res.create_by == that.$TOOL.data.get("USER_INFO").id ) {
|
||||
if(res.ticket_.state_ && res.ticket_.state_.type == 1 && res.create_by == that.$TOOL.data.get("USER_INFO").id ) {
|
||||
that.localMode = "edit";
|
||||
}else{
|
||||
that.localMode = "show";
|
||||
|
|
|
|||
|
|
@ -276,6 +276,15 @@ export default {
|
|||
"reexamination":"复审",
|
||||
"authorized":"授权"
|
||||
},
|
||||
rules: {
|
||||
patent: [{ required: true, message: "专利名称", trigger: "blur" }],
|
||||
pc_type: [{ required: true, message: "专利类型", trigger: "blur" }],
|
||||
organization: [{ required: true, message: "单位", trigger: "blur" }],
|
||||
inventors: [{ required: true, message: "发明人", trigger: "blur" }],
|
||||
affiliated_platforms: [{ required: true, message: "归属平台", trigger: "blur" }],
|
||||
affiliated_projects: [{ required: true, message: "归属项目", trigger: "blur" }],
|
||||
|
||||
},
|
||||
query: {},
|
||||
editId: null,
|
||||
isSaving: false,
|
||||
|
|
|
|||
|
|
@ -17,8 +17,15 @@
|
|||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="归口部门" prop="p_dept">
|
||||
<el-input v-model="localForm.p_dept" clearable :disabled="localMode ==='show'"></el-input>
|
||||
<el-form-item label="需求部门" prop="p_dept">
|
||||
<el-cascader
|
||||
v-model="localForm.p_dept"
|
||||
:options="group"
|
||||
:props="groupsProps"
|
||||
:show-all-levels="false"
|
||||
clearable
|
||||
style="width: 220px"
|
||||
></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="建设期" prop="const">
|
||||
<el-input v-model="localForm.const" clearable ></el-input>
|
||||
|
|
@ -74,7 +81,9 @@
|
|||
|
||||
<script>
|
||||
import ticketd_b from "@/views/wf/ticketd_b.vue";
|
||||
import ticketd from '@/views/wf/ticketd.vue'
|
||||
import ticketd from '@/views/wf/ticketd.vue';
|
||||
import { genTree } from "@/utils/verificate";
|
||||
|
||||
export default {
|
||||
props: {
|
||||
mode: { type: String, default: "show" }, // add / edit / show
|
||||
|
|
@ -89,14 +98,25 @@ export default {
|
|||
ticket_data: {},
|
||||
ticketTitle: "平台审批",
|
||||
localMode : this.mode,
|
||||
localForm: {},
|
||||
groupsProps: {
|
||||
multiple: false,
|
||||
emitPath: false,
|
||||
checkStrictly: true,
|
||||
},
|
||||
group:[],
|
||||
rules: {
|
||||
filename: [{ required: true, message: "请输入文件名称", trigger: "blur" }],
|
||||
},
|
||||
localForm: {}
|
||||
name: [{required: true, message: "请输入名称", trigger: "blur"}],
|
||||
p_dept: [{required: true, message: "请输入部门", trigger: "change"}],
|
||||
city_p: [{required: true, message: "请选择市级平台", trigger: "change"}],
|
||||
const: [{required: true, message: "建设期", trigger: "blur"}],
|
||||
condition: [{required: true, message: "平台基本情况与目标绩效", trigger: "change"}]
|
||||
},
|
||||
};
|
||||
},
|
||||
mounted(){
|
||||
let that=this
|
||||
this.getGroup();
|
||||
if(that.t_id){
|
||||
that.getTid();
|
||||
}else{
|
||||
|
|
@ -117,6 +137,10 @@ export default {
|
|||
await that.$API.srm.platform.update.req(that.localForm.id, that.localForm);
|
||||
}
|
||||
},
|
||||
async getGroup() {
|
||||
let res = await this.$API.system.dept.list.req({ page: 0 });
|
||||
this.group = genTree(res);
|
||||
},
|
||||
getTid (){
|
||||
var that = this;
|
||||
if (that.t_id) {
|
||||
|
|
|
|||
|
|
@ -557,11 +557,11 @@ export default {
|
|||
if(type=='wm'){
|
||||
let params = {};
|
||||
params.tid = row.id;
|
||||
that.wprParams.wm = row.id;
|
||||
let materialname = row.material_.name + '|' + row.material_.process_name;
|
||||
let specification = row.material_.specification;
|
||||
if(that.route_code=='reyatuihuo'||that.route_code=='banduangunyuan'||that.route_code=='tuomoceliang'){
|
||||
if(that.route_code=='reyatuihuo'||that.route_code=='banduangunyuan'||that.route_code=='banduangunyuanhoudama'){
|
||||
params.label_template_name = '工序带板段号打印模板';
|
||||
that.wprParams.wm = row.id;
|
||||
let totalcount = 0;
|
||||
let numbers = ['','','','','','',''];
|
||||
this.$API.wpm.wpr.list.req(that.wprParams).then((res) => {
|
||||
|
|
@ -588,41 +588,57 @@ export default {
|
|||
}
|
||||
}
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,materialname:materialname,specification:specification,count:row.count,slicecount:slice_count,totalcount:totalcount,numbers0:numbers[0],numbers1:numbers[1],numbers2:numbers[2],numbers3:numbers[3],numbers4:numbers[4],numbers5:numbers[5],numbers6:numbers[6]};
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
})
|
||||
that.printFun(params);
|
||||
})
|
||||
}else{
|
||||
if(that.route_code=='paiyicibang'){
|
||||
params.extra_data={orimaterial:row.material_ofrom_name};
|
||||
}else if(that.route_code=='yicifusi'){
|
||||
that.$API.mtm.route.list.req({material_out:row.material,page:0}).then((res) => {
|
||||
let namearr = row.material_name.split('排一次棒');
|
||||
let extra_data = res[0].params_json;
|
||||
extra_data.batch = row.batch;
|
||||
extra_data.material_name=namearr[0];
|
||||
extra_data.orimaterial=row.material_ofrom_name;
|
||||
params.extra_data = extra_data;
|
||||
params.label_template_name = '排一次棒打印模板';
|
||||
}else{
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,count:row.count};
|
||||
that.printFun(params);
|
||||
})
|
||||
}else if(that.route_code=='qingxi'||that.route_code=='kunbang'||that.route_code=='ladansi'||that.route_code=='yicifusi'||that.route_code=='paiercibang'||
|
||||
that.route_code=='ercifusi'||that.route_code=='qiesi'||that.route_code=='paiban'||that.route_code=='zhuangmo'||that.route_code=='zlybcl'||that.route_code=='tuomoceliang'){
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,count:row.count};
|
||||
params.label_template_name = '脱模测量前工序打印模板';
|
||||
that.printFun(params);
|
||||
}else{
|
||||
let numbers = ['','','','','','','','','','','','','',''];
|
||||
let numberList = [];
|
||||
this.$API.wpm.wpr.list.req(that.wprParams).then((res) => {
|
||||
let leng = res.length;
|
||||
if(leng>0){
|
||||
let mojuArr = res[0].number.match(/[a-zA-Z]/g) || [];
|
||||
let mojuhao = mojuArr[0];
|
||||
res.forEach(item=>{
|
||||
let num = mojuhao+item.number.split(mojuhao)[1];
|
||||
numberList.push(num);
|
||||
})
|
||||
numberList.forEach((item,index)=>{
|
||||
let index1 = Math.floor(index/6);
|
||||
if(index1<14){
|
||||
numbers[index1]+=item+'、';
|
||||
}
|
||||
})
|
||||
}
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,count:'—'+row.count,numbers0:numbers[0],
|
||||
numbers1:numbers[1],numbers2:numbers[2],numbers3:numbers[3],numbers4:numbers[4],numbers5:numbers[5],
|
||||
numbers6:numbers[6],numbers7:numbers[7],numbers8:numbers[8],numbers9:numbers[9],numbers10:numbers[10],
|
||||
numbers11:numbers[11],numbers12:numbers[12],numbers13:numbers[13]};
|
||||
params.label_template_name = '其他工序打印模板';
|
||||
}
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
that.printFun(params);
|
||||
})
|
||||
}
|
||||
|
||||
}else if(type=='wpr'){
|
||||
that.ofromBatch = row.wm_batch;
|
||||
that.ofromName = row.wm_material_ofrom_name;
|
||||
let params = {};
|
||||
let name = row.material_name.split('|')[0];
|
||||
if(that.route_code=='paiyicibang'||that.route_code=='kunbang'){
|
||||
console.log('that.route_code',that.route_code);
|
||||
console.log('that.ofromName',that.ofromName);
|
||||
that.$API.mtm.route.list.req({material_out:row.material,page:0}).then((res) => {
|
||||
let data = res[0].params_json;
|
||||
data.number = row.number;
|
||||
|
|
@ -691,6 +707,18 @@ export default {
|
|||
that.$message.warning("请先设置打印机");
|
||||
}
|
||||
},
|
||||
printFun(params){
|
||||
let that = this;
|
||||
console.log('params',params)
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
})
|
||||
},
|
||||
inmCheck(row){
|
||||
let that = this;
|
||||
that.checkItem = row;
|
||||
|
|
|
|||
|
|
@ -581,12 +581,12 @@ export default {
|
|||
if(type=='wm'){
|
||||
let params = {};
|
||||
params.tid = row.id;
|
||||
that.wprParams.wm = row.id;
|
||||
let materialname = row.material_.name + '|' + row.material_.process_name;
|
||||
let specification = row.material_.specification;
|
||||
if(that.route_code=='tuomoceliang'||that.route_code=='reyatuihuo'||that.route_code=='tuomoceliang'){
|
||||
console.log('route_code',that.route_code);
|
||||
params.label_template_name = '工序带板段号打印模板';
|
||||
that.wprParams.wm = row.id;
|
||||
let totalcount = 0;
|
||||
let numbers = ['','','','','','',''];
|
||||
this.$API.wpm.wpr.list.req(that.wprParams).then((res) => {
|
||||
|
|
@ -613,14 +613,7 @@ export default {
|
|||
}
|
||||
}
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,materialname:materialname,specification:specification,count:row.count,slicecount:slice_count,totalcount:totalcount,numbers0:numbers[0],numbers1:numbers[1],numbers2:numbers[2],numbers3:numbers[3],numbers4:numbers[4],numbers5:numbers[5],numbers6:numbers[6]};
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
})
|
||||
that.printFun(params);
|
||||
})
|
||||
}else if(that.route_code=='paiyicibang'){
|
||||
that.$API.mtm.route.list.req({material_out:row.material,page:0}).then((res) => {
|
||||
|
|
@ -631,25 +624,38 @@ export default {
|
|||
extra_data.orimaterial=row.material_ofrom_name;
|
||||
params.extra_data = extra_data;
|
||||
params.label_template_name = '排一次棒打印模板';
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
});
|
||||
that.printFun(params);
|
||||
})
|
||||
}else{
|
||||
}else if(that.route_code=='qingxi'||that.route_code=='kunbang'||that.route_code=='ladansi'||that.route_code=='yicifusi'||that.route_code=='paiercibang'||
|
||||
that.route_code=='ercifusi'||that.route_code=='qiesi'||that.route_code=='paiban'||that.route_code=='zhuangmo'||that.route_code=='zlybcl'){
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,count:row.count};
|
||||
params.label_template_name = '其他工序打印模板';
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
params.label_template_name = '脱模测量前工序打印模板';
|
||||
that.printFun(params);
|
||||
}else{
|
||||
let numbers = ['','','','','','','','','','','','','',''];
|
||||
let numberList = [];
|
||||
this.$API.wpm.wpr.list.req(that.wprParams).then((res) => {
|
||||
let leng = res.length;
|
||||
if(leng>0){
|
||||
let mojuArr = res[0].number.match(/[a-zA-Z]/g) || [];
|
||||
let mojuhao = mojuArr[0];
|
||||
res.forEach(item=>{
|
||||
let num = mojuhao+item.number.split(mojuhao)[1];
|
||||
numberList.push(num);
|
||||
})
|
||||
numberList.forEach((item,index)=>{
|
||||
let index1 = Math.floor(index/6);
|
||||
if(index1<14){
|
||||
numbers[index1]+=item+'、';
|
||||
}
|
||||
})
|
||||
}
|
||||
params.extra_data={orimaterial:row.material_ofrom_name,count:'—'+row.count,numbers0:numbers[0],
|
||||
numbers1:numbers[1],numbers2:numbers[2],numbers3:numbers[3],numbers4:numbers[4],numbers5:numbers[5],
|
||||
numbers6:numbers[6],numbers7:numbers[7],numbers8:numbers[8],numbers9:numbers[9],numbers10:numbers[10],
|
||||
numbers11:numbers[11],numbers12:numbers[12],numbers13:numbers[13]};
|
||||
params.label_template_name = '其他工序打印模板';
|
||||
that.printFun(params);
|
||||
})
|
||||
}
|
||||
}else if(type=='wpr'){
|
||||
|
|
@ -658,8 +664,6 @@ export default {
|
|||
let params = {};
|
||||
let name = row.material_name.split('|')[0];
|
||||
if(that.route_code=='paiyicibang'||that.route_code=='kunbang'){
|
||||
console.log('that.route_code',that.route_code);
|
||||
console.log('that.ofromName',that.ofromName);
|
||||
that.$API.mtm.route.list.req({material_out:row.material,page:0}).then((res) => {
|
||||
let data = res[0].params_json;
|
||||
data.number = row.number;
|
||||
|
|
@ -728,6 +732,17 @@ export default {
|
|||
that.$message.warning("请先设置打印机");
|
||||
}
|
||||
},
|
||||
printFun(params){
|
||||
let that = this;
|
||||
that.apiObjPrint.req(params).then((res) => {
|
||||
let obj = {};
|
||||
obj.printer_commands = res.commands;
|
||||
obj.printer_name = that.printer_name;
|
||||
that.$API.wpm.prints.req(obj).then((response) => {
|
||||
that.$message.success("打印成功");
|
||||
});
|
||||
})
|
||||
},
|
||||
inmCheck(row){
|
||||
let that = this;
|
||||
that.checkItem = row;
|
||||
|
|
|
|||
Loading…
Reference in New Issue