|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<div class="ImmunePlan">
|
|
|
- <h2 style="margin-bottom: 20px;padding-bottom:7px;border-bottom:2px solid #ddd">免疫程序</h2>
|
|
|
+ <h2 style="margin-bottom: 20px;padding-bottom:7px;border-bottom:2px solid #ddd">免疫计划</h2>
|
|
|
<header id="header">
|
|
|
<el-row type="flex" :gutter="20">
|
|
|
<el-col :span="4">
|
|
@@ -17,7 +17,7 @@
|
|
|
<el-button
|
|
|
v-for="item in $store.state['sheepType']"
|
|
|
:key="item.value"
|
|
|
- :type="targetType==item.value?'primary':''"
|
|
|
+ :type="target==item.value?'primary':''"
|
|
|
@click="onTargetType(item.value)"
|
|
|
>{{ item.label }}</el-button>
|
|
|
</el-button-group>
|
|
@@ -27,7 +27,6 @@
|
|
|
<section>
|
|
|
<article class="table">
|
|
|
<el-table
|
|
|
- ref="multipleTable"
|
|
|
:data="tableData"
|
|
|
tooltip-effect="dark"
|
|
|
style="width: 100%"
|
|
@@ -35,7 +34,7 @@
|
|
|
<el-table-column prop="id" label="序号" width="80"></el-table-column>
|
|
|
<el-table-column prop="batchNo" label="批次号"></el-table-column>
|
|
|
<el-table-column prop="performTime" label="执行时间"></el-table-column>
|
|
|
- <el-table-column prop="number" label="免疫数量"></el-table-column>
|
|
|
+ <el-table-column prop="number" label="免疫数量(只)"></el-table-column>
|
|
|
<el-table-column prop="medicineName" label="使用药物名"></el-table-column>
|
|
|
<el-table-column prop="method" label="使用方法"></el-table-column>
|
|
|
<el-table-column label="操作人">
|
|
@@ -50,10 +49,10 @@
|
|
|
<el-table-column prop="remark" label="备注"></el-table-column>
|
|
|
<el-table-column label="操作" width="150">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-button @click="edit(scope.row)" type="text" size="small">编辑</el-button>
|
|
|
- <el-popconfirm title="是否删除此设备的信息?" @onConfirm="del(scope.row)">
|
|
|
+ <el-button @click="onTimeChange(scope.row)" type="text" size="small">时间变更</el-button>
|
|
|
+ <!-- <el-popconfirm title="是否删除此设备的信息?" @onConfirm="del(scope.row)">
|
|
|
<el-button slot="reference" type="text" size="small">删除</el-button>
|
|
|
- </el-popconfirm>
|
|
|
+ </el-popconfirm> -->
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -81,43 +80,56 @@
|
|
|
label-width="140px"
|
|
|
>
|
|
|
<el-form-item label="羊类型">
|
|
|
- <el-checkbox-group v-model="formData.sheepType">
|
|
|
+ <el-checkbox-group v-model="sheepTypeArr">
|
|
|
<el-checkbox
|
|
|
v-for="item in $store.state['sheepType']"
|
|
|
:key="item.value"
|
|
|
:label="item.value"
|
|
|
>{{ item.label }}</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
- <!-- <el-checkbox-group v-model="formData.sheepType">
|
|
|
- <el-checkbox label="复选框 A"></el-checkbox>
|
|
|
- <el-checkbox label="复选框 B"></el-checkbox>
|
|
|
- <el-checkbox label="复选框 C"></el-checkbox>
|
|
|
- <el-checkbox label="禁用" disabled></el-checkbox>
|
|
|
- <el-checkbox label="选中且禁用" disabled></el-checkbox>
|
|
|
- </el-checkbox-group> -->
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="目标羊编号">
|
|
|
- <el-input v-model="formData.target"></el-input>
|
|
|
+ <el-form-item label="批次号">
|
|
|
+ <el-input v-model="formData.batchNo"></el-input>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="免疫时间">
|
|
|
- <el-input v-model="formData.vaccineTime"></el-input>
|
|
|
+ <el-form-item label="执行时间">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="formData.performTime"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
+ placeholder="选择日期"
|
|
|
+ ></el-date-picker>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="免疫剂量及单位">
|
|
|
- <el-row type="flex" :gutter="20">
|
|
|
- <el-col :span="10">
|
|
|
- <el-input v-model="formData.vaccineDosage"></el-input>
|
|
|
- </el-col>
|
|
|
- <el-col :span="10">
|
|
|
- <el-input v-model="formData.unit"></el-input>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
+ <el-form-item label="免疫数量(只)">
|
|
|
+ <el-input v-model="formData.number"></el-input>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="注射部位">
|
|
|
- <el-input v-model="formData.bodyPart"></el-input>
|
|
|
+ <el-form-item label="使用药物">
|
|
|
+ <el-select v-model="formData.medicineId" filterable placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in $store.state['drugBasicsList']"
|
|
|
+ :key="item.id"
|
|
|
+ :label="`${item.name}`"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="使用方法">
|
|
|
+ <el-input v-model="formData.method"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item label="操作人">
|
|
|
+ <el-select v-model="formData.opeUser" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in $store.state['workerList']"
|
|
|
+ :key="item.id"
|
|
|
+ :label="`${item.name}(${item.position})`"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="备注">
|
|
@@ -132,6 +144,35 @@
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+ <el-dialog title="时间变更" :visible.sync="isShowTime" width="40%">
|
|
|
+ <el-row type="flex">
|
|
|
+ <el-col :span="20">
|
|
|
+ <el-form
|
|
|
+ ref="timeChange"
|
|
|
+ :model="formData"
|
|
|
+ :rules="rules"
|
|
|
+ label-width="140px"
|
|
|
+ >
|
|
|
+ <el-form-item label="执行时间">
|
|
|
+ <el-date-picker
|
|
|
+ v-model="formData.performTime"
|
|
|
+ type="date"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
+ placeholder="选择日期"
|
|
|
+ ></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item>
|
|
|
+ <el-button @click="isShowTime=false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="submitFormTimeChange('timeChange')">保 存</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -139,7 +180,7 @@
|
|
|
import {
|
|
|
reqImmunePlanList,
|
|
|
reqAddOrUpdateImmunePlan,
|
|
|
- reqDelImmunePlan
|
|
|
+ reqAdjustImmunePlan
|
|
|
} from "@/api/antiepidemic.js";
|
|
|
|
|
|
const pageSize = 10;
|
|
@@ -151,22 +192,23 @@ export default {
|
|
|
return {
|
|
|
search: "",
|
|
|
pageNum: 1,
|
|
|
- targetType: this.$store.state["sheepType"][2].value,
|
|
|
tableData: [],
|
|
|
totalPages: 0,
|
|
|
isShow: false,
|
|
|
+ isShowTime: false,
|
|
|
+ target: this.$store.state["sheepType"][2].value, // 按钮绑定的
|
|
|
+ sheepTypeArr: [this.$store.state["sheepType"][1].value],
|
|
|
formData: {
|
|
|
- sheepType: this.$store.state["sheepType"][0].value,
|
|
|
- target: "1244",
|
|
|
- vaccineName: "山羊口疮弱毒细胞冻干苗",
|
|
|
- disease: "山羊口疮",
|
|
|
- vaccineTime: "怀孕母羊分娩前20-30天和10-20天各注射1次",
|
|
|
- vaccineDosage: "2",
|
|
|
- unit: "ml",
|
|
|
- bodyPart: "注射部位",
|
|
|
- remark: "备注",
|
|
|
- target: "482"
|
|
|
+ target: this.$store.state["sheepType"][0].value,
|
|
|
+ batchNo: "1922",
|
|
|
+ performTime: this.$moment().format('YYYY-MM-DD HH:mm:ss'),
|
|
|
+ number: "200",
|
|
|
+ medicineId: 1,
|
|
|
+ method: "羊皮下注射",
|
|
|
+ opeUser: this.$store.state['workerList'][0].id,
|
|
|
+ remark: "备注"
|
|
|
},
|
|
|
+ timeForm: {},
|
|
|
isAdd: false,
|
|
|
rules
|
|
|
};
|
|
@@ -179,6 +221,11 @@ export default {
|
|
|
submitForm(formName) {
|
|
|
this.$refs[formName].validate(valid => {
|
|
|
if (valid) {
|
|
|
+ this.formData.target = this.sheepTypeArr.reduce(
|
|
|
+ (total, num) => {
|
|
|
+ return total + num;
|
|
|
+ }
|
|
|
+ );
|
|
|
reqAddOrUpdateImmunePlan(this.formData)
|
|
|
.then(res => {
|
|
|
// 免疫程序列表
|
|
@@ -195,9 +242,29 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ submitFormTimeChange(formName) {
|
|
|
+ this.$refs[formName].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ reqAdjustImmunePlan(this.timeForm)
|
|
|
+ .then(res => {
|
|
|
+ // 免疫程序列表
|
|
|
+ this.getImmunePlanList();
|
|
|
+ this.$message.success("时间变更成功!");
|
|
|
+ // this.isShow = false
|
|
|
+ })
|
|
|
+ .catch(err => {
|
|
|
+ console.log(err);
|
|
|
+ this.$message.error("时间变更失败!");
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
// 点击按钮组
|
|
|
- onTargetType(targetType) {
|
|
|
- this.targetType = targetType;
|
|
|
+ onTargetType(target) {
|
|
|
+ this.target = target;
|
|
|
+ this.sheepTypeArr = [target];
|
|
|
this.getImmunePlanList();
|
|
|
},
|
|
|
// 下拉选择框改变
|
|
@@ -210,7 +277,7 @@ export default {
|
|
|
searchStr: this.search,
|
|
|
pageSize,
|
|
|
pageNum: this.pageNum,
|
|
|
- target: this.targetType
|
|
|
+ target: this.target
|
|
|
})
|
|
|
.then(res => {
|
|
|
this.tableData = res.content;
|
|
@@ -222,30 +289,43 @@ export default {
|
|
|
},
|
|
|
add() {
|
|
|
this.isShow = true;
|
|
|
+ this.formData.target = this.target
|
|
|
+ this.sheepTypeArr = [this.target];
|
|
|
// 有id是update 没id是add
|
|
|
delete this.formData.id;
|
|
|
},
|
|
|
+ onTimeChange(row) {
|
|
|
+ this.timeForm.id = row.id
|
|
|
+ this.timeForm.targetDate = row.performTime
|
|
|
+ this.isShowTime = true
|
|
|
+ },
|
|
|
edit(row) {
|
|
|
+ // 数据回填
|
|
|
+ console.log(row.target);
|
|
|
this.formData = row;
|
|
|
+ this.$store.state["sheepType"].forEach(item => {
|
|
|
+ if((row.target & item.value) == item.value) this.sheepTypeArr.push(item.value)
|
|
|
+ }
|
|
|
+ );
|
|
|
this.isShow = true;
|
|
|
},
|
|
|
- del(row) {
|
|
|
- reqDelImmunePlan(row.id)
|
|
|
- .then(res => {
|
|
|
- // 免疫程序列表
|
|
|
- this.getImmunePlanList();
|
|
|
- if (res.code == "success") {
|
|
|
- this.$message.success(res.msg);
|
|
|
- }
|
|
|
- if (res.errCode == "delete failed") {
|
|
|
- this.$message.error(res.errMsg);
|
|
|
- }
|
|
|
- })
|
|
|
- .catch(err => {
|
|
|
- console.log(err);
|
|
|
- this.$message.error("删除失败!");
|
|
|
- });
|
|
|
- },
|
|
|
+ // del(row) {
|
|
|
+ // reqDelImmunePlan(row.id)
|
|
|
+ // .then(res => {
|
|
|
+ // // 免疫程序列表
|
|
|
+ // this.getImmunePlanList();
|
|
|
+ // if (res.code == "success") {
|
|
|
+ // this.$message.success(res.msg);
|
|
|
+ // }
|
|
|
+ // if (res.errCode == "delete failed") {
|
|
|
+ // this.$message.error(res.errMsg);
|
|
|
+ // }
|
|
|
+ // })
|
|
|
+ // .catch(err => {
|
|
|
+ // console.log(err);
|
|
|
+ // this.$message.error("删除失败!");
|
|
|
+ // });
|
|
|
+ // },
|
|
|
pageChange(p) {
|
|
|
console.log(p);
|
|
|
this.pageNum = p;
|