From ee17debc7eff4af0bbfc1f28a256f2a05993b0c5 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期二, 16 四月 2024 17:19:36 +0800
Subject: [PATCH] feat:添加圆环
---
src/views/system/work-order/distribute/index.vue | 223 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 210 insertions(+), 13 deletions(-)
diff --git a/src/views/system/work-order/distribute/index.vue b/src/views/system/work-order/distribute/index.vue
index 8e9ab85..45fae99 100644
--- a/src/views/system/work-order/distribute/index.vue
+++ b/src/views/system/work-order/distribute/index.vue
@@ -4,23 +4,48 @@
<el-col :span="24" style="position: relative">
<el-menu :default-active="activeIndex" class="el-menu" mode="horizontal" @select="handleSelect">
<el-menu-item index="0" @click="changeUnit(null, '鍏ㄩ儴')">
- 鍏ㄩ儴鍗曚綅
+ 鍏ㄩ儴鍗曚綅(430)
</el-menu-item>
<el-menu-item index="1">
- 鑷祦浜曡繍缁村崟浣�(70/70)
+ 鑷祦浜曡繍缁村崟浣�(70)
</el-menu-item>
<el-menu-item index="2">
- 澶у畨杩愮淮(50/50)
+ 澶у畨杩愮淮(50)
</el-menu-item>
- <el-menu-item index="3">瀵岄『杩愮淮鍗曚綅(20/70)</el-menu-item>
- <el-menu-item index="4">楂樻柊杩愮淮鍗曚綅(15/40)</el-menu-item>
- <el-menu-item index="5">鑽e幙杩愮淮鍗曚綅(90/90)</el-menu-item>
- <el-menu-item index="6">璐′簳杩愮淮鍗曚綅(45/45)</el-menu-item>
- <el-menu-item index="7">娌挎哗杩愮淮鍗曚綅(70/70)</el-menu-item>
+ <el-menu-item index="3">瀵岄『杩愮淮鍗曚綅(70)</el-menu-item>
+ <el-menu-item index="4">楂樻柊杩愮淮鍗曚綅(15)</el-menu-item>
+ <el-menu-item index="5">鑽e幙杩愮淮鍗曚綅(90)</el-menu-item>
+ <el-menu-item index="6">璐′簳杩愮淮鍗曚綅(45)</el-menu-item>
+ <el-menu-item index="7">娌挎哗杩愮淮鍗曚綅(70)</el-menu-item>
</el-menu>
- <el-tooltip class="item" effect="dark" content="鑷姩涓嬪彂璁剧疆" placement="left">
- <el-button class="setting" style="" type="success" icon="el-icon-s-tools" circle></el-button>
- </el-tooltip>
+ <el-popover
+ placement="right"
+ width="400"
+ trigger="click">
+ <el-form :model="settingForm" :rules="settingRules" ref="settingForm" label-width="120px">
+ <el-form-item label="褰曞儚璐ㄩ噺" prop="videoQuality">
+ <el-select style="width: 100%" v-model="settingForm.videoQuality" placeholder="鏈�浣庡綍鍍忚川閲�">
+ <el-option label="鍏ㄥ綍鍍�" value="鍏ㄥ綍鍍�"/>
+ <el-option label="閮ㄥ垎褰曞儚" value="閮ㄥ垎褰曞儚"/>
+ <el-option label="鏃犲綍鍍�" value="鏃犲綍鍍�"/>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鐐逛綅绂荤嚎鏃堕暱" prop="outLine">
+ <el-input type="number" v-model="settingForm.outLine" placeholder="涓嶈兘瓒呰繃澶氫箙">
+ <template slot="append">鍒嗛挓</template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="瑙嗛鏍囨敞鍑嗙‘鐜�" prop="videoLabel">
+ <el-input type="number" v-model="settingForm.videoLabel" placeholder="鏈�浣庡噯纭巼">
+ <template slot="append">%</template>
+ </el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="submitSetting">淇濆瓨</el-button>
+ </el-form-item>
+ </el-form>
+ <el-button title="鑷姩鐢熸垚宸ュ崟璁剧疆" slot="reference" class="setting" style="" type="success" icon="el-icon-s-tools" circle></el-button>
+ </el-popover>
</el-col>
</el-row>
@@ -58,6 +83,13 @@
end-placeholder="缁撴潫鏃ユ湡">
</el-date-picker>
</el-form-item>
+ <el-form-item label="鏁呴殰绫诲瀷" prop="errorType">
+ <el-select v-model="fastDistributeForm.errorType">
+ <el-option label="甯傛斂鏂藉伐" value="甯傛斂鏂藉伐"/>
+ <el-option label="璁惧鏁呴殰" value="璁惧鏁呴殰"/>
+ <el-option label="璁惧閬楀け" value="璁惧閬楀け"/>
+ </el-select>
+ </el-form-item>
<el-form-item label="鏁伴噺闄愬埗" prop="fastNumLimit">
<el-input v-model="fastDistributeForm.fastNumLimit" size="small" type="number" placeholder="姝ゆ宸ュ崟涓嬪彂鏈�澶ф暟閲�"></el-input>
</el-form-item>
@@ -67,6 +99,8 @@
</el-form>
<el-button slot="reference" type="primary" size="small">蹇嵎涓嬪彂</el-button>
</el-popover>
+ <el-button size="small" type="primary" @click="page">鍒锋柊</el-button>
+ <el-button size="small" type="primary" @click="handleAdd">鏂板</el-button>
</el-col>
</el-row>
@@ -91,15 +125,70 @@
</el-col>
</el-row>
+
+ <!-- 娣诲姞鎴栦慨鏀广�愯濉啓鍔熻兘鍚嶇О銆戝璇濇 -->
+ <el-dialog :title="detailName" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label="杩愮淮鍗曚綅" prop="unitId">
+ <el-select v-model="form.unitId" placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="item in unitList"
+ :key="item.id"
+ :label="item.value"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="宸ュ崟鏉ユ簮" prop="source">
+ <el-select
+ v-model="form.source"
+ filterable
+ remote
+ reserve-keyword
+ placeholder="璇烽�夋嫨鏉ユ簮"
+ :remote-method="remoteGetPoints"
+ :loading="selectLoading">
+ <el-option
+ v-for="item in pointList"
+ :key="item.id"
+ :label="item.value"
+ :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鏁呴殰绫诲瀷" prop="errorType">
+ <el-select v-model="form.errorType">
+ <el-option label="甯傛斂鏂藉伐" value="甯傛斂鏂藉伐"/>
+ <el-option label="璁惧鏁呴殰" value="璁惧鏁呴殰"/>
+ <el-option label="璁惧閬楀け" value="璁惧閬楀け"/>
+ </el-select>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+
</div>
</template>
<script>
-import {distributeWorkOrder, fastDistribute} from '@/api/platform/work-order'
+import {distributeWorkOrder, fastDistribute, addWorkOrder, updateWorkOrder} from '@/api/platform/work-order'
+import {unitSelect} from "@/api/platform/unit";
+import { pointSelectData } from "@/api/platform/point";
export default {
name: 'index',
data() {
return {
+ settingForm: {
+ // 绂荤嚎
+ outLine: null,
+ // 瑙嗛鍙敤
+ videoQuality: "",
+ // 瑙嗛鏍囨敞
+ videoLabel: ""
+ },
// 褰撳墠杩愮淮鍗曚綅
unitId: null,
unitName: "",
@@ -115,6 +204,18 @@
end: null,
unitId: null
},
+ // 鑷姩鐢熸垚宸ュ崟瑙勫垯
+ settingRules: {
+ outLine: [
+ { required: true, message: "璇峰~鍐欑偣浣嶇绾挎椂闀�", trigger: "blur" }
+ ],
+ videoQuality: [
+ { required: true, message: "璇峰~鍐欒棰戝彲鐢ㄧ▼搴�", trigger: "change" }
+ ],
+ videoLabel: [
+ { required: true, message: "璇峰~鍐欑偣瑙嗛鏍囨敞鍑嗙‘鐜�", trigger: "blur" }
+ ],
+ },
// 涓嬪彂琛ㄥ崟楠岃瘉
fastDistributeRules: {
fastWay: [
@@ -122,6 +223,9 @@
],
fastNumLimit: [
{ required: true, message: "璇疯緭鍏ュ揩閫熷垎鍙戞暟閲忛檺鍒�", trigger: "change" }
+ ],
+ errorType: [
+ { required: true, message: "璇锋晠闅滅被鍨�", trigger: "change" }
],
},
queryParams: {
@@ -136,12 +240,49 @@
activeIndex: '0',
loading: false,
workOrderList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 琛ㄥ崟鍙傛暟
+ form: {
+ },
+ // 涓嬫媺鍔犺浇
+ selectLoading: false,
+ // 鐐逛綅list
+ pointList: [],
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ source: [
+ { required: true, message: "宸ュ崟鏉ユ簮涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ workOrderNo: [
+ { required: true, message: "宸ュ崟鍙蜂笉鑳戒负绌�", trigger: "blur" }
+ ],
+ unitId: [
+ { required: true, message: "杩愮淮鍗曚綅涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ errorType: [
+ { required: true, message: "璇烽�夋嫨鏁呴殰绫诲瀷", trigger: "blur" }
+ ],
+ }
}
},
mounted() {
this.page();
+ this.selectUnit();
},
methods: {
+ submitSetting() {
+ this.$refs['settingForm'].validate((valid) => {
+ if (valid) {
+ this.$modal.msgSuccess("淇濆瓨鎴愬姛")
+ } else {
+ console.log('error submit!!');
+ return false;
+ }
+ });
+ },
page() {
this.loading = true;
distributeWorkOrder(this.queryParams).then(res => {
@@ -163,7 +304,6 @@
this.fastDistributeForm.fastNumLimit = null
this.fastTimeRange = []
},
- allDis() {},
// 鍏ㄩ儴涓嬪彂
allDistribute() {
this.fastDistribute();
@@ -209,6 +349,63 @@
handleSelectionChange(selection) {
this.multipleSelection = selection.map(item => item.id)
},
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞鍚堝悓";
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {};
+ this.resetForm("form");
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.id != null) {
+ updateWorkOrder(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.page();
+ });
+ } else {
+ addWorkOrder(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.page();
+ });
+ }
+ }
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 杩愮淮鍏徃涓嬫媺鏁版嵁
+ selectUnit() {
+ unitSelect().then(res => {
+ this.unitList = res.data;
+ })
+ },
+ // 杩滅▼鎼滅储鐐逛綅
+ remoteGetPoints(query) {
+ if (query !== '') {
+ this.selectLoading = true;
+ let data = {
+ "keyword": query
+ }
+ pointSelectData(data).then(res => {
+ this.pointList = res.data;
+ this.selectLoading = false;
+ })
+ } else {
+ this.pointList = [];
+ }
+ },
}
}
</script>
--
Gitblit v1.8.0