修改1.0

This commit is contained in:
2025-08-24 00:06:56 +08:00
parent 0bd1c06283
commit 761086df28
4 changed files with 253 additions and 130 deletions

View File

@@ -26,6 +26,10 @@
<el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate">修改</el-button>
</el-col>
<!-- 按钮区域新增诊疗 -->
<el-col :span="1.5">
<el-button type="info" plain icon="DocumentAdd" @click="handleAddDiagnosis" :disabled="multiple">诊疗</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete">删除</el-button>
</el-col>
@@ -313,14 +317,14 @@
<el-table-column label="单位">
<template #default="scope">
<el-select v-model="scope.row.unit" placeholder="单位">
<el-option v-for="u in units" :key="u.value" :label="u.label" :value="u.value" />
<el-option v-for="u in units" :key="u.value" :label="u.label" :value="u.value+''" />
</el-select>
</template>
</el-table-column>
<el-table-column label="使用方法">
<template #default="scope">
<el-select v-model="scope.row.usageId" placeholder="用法">
<el-option v-for="u in usages" :key="u.value" :label="u.label" :value="u.value" />
<el-option v-for="u in usages" :key="u.value" :label="u.label" :value="u.value+''" />
</el-select>
</template>
</el-table-column>
@@ -353,6 +357,7 @@
<el-input type="textarea" :rows="3" v-model="editForm.comment" placeholder="请输入备注" />
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
@@ -361,6 +366,31 @@
</div>
</template>
</el-dialog>
<!-- 新增诊疗弹窗 -->
<el-dialog title="新增诊疗记录" v-model="diagnosisDialog" width="50%" append-to-body destroy-on-close>
<el-form label-width="120px">
<el-form-item label="选中羊只">
<el-tag v-for="no in selectedSheepNos" :key="no" style="margin-right: 5px">{{ no }}</el-tag>
</el-form-item>
<el-form-item label="诊疗结果" prop="result">
<el-select v-model="addDia.result" placeholder="请选择治疗结果" style="width: 100%;">
<el-option v-for="item in diag_result" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="转入羊舍" prop="sheepfoldId">
<el-select v-model="addDia.sheepfoldId" placeholder="请选择转入羊舍"
style="width: 100%;">
<el-option v-for="item in sheepfolds" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
</el-form-item>
</el-form>
<template #footer>
<el-button @click="diagnosisDialog = false">取消</el-button>
<el-button type="primary" @click="submitDiagnosis">确认</el-button>
</template>
</el-dialog>
</div>
</template>
@@ -369,6 +399,7 @@
import { ref, reactive, onMounted, getCurrentInstance } from 'vue'
import { listTreatment, getTreatment, delTreatment, addTreatment, updateTreatment } from '@/api/biosafety/treatment'
import { listDisease } from '@/api/biosafety/disease'
import { listSheepfold_management } from "@/api/fileManagement/sheepfold_management"
import { listPrescription, getPrescription } from '@/api/biosafety/prescription'
import { listUnit } from '@/api/biosafety/unit'
import { listUsage } from '@/api/biosafety/usage'
@@ -379,7 +410,8 @@ import { useRouter } from 'vue-router'
const router = useRouter()
const { proxy } = getCurrentInstance()
const { sheep_gender } = proxy.useDict("sheep_gender")
const { sheep_gender,diag_result } = proxy.useDict("sheep_gender","diag_result")
/* ---------- 列表区域 ---------- */
const treatmentList = ref([])
@@ -390,6 +422,7 @@ const single = ref(true)
const multiple = ref(true)
const total = ref(0)
const daterangeDatetime = ref([])
const sheepfolds = ref([])
const queryParams = reactive({
pageNum: 1,
@@ -454,6 +487,39 @@ const swPresDetailList = ref([
{ mediId: null, dosage: 0, unit: null, usageId: null, manufacturer: '', batchNumber: '' }
])
/* ---------- 新增诊疗 ---------- */
const diagnosisDialog = ref(false)
const selectedSheepNos = ref([])
const addDia = reactive({
sheepfoldId: null,
result:null,
})
function handleAddDiagnosis() {
if (!ids.value.length) {
proxy.$modal.msgWarning('请至少选择一条治疗记录')
return
}
selectedSheepNos.value = treatmentList.value
.filter(item => ids.value.includes(item.id))
.map(item => item.sheepNo)
diagnosisDialog.value = true
}
function submitDiagnosis() {
const data = {
treatIds: ids.value,
result:addDia.result,
sheepfoldId:addDia.sheepfoldId
}
request.post('/diagnosis/diagnosis/adds', data).then(() => {
proxy.$modal.msgSuccess('诊疗成功')
diagnosisDialog.value = false
getList()
})
}
/* ---------- 列表查询 ---------- */
function getList() {
loading.value = true
@@ -668,6 +734,9 @@ onMounted(() => {
listMedicine().then(res => {
medicines.value = res.rows.map(item => ({ value: item.id, label: item.name }))
})
listSheepfold_management().then(res => {
sheepfolds.value = res.rows.map(item => ({ id: item.id, name: item.sheepfoldName }))
})
})
</script>