| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | :inline="true" |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label="项目类型" prop="itemtype"> |
| | | <el-select |
| | | v-model="queryParams.itemtype" |
| | | placeholder="请选择项目类型" |
| | | clearable |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_ConsolationType" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-select v-model="queryParams.itemtype" placeholder="请选择项目类型" clearable size="small"> |
| | | <el-option v-for="dict in dict.type.sys_ConsolationType" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="项目名称" prop="itemname"> |
| | | <el-input |
| | | v-model="queryParams.itemname" |
| | | placeholder="请输入项目名称" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.itemname" placeholder="请输入项目名称" clearable size="small" |
| | | @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="启用状态" prop="usestate"> |
| | | <el-select |
| | | v-model="queryParams.usestate" |
| | | placeholder="请选择启用状态" |
| | | clearable |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_0_1" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-select v-model="queryParams.usestate" placeholder="请选择启用状态" clearable size="small"> |
| | | <el-option v-for="dict in dict.type.sys_0_1" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuery" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | v-hasPermi="['project:financesubject:add']" |
| | | >新增</el-button |
| | | > |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:financesubject:add']">新增</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="success" |
| | | plain |
| | | icon="el-icon-edit" |
| | | size="mini" |
| | | :disabled="single" |
| | | @click="handleUpdate" |
| | | v-hasPermi="['project:financesubject:edit']" |
| | | >修改</el-button |
| | | > |
| | | <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" |
| | | v-hasPermi="['project:financesubject:edit']">修改</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | plain |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | :disabled="multiple" |
| | | @click="handleDelete" |
| | | v-hasPermi="['project:financesubject:remove']" |
| | | >删除</el-button |
| | | > |
| | | <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" |
| | | v-hasPermi="['project:financesubject:remove']">删除</el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | :loading="exportLoading" |
| | | @click="handleExport" |
| | | v-hasPermi="['project:financesubject:export']" |
| | | >导出</el-button |
| | | > |
| | | <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" @click="handleExport" |
| | | v-hasPermi="['project:financesubject:export']">导出</el-button> |
| | | </el-col> |
| | | <right-toolbar |
| | | :showSearch.sync="showSearch" |
| | | @queryTable="getList" |
| | | ></right-toolbar> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="financesubjectList" |
| | | @selection-change="handleSelectionChange" |
| | | border |
| | | > |
| | | <el-table v-loading="loading" :data="financesubjectList" @selection-change="handleSelectionChange" border> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column |
| | | label="成本类型" |
| | | width="220" |
| | | align="center" |
| | | prop="costtypename" |
| | | /> |
| | | <el-table-column |
| | | label="费用类型" |
| | | width="220" |
| | | align="center" |
| | | prop="expensetypename" |
| | | /> |
| | | <el-table-column |
| | | label="科目类型" |
| | | width="220" |
| | | align="center" |
| | | prop="subjecttypename" |
| | | /> |
| | | <el-table-column |
| | | label="项目类型" |
| | | width="220" |
| | | align="center" |
| | | prop="itemtypename" |
| | | > |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | label="项目名称" |
| | | width="300" |
| | | align="left" |
| | | prop="itemname" |
| | | /> |
| | | <el-table-column |
| | | label="项目单位" |
| | | width="80" |
| | | align="center" |
| | | prop="itemunit" |
| | | /> |
| | | <el-table-column |
| | | label="项目描述" |
| | | width="300" |
| | | align="left" |
| | | prop="itemdescribe" |
| | | /> |
| | | <el-table-column |
| | | label="启用状态" |
| | | width="80" |
| | | align="center" |
| | | prop="usestate" |
| | | > |
| | | <el-table-column label="服务项目成本分类" width="220" align="center" prop="subjecttypename" /> |
| | | <el-table-column label="服务类型" width="220" align="center" prop="itemtypename" /> |
| | | <el-table-column label="服务项目名称" width="300" align="left" prop="itemname" /> |
| | | <el-table-column label="单位" width="80" align="center" prop="itemunit" /> |
| | | <el-table-column label="描述" width="300" align="left" prop="itemdescribe" /> |
| | | <el-table-column label="费用归类" width="220" align="center" prop="expensetypename" /> |
| | | <el-table-column label="启用状态" width="80" align="center" prop="usestate"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.sys_0_1" :value="scope.row.usestate" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="备注" width="500" align="left" prop="remark" /> |
| | | <el-table-column |
| | | label="操作" |
| | | align="left" |
| | | class-name="small-padding fixed-width" |
| | | width="220" |
| | | fixed="right" |
| | | > |
| | | <!--<el-table-column label="备注" width="500" align="left" prop="remark" />--> |
| | | <el-table-column label="操作" align="left" class-name="small-padding fixed-width" width="220" fixed="right"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | >修改</el-button |
| | | > |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | >删除</el-button |
| | | > |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" /> |
| | | |
| | | <!-- 添加或修改收入费用科目对话框 --> |
| | | <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| | | <el-dialog :title="title" :visible.sync="open" width="700px" append-to-body> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="成本类型" prop="costtype"> |
| | | <el-select |
| | | v-model="form.costtype" |
| | | placeholder="成本类型" |
| | | ref="costTypeSel" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_costtype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> |
| | | <el-col :span="24"> |
| | | <el-form-item label="项目名称" prop="itemname"> |
| | | <el-input v-model="form.itemname" placeholder="请输入服务项目名称" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="项目描述" prop="itemdescribe"> |
| | | <el-input v-model="form.itemdescribe" placeholder="请输入项目描述" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="费用类型" prop="expensetype"> |
| | | <el-select |
| | | v-model="form.expensetype" |
| | | placeholder="费用类型" |
| | | ref="expenseTypeSel" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_expensetype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-form-item label="服务类型" prop="itemtype"> |
| | | <el-select v-model="form.itemtype" placeholder="请选择项目类型"> |
| | | <el-option v-for="dict in dict.type.sys_ConsolationType" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="单位" prop="itemunit"> |
| | | <el-select v-model="form.itemunit" placeholder="请选择单位"> |
| | | <el-option v-for="dict in dict.type.sys_financeitemunit" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row |
| | | ><el-col :span="12" |
| | | ><el-form-item label="科目类型" prop="subjecttype"> |
| | | <el-select |
| | | v-model="form.subjecttype" |
| | | placeholder="请选择项目类型" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_finsubject" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | <el-row> |
| | | <!-- |
| | | <el-col :span="12"> |
| | | <el-form-item label="成本类型" prop="costtype"> |
| | | <el-select v-model="form.costtype" placeholder="成本类型" ref="costTypeSel"> |
| | | <el-option v-for="dict in dict.type.sys_costtype" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | --> |
| | | <el-col :span="12"><el-form-item label="成本分类" prop="subjecttype"> |
| | | <el-select v-model="form.subjecttype" placeholder="请选择服务项目成本分类"> |
| | | <el-option v-for="dict in dict.type.sys_financesubject" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="费用归类" prop="expensetype"> |
| | | <el-select v-model="form.expensetype" placeholder="请选择服务项目费用归类" ref="expenseTypeSel"> |
| | | <el-option v-for="dict in dict.type.sys_ConsolationType" :key="dict.value" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="启用"> |
| | | <el-radio-group v-model="form.usestate"> |
| | | <el-radio |
| | | v-for="dict in dict.type.sys_0_1" |
| | | :key="dict.value" |
| | | :label="dict.value" |
| | | >{{ dict.label }}</el-radio |
| | | > |
| | | <el-radio v-for="dict in dict.type.sys_0_1" :key="dict.value" :label="dict.value">{{ dict.label |
| | | }}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item></el-col |
| | | ></el-row |
| | | ><el-row |
| | | ><el-col :span="12"> |
| | | <el-form-item label="项目类型" prop="itemtype"> |
| | | <el-select v-model="form.itemtype" placeholder="请选择项目类型"> |
| | | <el-option |
| | | v-for="dict in dict.type.sys_ConsolationType" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> </el-form-item></el-col |
| | | ><el-col :span="12"> |
| | | <el-form-item label="单位" prop="itemunit"> |
| | | <el-select v-model="form.itemunit" placeholder="请选择单位"> |
| | | <el-option |
| | | v-for="dict in dict.type.sys_finance_itemunit" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> </el-form-item></el-col></el-row |
| | | ><el-row |
| | | ><el-col :span="24"> |
| | | <el-form-item label="项目名称" prop="itemname"> |
| | | <el-input |
| | | v-model="form.itemname" |
| | | placeholder="请输入项目名称" |
| | | /> </el-form-item></el-col></el-row |
| | | ><el-row |
| | | ><el-col :span="24"> |
| | | <el-form-item label="项目描述" prop="itemdescribe"> |
| | | <el-input |
| | | v-model="form.itemdescribe" |
| | | placeholder="请输入项目描述" |
| | | /> </el-form-item></el-col></el-row |
| | | ><el-row |
| | | ><el-col :span="24"> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input |
| | | v-model="form.remark" |
| | | placeholder="请输入备注" |
| | | /> </el-form-item></el-col |
| | | ></el-row> |
| | | <el-input v-model="form.remark" placeholder="请输入备注" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | |
| | | "sys_finance_itemunit", |
| | | "sys_costtype", |
| | | "sys_expensetype", |
| | | "sys_financeitemunit", |
| | | "sys_financesubject" |
| | | ], |
| | | data() { |
| | | return { |
| | |
| | | form: {}, |
| | | // 表单校验 |
| | | rules: { |
| | | costtype: [{ required: true, message: "请选择成本类型", trigger: "blur" },], |
| | | expensetype: [{ required: true, message: "请选择费用类型", trigger: "blur" },], |
| | | subjecttype: [{ required: true, message: "请选择科目类型", trigger: "blur" },], |
| | | // costtype: [{ required: true, message: "请选择成本类型", trigger: "blur" },], |
| | | expensetype: [{ required: true, message: "请选择费用归类", trigger: "blur" },], |
| | | subjecttype: [{ required: true, message: "请选择成本分类", trigger: "blur" },], |
| | | itemtype: [{ required: true, message: "请选择项目类型", trigger: "blur" },], |
| | | itemname: [{ required: true, message: "请输入项目名称", trigger: "blur" },], |
| | | }, |
| | |
| | | this.getList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { }); |
| | | }, |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | |
| | | this.$download.name(response.msg); |
| | | this.exportLoading = false; |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => { }); |
| | | }, |
| | | }, |
| | | }; |