Compare commits
No commits in common. "adef0b9b2436b459c7bfb5f00e5d9fae8adf72ac" and "ddc8ef889dca19d19b2e41ecab4ac945877d272f" have entirely different histories.
adef0b9b24
...
ddc8ef889d
|
|
@ -231,33 +231,6 @@ export default {
|
||||||
return await http.get(`${config.API_URL}/mtm/shift/`, data);
|
return await http.get(`${config.API_URL}/mtm/shift/`, data);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
item: {
|
|
||||||
name: "获取详情",
|
|
||||||
req: async function (id) {
|
|
||||||
return await http.get(`${config.API_URL}/mtm/shift/${id}/`);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
create: {
|
|
||||||
name: "创建",
|
|
||||||
req: async function (data) {
|
|
||||||
return await http.post(`${config.API_URL}/mtm/shift/`, data);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
update: {
|
|
||||||
name: "更新",
|
|
||||||
req: async function (id, data) {
|
|
||||||
return await http.put(
|
|
||||||
`${config.API_URL}/mtm/shift/${id}/`,
|
|
||||||
data
|
|
||||||
);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
delete: {
|
|
||||||
name: "删除",
|
|
||||||
req: async function (id) {
|
|
||||||
return await http.delete(`${config.API_URL}/mtm/shift/${id}/`);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
//班组
|
//班组
|
||||||
team: {
|
team: {
|
||||||
|
|
|
||||||
|
|
@ -1,125 +0,0 @@
|
||||||
<template>
|
|
||||||
<el-container>
|
|
||||||
<el-header>
|
|
||||||
<div class="left-panel">
|
|
||||||
<el-input style="margin-right: 5px" v-model="query.search" placeholder="名称/所属规则" clearable></el-input>
|
|
||||||
<el-button type="primary" icon="el-icon-search" @click="handleQuery"></el-button>
|
|
||||||
</div>
|
|
||||||
<div class="right-panel">
|
|
||||||
<el-button type="primary" icon="el-icon-plus" @click="table_add" v-auth="'shift.create'"></el-button>
|
|
||||||
</div>
|
|
||||||
</el-header>
|
|
||||||
<el-main class="nopadding">
|
|
||||||
<scTable ref="table" :apiObj="apiObj" :params="query" row-key="id" hidePagination>
|
|
||||||
<el-table-column label="#" type="index" width="50"></el-table-column>
|
|
||||||
<el-table-column label="名称" prop="name" min-width="120"></el-table-column>
|
|
||||||
<el-table-column label="所属规则" prop="rule" min-width="120"></el-table-column>
|
|
||||||
<el-table-column label="开始时间" prop="start_time_o" min-width="100"></el-table-column>
|
|
||||||
<el-table-column label="结束时间" prop="end_time_o" min-width="100"></el-table-column>
|
|
||||||
<el-table-column label="排序" prop="sort" width="80"></el-table-column>
|
|
||||||
<el-table-column label="操作" fixed="right" align="center" width="140">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-button link size="small" type="primary" v-auth="'shift.update'"
|
|
||||||
@click="table_edit(scope.row)">编辑</el-button>
|
|
||||||
<el-divider direction="vertical"></el-divider>
|
|
||||||
<el-popconfirm title="确定删除吗?" @confirm="table_del(scope.row, scope.$index)">
|
|
||||||
<template #reference>
|
|
||||||
<el-button link size="small" v-auth="'shift.delete'" type="danger">删除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-popconfirm>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</scTable>
|
|
||||||
</el-main>
|
|
||||||
<el-dialog :title="mode === 'add' ? '新增班次' : '编辑班次'" v-model="dialogVisible" :width="600" destroy-on-close>
|
|
||||||
<el-form ref="dialogForm" :model="form" :rules="rules" label-width="100px">
|
|
||||||
<el-form-item label="名称" prop="name">
|
|
||||||
<el-input v-model="form.name" clearable></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="所属规则" prop="rule">
|
|
||||||
<el-input v-model="form.rule" clearable placeholder="同一规则下的班次将被一起循环"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="开始时间" prop="start_time_o">
|
|
||||||
<el-time-picker v-model="form.start_time_o" value-format="HH:mm:ss" placeholder="选择开始时间"
|
|
||||||
class="width-100"></el-time-picker>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="结束时间" prop="end_time_o">
|
|
||||||
<el-time-picker v-model="form.end_time_o" value-format="HH:mm:ss" placeholder="选择结束时间"
|
|
||||||
class="width-100"></el-time-picker>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="排序" prop="sort">
|
|
||||||
<el-input-number v-model="form.sort" :min="1" class="width-100"></el-input-number>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
<template #footer>
|
|
||||||
<el-button @click="dialogVisible = false">取消</el-button>
|
|
||||||
<el-button type="primary" :loading="isSaving" @click="save">保存</el-button>
|
|
||||||
</template>
|
|
||||||
</el-dialog>
|
|
||||||
</el-container>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
const dForm = {
|
|
||||||
name: '',
|
|
||||||
rule: '默认',
|
|
||||||
start_time_o: '',
|
|
||||||
end_time_o: '',
|
|
||||||
sort: 1,
|
|
||||||
}
|
|
||||||
export default {
|
|
||||||
name: 'shift',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
apiObj: this.$API.mtm.shift.list,
|
|
||||||
query: {},
|
|
||||||
dialogVisible: false,
|
|
||||||
isSaving: false,
|
|
||||||
mode: 'add',
|
|
||||||
form: Object.assign({}, dForm),
|
|
||||||
rules: {
|
|
||||||
name: [{ required: true, message: '请输入名称', trigger: 'blur' }],
|
|
||||||
rule: [{ required: true, message: '请输入所属规则', trigger: 'blur' }],
|
|
||||||
start_time_o: [{ required: true, message: '请选择开始时间', trigger: 'change' }],
|
|
||||||
end_time_o: [{ required: true, message: '请选择结束时间', trigger: 'change' }],
|
|
||||||
},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
handleQuery() {
|
|
||||||
this.$refs.table.queryData(this.query);
|
|
||||||
},
|
|
||||||
table_add() {
|
|
||||||
this.mode = 'add';
|
|
||||||
this.form = Object.assign({}, dForm);
|
|
||||||
this.dialogVisible = true;
|
|
||||||
},
|
|
||||||
table_edit(row) {
|
|
||||||
this.mode = 'edit';
|
|
||||||
this.form = Object.assign({}, dForm, row);
|
|
||||||
this.dialogVisible = true;
|
|
||||||
},
|
|
||||||
save() {
|
|
||||||
this.$refs.dialogForm.validate(valid => {
|
|
||||||
if (!valid) return;
|
|
||||||
this.isSaving = true;
|
|
||||||
const req = this.mode === 'add'
|
|
||||||
? this.$API.mtm.shift.create.req(this.form)
|
|
||||||
: this.$API.mtm.shift.update.req(this.form.id, this.form);
|
|
||||||
req.then(() => {
|
|
||||||
this.dialogVisible = false;
|
|
||||||
this.$refs.table.refresh();
|
|
||||||
this.$message.success('操作成功');
|
|
||||||
}).finally(() => {
|
|
||||||
this.isSaving = false;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
table_del(row) {
|
|
||||||
this.$API.mtm.shift.delete.req(row.id).then(() => {
|
|
||||||
this.$refs.table.refresh();
|
|
||||||
this.$message.success('操作成功');
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
@ -35,9 +35,8 @@
|
||||||
</div>
|
</div>
|
||||||
<div style="margin-top: 6px" v-if="form.rule_display.length > 0">
|
<div style="margin-top: 6px" v-if="form.rule_display.length > 0">
|
||||||
<span v-for="(item, index) in form.rule_display" :key="index">
|
<span v-for="(item, index) in form.rule_display" :key="index">
|
||||||
{{ item }}<span v-if="index < form.rule_display.length - 1"> -> </span>
|
{{ item }} ->
|
||||||
</span>
|
</span>
|
||||||
<el-button link size="small" type="danger" style="margin-left: 8px" @click="removeLast">撤销</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
|
|
@ -85,29 +84,17 @@ export default {
|
||||||
this.form.rule.push(item.id);
|
this.form.rule.push(item.id);
|
||||||
this.form.rule_display.push(item.name);
|
this.form.rule_display.push(item.name);
|
||||||
},
|
},
|
||||||
removeLast() {
|
|
||||||
this.form.rule.pop();
|
|
||||||
this.form.rule_display.pop();
|
|
||||||
},
|
|
||||||
save() {
|
save() {
|
||||||
if (!this.form.belong_dept) {
|
|
||||||
this.$message.warning("请选择所属部门");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (this.form.rule.length === 0) {
|
|
||||||
this.$message.warning("请至少添加一个班组");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
this.$API.mtm.srule.create.req(this.form).then(res => {
|
this.$API.mtm.srule.create.req(this.form).then(res => {
|
||||||
this.$refs.table.refresh();
|
this.$refs.table.refresh();
|
||||||
this.dialogVisible = false;
|
this.dialogVisible = false;
|
||||||
this.$message.success("操作成功");
|
that.$message.success("操作成功");
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
table_del(row, index) {
|
table_del(row, index) {
|
||||||
this.$API.mtm.srule.delete.req(row.id).then(res => {
|
this.$API.mtm.srule.delete.req(row.id).then(res => {
|
||||||
this.$refs.table.refresh();
|
this.$refs.table.refresh();
|
||||||
this.$message.success("操作成功");
|
that.$message.success("操作成功");
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue