|
@@ -49,6 +49,7 @@
|
|
|
</el-form>
|
|
|
</el-col>
|
|
|
<el-col :span="4">
|
|
|
+ <el-button @click="openFeeGenre = true">费用类型</el-button>
|
|
|
<el-button @click="dailyExpensesOpen">新增记录</el-button>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -239,6 +240,80 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-drawer>
|
|
|
+ <!-- 费用类型-->
|
|
|
+ <el-dialog
|
|
|
+ v-model="openFeeGenre"
|
|
|
+ title="费用类型"
|
|
|
+ width="800"
|
|
|
+ align-center
|
|
|
+ >
|
|
|
+ <el-collapse v-model="activeNames">
|
|
|
+ <el-collapse-item
|
|
|
+ title="操作"
|
|
|
+ name="1"
|
|
|
+ >
|
|
|
+ <el-form>
|
|
|
+ <el-form-item label="施工人员">
|
|
|
+ <el-input
|
|
|
+ v-model="feeGenreData.name"
|
|
|
+ style="width: 400px"
|
|
|
+ >
|
|
|
+ <template #prepend>
|
|
|
+ <el-select
|
|
|
+ v-model="feeGenreData.id"
|
|
|
+ placeholder="查询"
|
|
|
+ style="width: 115px"
|
|
|
+ clearable
|
|
|
+ filterable
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in feeGenre"
|
|
|
+ :key="item.ID"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.ID"
|
|
|
+ />
|
|
|
+ </el-select>
|
|
|
+ </template>
|
|
|
+ <template #append>
|
|
|
+ <el-button @click="erasureFeeGenre">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button @click="saveFeeGenre">保存</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-collapse-item>
|
|
|
+ <el-collapse-item
|
|
|
+ title="列表"
|
|
|
+ name="2"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <el-table :data="feeGenre">
|
|
|
+ <el-table-column
|
|
|
+ prop="ID"
|
|
|
+ label="编号"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ prop="name"
|
|
|
+ label="姓名"
|
|
|
+ />
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </el-collapse-item>
|
|
|
+ </el-collapse>
|
|
|
+ <template #footer>
|
|
|
+ <div class="dialog-footer">
|
|
|
+ <el-button @click="openFeeGenre = false">取消</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ @click="openFeeGenre = false"
|
|
|
+ >
|
|
|
+ 确定
|
|
|
+ </el-button>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
</el-main>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane
|
|
@@ -269,7 +344,9 @@
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
</el-col>
|
|
|
- <el-col :span="4" />
|
|
|
+ <el-col :span="4">
|
|
|
+ <el-button @click="addBorrowing">新增数据</el-button>
|
|
|
+ </el-col>
|
|
|
</el-row>
|
|
|
</el-header>
|
|
|
<el-main>
|
|
@@ -321,7 +398,10 @@
|
|
|
align-center
|
|
|
>
|
|
|
<div>
|
|
|
- <el-form>
|
|
|
+ <el-form
|
|
|
+ label-width="auto"
|
|
|
+ style="max-width: 400px"
|
|
|
+ >
|
|
|
<el-form-item label="名称">
|
|
|
<el-input v-model="borrowingData.name" />
|
|
|
</el-form-item>
|
|
@@ -360,7 +440,7 @@
|
|
|
<div class="dialog-footer">
|
|
|
<el-button
|
|
|
type="warning"
|
|
|
- @click="borrowingDialog = false"
|
|
|
+ @click="erasureBorrowing"
|
|
|
>删除</el-button>
|
|
|
<el-button @click="borrowingDialog = false">取消</el-button>
|
|
|
<el-button
|
|
@@ -382,12 +462,12 @@
|
|
|
import { onMounted, ref } from 'vue'
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
import {
|
|
|
- createBorrowing,
|
|
|
- createDailyExpenses,
|
|
|
- deleteDailyExpenses, queryBorrowingList,
|
|
|
+ createBorrowing, createConstructor,
|
|
|
+ createDailyExpenses, createFeeGenre, deleteBorrowing, deleteConstructor,
|
|
|
+ deleteDailyExpenses, deleteFeeGenre, queryBorrowingList,
|
|
|
queryDailyExpensesList,
|
|
|
- queryExpensesGenre, updateBorrowing,
|
|
|
- updateDailyExpenses
|
|
|
+ queryExpensesGenre, updateBorrowing, updateConstructor,
|
|
|
+ updateDailyExpenses, updateFeeGenre
|
|
|
} from '@/api/finance'
|
|
|
import { getAllUsers } from '@/api/user'
|
|
|
|
|
@@ -443,6 +523,7 @@ const queryData = async() => {
|
|
|
searchDailyExpenses.value.state = null
|
|
|
}
|
|
|
await queryExpensesGenre().then(res => {
|
|
|
+ console.log(res.data)
|
|
|
feeGenre.value = res.data
|
|
|
})
|
|
|
await getAllUsers().then(res => {
|
|
@@ -600,14 +681,32 @@ const erasureDailyExpenses = async() => {
|
|
|
// 支借
|
|
|
const borrowingDialog = ref(false)
|
|
|
|
|
|
-const borrowingData = ref()
|
|
|
+const borrowingData = ref({
|
|
|
+ ID: null,
|
|
|
+ name: '',
|
|
|
+ applicant: '',
|
|
|
+ applicationTime: '',
|
|
|
+ charge: null,
|
|
|
+ price: 0
|
|
|
+})
|
|
|
|
|
|
const openBorrowing = (val) => {
|
|
|
- console.log(val)
|
|
|
borrowingData.value = val
|
|
|
borrowingDialog.value = true
|
|
|
}
|
|
|
|
|
|
+const addBorrowing = () => {
|
|
|
+ borrowingData.value = {
|
|
|
+ ID: null,
|
|
|
+ name: '',
|
|
|
+ applicant: '',
|
|
|
+ applicationTime: '',
|
|
|
+ charge: null,
|
|
|
+ price: 0
|
|
|
+ }
|
|
|
+ borrowingDialog.value = true
|
|
|
+}
|
|
|
+
|
|
|
// 保存
|
|
|
const saveBorrowing = async() => {
|
|
|
const dd = borrowingData.value
|
|
@@ -635,6 +734,92 @@ const saveBorrowing = async() => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// 删除
|
|
|
+const erasureBorrowing = async() => {
|
|
|
+ const dd = dailyExpensesData.value
|
|
|
+ ElMessageBox.confirm(
|
|
|
+ '确定进行删除操作吗?',
|
|
|
+ '删除',
|
|
|
+ {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
+ )
|
|
|
+ .then(async() => {
|
|
|
+ await deleteBorrowing(dd).then(res => {
|
|
|
+ console.log(res)
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('删除成功')
|
|
|
+ queryData()
|
|
|
+ borrowingDialog.value = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+// 费用类型
|
|
|
+const activeNames = ref(['1'])
|
|
|
+const openFeeGenre = ref(false)
|
|
|
+
|
|
|
+const feeGenreData = ref({
|
|
|
+ id: null,
|
|
|
+ name: ''
|
|
|
+})
|
|
|
+
|
|
|
+const saveFeeGenre = async() => {
|
|
|
+ if (feeGenreData.value.name === '') {
|
|
|
+ ElMessage.error('数据不能为空')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ if (feeGenreData.value.id === null ) {
|
|
|
+ await createFeeGenre(feeGenreData.value).then(res => {
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('新增成功')
|
|
|
+ }
|
|
|
+ queryData()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ await updateFeeGenre(feeGenreData.value).then(res => {
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('修改成功')
|
|
|
+ }
|
|
|
+ queryData()
|
|
|
+ })
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+// 删除
|
|
|
+const erasureFeeGenre = async() => {
|
|
|
+ if (feeGenreData.value.id === null) {
|
|
|
+ ElMessage.error('请选择人员')
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ ElMessageBox.confirm(
|
|
|
+ '确定进行删除操作吗?',
|
|
|
+ '删除',
|
|
|
+ {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning',
|
|
|
+ }
|
|
|
+ )
|
|
|
+ .then(async() => {
|
|
|
+ await deleteFeeGenre(feeGenreData.value).then(res => {
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('删除成功')
|
|
|
+ }
|
|
|
+ queryData()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ ElMessage({
|
|
|
+ type: 'info',
|
|
|
+ message: '取消删除',
|
|
|
+ })
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
queryData()
|
|
|
})
|