| @ -0,0 +1,44 @@ | |||
| import request from '@/utils/request' | |||
| // 查询轮播图列表 | |||
| export function listAppletBanner(query) { | |||
| return request({ | |||
| url: '/model/AppletBanner/list', | |||
| method: 'get', | |||
| params: query | |||
| }) | |||
| } | |||
| // 查询轮播图详细 | |||
| export function getAppletBanner(id) { | |||
| return request({ | |||
| url: '/model/AppletBanner/' + id, | |||
| method: 'get' | |||
| }) | |||
| } | |||
| // 新增轮播图 | |||
| export function addAppletBanner(data) { | |||
| return request({ | |||
| url: '/model/AppletBanner', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| // 修改轮播图 | |||
| export function updateAppletBanner(data) { | |||
| return request({ | |||
| url: '/model/AppletBanner', | |||
| method: 'put', | |||
| data: data | |||
| }) | |||
| } | |||
| // 删除轮播图 | |||
| export function delAppletBanner(id) { | |||
| return request({ | |||
| url: '/model/AppletBanner/' + id, | |||
| method: 'delete' | |||
| }) | |||
| } | |||
| @ -0,0 +1,44 @@ | |||
| import request from '@/utils/request' | |||
| // 查询跳转图标菜单列表 | |||
| export function listAppletIcon(query) { | |||
| return request({ | |||
| url: '/model/AppletIcon/list', | |||
| method: 'get', | |||
| params: query | |||
| }) | |||
| } | |||
| // 查询跳转图标菜单详细 | |||
| export function getAppletIcon(id) { | |||
| return request({ | |||
| url: '/model/AppletIcon/' + id, | |||
| method: 'get' | |||
| }) | |||
| } | |||
| // 新增跳转图标菜单 | |||
| export function addAppletIcon(data) { | |||
| return request({ | |||
| url: '/model/AppletIcon', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| // 修改跳转图标菜单 | |||
| export function updateAppletIcon(data) { | |||
| return request({ | |||
| url: '/model/AppletIcon', | |||
| method: 'put', | |||
| data: data | |||
| }) | |||
| } | |||
| // 删除跳转图标菜单 | |||
| export function delAppletIcon(id) { | |||
| return request({ | |||
| url: '/model/AppletIcon/' + id, | |||
| method: 'delete' | |||
| }) | |||
| } | |||
| @ -0,0 +1,44 @@ | |||
| import request from '@/utils/request' | |||
| // 查询宠物信息列表 | |||
| export function listAppletPet(query) { | |||
| return request({ | |||
| url: '/model/AppletPet/list', | |||
| method: 'get', | |||
| params: query | |||
| }) | |||
| } | |||
| // 查询宠物信息详细 | |||
| export function getAppletPet(id) { | |||
| return request({ | |||
| url: '/model/AppletPet/' + id, | |||
| method: 'get' | |||
| }) | |||
| } | |||
| // 新增宠物信息 | |||
| export function addAppletPet(data) { | |||
| return request({ | |||
| url: '/model/AppletPet', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| // 修改宠物信息 | |||
| export function updateAppletPet(data) { | |||
| return request({ | |||
| url: '/model/AppletPet', | |||
| method: 'put', | |||
| data: data | |||
| }) | |||
| } | |||
| // 删除宠物信息 | |||
| export function delAppletPet(id) { | |||
| return request({ | |||
| url: '/model/AppletPet/' + id, | |||
| method: 'delete' | |||
| }) | |||
| } | |||
| @ -0,0 +1,44 @@ | |||
| import request from '@/utils/request' | |||
| // 查询用户列表 | |||
| export function listAppletUsers(query) { | |||
| return request({ | |||
| url: '/model/AppletUsers/list', | |||
| method: 'get', | |||
| params: query | |||
| }) | |||
| } | |||
| // 查询用户详细 | |||
| export function getAppletUsers(userId) { | |||
| return request({ | |||
| url: '/model/AppletUsers/' + userId, | |||
| method: 'get' | |||
| }) | |||
| } | |||
| // 新增用户 | |||
| export function addAppletUsers(data) { | |||
| return request({ | |||
| url: '/model/AppletUsers', | |||
| method: 'post', | |||
| data: data | |||
| }) | |||
| } | |||
| // 修改用户 | |||
| export function updateAppletUsers(data) { | |||
| return request({ | |||
| url: '/model/AppletUsers', | |||
| method: 'put', | |||
| data: data | |||
| }) | |||
| } | |||
| // 删除用户 | |||
| export function delAppletUsers(userId) { | |||
| return request({ | |||
| url: '/model/AppletUsers/' + userId, | |||
| method: 'delete' | |||
| }) | |||
| } | |||
| @ -0,0 +1,284 @@ | |||
| <template> | |||
| <div class="app-container"> | |||
| <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px" size="medium" class="ry_form"> | |||
| <el-form-item label="跳转链接" prop="url"> | |||
| <el-input | |||
| v-model="queryParams.url" | |||
| placeholder="请输入跳转链接" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item class="flex_one tr"> | |||
| <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="['model:AppletBanner: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="['model:AppletBanner: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="['model:AppletBanner: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="['model:AppletBanner:export']" | |||
| >导出</el-button> | |||
| </el-col> | |||
| <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar> | |||
| </el-row> | |||
| <el-table v-loading="loading" :data="AppletBannerList" @selection-change="handleSelectionChange"> | |||
| <el-table-column type="selection" width="55" align="center" /> | |||
| <el-table-column label="唯一标识" align="center" prop="id" /> | |||
| <el-table-column label="轮播图图片 | |||
| " align="center" prop="image" v-if="columns[0].visible"/> | |||
| <el-table-column label="跳转链接" align="center" prop="url" v-if="columns[1].visible"/> | |||
| <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | |||
| <template slot-scope="scope"> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-edit" | |||
| @click="handleUpdate(scope.row)" | |||
| v-hasPermi="['model:AppletBanner:edit']" | |||
| >修改</el-button> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-delete" | |||
| @click="handleDelete(scope.row)" | |||
| v-hasPermi="['model:AppletBanner:remove']" | |||
| >删除</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" | |||
| /> | |||
| <!-- 添加或修改轮播图对话框 --> | |||
| <el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> | |||
| <el-form ref="form" :model="form" :rules="rules" label-width="108px" inline class="dialog-form-two"> | |||
| <el-form-item label="轮播图图片 | |||
| "> | |||
| <imageUpload v-model="form.image"/> | |||
| </el-form-item> | |||
| <el-form-item label="跳转链接" prop="url"> | |||
| <el-input v-model="form.url" placeholder="请输入跳转链接" /> | |||
| </el-form-item> | |||
| <el-form-item label="逻辑删除标识" prop="delFlag"> | |||
| <el-input v-model="form.delFlag" placeholder="请输入逻辑删除标识" /> | |||
| </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 { listAppletBanner, getAppletBanner, delAppletBanner, addAppletBanner, updateAppletBanner, exportAppletBanner } from "@/api/model/AppletBanner"; | |||
| export default { | |||
| name: "AppletBanner", | |||
| data() { | |||
| return { | |||
| // 遮罩层 | |||
| loading: true, | |||
| // 导出遮罩层 | |||
| exportLoading: false, | |||
| // 选中数组 | |||
| ids: [], | |||
| // 非单个禁用 | |||
| single: true, | |||
| // 非多个禁用 | |||
| multiple: true, | |||
| // 显示搜索条件 | |||
| showSearch: true, | |||
| // 总条数 | |||
| total: 0, | |||
| // 轮播图表格数据 | |||
| AppletBannerList: [], | |||
| // 弹出层标题 | |||
| title: "", | |||
| // 是否显示弹出层 | |||
| open: false, | |||
| // 查询参数 | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 10, | |||
| image: null, | |||
| url: null, | |||
| }, | |||
| // 表单参数 | |||
| form: {}, | |||
| // 表单校验 | |||
| rules: { | |||
| }, | |||
| columns: [ | |||
| { key: 1, label: "轮播图图片", visible: false }, | |||
| { key: 2, label: "跳转链接", visible: true }, | |||
| ], | |||
| }; | |||
| }, | |||
| created() { | |||
| this.getList(); | |||
| }, | |||
| methods: { | |||
| /** 查询轮播图列表 */ | |||
| getList() { | |||
| this.loading = true; | |||
| listAppletBanner(this.queryParams).then(response => { | |||
| this.AppletBannerList = response.rows; | |||
| this.total = response.total; | |||
| this.loading = false; | |||
| }); | |||
| }, | |||
| // 取消按钮 | |||
| cancel() { | |||
| this.open = false; | |||
| this.reset(); | |||
| }, | |||
| // 表单重置 | |||
| reset() { | |||
| this.form = { | |||
| id: null, | |||
| image: null, | |||
| url: null, | |||
| createTime: null, | |||
| createBy: null, | |||
| updateTime: null, | |||
| updateBy: null, | |||
| delFlag: null, | |||
| }; | |||
| this.resetForm("form"); | |||
| }, | |||
| /** 搜索按钮操作 */ | |||
| handleQuery() { | |||
| this.queryParams.pageNum = 1; | |||
| this.getList(); | |||
| }, | |||
| /** 重置按钮操作 */ | |||
| resetQuery() { | |||
| this.resetForm("queryForm"); | |||
| this.handleQuery(); | |||
| }, | |||
| // 多选框选中数据 | |||
| handleSelectionChange(selection) { | |||
| this.ids = selection.map(item => item.id) | |||
| this.single = selection.length!==1 | |||
| this.multiple = !selection.length | |||
| }, | |||
| /** 新增按钮操作 */ | |||
| handleAdd() { | |||
| this.reset(); | |||
| this.open = true; | |||
| this.title = "添加轮播图"; | |||
| }, | |||
| /** 修改按钮操作 */ | |||
| handleUpdate(row) { | |||
| this.reset(); | |||
| const id = row.id || this.ids | |||
| getAppletBanner(id).then(response => { | |||
| this.form = response.data; | |||
| this.open = true; | |||
| this.title = "修改轮播图"; | |||
| }); | |||
| }, | |||
| /** 提交按钮 */ | |||
| submitForm() { | |||
| this.$refs["form"].validate(valid => { | |||
| if (valid) { | |||
| if (this.form.id != null) { | |||
| updateAppletBanner(this.form).then(response => { | |||
| this.$modal.msgSuccess("修改成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } else { | |||
| addAppletBanner(this.form).then(response => { | |||
| this.$modal.msgSuccess("新增成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } | |||
| } | |||
| }); | |||
| }, | |||
| /** 删除按钮操作 */ | |||
| handleDelete(row) { | |||
| const ids = row.id || this.ids; | |||
| this.$modal.confirm('是否确认删除轮播图编号为"' + ids + '"的数据项?').then(function() { | |||
| return delAppletBanner(ids); | |||
| }).then(() => { | |||
| this.getList(); | |||
| this.$modal.msgSuccess("删除成功"); | |||
| }).catch(() => {}); | |||
| }, | |||
| /** 导出按钮操作 */ | |||
| handleExport() { | |||
| const queryParams = this.queryParams; | |||
| this.$modal.confirm('是否确认导出所有轮播图数据项?').then(() => { | |||
| this.exportLoading = true; | |||
| return exportAppletBanner(queryParams); | |||
| }).then(response => { | |||
| this.download(response.msg); | |||
| this.exportLoading = false; | |||
| }).catch(() => {}); | |||
| } | |||
| } | |||
| }; | |||
| </script> | |||
| @ -0,0 +1,310 @@ | |||
| <template> | |||
| <div class="app-container"> | |||
| <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px" size="medium" class="ry_form"> | |||
| <el-form-item label="名称" prop="name"> | |||
| <el-input | |||
| v-model="queryParams.name" | |||
| placeholder="请输入名称" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="地址" prop="url"> | |||
| <el-input | |||
| v-model="queryParams.url" | |||
| placeholder="请输入地址" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="类别" prop="type"> | |||
| <el-select v-model="queryParams.type" placeholder="请选择类别" clearable size="small"> | |||
| </el-select> | |||
| </el-form-item> | |||
| <el-form-item class="flex_one tr"> | |||
| <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="['model:AppletIcon: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="['model:AppletIcon: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="['model:AppletIcon: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="['model:AppletIcon:export']" | |||
| >导出</el-button> | |||
| </el-col> | |||
| <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar> | |||
| </el-row> | |||
| <el-table v-loading="loading" :data="AppletIconList" @selection-change="handleSelectionChange"> | |||
| <el-table-column type="selection" width="55" align="center" /> | |||
| <el-table-column label="唯一标识" align="center" prop="id" /> | |||
| <el-table-column label="名称" align="center" prop="name" v-if="columns[0].visible"/> | |||
| <el-table-column label="图标" align="center" prop="image" v-if="columns[1].visible"/> | |||
| <el-table-column label="地址" align="center" prop="url" v-if="columns[2].visible"/> | |||
| <el-table-column label="类别" align="center" prop="type" v-if="columns[3].visible"/> | |||
| <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | |||
| <template slot-scope="scope"> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-edit" | |||
| @click="handleUpdate(scope.row)" | |||
| v-hasPermi="['model:AppletIcon:edit']" | |||
| >修改</el-button> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-delete" | |||
| @click="handleDelete(scope.row)" | |||
| v-hasPermi="['model:AppletIcon:remove']" | |||
| >删除</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" | |||
| /> | |||
| <!-- 添加或修改跳转图标菜单对话框 --> | |||
| <el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> | |||
| <el-form ref="form" :model="form" :rules="rules" label-width="108px" inline class="dialog-form-two"> | |||
| <el-form-item label="名称" prop="name"> | |||
| <el-input v-model="form.name" placeholder="请输入名称" /> | |||
| </el-form-item> | |||
| <el-form-item label="图标"> | |||
| <imageUpload v-model="form.image"/> | |||
| </el-form-item> | |||
| <el-form-item label="地址" prop="url"> | |||
| <el-input v-model="form.url" placeholder="请输入地址" /> | |||
| </el-form-item> | |||
| <el-form-item label="逻辑删除标识" prop="delFlag"> | |||
| <el-input v-model="form.delFlag" placeholder="请输入逻辑删除标识" /> | |||
| </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 { listAppletIcon, getAppletIcon, delAppletIcon, addAppletIcon, updateAppletIcon, exportAppletIcon } from "@/api/model/AppletIcon"; | |||
| export default { | |||
| name: "AppletIcon", | |||
| data() { | |||
| return { | |||
| // 遮罩层 | |||
| loading: true, | |||
| // 导出遮罩层 | |||
| exportLoading: false, | |||
| // 选中数组 | |||
| ids: [], | |||
| // 非单个禁用 | |||
| single: true, | |||
| // 非多个禁用 | |||
| multiple: true, | |||
| // 显示搜索条件 | |||
| showSearch: true, | |||
| // 总条数 | |||
| total: 0, | |||
| // 跳转图标菜单表格数据 | |||
| AppletIconList: [], | |||
| // 弹出层标题 | |||
| title: "", | |||
| // 是否显示弹出层 | |||
| open: false, | |||
| // 查询参数 | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 10, | |||
| name: null, | |||
| image: null, | |||
| url: null, | |||
| type: null, | |||
| }, | |||
| // 表单参数 | |||
| form: {}, | |||
| // 表单校验 | |||
| rules: { | |||
| }, | |||
| columns: [ | |||
| { key: 1, label: "名称", visible: true }, | |||
| { key: 2, label: "图标", visible: false }, | |||
| { key: 3, label: "地址", visible: true }, | |||
| { key: 4, label: "类别", visible: true }, | |||
| ], | |||
| }; | |||
| }, | |||
| created() { | |||
| this.getList(); | |||
| }, | |||
| methods: { | |||
| /** 查询跳转图标菜单列表 */ | |||
| getList() { | |||
| this.loading = true; | |||
| listAppletIcon(this.queryParams).then(response => { | |||
| this.AppletIconList = response.rows; | |||
| this.total = response.total; | |||
| this.loading = false; | |||
| }); | |||
| }, | |||
| // 取消按钮 | |||
| cancel() { | |||
| this.open = false; | |||
| this.reset(); | |||
| }, | |||
| // 表单重置 | |||
| reset() { | |||
| this.form = { | |||
| id: null, | |||
| name: null, | |||
| image: null, | |||
| url: null, | |||
| type: null, | |||
| createTime: null, | |||
| createBy: null, | |||
| updateTime: null, | |||
| updateBy: null, | |||
| delFlag: null, | |||
| }; | |||
| this.resetForm("form"); | |||
| }, | |||
| /** 搜索按钮操作 */ | |||
| handleQuery() { | |||
| this.queryParams.pageNum = 1; | |||
| this.getList(); | |||
| }, | |||
| /** 重置按钮操作 */ | |||
| resetQuery() { | |||
| this.resetForm("queryForm"); | |||
| this.handleQuery(); | |||
| }, | |||
| // 多选框选中数据 | |||
| handleSelectionChange(selection) { | |||
| this.ids = selection.map(item => item.id) | |||
| this.single = selection.length!==1 | |||
| this.multiple = !selection.length | |||
| }, | |||
| /** 新增按钮操作 */ | |||
| handleAdd() { | |||
| this.reset(); | |||
| this.open = true; | |||
| this.title = "添加跳转图标菜单"; | |||
| }, | |||
| /** 修改按钮操作 */ | |||
| handleUpdate(row) { | |||
| this.reset(); | |||
| const id = row.id || this.ids | |||
| getAppletIcon(id).then(response => { | |||
| this.form = response.data; | |||
| this.open = true; | |||
| this.title = "修改跳转图标菜单"; | |||
| }); | |||
| }, | |||
| /** 提交按钮 */ | |||
| submitForm() { | |||
| this.$refs["form"].validate(valid => { | |||
| if (valid) { | |||
| if (this.form.id != null) { | |||
| updateAppletIcon(this.form).then(response => { | |||
| this.$modal.msgSuccess("修改成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } else { | |||
| addAppletIcon(this.form).then(response => { | |||
| this.$modal.msgSuccess("新增成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } | |||
| } | |||
| }); | |||
| }, | |||
| /** 删除按钮操作 */ | |||
| handleDelete(row) { | |||
| const ids = row.id || this.ids; | |||
| this.$modal.confirm('是否确认删除跳转图标菜单编号为"' + ids + '"的数据项?').then(function() { | |||
| return delAppletIcon(ids); | |||
| }).then(() => { | |||
| this.getList(); | |||
| this.$modal.msgSuccess("删除成功"); | |||
| }).catch(() => {}); | |||
| }, | |||
| /** 导出按钮操作 */ | |||
| handleExport() { | |||
| const queryParams = this.queryParams; | |||
| this.$modal.confirm('是否确认导出所有跳转图标菜单数据项?').then(() => { | |||
| this.exportLoading = true; | |||
| return exportAppletIcon(queryParams); | |||
| }).then(response => { | |||
| this.download(response.msg); | |||
| this.exportLoading = false; | |||
| }).catch(() => {}); | |||
| } | |||
| } | |||
| }; | |||
| </script> | |||
| @ -0,0 +1,436 @@ | |||
| <template> | |||
| <div class="app-container"> | |||
| <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px" size="medium" class="ry_form"> | |||
| <el-form-item label="昵称" prop="nickName"> | |||
| <el-input | |||
| v-model="queryParams.nickName" | |||
| placeholder="请输入昵称" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="性别" prop="sex"> | |||
| <el-select v-model="queryParams.sex" placeholder="请选择性别" clearable size="small"> | |||
| </el-select> | |||
| </el-form-item> | |||
| <el-form-item label="品种" prop="type"> | |||
| <el-select v-model="queryParams.type" placeholder="请选择品种" clearable size="small"> | |||
| </el-select> | |||
| </el-form-item> | |||
| <el-form-item label="出生年月" prop="birthday"> | |||
| <el-date-picker | |||
| clearable | |||
| size="small" | |||
| v-model="queryParams.birthday" | |||
| type="datetime" | |||
| value-format="yyyy-MM-dd HH:mm:ss" | |||
| placeholder="选择出生年月"> | |||
| </el-date-picker> | |||
| </el-form-item> | |||
| <el-form-item label="体重" prop="weight"> | |||
| <el-input | |||
| v-model="queryParams.weight" | |||
| placeholder="请输入体重" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="疫苗" prop="vaccine"> | |||
| <el-input | |||
| v-model="queryParams.vaccine" | |||
| placeholder="请输入疫苗" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="驱虫" prop="deworm"> | |||
| <el-input | |||
| v-model="queryParams.deworm" | |||
| placeholder="请输入驱虫" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="绝育" prop="neutered"> | |||
| <el-input | |||
| v-model="queryParams.neutered" | |||
| placeholder="请输入绝育" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item class="flex_one tr"> | |||
| <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="['model:AppletPet: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="['model:AppletPet: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="['model:AppletPet: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="['model:AppletPet:export']" | |||
| >导出</el-button> | |||
| </el-col> | |||
| <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar> | |||
| </el-row> | |||
| <el-table v-loading="loading" :data="AppletPetList" @selection-change="handleSelectionChange"> | |||
| <el-table-column type="selection" width="55" align="center" /> | |||
| <el-table-column label="唯一标识" align="center" prop="id" /> | |||
| <el-table-column label="宠物头像" align="center" prop="headImage" v-if="columns[0].visible"/> | |||
| <el-table-column label="昵称" align="center" prop="nickName" v-if="columns[1].visible"/> | |||
| <el-table-column label="性别" align="center" prop="sex" v-if="columns[2].visible"/> | |||
| <el-table-column label="品种" align="center" prop="type" v-if="columns[3].visible"/> | |||
| <el-table-column label="出生年月" align="center" prop="birthday" width="180" v-if="columns[4].visible"> | |||
| <template slot-scope="scope"> | |||
| <span>{{ parseTime(scope.row.birthday, '')}}</span> | |||
| </template> | |||
| </el-table-column> | |||
| <el-table-column label="体重" align="center" prop="weight" v-if="columns[5].visible"/> | |||
| <el-table-column label="性格" align="center" prop="personality" v-if="columns[6].visible"/> | |||
| <el-table-column label="疫苗" align="center" prop="vaccine" v-if="columns[7].visible"/> | |||
| <el-table-column label="驱虫" align="center" prop="deworm" v-if="columns[8].visible"/> | |||
| <el-table-column label="绝育" align="center" prop="neutered" v-if="columns[9].visible"/> | |||
| <el-table-column label="健康状况" align="center" prop="health" v-if="columns[10].visible"/> | |||
| <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | |||
| <template slot-scope="scope"> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-edit" | |||
| @click="handleUpdate(scope.row)" | |||
| v-hasPermi="['model:AppletPet:edit']" | |||
| >修改</el-button> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-delete" | |||
| @click="handleDelete(scope.row)" | |||
| v-hasPermi="['model:AppletPet:remove']" | |||
| >删除</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" | |||
| /> | |||
| <!-- 添加或修改宠物信息对话框 --> | |||
| <el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> | |||
| <el-form ref="form" :model="form" :rules="rules" label-width="108px" inline class="dialog-form-two"> | |||
| <el-form-item label="宠物头像"> | |||
| <imageUpload v-model="form.headImage"/> | |||
| </el-form-item> | |||
| <el-form-item label="昵称" prop="nickName"> | |||
| <el-input v-model="form.nickName" placeholder="请输入昵称" /> | |||
| </el-form-item> | |||
| <el-form-item label="出生年月" prop="birthday"> | |||
| <el-date-picker clearable size="small" | |||
| v-model="form.birthday" | |||
| type="datetime" | |||
| value-format="yyyy-MM-dd HH:mm:ss" | |||
| placeholder="选择出生年月"> | |||
| </el-date-picker> | |||
| </el-form-item> | |||
| <el-form-item label="体重" prop="weight"> | |||
| <el-input v-model="form.weight" placeholder="请输入体重" /> | |||
| </el-form-item> | |||
| <el-form-item label="性格" prop="personality"> | |||
| <el-input v-model="form.personality" type="textarea" placeholder="请输入内容" /> | |||
| </el-form-item> | |||
| <el-form-item label="疫苗" prop="vaccine"> | |||
| <el-input v-model="form.vaccine" placeholder="请输入疫苗" /> | |||
| </el-form-item> | |||
| <el-form-item label="驱虫" prop="deworm"> | |||
| <el-input v-model="form.deworm" placeholder="请输入驱虫" /> | |||
| </el-form-item> | |||
| <el-form-item label="绝育" prop="neutered"> | |||
| <el-input v-model="form.neutered" placeholder="请输入绝育" /> | |||
| </el-form-item> | |||
| <el-form-item label="健康状况" prop="health"> | |||
| <el-input v-model="form.health" type="textarea" placeholder="请输入内容" /> | |||
| </el-form-item> | |||
| <el-form-item label="删除标识" prop="delFlag"> | |||
| <el-input v-model="form.delFlag" placeholder="请输入删除标识" /> | |||
| </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 { listAppletPet, getAppletPet, delAppletPet, addAppletPet, updateAppletPet, exportAppletPet } from "@/api/model/AppletPet"; | |||
| export default { | |||
| name: "AppletPet", | |||
| data() { | |||
| return { | |||
| // 遮罩层 | |||
| loading: true, | |||
| // 导出遮罩层 | |||
| exportLoading: false, | |||
| // 选中数组 | |||
| ids: [], | |||
| // 非单个禁用 | |||
| single: true, | |||
| // 非多个禁用 | |||
| multiple: true, | |||
| // 显示搜索条件 | |||
| showSearch: true, | |||
| // 总条数 | |||
| total: 0, | |||
| // 宠物信息表格数据 | |||
| AppletPetList: [], | |||
| // 弹出层标题 | |||
| title: "", | |||
| // 是否显示弹出层 | |||
| open: false, | |||
| // 查询参数 | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 10, | |||
| headImage: null, | |||
| nickName: null, | |||
| sex: null, | |||
| type: null, | |||
| birthday: null, | |||
| weight: null, | |||
| personality: null, | |||
| vaccine: null, | |||
| deworm: null, | |||
| neutered: null, | |||
| health: null, | |||
| }, | |||
| // 表单参数 | |||
| form: {}, | |||
| // 表单校验 | |||
| rules: { | |||
| nickName: [ | |||
| { required: true, message: "昵称不能为空", trigger: "blur" } | |||
| ], | |||
| sex: [ | |||
| { required: true, message: "性别不能为空", trigger: "change" } | |||
| ], | |||
| type: [ | |||
| { required: true, message: "品种不能为空", trigger: "change" } | |||
| ], | |||
| delFlag: [ | |||
| { required: true, message: "删除标识不能为空", trigger: "blur" } | |||
| ], | |||
| }, | |||
| columns: [ | |||
| { key: 1, label: "宠物头像", visible: false }, | |||
| { key: 2, label: "昵称", visible: true }, | |||
| { key: 3, label: "性别", visible: true }, | |||
| { key: 4, label: "品种", visible: true }, | |||
| { key: 5, label: "出生年月", visible: true }, | |||
| { key: 6, label: "体重(kg)", visible: true }, | |||
| { key: 7, label: "性格", visible: true }, | |||
| { key: 8, label: "疫苗(是否已接种)", visible: true }, | |||
| { key: 9, label: "驱虫(是否已处理)", visible: true }, | |||
| { key: 10, label: "绝育(是否已绝育)", visible: false }, | |||
| { key: 11, label: "健康状况", visible: false }, | |||
| ], | |||
| }; | |||
| }, | |||
| created() { | |||
| this.getList(); | |||
| }, | |||
| methods: { | |||
| /** 查询宠物信息列表 */ | |||
| getList() { | |||
| this.loading = true; | |||
| listAppletPet(this.queryParams).then(response => { | |||
| this.AppletPetList = response.rows; | |||
| this.total = response.total; | |||
| this.loading = false; | |||
| }); | |||
| }, | |||
| // 取消按钮 | |||
| cancel() { | |||
| this.open = false; | |||
| this.reset(); | |||
| }, | |||
| // 表单重置 | |||
| reset() { | |||
| this.form = { | |||
| id: null, | |||
| headImage: null, | |||
| nickName: null, | |||
| sex: null, | |||
| type: null, | |||
| birthday: null, | |||
| weight: null, | |||
| personality: null, | |||
| vaccine: null, | |||
| deworm: null, | |||
| neutered: null, | |||
| health: null, | |||
| delFlag: null, | |||
| createBy: null, | |||
| createTime: null, | |||
| updateBy: null, | |||
| updateTime: null, | |||
| }; | |||
| this.resetForm("form"); | |||
| }, | |||
| /** 搜索按钮操作 */ | |||
| handleQuery() { | |||
| this.queryParams.pageNum = 1; | |||
| this.getList(); | |||
| }, | |||
| /** 重置按钮操作 */ | |||
| resetQuery() { | |||
| this.resetForm("queryForm"); | |||
| this.handleQuery(); | |||
| }, | |||
| // 多选框选中数据 | |||
| handleSelectionChange(selection) { | |||
| this.ids = selection.map(item => item.id) | |||
| this.single = selection.length!==1 | |||
| this.multiple = !selection.length | |||
| }, | |||
| /** 新增按钮操作 */ | |||
| handleAdd() { | |||
| this.reset(); | |||
| this.open = true; | |||
| this.title = "添加宠物信息"; | |||
| }, | |||
| /** 修改按钮操作 */ | |||
| handleUpdate(row) { | |||
| this.reset(); | |||
| const id = row.id || this.ids | |||
| getAppletPet(id).then(response => { | |||
| this.form = response.data; | |||
| this.open = true; | |||
| this.title = "修改宠物信息"; | |||
| }); | |||
| }, | |||
| /** 提交按钮 */ | |||
| submitForm() { | |||
| this.$refs["form"].validate(valid => { | |||
| if (valid) { | |||
| if (this.form.id != null) { | |||
| updateAppletPet(this.form).then(response => { | |||
| this.$modal.msgSuccess("修改成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } else { | |||
| addAppletPet(this.form).then(response => { | |||
| this.$modal.msgSuccess("新增成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } | |||
| } | |||
| }); | |||
| }, | |||
| /** 删除按钮操作 */ | |||
| handleDelete(row) { | |||
| const ids = row.id || this.ids; | |||
| this.$modal.confirm('是否确认删除宠物信息编号为"' + ids + '"的数据项?').then(function() { | |||
| return delAppletPet(ids); | |||
| }).then(() => { | |||
| this.getList(); | |||
| this.$modal.msgSuccess("删除成功"); | |||
| }).catch(() => {}); | |||
| }, | |||
| /** 导出按钮操作 */ | |||
| handleExport() { | |||
| const queryParams = this.queryParams; | |||
| this.$modal.confirm('是否确认导出所有宠物信息数据项?').then(() => { | |||
| this.exportLoading = true; | |||
| return exportAppletPet(queryParams); | |||
| }).then(response => { | |||
| this.download(response.msg); | |||
| this.exportLoading = false; | |||
| }).catch(() => {}); | |||
| } | |||
| } | |||
| }; | |||
| </script> | |||
| @ -0,0 +1,517 @@ | |||
| <template> | |||
| <div class="app-container"> | |||
| <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="100px" size="medium" class="ry_form"> | |||
| <el-form-item label="修改人" prop="updatorBy"> | |||
| <el-input | |||
| v-model="queryParams.updatorBy" | |||
| placeholder="请输入修改人" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="用户昵称" prop="userName"> | |||
| <el-input | |||
| v-model="queryParams.userName" | |||
| placeholder="请输入用户昵称" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="用户状态" prop="userState"> | |||
| <el-input | |||
| v-model="queryParams.userState" | |||
| placeholder="请输入用户状态" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="用户电话" prop="userTelephone"> | |||
| <el-input | |||
| v-model="queryParams.userTelephone" | |||
| placeholder="请输入用户电话" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" prop="unionid"> | |||
| <el-input | |||
| v-model="queryParams.unionid" | |||
| placeholder="请输入只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="用户的标识,对当前公众号唯一" prop="openid"> | |||
| <el-input | |||
| v-model="queryParams.openid" | |||
| placeholder="请输入用户的标识,对当前公众号唯一" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="过期时间" prop="expiresIn"> | |||
| <el-input | |||
| v-model="queryParams.expiresIn" | |||
| placeholder="请输入过期时间" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="过期时间" prop="expireTime"> | |||
| <el-date-picker | |||
| clearable | |||
| size="small" | |||
| v-model="queryParams.expireTime" | |||
| type="datetime" | |||
| value-format="yyyy-MM-dd HH:mm:ss" | |||
| placeholder="选择过期时间"> | |||
| </el-date-picker> | |||
| </el-form-item> | |||
| <el-form-item label="是否合伙人" prop="userHh"> | |||
| <el-input | |||
| v-model="queryParams.userHh" | |||
| placeholder="请输入是否合伙人" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="是否伴宠师" prop="userBcs"> | |||
| <el-input | |||
| v-model="queryParams.userBcs" | |||
| placeholder="请输入是否伴宠师" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="钱包金额" prop="price"> | |||
| <el-input | |||
| v-model="queryParams.price" | |||
| placeholder="请输入钱包金额" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item label="邀请码" prop="invitationCode"> | |||
| <el-input | |||
| v-model="queryParams.invitationCode" | |||
| placeholder="请输入邀请码" | |||
| clearable | |||
| size="small" | |||
| @keyup.enter.native="handleQuery" | |||
| /> | |||
| </el-form-item> | |||
| <el-form-item class="flex_one tr"> | |||
| <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="['model:AppletUsers: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="['model:AppletUsers: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="['model:AppletUsers: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="['model:AppletUsers:export']" | |||
| >导出</el-button> | |||
| </el-col> | |||
| <right-toolbar :showSearch.sync="showSearch" @queryTable="getList" :columns="columns"></right-toolbar> | |||
| </el-row> | |||
| <el-table v-loading="loading" :data="AppletUsersList" @selection-change="handleSelectionChange"> | |||
| <el-table-column type="selection" width="55" align="center" /> | |||
| <el-table-column label="用户编号" align="center" prop="userId" /> | |||
| <el-table-column label="备注" align="center" prop="remark" v-if="columns[0].visible"/> | |||
| <el-table-column label="修改人" align="center" prop="updatorBy" v-if="columns[1].visible"/> | |||
| <el-table-column label="用户头像" align="center" prop="userImage" v-if="columns[2].visible"/> | |||
| <el-table-column label="用户昵称" align="center" prop="userName" v-if="columns[3].visible"/> | |||
| <el-table-column label="用户状态" align="center" prop="userState" v-if="columns[4].visible"/> | |||
| <el-table-column label="用户电话" align="center" prop="userTelephone" v-if="columns[5].visible"/> | |||
| <el-table-column label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" align="center" prop="unionid" v-if="columns[6].visible"/> | |||
| <el-table-column label="用户的标识,对当前公众号唯一" align="center" prop="openid" v-if="columns[7].visible"/> | |||
| <el-table-column label="token" align="center" prop="accessToken" v-if="columns[8].visible"/> | |||
| <el-table-column label="过期时间" align="center" prop="expiresIn" v-if="columns[9].visible"/> | |||
| <el-table-column label="刷新token" align="center" prop="refreshToken" v-if="columns[10].visible"/> | |||
| <el-table-column label="过期时间" align="center" prop="expireTime" width="180" v-if="columns[11].visible"> | |||
| <template slot-scope="scope"> | |||
| <span>{{ parseTime(scope.row.expireTime, '')}}</span> | |||
| </template> | |||
| </el-table-column> | |||
| <el-table-column label="是否合伙人" align="center" prop="userHh" v-if="columns[12].visible"/> | |||
| <el-table-column label="是否伴宠师" align="center" prop="userBcs" v-if="columns[13].visible"/> | |||
| <el-table-column label="钱包金额" align="center" prop="price" v-if="columns[14].visible"/> | |||
| <el-table-column label="邀请码" align="center" prop="invitationCode" v-if="columns[15].visible"/> | |||
| <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | |||
| <template slot-scope="scope"> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-edit" | |||
| @click="handleUpdate(scope.row)" | |||
| v-hasPermi="['model:AppletUsers:edit']" | |||
| >修改</el-button> | |||
| <el-button | |||
| size="mini" | |||
| type="text" | |||
| icon="el-icon-delete" | |||
| @click="handleDelete(scope.row)" | |||
| v-hasPermi="['model:AppletUsers:remove']" | |||
| >删除</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" | |||
| /> | |||
| <!-- 添加或修改用户对话框 --> | |||
| <el-dialog :title="title" :visible.sync="open" width="50%" append-to-body> | |||
| <el-form ref="form" :model="form" :rules="rules" label-width="108px" inline class="dialog-form-two"> | |||
| <el-form-item label="逻辑删除" prop="delFlag"> | |||
| <el-input v-model="form.delFlag" placeholder="请输入逻辑删除" /> | |||
| </el-form-item> | |||
| <el-form-item label="备注" prop="remark"> | |||
| <el-input v-model="form.remark" placeholder="请输入备注" /> | |||
| </el-form-item> | |||
| <el-form-item label="修改人" prop="updatorBy"> | |||
| <el-input v-model="form.updatorBy" placeholder="请输入修改人" /> | |||
| </el-form-item> | |||
| <el-form-item label="用户头像"> | |||
| <imageUpload v-model="form.userImage"/> | |||
| </el-form-item> | |||
| <el-form-item label="用户昵称" prop="userName"> | |||
| <el-input v-model="form.userName" placeholder="请输入用户昵称" /> | |||
| </el-form-item> | |||
| <el-form-item label="用户状态" prop="userState"> | |||
| <el-input v-model="form.userState" placeholder="请输入用户状态" /> | |||
| </el-form-item> | |||
| <el-form-item label="用户电话" prop="userTelephone"> | |||
| <el-input v-model="form.userTelephone" placeholder="请输入用户电话" /> | |||
| </el-form-item> | |||
| <el-form-item label="只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" prop="unionid"> | |||
| <el-input v-model="form.unionid" placeholder="请输入只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段" /> | |||
| </el-form-item> | |||
| <el-form-item label="用户的标识,对当前公众号唯一" prop="openid"> | |||
| <el-input v-model="form.openid" placeholder="请输入用户的标识,对当前公众号唯一" /> | |||
| </el-form-item> | |||
| <el-form-item label="token" prop="accessToken"> | |||
| <el-input v-model="form.accessToken" type="textarea" placeholder="请输入内容" /> | |||
| </el-form-item> | |||
| <el-form-item label="过期时间" prop="expiresIn"> | |||
| <el-input v-model="form.expiresIn" placeholder="请输入过期时间" /> | |||
| </el-form-item> | |||
| <el-form-item label="刷新token" prop="refreshToken"> | |||
| <el-input v-model="form.refreshToken" type="textarea" placeholder="请输入内容" /> | |||
| </el-form-item> | |||
| <el-form-item label="过期时间" prop="expireTime"> | |||
| <el-date-picker clearable size="small" | |||
| v-model="form.expireTime" | |||
| type="datetime" | |||
| value-format="yyyy-MM-dd HH:mm:ss" | |||
| placeholder="选择过期时间"> | |||
| </el-date-picker> | |||
| </el-form-item> | |||
| <el-form-item label="是否合伙人" prop="userHh"> | |||
| <el-input v-model="form.userHh" placeholder="请输入是否合伙人" /> | |||
| </el-form-item> | |||
| <el-form-item label="是否伴宠师" prop="userBcs"> | |||
| <el-input v-model="form.userBcs" placeholder="请输入是否伴宠师" /> | |||
| </el-form-item> | |||
| <el-form-item label="钱包金额" prop="price"> | |||
| <el-input v-model="form.price" placeholder="请输入钱包金额" /> | |||
| </el-form-item> | |||
| <el-form-item label="邀请码" prop="invitationCode"> | |||
| <el-input v-model="form.invitationCode" placeholder="请输入邀请码" /> | |||
| </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 { listAppletUsers, getAppletUsers, delAppletUsers, addAppletUsers, updateAppletUsers, exportAppletUsers } from "@/api/model/AppletUsers"; | |||
| export default { | |||
| name: "AppletUsers", | |||
| data() { | |||
| return { | |||
| // 遮罩层 | |||
| loading: true, | |||
| // 导出遮罩层 | |||
| exportLoading: false, | |||
| // 选中数组 | |||
| ids: [], | |||
| // 非单个禁用 | |||
| single: true, | |||
| // 非多个禁用 | |||
| multiple: true, | |||
| // 显示搜索条件 | |||
| showSearch: true, | |||
| // 总条数 | |||
| total: 0, | |||
| // 用户表格数据 | |||
| AppletUsersList: [], | |||
| // 弹出层标题 | |||
| title: "", | |||
| // 是否显示弹出层 | |||
| open: false, | |||
| // 查询参数 | |||
| queryParams: { | |||
| pageNum: 1, | |||
| pageSize: 10, | |||
| updatorBy: null, | |||
| userImage: null, | |||
| userName: null, | |||
| userState: null, | |||
| userTelephone: null, | |||
| unionid: null, | |||
| openid: null, | |||
| accessToken: null, | |||
| expiresIn: null, | |||
| refreshToken: null, | |||
| expireTime: null, | |||
| userHh: null, | |||
| userBcs: null, | |||
| price: null, | |||
| invitationCode: null, | |||
| }, | |||
| // 表单参数 | |||
| form: {}, | |||
| // 表单校验 | |||
| rules: { | |||
| userName: [ | |||
| { required: true, message: "用户昵称不能为空", trigger: "blur" } | |||
| ], | |||
| }, | |||
| columns: [ | |||
| { key: 4, label: "备注", visible: true }, | |||
| { key: 6, label: "修改人", visible: true }, | |||
| { key: 7, label: "用户头像", visible: false }, | |||
| { key: 8, label: "用户昵称", visible: true }, | |||
| { key: 9, label: "用户状态", visible: true }, | |||
| { key: 10, label: "用户电话", visible: false }, | |||
| { key: 11, label: "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段", visible: false }, | |||
| { key: 12, label: "用户的标识,对当前公众号唯一", visible: false }, | |||
| { key: 13, label: "token", visible: false }, | |||
| { key: 14, label: "过期时间", visible: false }, | |||
| { key: 15, label: "刷新token", visible: false }, | |||
| { key: 16, label: "过期时间", visible: false }, | |||
| { key: 17, label: "是否合伙人", visible: false }, | |||
| { key: 18, label: "是否伴宠师", visible: false }, | |||
| { key: 19, label: "钱包金额", visible: false }, | |||
| { key: 20, label: "邀请码", visible: false }, | |||
| ], | |||
| }; | |||
| }, | |||
| created() { | |||
| this.getList(); | |||
| }, | |||
| methods: { | |||
| /** 查询用户列表 */ | |||
| getList() { | |||
| this.loading = true; | |||
| listAppletUsers(this.queryParams).then(response => { | |||
| this.AppletUsersList = response.rows; | |||
| this.total = response.total; | |||
| this.loading = false; | |||
| }); | |||
| }, | |||
| // 取消按钮 | |||
| cancel() { | |||
| this.open = false; | |||
| this.reset(); | |||
| }, | |||
| // 表单重置 | |||
| reset() { | |||
| this.form = { | |||
| userId: null, | |||
| createBy: null, | |||
| createTime: null, | |||
| delFlag: null, | |||
| remark: null, | |||
| updateTime: null, | |||
| updatorBy: null, | |||
| userImage: null, | |||
| userName: null, | |||
| userState: null, | |||
| userTelephone: null, | |||
| unionid: null, | |||
| openid: null, | |||
| accessToken: null, | |||
| expiresIn: null, | |||
| refreshToken: null, | |||
| expireTime: null, | |||
| userHh: null, | |||
| userBcs: null, | |||
| price: null, | |||
| invitationCode: null, | |||
| }; | |||
| this.resetForm("form"); | |||
| }, | |||
| /** 搜索按钮操作 */ | |||
| handleQuery() { | |||
| this.queryParams.pageNum = 1; | |||
| this.getList(); | |||
| }, | |||
| /** 重置按钮操作 */ | |||
| resetQuery() { | |||
| this.resetForm("queryForm"); | |||
| this.handleQuery(); | |||
| }, | |||
| // 多选框选中数据 | |||
| handleSelectionChange(selection) { | |||
| this.ids = selection.map(item => item.userId) | |||
| this.single = selection.length!==1 | |||
| this.multiple = !selection.length | |||
| }, | |||
| /** 新增按钮操作 */ | |||
| handleAdd() { | |||
| this.reset(); | |||
| this.open = true; | |||
| this.title = "添加用户"; | |||
| }, | |||
| /** 修改按钮操作 */ | |||
| handleUpdate(row) { | |||
| this.reset(); | |||
| const userId = row.userId || this.ids | |||
| getAppletUsers(userId).then(response => { | |||
| this.form = response.data; | |||
| this.open = true; | |||
| this.title = "修改用户"; | |||
| }); | |||
| }, | |||
| /** 提交按钮 */ | |||
| submitForm() { | |||
| this.$refs["form"].validate(valid => { | |||
| if (valid) { | |||
| if (this.form.userId != null) { | |||
| updateAppletUsers(this.form).then(response => { | |||
| this.$modal.msgSuccess("修改成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } else { | |||
| addAppletUsers(this.form).then(response => { | |||
| this.$modal.msgSuccess("新增成功"); | |||
| this.open = false; | |||
| this.getList(); | |||
| }); | |||
| } | |||
| } | |||
| }); | |||
| }, | |||
| /** 删除按钮操作 */ | |||
| handleDelete(row) { | |||
| const userIds = row.userId || this.ids; | |||
| this.$modal.confirm('是否确认删除用户编号为"' + userIds + '"的数据项?').then(function() { | |||
| return delAppletUsers(userIds); | |||
| }).then(() => { | |||
| this.getList(); | |||
| this.$modal.msgSuccess("删除成功"); | |||
| }).catch(() => {}); | |||
| }, | |||
| /** 导出按钮操作 */ | |||
| handleExport() { | |||
| const queryParams = this.queryParams; | |||
| this.$modal.confirm('是否确认导出所有用户数据项?').then(() => { | |||
| this.exportLoading = true; | |||
| return exportAppletUsers(queryParams); | |||
| }).then(response => { | |||
| this.download(response.msg); | |||
| this.exportLoading = false; | |||
| }).catch(() => {}); | |||
| } | |||
| } | |||
| }; | |||
| </script> | |||
| @ -0,0 +1,104 @@ | |||
| package com.ruoyi.model.controller; | |||
| import java.io.IOException; | |||
| import java.util.List; | |||
| import javax.servlet.http.HttpServletResponse; | |||
| import org.springframework.security.access.prepost.PreAuthorize; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.PostMapping; | |||
| import org.springframework.web.bind.annotation.PutMapping; | |||
| import org.springframework.web.bind.annotation.DeleteMapping; | |||
| import org.springframework.web.bind.annotation.PathVariable; | |||
| import org.springframework.web.bind.annotation.RequestBody; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| import com.ruoyi.common.annotation.Log; | |||
| import com.ruoyi.common.core.controller.BaseController; | |||
| import com.ruoyi.common.core.domain.AjaxResult; | |||
| import com.ruoyi.common.enums.BusinessType; | |||
| import com.ruoyi.model.domain.AppletBanner; | |||
| import com.ruoyi.model.service.IAppletBannerService; | |||
| import com.ruoyi.common.utils.poi.ExcelUtil; | |||
| import com.ruoyi.common.core.page.TableDataInfo; | |||
| /** | |||
| * 轮播图Controller | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @RestController | |||
| @RequestMapping("/model/AppletBanner") | |||
| public class AppletBannerController extends BaseController | |||
| { | |||
| @Autowired | |||
| private IAppletBannerService appletBannerService; | |||
| /** | |||
| * 查询轮播图列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:list')") | |||
| @GetMapping("/list") | |||
| public TableDataInfo list(AppletBanner appletBanner) | |||
| { | |||
| startPage(); | |||
| List<AppletBanner> list = appletBannerService.selectAppletBannerList(appletBanner); | |||
| return getDataTable(list); | |||
| } | |||
| /** | |||
| * 导出轮播图列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:export')") | |||
| @Log(title = "轮播图", businessType = BusinessType.EXPORT) | |||
| @PostMapping("/export") | |||
| public void export(HttpServletResponse response, AppletBanner appletBanner) throws IOException { | |||
| List<AppletBanner> list = appletBannerService.selectAppletBannerList(appletBanner); | |||
| ExcelUtil<AppletBanner> util = new ExcelUtil<AppletBanner>(AppletBanner.class); | |||
| util.exportExcel(response, list, "轮播图数据"); | |||
| } | |||
| /** | |||
| * 获取轮播图详细信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:query')") | |||
| @GetMapping(value = "/{id}") | |||
| public AjaxResult getInfo(@PathVariable("id") Long id) | |||
| { | |||
| return success(appletBannerService.selectAppletBannerById(id)); | |||
| } | |||
| /** | |||
| * 新增轮播图 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:add')") | |||
| @Log(title = "轮播图", businessType = BusinessType.INSERT) | |||
| @PostMapping | |||
| public AjaxResult add(@RequestBody AppletBanner appletBanner) | |||
| { | |||
| return toAjax(appletBannerService.insertAppletBanner(appletBanner)); | |||
| } | |||
| /** | |||
| * 修改轮播图 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:edit')") | |||
| @Log(title = "轮播图", businessType = BusinessType.UPDATE) | |||
| @PutMapping | |||
| public AjaxResult edit(@RequestBody AppletBanner appletBanner) | |||
| { | |||
| return toAjax(appletBannerService.updateAppletBanner(appletBanner)); | |||
| } | |||
| /** | |||
| * 删除轮播图 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletBanner:remove')") | |||
| @Log(title = "轮播图", businessType = BusinessType.DELETE) | |||
| @DeleteMapping("/{ids}") | |||
| public AjaxResult remove(@PathVariable Long[] ids) | |||
| { | |||
| return toAjax(appletBannerService.deleteAppletBannerByIds(ids)); | |||
| } | |||
| } | |||
| @ -0,0 +1,104 @@ | |||
| package com.ruoyi.model.controller; | |||
| import java.io.IOException; | |||
| import java.util.List; | |||
| import javax.servlet.http.HttpServletResponse; | |||
| import org.springframework.security.access.prepost.PreAuthorize; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.PostMapping; | |||
| import org.springframework.web.bind.annotation.PutMapping; | |||
| import org.springframework.web.bind.annotation.DeleteMapping; | |||
| import org.springframework.web.bind.annotation.PathVariable; | |||
| import org.springframework.web.bind.annotation.RequestBody; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| import com.ruoyi.common.annotation.Log; | |||
| import com.ruoyi.common.core.controller.BaseController; | |||
| import com.ruoyi.common.core.domain.AjaxResult; | |||
| import com.ruoyi.common.enums.BusinessType; | |||
| import com.ruoyi.model.domain.AppletIcon; | |||
| import com.ruoyi.model.service.IAppletIconService; | |||
| import com.ruoyi.common.utils.poi.ExcelUtil; | |||
| import com.ruoyi.common.core.page.TableDataInfo; | |||
| /** | |||
| * 跳转图标菜单Controller | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @RestController | |||
| @RequestMapping("/model/AppletIcon") | |||
| public class AppletIconController extends BaseController | |||
| { | |||
| @Autowired | |||
| private IAppletIconService appletIconService; | |||
| /** | |||
| * 查询跳转图标菜单列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:list')") | |||
| @GetMapping("/list") | |||
| public TableDataInfo list(AppletIcon appletIcon) | |||
| { | |||
| startPage(); | |||
| List<AppletIcon> list = appletIconService.selectAppletIconList(appletIcon); | |||
| return getDataTable(list); | |||
| } | |||
| /** | |||
| * 导出跳转图标菜单列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:export')") | |||
| @Log(title = "跳转图标菜单", businessType = BusinessType.EXPORT) | |||
| @PostMapping("/export") | |||
| public void export(HttpServletResponse response, AppletIcon appletIcon) throws IOException { | |||
| List<AppletIcon> list = appletIconService.selectAppletIconList(appletIcon); | |||
| ExcelUtil<AppletIcon> util = new ExcelUtil<AppletIcon>(AppletIcon.class); | |||
| util.exportExcel(response, list, "跳转图标菜单数据"); | |||
| } | |||
| /** | |||
| * 获取跳转图标菜单详细信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:query')") | |||
| @GetMapping(value = "/{id}") | |||
| public AjaxResult getInfo(@PathVariable("id") Long id) | |||
| { | |||
| return success(appletIconService.selectAppletIconById(id)); | |||
| } | |||
| /** | |||
| * 新增跳转图标菜单 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:add')") | |||
| @Log(title = "跳转图标菜单", businessType = BusinessType.INSERT) | |||
| @PostMapping | |||
| public AjaxResult add(@RequestBody AppletIcon appletIcon) | |||
| { | |||
| return toAjax(appletIconService.insertAppletIcon(appletIcon)); | |||
| } | |||
| /** | |||
| * 修改跳转图标菜单 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:edit')") | |||
| @Log(title = "跳转图标菜单", businessType = BusinessType.UPDATE) | |||
| @PutMapping | |||
| public AjaxResult edit(@RequestBody AppletIcon appletIcon) | |||
| { | |||
| return toAjax(appletIconService.updateAppletIcon(appletIcon)); | |||
| } | |||
| /** | |||
| * 删除跳转图标菜单 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletIcon:remove')") | |||
| @Log(title = "跳转图标菜单", businessType = BusinessType.DELETE) | |||
| @DeleteMapping("/{ids}") | |||
| public AjaxResult remove(@PathVariable Long[] ids) | |||
| { | |||
| return toAjax(appletIconService.deleteAppletIconByIds(ids)); | |||
| } | |||
| } | |||
| @ -0,0 +1,104 @@ | |||
| package com.ruoyi.model.controller; | |||
| import java.io.IOException; | |||
| import java.util.List; | |||
| import javax.servlet.http.HttpServletResponse; | |||
| import org.springframework.security.access.prepost.PreAuthorize; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.PostMapping; | |||
| import org.springframework.web.bind.annotation.PutMapping; | |||
| import org.springframework.web.bind.annotation.DeleteMapping; | |||
| import org.springframework.web.bind.annotation.PathVariable; | |||
| import org.springframework.web.bind.annotation.RequestBody; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| import com.ruoyi.common.annotation.Log; | |||
| import com.ruoyi.common.core.controller.BaseController; | |||
| import com.ruoyi.common.core.domain.AjaxResult; | |||
| import com.ruoyi.common.enums.BusinessType; | |||
| import com.ruoyi.model.domain.AppletPet; | |||
| import com.ruoyi.model.service.IAppletPetService; | |||
| import com.ruoyi.common.utils.poi.ExcelUtil; | |||
| import com.ruoyi.common.core.page.TableDataInfo; | |||
| /** | |||
| * 宠物信息Controller | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @RestController | |||
| @RequestMapping("/model/AppletPet") | |||
| public class AppletPetController extends BaseController | |||
| { | |||
| @Autowired | |||
| private IAppletPetService appletPetService; | |||
| /** | |||
| * 查询宠物信息列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:list')") | |||
| @GetMapping("/list") | |||
| public TableDataInfo list(AppletPet appletPet) | |||
| { | |||
| startPage(); | |||
| List<AppletPet> list = appletPetService.selectAppletPetList(appletPet); | |||
| return getDataTable(list); | |||
| } | |||
| /** | |||
| * 导出宠物信息列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:export')") | |||
| @Log(title = "宠物信息", businessType = BusinessType.EXPORT) | |||
| @PostMapping("/export") | |||
| public void export(HttpServletResponse response, AppletPet appletPet) throws IOException { | |||
| List<AppletPet> list = appletPetService.selectAppletPetList(appletPet); | |||
| ExcelUtil<AppletPet> util = new ExcelUtil<AppletPet>(AppletPet.class); | |||
| util.exportExcel(response, list, "宠物信息数据"); | |||
| } | |||
| /** | |||
| * 获取宠物信息详细信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:query')") | |||
| @GetMapping(value = "/{id}") | |||
| public AjaxResult getInfo(@PathVariable("id") Long id) | |||
| { | |||
| return success(appletPetService.selectAppletPetById(id)); | |||
| } | |||
| /** | |||
| * 新增宠物信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:add')") | |||
| @Log(title = "宠物信息", businessType = BusinessType.INSERT) | |||
| @PostMapping | |||
| public AjaxResult add(@RequestBody AppletPet appletPet) | |||
| { | |||
| return toAjax(appletPetService.insertAppletPet(appletPet)); | |||
| } | |||
| /** | |||
| * 修改宠物信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:edit')") | |||
| @Log(title = "宠物信息", businessType = BusinessType.UPDATE) | |||
| @PutMapping | |||
| public AjaxResult edit(@RequestBody AppletPet appletPet) | |||
| { | |||
| return toAjax(appletPetService.updateAppletPet(appletPet)); | |||
| } | |||
| /** | |||
| * 删除宠物信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletPet:remove')") | |||
| @Log(title = "宠物信息", businessType = BusinessType.DELETE) | |||
| @DeleteMapping("/{ids}") | |||
| public AjaxResult remove(@PathVariable Long[] ids) | |||
| { | |||
| return toAjax(appletPetService.deleteAppletPetByIds(ids)); | |||
| } | |||
| } | |||
| @ -0,0 +1,104 @@ | |||
| package com.ruoyi.model.controller; | |||
| import java.io.IOException; | |||
| import java.util.List; | |||
| import javax.servlet.http.HttpServletResponse; | |||
| import org.springframework.security.access.prepost.PreAuthorize; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.web.bind.annotation.GetMapping; | |||
| import org.springframework.web.bind.annotation.PostMapping; | |||
| import org.springframework.web.bind.annotation.PutMapping; | |||
| import org.springframework.web.bind.annotation.DeleteMapping; | |||
| import org.springframework.web.bind.annotation.PathVariable; | |||
| import org.springframework.web.bind.annotation.RequestBody; | |||
| import org.springframework.web.bind.annotation.RequestMapping; | |||
| import org.springframework.web.bind.annotation.RestController; | |||
| import com.ruoyi.common.annotation.Log; | |||
| import com.ruoyi.common.core.controller.BaseController; | |||
| import com.ruoyi.common.core.domain.AjaxResult; | |||
| import com.ruoyi.common.enums.BusinessType; | |||
| import com.ruoyi.model.domain.AppletUsers; | |||
| import com.ruoyi.model.service.IAppletUsersService; | |||
| import com.ruoyi.common.utils.poi.ExcelUtil; | |||
| import com.ruoyi.common.core.page.TableDataInfo; | |||
| /** | |||
| * 用户Controller | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @RestController | |||
| @RequestMapping("/model/AppletUsers") | |||
| public class AppletUsersController extends BaseController | |||
| { | |||
| @Autowired | |||
| private IAppletUsersService appletUsersService; | |||
| /** | |||
| * 查询用户列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:list')") | |||
| @GetMapping("/list") | |||
| public TableDataInfo list(AppletUsers appletUsers) | |||
| { | |||
| startPage(); | |||
| List<AppletUsers> list = appletUsersService.selectAppletUsersList(appletUsers); | |||
| return getDataTable(list); | |||
| } | |||
| /** | |||
| * 导出用户列表 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:export')") | |||
| @Log(title = "用户", businessType = BusinessType.EXPORT) | |||
| @PostMapping("/export") | |||
| public void export(HttpServletResponse response, AppletUsers appletUsers) throws IOException { | |||
| List<AppletUsers> list = appletUsersService.selectAppletUsersList(appletUsers); | |||
| ExcelUtil<AppletUsers> util = new ExcelUtil<AppletUsers>(AppletUsers.class); | |||
| util.exportExcel(response, list, "用户数据"); | |||
| } | |||
| /** | |||
| * 获取用户详细信息 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:query')") | |||
| @GetMapping(value = "/{userId}") | |||
| public AjaxResult getInfo(@PathVariable("userId") Long userId) | |||
| { | |||
| return success(appletUsersService.selectAppletUsersByUserId(userId)); | |||
| } | |||
| /** | |||
| * 新增用户 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:add')") | |||
| @Log(title = "用户", businessType = BusinessType.INSERT) | |||
| @PostMapping | |||
| public AjaxResult add(@RequestBody AppletUsers appletUsers) | |||
| { | |||
| return toAjax(appletUsersService.insertAppletUsers(appletUsers)); | |||
| } | |||
| /** | |||
| * 修改用户 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:edit')") | |||
| @Log(title = "用户", businessType = BusinessType.UPDATE) | |||
| @PutMapping | |||
| public AjaxResult edit(@RequestBody AppletUsers appletUsers) | |||
| { | |||
| return toAjax(appletUsersService.updateAppletUsers(appletUsers)); | |||
| } | |||
| /** | |||
| * 删除用户 | |||
| */ | |||
| @PreAuthorize("@ss.hasPermi('model:AppletUsers:remove')") | |||
| @Log(title = "用户", businessType = BusinessType.DELETE) | |||
| @DeleteMapping("/{userIds}") | |||
| public AjaxResult remove(@PathVariable Long[] userIds) | |||
| { | |||
| return toAjax(appletUsersService.deleteAppletUsersByUserIds(userIds)); | |||
| } | |||
| } | |||
| @ -0,0 +1,83 @@ | |||
| package com.ruoyi.model.domain; | |||
| import org.apache.commons.lang3.builder.ToStringBuilder; | |||
| import org.apache.commons.lang3.builder.ToStringStyle; | |||
| import com.ruoyi.common.annotation.Excel; | |||
| import com.ruoyi.common.core.domain.BaseEntity; | |||
| /** | |||
| * 轮播图对象 applet_banner | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public class AppletBanner extends BaseEntity | |||
| { | |||
| private static final long serialVersionUID = 1L; | |||
| /** 唯一标识 */ | |||
| private Long id; | |||
| /** 轮播图图片 | |||
| */ | |||
| @Excel(name = "轮播图图片 ") | |||
| private String image; | |||
| /** 跳转链接 */ | |||
| @Excel(name = "跳转链接") | |||
| private String url; | |||
| /** 逻辑删除标识 */ | |||
| private Integer delFlag; | |||
| public void setId(Long id) | |||
| { | |||
| this.id = id; | |||
| } | |||
| public Long getId() | |||
| { | |||
| return id; | |||
| } | |||
| public void setImage(String image) | |||
| { | |||
| this.image = image; | |||
| } | |||
| public String getImage() | |||
| { | |||
| return image; | |||
| } | |||
| public void setUrl(String url) | |||
| { | |||
| this.url = url; | |||
| } | |||
| public String getUrl() | |||
| { | |||
| return url; | |||
| } | |||
| public void setDelFlag(Integer delFlag) | |||
| { | |||
| this.delFlag = delFlag; | |||
| } | |||
| public Integer getDelFlag() | |||
| { | |||
| return delFlag; | |||
| } | |||
| @Override | |||
| public String toString() { | |||
| return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) | |||
| .append("id", getId()) | |||
| .append("image", getImage()) | |||
| .append("url", getUrl()) | |||
| .append("createTime", getCreateTime()) | |||
| .append("createBy", getCreateBy()) | |||
| .append("updateTime", getUpdateTime()) | |||
| .append("updateBy", getUpdateBy()) | |||
| .append("delFlag", getDelFlag()) | |||
| .toString(); | |||
| } | |||
| } | |||
| @ -0,0 +1,110 @@ | |||
| package com.ruoyi.model.domain; | |||
| import org.apache.commons.lang3.builder.ToStringBuilder; | |||
| import org.apache.commons.lang3.builder.ToStringStyle; | |||
| import com.ruoyi.common.annotation.Excel; | |||
| import com.ruoyi.common.core.domain.BaseEntity; | |||
| /** | |||
| * 跳转图标菜单对象 applet_icon | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public class AppletIcon extends BaseEntity | |||
| { | |||
| private static final long serialVersionUID = 1L; | |||
| /** 唯一标识 */ | |||
| private Long id; | |||
| /** 名称 */ | |||
| @Excel(name = "名称") | |||
| private String name; | |||
| /** 图标 */ | |||
| @Excel(name = "图标") | |||
| private String image; | |||
| /** 地址 */ | |||
| @Excel(name = "地址") | |||
| private String url; | |||
| /** 类别 */ | |||
| @Excel(name = "类别") | |||
| private String type; | |||
| /** 逻辑删除标识 */ | |||
| private Integer delFlag; | |||
| public void setId(Long id) | |||
| { | |||
| this.id = id; | |||
| } | |||
| public Long getId() | |||
| { | |||
| return id; | |||
| } | |||
| public void setName(String name) | |||
| { | |||
| this.name = name; | |||
| } | |||
| public String getName() | |||
| { | |||
| return name; | |||
| } | |||
| public void setImage(String image) | |||
| { | |||
| this.image = image; | |||
| } | |||
| public String getImage() | |||
| { | |||
| return image; | |||
| } | |||
| public void setUrl(String url) | |||
| { | |||
| this.url = url; | |||
| } | |||
| public String getUrl() | |||
| { | |||
| return url; | |||
| } | |||
| public void setType(String type) | |||
| { | |||
| this.type = type; | |||
| } | |||
| public String getType() | |||
| { | |||
| return type; | |||
| } | |||
| public void setDelFlag(Integer delFlag) | |||
| { | |||
| this.delFlag = delFlag; | |||
| } | |||
| public Integer getDelFlag() | |||
| { | |||
| return delFlag; | |||
| } | |||
| @Override | |||
| public String toString() { | |||
| return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) | |||
| .append("id", getId()) | |||
| .append("name", getName()) | |||
| .append("image", getImage()) | |||
| .append("url", getUrl()) | |||
| .append("type", getType()) | |||
| .append("createTime", getCreateTime()) | |||
| .append("createBy", getCreateBy()) | |||
| .append("updateTime", getUpdateTime()) | |||
| .append("updateBy", getUpdateBy()) | |||
| .append("delFlag", getDelFlag()) | |||
| .toString(); | |||
| } | |||
| } | |||
| @ -0,0 +1,212 @@ | |||
| package com.ruoyi.model.domain; | |||
| import java.math.BigDecimal; | |||
| import java.util.Date; | |||
| import com.fasterxml.jackson.annotation.JsonFormat; | |||
| import org.apache.commons.lang3.builder.ToStringBuilder; | |||
| import org.apache.commons.lang3.builder.ToStringStyle; | |||
| import com.ruoyi.common.annotation.Excel; | |||
| import com.ruoyi.common.core.domain.BaseEntity; | |||
| /** | |||
| * 宠物信息对象 applet_pet | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public class AppletPet extends BaseEntity | |||
| { | |||
| private static final long serialVersionUID = 1L; | |||
| /** 唯一标识 */ | |||
| private Long id; | |||
| /** 宠物头像 */ | |||
| @Excel(name = "宠物头像") | |||
| private String headImage; | |||
| /** 昵称 */ | |||
| @Excel(name = "昵称") | |||
| private String nickName; | |||
| /** 性别 */ | |||
| @Excel(name = "性别") | |||
| private String sex; | |||
| /** 品种 */ | |||
| @Excel(name = "品种") | |||
| private String type; | |||
| /** 出生年月 */ | |||
| @JsonFormat(pattern = "yyyy-MM-dd") | |||
| @Excel(name = "出生年月", width = 30, dateFormat = "yyyy-MM-dd") | |||
| private Date birthday; | |||
| /** 体重(kg) */ | |||
| @Excel(name = "体重", readConverterExp = "k=g") | |||
| private BigDecimal weight; | |||
| /** 性格 */ | |||
| @Excel(name = "性格") | |||
| private String personality; | |||
| /** 疫苗(是否已接种) */ | |||
| @Excel(name = "疫苗", readConverterExp = "是=否已接种") | |||
| private Integer vaccine; | |||
| /** 驱虫(是否已处理) */ | |||
| @Excel(name = "驱虫", readConverterExp = "是=否已处理") | |||
| private Integer deworm; | |||
| /** 绝育(是否已绝育) */ | |||
| @Excel(name = "绝育", readConverterExp = "是=否已绝育") | |||
| private Integer neutered; | |||
| /** 健康状况 */ | |||
| @Excel(name = "健康状况") | |||
| private String health; | |||
| /** 删除标识 */ | |||
| private Integer delFlag; | |||
| public void setId(Long id) | |||
| { | |||
| this.id = id; | |||
| } | |||
| public Long getId() | |||
| { | |||
| return id; | |||
| } | |||
| public void setHeadImage(String headImage) | |||
| { | |||
| this.headImage = headImage; | |||
| } | |||
| public String getHeadImage() | |||
| { | |||
| return headImage; | |||
| } | |||
| public void setNickName(String nickName) | |||
| { | |||
| this.nickName = nickName; | |||
| } | |||
| public String getNickName() | |||
| { | |||
| return nickName; | |||
| } | |||
| public void setSex(String sex) | |||
| { | |||
| this.sex = sex; | |||
| } | |||
| public String getSex() | |||
| { | |||
| return sex; | |||
| } | |||
| public void setType(String type) | |||
| { | |||
| this.type = type; | |||
| } | |||
| public String getType() | |||
| { | |||
| return type; | |||
| } | |||
| public void setBirthday(Date birthday) | |||
| { | |||
| this.birthday = birthday; | |||
| } | |||
| public Date getBirthday() | |||
| { | |||
| return birthday; | |||
| } | |||
| public void setWeight(BigDecimal weight) | |||
| { | |||
| this.weight = weight; | |||
| } | |||
| public BigDecimal getWeight() | |||
| { | |||
| return weight; | |||
| } | |||
| public void setPersonality(String personality) | |||
| { | |||
| this.personality = personality; | |||
| } | |||
| public String getPersonality() | |||
| { | |||
| return personality; | |||
| } | |||
| public void setVaccine(Integer vaccine) | |||
| { | |||
| this.vaccine = vaccine; | |||
| } | |||
| public Integer getVaccine() | |||
| { | |||
| return vaccine; | |||
| } | |||
| public void setDeworm(Integer deworm) | |||
| { | |||
| this.deworm = deworm; | |||
| } | |||
| public Integer getDeworm() | |||
| { | |||
| return deworm; | |||
| } | |||
| public void setNeutered(Integer neutered) | |||
| { | |||
| this.neutered = neutered; | |||
| } | |||
| public Integer getNeutered() | |||
| { | |||
| return neutered; | |||
| } | |||
| public void setHealth(String health) | |||
| { | |||
| this.health = health; | |||
| } | |||
| public String getHealth() | |||
| { | |||
| return health; | |||
| } | |||
| public void setDelFlag(Integer delFlag) | |||
| { | |||
| this.delFlag = delFlag; | |||
| } | |||
| public Integer getDelFlag() | |||
| { | |||
| return delFlag; | |||
| } | |||
| @Override | |||
| public String toString() { | |||
| return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) | |||
| .append("id", getId()) | |||
| .append("headImage", getHeadImage()) | |||
| .append("nickName", getNickName()) | |||
| .append("sex", getSex()) | |||
| .append("type", getType()) | |||
| .append("birthday", getBirthday()) | |||
| .append("weight", getWeight()) | |||
| .append("personality", getPersonality()) | |||
| .append("vaccine", getVaccine()) | |||
| .append("deworm", getDeworm()) | |||
| .append("neutered", getNeutered()) | |||
| .append("health", getHealth()) | |||
| .append("delFlag", getDelFlag()) | |||
| .append("createBy", getCreateBy()) | |||
| .append("createTime", getCreateTime()) | |||
| .append("updateBy", getUpdateBy()) | |||
| .append("updateTime", getUpdateTime()) | |||
| .toString(); | |||
| } | |||
| } | |||
| @ -0,0 +1,268 @@ | |||
| package com.ruoyi.model.domain; | |||
| import java.math.BigDecimal; | |||
| import java.util.Date; | |||
| import com.fasterxml.jackson.annotation.JsonFormat; | |||
| import org.apache.commons.lang3.builder.ToStringBuilder; | |||
| import org.apache.commons.lang3.builder.ToStringStyle; | |||
| import com.ruoyi.common.annotation.Excel; | |||
| import com.ruoyi.common.core.domain.BaseEntity; | |||
| /** | |||
| * 用户对象 applet_users | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public class AppletUsers extends BaseEntity | |||
| { | |||
| private static final long serialVersionUID = 1L; | |||
| /** 用户编号 */ | |||
| private Long userId; | |||
| /** 逻辑删除 */ | |||
| private Integer delFlag; | |||
| /** 修改人 */ | |||
| @Excel(name = "修改人") | |||
| private String updatorBy; | |||
| /** 用户头像 */ | |||
| @Excel(name = "用户头像") | |||
| private String userImage; | |||
| /** 用户昵称 */ | |||
| @Excel(name = "用户昵称") | |||
| private String userName; | |||
| /** 用户状态 */ | |||
| @Excel(name = "用户状态") | |||
| private Long userState; | |||
| /** 用户电话 */ | |||
| @Excel(name = "用户电话") | |||
| private String userTelephone; | |||
| /** 只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段 */ | |||
| @Excel(name = "只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段") | |||
| private String unionid; | |||
| /** 用户的标识,对当前公众号唯一 */ | |||
| @Excel(name = "用户的标识,对当前公众号唯一") | |||
| private String openid; | |||
| /** token */ | |||
| @Excel(name = "token") | |||
| private String accessToken; | |||
| /** 过期时间 */ | |||
| @Excel(name = "过期时间") | |||
| private Long expiresIn; | |||
| /** 刷新token */ | |||
| @Excel(name = "刷新token") | |||
| private String refreshToken; | |||
| /** 过期时间 */ | |||
| @JsonFormat(pattern = "yyyy-MM-dd") | |||
| @Excel(name = "过期时间", width = 30, dateFormat = "yyyy-MM-dd") | |||
| private Date expireTime; | |||
| /** 是否合伙人 */ | |||
| @Excel(name = "是否合伙人") | |||
| private Long userHh; | |||
| /** 是否伴宠师 */ | |||
| @Excel(name = "是否伴宠师") | |||
| private Long userBcs; | |||
| /** 钱包金额 */ | |||
| @Excel(name = "钱包金额") | |||
| private BigDecimal price; | |||
| /** 邀请码 */ | |||
| @Excel(name = "邀请码") | |||
| private String invitationCode; | |||
| public void setUserId(Long userId) | |||
| { | |||
| this.userId = userId; | |||
| } | |||
| public Long getUserId() | |||
| { | |||
| return userId; | |||
| } | |||
| public void setDelFlag(Integer delFlag) | |||
| { | |||
| this.delFlag = delFlag; | |||
| } | |||
| public Integer getDelFlag() | |||
| { | |||
| return delFlag; | |||
| } | |||
| public void setUpdatorBy(String updatorBy) | |||
| { | |||
| this.updatorBy = updatorBy; | |||
| } | |||
| public String getUpdatorBy() | |||
| { | |||
| return updatorBy; | |||
| } | |||
| public void setUserImage(String userImage) | |||
| { | |||
| this.userImage = userImage; | |||
| } | |||
| public String getUserImage() | |||
| { | |||
| return userImage; | |||
| } | |||
| public void setUserName(String userName) | |||
| { | |||
| this.userName = userName; | |||
| } | |||
| public String getUserName() | |||
| { | |||
| return userName; | |||
| } | |||
| public void setUserState(Long userState) | |||
| { | |||
| this.userState = userState; | |||
| } | |||
| public Long getUserState() | |||
| { | |||
| return userState; | |||
| } | |||
| public void setUserTelephone(String userTelephone) | |||
| { | |||
| this.userTelephone = userTelephone; | |||
| } | |||
| public String getUserTelephone() | |||
| { | |||
| return userTelephone; | |||
| } | |||
| public void setUnionid(String unionid) | |||
| { | |||
| this.unionid = unionid; | |||
| } | |||
| public String getUnionid() | |||
| { | |||
| return unionid; | |||
| } | |||
| public void setOpenid(String openid) | |||
| { | |||
| this.openid = openid; | |||
| } | |||
| public String getOpenid() | |||
| { | |||
| return openid; | |||
| } | |||
| public void setAccessToken(String accessToken) | |||
| { | |||
| this.accessToken = accessToken; | |||
| } | |||
| public String getAccessToken() | |||
| { | |||
| return accessToken; | |||
| } | |||
| public void setExpiresIn(Long expiresIn) | |||
| { | |||
| this.expiresIn = expiresIn; | |||
| } | |||
| public Long getExpiresIn() | |||
| { | |||
| return expiresIn; | |||
| } | |||
| public void setRefreshToken(String refreshToken) | |||
| { | |||
| this.refreshToken = refreshToken; | |||
| } | |||
| public String getRefreshToken() | |||
| { | |||
| return refreshToken; | |||
| } | |||
| public void setExpireTime(Date expireTime) | |||
| { | |||
| this.expireTime = expireTime; | |||
| } | |||
| public Date getExpireTime() | |||
| { | |||
| return expireTime; | |||
| } | |||
| public void setUserHh(Long userHh) | |||
| { | |||
| this.userHh = userHh; | |||
| } | |||
| public Long getUserHh() | |||
| { | |||
| return userHh; | |||
| } | |||
| public void setUserBcs(Long userBcs) | |||
| { | |||
| this.userBcs = userBcs; | |||
| } | |||
| public Long getUserBcs() | |||
| { | |||
| return userBcs; | |||
| } | |||
| public void setPrice(BigDecimal price) | |||
| { | |||
| this.price = price; | |||
| } | |||
| public BigDecimal getPrice() | |||
| { | |||
| return price; | |||
| } | |||
| public void setInvitationCode(String invitationCode) | |||
| { | |||
| this.invitationCode = invitationCode; | |||
| } | |||
| public String getInvitationCode() | |||
| { | |||
| return invitationCode; | |||
| } | |||
| @Override | |||
| public String toString() { | |||
| return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) | |||
| .append("userId", getUserId()) | |||
| .append("createBy", getCreateBy()) | |||
| .append("createTime", getCreateTime()) | |||
| .append("delFlag", getDelFlag()) | |||
| .append("remark", getRemark()) | |||
| .append("updateTime", getUpdateTime()) | |||
| .append("updatorBy", getUpdatorBy()) | |||
| .append("userImage", getUserImage()) | |||
| .append("userName", getUserName()) | |||
| .append("userState", getUserState()) | |||
| .append("userTelephone", getUserTelephone()) | |||
| .append("unionid", getUnionid()) | |||
| .append("openid", getOpenid()) | |||
| .append("accessToken", getAccessToken()) | |||
| .append("expiresIn", getExpiresIn()) | |||
| .append("refreshToken", getRefreshToken()) | |||
| .append("expireTime", getExpireTime()) | |||
| .append("userHh", getUserHh()) | |||
| .append("userBcs", getUserBcs()) | |||
| .append("price", getPrice()) | |||
| .append("invitationCode", getInvitationCode()) | |||
| .toString(); | |||
| } | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.mapper; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletBanner; | |||
| /** | |||
| * 轮播图Mapper接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface AppletBannerMapper | |||
| { | |||
| /** | |||
| * 查询轮播图 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 轮播图 | |||
| */ | |||
| public AppletBanner selectAppletBannerById(Long id); | |||
| /** | |||
| * 查询轮播图列表 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 轮播图集合 | |||
| */ | |||
| public List<AppletBanner> selectAppletBannerList(AppletBanner appletBanner); | |||
| /** | |||
| * 新增轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletBanner(AppletBanner appletBanner); | |||
| /** | |||
| * 修改轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletBanner(AppletBanner appletBanner); | |||
| /** | |||
| * 删除轮播图 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletBannerById(Long id); | |||
| /** | |||
| * 批量删除轮播图 | |||
| * | |||
| * @param ids 需要删除的数据主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletBannerByIds(Long[] ids); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.mapper; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletIcon; | |||
| /** | |||
| * 跳转图标菜单Mapper接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface AppletIconMapper | |||
| { | |||
| /** | |||
| * 查询跳转图标菜单 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 跳转图标菜单 | |||
| */ | |||
| public AppletIcon selectAppletIconById(Long id); | |||
| /** | |||
| * 查询跳转图标菜单列表 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 跳转图标菜单集合 | |||
| */ | |||
| public List<AppletIcon> selectAppletIconList(AppletIcon appletIcon); | |||
| /** | |||
| * 新增跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletIcon(AppletIcon appletIcon); | |||
| /** | |||
| * 修改跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletIcon(AppletIcon appletIcon); | |||
| /** | |||
| * 删除跳转图标菜单 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletIconById(Long id); | |||
| /** | |||
| * 批量删除跳转图标菜单 | |||
| * | |||
| * @param ids 需要删除的数据主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletIconByIds(Long[] ids); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.mapper; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletPet; | |||
| /** | |||
| * 宠物信息Mapper接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface AppletPetMapper | |||
| { | |||
| /** | |||
| * 查询宠物信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 宠物信息 | |||
| */ | |||
| public AppletPet selectAppletPetById(Long id); | |||
| /** | |||
| * 查询宠物信息列表 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 宠物信息集合 | |||
| */ | |||
| public List<AppletPet> selectAppletPetList(AppletPet appletPet); | |||
| /** | |||
| * 新增宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletPet(AppletPet appletPet); | |||
| /** | |||
| * 修改宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletPet(AppletPet appletPet); | |||
| /** | |||
| * 删除宠物信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletPetById(Long id); | |||
| /** | |||
| * 批量删除宠物信息 | |||
| * | |||
| * @param ids 需要删除的数据主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletPetByIds(Long[] ids); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.mapper; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletUsers; | |||
| /** | |||
| * 用户Mapper接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface AppletUsersMapper | |||
| { | |||
| /** | |||
| * 查询用户 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 用户 | |||
| */ | |||
| public AppletUsers selectAppletUsersByUserId(Long userId); | |||
| /** | |||
| * 查询用户列表 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 用户集合 | |||
| */ | |||
| public List<AppletUsers> selectAppletUsersList(AppletUsers appletUsers); | |||
| /** | |||
| * 新增用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletUsers(AppletUsers appletUsers); | |||
| /** | |||
| * 修改用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletUsers(AppletUsers appletUsers); | |||
| /** | |||
| * 删除用户 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletUsersByUserId(Long userId); | |||
| /** | |||
| * 批量删除用户 | |||
| * | |||
| * @param userIds 需要删除的数据主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletUsersByUserIds(Long[] userIds); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.service; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletBanner; | |||
| /** | |||
| * 轮播图Service接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface IAppletBannerService | |||
| { | |||
| /** | |||
| * 查询轮播图 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 轮播图 | |||
| */ | |||
| public AppletBanner selectAppletBannerById(Long id); | |||
| /** | |||
| * 查询轮播图列表 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 轮播图集合 | |||
| */ | |||
| public List<AppletBanner> selectAppletBannerList(AppletBanner appletBanner); | |||
| /** | |||
| * 新增轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletBanner(AppletBanner appletBanner); | |||
| /** | |||
| * 修改轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletBanner(AppletBanner appletBanner); | |||
| /** | |||
| * 批量删除轮播图 | |||
| * | |||
| * @param ids 需要删除的轮播图主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletBannerByIds(Long[] ids); | |||
| /** | |||
| * 删除轮播图信息 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletBannerById(Long id); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.service; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletIcon; | |||
| /** | |||
| * 跳转图标菜单Service接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface IAppletIconService | |||
| { | |||
| /** | |||
| * 查询跳转图标菜单 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 跳转图标菜单 | |||
| */ | |||
| public AppletIcon selectAppletIconById(Long id); | |||
| /** | |||
| * 查询跳转图标菜单列表 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 跳转图标菜单集合 | |||
| */ | |||
| public List<AppletIcon> selectAppletIconList(AppletIcon appletIcon); | |||
| /** | |||
| * 新增跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletIcon(AppletIcon appletIcon); | |||
| /** | |||
| * 修改跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletIcon(AppletIcon appletIcon); | |||
| /** | |||
| * 批量删除跳转图标菜单 | |||
| * | |||
| * @param ids 需要删除的跳转图标菜单主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletIconByIds(Long[] ids); | |||
| /** | |||
| * 删除跳转图标菜单信息 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletIconById(Long id); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.service; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletPet; | |||
| /** | |||
| * 宠物信息Service接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface IAppletPetService | |||
| { | |||
| /** | |||
| * 查询宠物信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 宠物信息 | |||
| */ | |||
| public AppletPet selectAppletPetById(Long id); | |||
| /** | |||
| * 查询宠物信息列表 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 宠物信息集合 | |||
| */ | |||
| public List<AppletPet> selectAppletPetList(AppletPet appletPet); | |||
| /** | |||
| * 新增宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletPet(AppletPet appletPet); | |||
| /** | |||
| * 修改宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletPet(AppletPet appletPet); | |||
| /** | |||
| * 批量删除宠物信息 | |||
| * | |||
| * @param ids 需要删除的宠物信息主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletPetByIds(Long[] ids); | |||
| /** | |||
| * 删除宠物信息信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletPetById(Long id); | |||
| } | |||
| @ -0,0 +1,61 @@ | |||
| package com.ruoyi.model.service; | |||
| import java.util.List; | |||
| import com.ruoyi.model.domain.AppletUsers; | |||
| /** | |||
| * 用户Service接口 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| public interface IAppletUsersService | |||
| { | |||
| /** | |||
| * 查询用户 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 用户 | |||
| */ | |||
| public AppletUsers selectAppletUsersByUserId(Long userId); | |||
| /** | |||
| * 查询用户列表 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 用户集合 | |||
| */ | |||
| public List<AppletUsers> selectAppletUsersList(AppletUsers appletUsers); | |||
| /** | |||
| * 新增用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| public int insertAppletUsers(AppletUsers appletUsers); | |||
| /** | |||
| * 修改用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| public int updateAppletUsers(AppletUsers appletUsers); | |||
| /** | |||
| * 批量删除用户 | |||
| * | |||
| * @param userIds 需要删除的用户主键集合 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletUsersByUserIds(Long[] userIds); | |||
| /** | |||
| * 删除用户信息 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 结果 | |||
| */ | |||
| public int deleteAppletUsersByUserId(Long userId); | |||
| } | |||
| @ -0,0 +1,96 @@ | |||
| package com.ruoyi.model.service.impl; | |||
| import java.util.List; | |||
| import com.ruoyi.common.utils.DateUtils; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import com.ruoyi.model.mapper.AppletBannerMapper; | |||
| import com.ruoyi.model.domain.AppletBanner; | |||
| import com.ruoyi.model.service.IAppletBannerService; | |||
| /** | |||
| * 轮播图Service业务层处理 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @Service | |||
| public class AppletBannerServiceImpl implements IAppletBannerService | |||
| { | |||
| @Autowired | |||
| private AppletBannerMapper appletBannerMapper; | |||
| /** | |||
| * 查询轮播图 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 轮播图 | |||
| */ | |||
| @Override | |||
| public AppletBanner selectAppletBannerById(Long id) | |||
| { | |||
| return appletBannerMapper.selectAppletBannerById(id); | |||
| } | |||
| /** | |||
| * 查询轮播图列表 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 轮播图 | |||
| */ | |||
| @Override | |||
| public List<AppletBanner> selectAppletBannerList(AppletBanner appletBanner) | |||
| { | |||
| return appletBannerMapper.selectAppletBannerList(appletBanner); | |||
| } | |||
| /** | |||
| * 新增轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int insertAppletBanner(AppletBanner appletBanner) | |||
| { | |||
| appletBanner.setCreateTime(DateUtils.getNowDate()); | |||
| return appletBannerMapper.insertAppletBanner(appletBanner); | |||
| } | |||
| /** | |||
| * 修改轮播图 | |||
| * | |||
| * @param appletBanner 轮播图 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int updateAppletBanner(AppletBanner appletBanner) | |||
| { | |||
| appletBanner.setUpdateTime(DateUtils.getNowDate()); | |||
| return appletBannerMapper.updateAppletBanner(appletBanner); | |||
| } | |||
| /** | |||
| * 批量删除轮播图 | |||
| * | |||
| * @param ids 需要删除的轮播图主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletBannerByIds(Long[] ids) | |||
| { | |||
| return appletBannerMapper.deleteAppletBannerByIds(ids); | |||
| } | |||
| /** | |||
| * 删除轮播图信息 | |||
| * | |||
| * @param id 轮播图主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletBannerById(Long id) | |||
| { | |||
| return appletBannerMapper.deleteAppletBannerById(id); | |||
| } | |||
| } | |||
| @ -0,0 +1,96 @@ | |||
| package com.ruoyi.model.service.impl; | |||
| import java.util.List; | |||
| import com.ruoyi.common.utils.DateUtils; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import com.ruoyi.model.mapper.AppletIconMapper; | |||
| import com.ruoyi.model.domain.AppletIcon; | |||
| import com.ruoyi.model.service.IAppletIconService; | |||
| /** | |||
| * 跳转图标菜单Service业务层处理 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @Service | |||
| public class AppletIconServiceImpl implements IAppletIconService | |||
| { | |||
| @Autowired | |||
| private AppletIconMapper appletIconMapper; | |||
| /** | |||
| * 查询跳转图标菜单 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 跳转图标菜单 | |||
| */ | |||
| @Override | |||
| public AppletIcon selectAppletIconById(Long id) | |||
| { | |||
| return appletIconMapper.selectAppletIconById(id); | |||
| } | |||
| /** | |||
| * 查询跳转图标菜单列表 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 跳转图标菜单 | |||
| */ | |||
| @Override | |||
| public List<AppletIcon> selectAppletIconList(AppletIcon appletIcon) | |||
| { | |||
| return appletIconMapper.selectAppletIconList(appletIcon); | |||
| } | |||
| /** | |||
| * 新增跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int insertAppletIcon(AppletIcon appletIcon) | |||
| { | |||
| appletIcon.setCreateTime(DateUtils.getNowDate()); | |||
| return appletIconMapper.insertAppletIcon(appletIcon); | |||
| } | |||
| /** | |||
| * 修改跳转图标菜单 | |||
| * | |||
| * @param appletIcon 跳转图标菜单 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int updateAppletIcon(AppletIcon appletIcon) | |||
| { | |||
| appletIcon.setUpdateTime(DateUtils.getNowDate()); | |||
| return appletIconMapper.updateAppletIcon(appletIcon); | |||
| } | |||
| /** | |||
| * 批量删除跳转图标菜单 | |||
| * | |||
| * @param ids 需要删除的跳转图标菜单主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletIconByIds(Long[] ids) | |||
| { | |||
| return appletIconMapper.deleteAppletIconByIds(ids); | |||
| } | |||
| /** | |||
| * 删除跳转图标菜单信息 | |||
| * | |||
| * @param id 跳转图标菜单主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletIconById(Long id) | |||
| { | |||
| return appletIconMapper.deleteAppletIconById(id); | |||
| } | |||
| } | |||
| @ -0,0 +1,96 @@ | |||
| package com.ruoyi.model.service.impl; | |||
| import java.util.List; | |||
| import com.ruoyi.common.utils.DateUtils; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import com.ruoyi.model.mapper.AppletPetMapper; | |||
| import com.ruoyi.model.domain.AppletPet; | |||
| import com.ruoyi.model.service.IAppletPetService; | |||
| /** | |||
| * 宠物信息Service业务层处理 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @Service | |||
| public class AppletPetServiceImpl implements IAppletPetService | |||
| { | |||
| @Autowired | |||
| private AppletPetMapper appletPetMapper; | |||
| /** | |||
| * 查询宠物信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 宠物信息 | |||
| */ | |||
| @Override | |||
| public AppletPet selectAppletPetById(Long id) | |||
| { | |||
| return appletPetMapper.selectAppletPetById(id); | |||
| } | |||
| /** | |||
| * 查询宠物信息列表 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 宠物信息 | |||
| */ | |||
| @Override | |||
| public List<AppletPet> selectAppletPetList(AppletPet appletPet) | |||
| { | |||
| return appletPetMapper.selectAppletPetList(appletPet); | |||
| } | |||
| /** | |||
| * 新增宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int insertAppletPet(AppletPet appletPet) | |||
| { | |||
| appletPet.setCreateTime(DateUtils.getNowDate()); | |||
| return appletPetMapper.insertAppletPet(appletPet); | |||
| } | |||
| /** | |||
| * 修改宠物信息 | |||
| * | |||
| * @param appletPet 宠物信息 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int updateAppletPet(AppletPet appletPet) | |||
| { | |||
| appletPet.setUpdateTime(DateUtils.getNowDate()); | |||
| return appletPetMapper.updateAppletPet(appletPet); | |||
| } | |||
| /** | |||
| * 批量删除宠物信息 | |||
| * | |||
| * @param ids 需要删除的宠物信息主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletPetByIds(Long[] ids) | |||
| { | |||
| return appletPetMapper.deleteAppletPetByIds(ids); | |||
| } | |||
| /** | |||
| * 删除宠物信息信息 | |||
| * | |||
| * @param id 宠物信息主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletPetById(Long id) | |||
| { | |||
| return appletPetMapper.deleteAppletPetById(id); | |||
| } | |||
| } | |||
| @ -0,0 +1,96 @@ | |||
| package com.ruoyi.model.service.impl; | |||
| import java.util.List; | |||
| import com.ruoyi.common.utils.DateUtils; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import com.ruoyi.model.mapper.AppletUsersMapper; | |||
| import com.ruoyi.model.domain.AppletUsers; | |||
| import com.ruoyi.model.service.IAppletUsersService; | |||
| /** | |||
| * 用户Service业务层处理 | |||
| * | |||
| * @author ruoyi | |||
| * @date 2025-03-30 | |||
| */ | |||
| @Service | |||
| public class AppletUsersServiceImpl implements IAppletUsersService | |||
| { | |||
| @Autowired | |||
| private AppletUsersMapper appletUsersMapper; | |||
| /** | |||
| * 查询用户 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 用户 | |||
| */ | |||
| @Override | |||
| public AppletUsers selectAppletUsersByUserId(Long userId) | |||
| { | |||
| return appletUsersMapper.selectAppletUsersByUserId(userId); | |||
| } | |||
| /** | |||
| * 查询用户列表 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 用户 | |||
| */ | |||
| @Override | |||
| public List<AppletUsers> selectAppletUsersList(AppletUsers appletUsers) | |||
| { | |||
| return appletUsersMapper.selectAppletUsersList(appletUsers); | |||
| } | |||
| /** | |||
| * 新增用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int insertAppletUsers(AppletUsers appletUsers) | |||
| { | |||
| appletUsers.setCreateTime(DateUtils.getNowDate()); | |||
| return appletUsersMapper.insertAppletUsers(appletUsers); | |||
| } | |||
| /** | |||
| * 修改用户 | |||
| * | |||
| * @param appletUsers 用户 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int updateAppletUsers(AppletUsers appletUsers) | |||
| { | |||
| appletUsers.setUpdateTime(DateUtils.getNowDate()); | |||
| return appletUsersMapper.updateAppletUsers(appletUsers); | |||
| } | |||
| /** | |||
| * 批量删除用户 | |||
| * | |||
| * @param userIds 需要删除的用户主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletUsersByUserIds(Long[] userIds) | |||
| { | |||
| return appletUsersMapper.deleteAppletUsersByUserIds(userIds); | |||
| } | |||
| /** | |||
| * 删除用户信息 | |||
| * | |||
| * @param userId 用户主键 | |||
| * @return 结果 | |||
| */ | |||
| @Override | |||
| public int deleteAppletUsersByUserId(Long userId) | |||
| { | |||
| return appletUsersMapper.deleteAppletUsersByUserId(userId); | |||
| } | |||
| } | |||
| @ -0,0 +1,83 @@ | |||
| <?xml version="1.0" encoding="UTF-8" ?> | |||
| <!DOCTYPE mapper | |||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | |||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.model.mapper.AppletBannerMapper"> | |||
| <resultMap type="AppletBanner" id="AppletBannerResult"> | |||
| <result property="id" column="id" /> | |||
| <result property="image" column="image" /> | |||
| <result property="url" column="url" /> | |||
| <result property="createTime" column="create_time" /> | |||
| <result property="createBy" column="create_by" /> | |||
| <result property="updateTime" column="update_time" /> | |||
| <result property="updateBy" column="update_by" /> | |||
| <result property="delFlag" column="del_flag" /> | |||
| </resultMap> | |||
| <sql id="selectAppletBannerVo"> | |||
| select id, image, url, create_time, create_by, update_time, update_by, del_flag from applet_banner | |||
| </sql> | |||
| <select id="selectAppletBannerList" parameterType="AppletBanner" resultMap="AppletBannerResult"> | |||
| <include refid="selectAppletBannerVo"/> | |||
| <where> | |||
| <if test="image != null and image != ''"> and image = #{image}</if> | |||
| <if test="url != null and url != ''"> and url = #{url}</if> | |||
| </where> | |||
| </select> | |||
| <select id="selectAppletBannerById" parameterType="Long" resultMap="AppletBannerResult"> | |||
| <include refid="selectAppletBannerVo"/> | |||
| where id = #{id} | |||
| </select> | |||
| <insert id="insertAppletBanner" parameterType="AppletBanner"> | |||
| insert into applet_banner | |||
| <trim prefix="(" suffix=")" suffixOverrides=","> | |||
| <if test="id != null">id,</if> | |||
| <if test="image != null">image,</if> | |||
| <if test="url != null">url,</if> | |||
| <if test="createTime != null">create_time,</if> | |||
| <if test="createBy != null">create_by,</if> | |||
| <if test="updateTime != null">update_time,</if> | |||
| <if test="updateBy != null">update_by,</if> | |||
| <if test="delFlag != null">del_flag,</if> | |||
| </trim> | |||
| <trim prefix="values (" suffix=")" suffixOverrides=","> | |||
| <if test="id != null">#{id},</if> | |||
| <if test="image != null">#{image},</if> | |||
| <if test="url != null">#{url},</if> | |||
| <if test="createTime != null">#{createTime},</if> | |||
| <if test="createBy != null">#{createBy},</if> | |||
| <if test="updateTime != null">#{updateTime},</if> | |||
| <if test="updateBy != null">#{updateBy},</if> | |||
| <if test="delFlag != null">#{delFlag},</if> | |||
| </trim> | |||
| </insert> | |||
| <update id="updateAppletBanner" parameterType="AppletBanner"> | |||
| update applet_banner | |||
| <trim prefix="SET" suffixOverrides=","> | |||
| <if test="image != null">image = #{image},</if> | |||
| <if test="url != null">url = #{url},</if> | |||
| <if test="createTime != null">create_time = #{createTime},</if> | |||
| <if test="createBy != null">create_by = #{createBy},</if> | |||
| <if test="updateTime != null">update_time = #{updateTime},</if> | |||
| <if test="updateBy != null">update_by = #{updateBy},</if> | |||
| <if test="delFlag != null">del_flag = #{delFlag},</if> | |||
| </trim> | |||
| where id = #{id} | |||
| </update> | |||
| <delete id="deleteAppletBannerById" parameterType="Long"> | |||
| delete from applet_banner where id = #{id} | |||
| </delete> | |||
| <delete id="deleteAppletBannerByIds" parameterType="String"> | |||
| delete from applet_banner where id in | |||
| <foreach item="id" collection="array" open="(" separator="," close=")"> | |||
| #{id} | |||
| </foreach> | |||
| </delete> | |||
| </mapper> | |||
| @ -0,0 +1,91 @@ | |||
| <?xml version="1.0" encoding="UTF-8" ?> | |||
| <!DOCTYPE mapper | |||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | |||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.model.mapper.AppletIconMapper"> | |||
| <resultMap type="AppletIcon" id="AppletIconResult"> | |||
| <result property="id" column="id" /> | |||
| <result property="name" column="name" /> | |||
| <result property="image" column="image" /> | |||
| <result property="url" column="url" /> | |||
| <result property="type" column="type" /> | |||
| <result property="createTime" column="create_time" /> | |||
| <result property="createBy" column="create_by" /> | |||
| <result property="updateTime" column="update_time" /> | |||
| <result property="updateBy" column="update_by" /> | |||
| <result property="delFlag" column="del_flag" /> | |||
| </resultMap> | |||
| <sql id="selectAppletIconVo"> | |||
| select id, name, image, url, type, create_time, create_by, update_time, update_by, del_flag from applet_icon | |||
| </sql> | |||
| <select id="selectAppletIconList" parameterType="AppletIcon" resultMap="AppletIconResult"> | |||
| <include refid="selectAppletIconVo"/> | |||
| <where> | |||
| <if test="name != null and name != ''"> and name like concat('%', #{name}, '%')</if> | |||
| <if test="image != null and image != ''"> and image = #{image}</if> | |||
| <if test="url != null and url != ''"> and url = #{url}</if> | |||
| <if test="type != null and type != ''"> and type = #{type}</if> | |||
| </where> | |||
| </select> | |||
| <select id="selectAppletIconById" parameterType="Long" resultMap="AppletIconResult"> | |||
| <include refid="selectAppletIconVo"/> | |||
| where id = #{id} | |||
| </select> | |||
| <insert id="insertAppletIcon" parameterType="AppletIcon" useGeneratedKeys="true" keyProperty="id"> | |||
| insert into applet_icon | |||
| <trim prefix="(" suffix=")" suffixOverrides=","> | |||
| <if test="name != null">name,</if> | |||
| <if test="image != null">image,</if> | |||
| <if test="url != null">url,</if> | |||
| <if test="type != null">type,</if> | |||
| <if test="createTime != null">create_time,</if> | |||
| <if test="createBy != null">create_by,</if> | |||
| <if test="updateTime != null">update_time,</if> | |||
| <if test="updateBy != null">update_by,</if> | |||
| <if test="delFlag != null">del_flag,</if> | |||
| </trim> | |||
| <trim prefix="values (" suffix=")" suffixOverrides=","> | |||
| <if test="name != null">#{name},</if> | |||
| <if test="image != null">#{image},</if> | |||
| <if test="url != null">#{url},</if> | |||
| <if test="type != null">#{type},</if> | |||
| <if test="createTime != null">#{createTime},</if> | |||
| <if test="createBy != null">#{createBy},</if> | |||
| <if test="updateTime != null">#{updateTime},</if> | |||
| <if test="updateBy != null">#{updateBy},</if> | |||
| <if test="delFlag != null">#{delFlag},</if> | |||
| </trim> | |||
| </insert> | |||
| <update id="updateAppletIcon" parameterType="AppletIcon"> | |||
| update applet_icon | |||
| <trim prefix="SET" suffixOverrides=","> | |||
| <if test="name != null">name = #{name},</if> | |||
| <if test="image != null">image = #{image},</if> | |||
| <if test="url != null">url = #{url},</if> | |||
| <if test="type != null">type = #{type},</if> | |||
| <if test="createTime != null">create_time = #{createTime},</if> | |||
| <if test="createBy != null">create_by = #{createBy},</if> | |||
| <if test="updateTime != null">update_time = #{updateTime},</if> | |||
| <if test="updateBy != null">update_by = #{updateBy},</if> | |||
| <if test="delFlag != null">del_flag = #{delFlag},</if> | |||
| </trim> | |||
| where id = #{id} | |||
| </update> | |||
| <delete id="deleteAppletIconById" parameterType="Long"> | |||
| delete from applet_icon where id = #{id} | |||
| </delete> | |||
| <delete id="deleteAppletIconByIds" parameterType="String"> | |||
| delete from applet_icon where id in | |||
| <foreach item="id" collection="array" open="(" separator="," close=")"> | |||
| #{id} | |||
| </foreach> | |||
| </delete> | |||
| </mapper> | |||
| @ -0,0 +1,126 @@ | |||
| <?xml version="1.0" encoding="UTF-8" ?> | |||
| <!DOCTYPE mapper | |||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | |||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.model.mapper.AppletPetMapper"> | |||
| <resultMap type="AppletPet" id="AppletPetResult"> | |||
| <result property="id" column="id" /> | |||
| <result property="headImage" column="head_image" /> | |||
| <result property="nickName" column="nick_name" /> | |||
| <result property="sex" column="sex" /> | |||
| <result property="type" column="type" /> | |||
| <result property="birthday" column="birthday" /> | |||
| <result property="weight" column="weight" /> | |||
| <result property="personality" column="personality" /> | |||
| <result property="vaccine" column="vaccine" /> | |||
| <result property="deworm" column="deworm" /> | |||
| <result property="neutered" column="neutered" /> | |||
| <result property="health" column="health" /> | |||
| <result property="delFlag" column="del_flag" /> | |||
| <result property="createBy" column="create_by" /> | |||
| <result property="createTime" column="create_time" /> | |||
| <result property="updateBy" column="update_by" /> | |||
| <result property="updateTime" column="update_time" /> | |||
| </resultMap> | |||
| <sql id="selectAppletPetVo"> | |||
| select id, head_image, nick_name, sex, type, birthday, weight, personality, vaccine, deworm, neutered, health, del_flag, create_by, create_time, update_by, update_time from applet_pet | |||
| </sql> | |||
| <select id="selectAppletPetList" parameterType="AppletPet" resultMap="AppletPetResult"> | |||
| <include refid="selectAppletPetVo"/> | |||
| <where> | |||
| <if test="headImage != null and headImage != ''"> and head_image = #{headImage}</if> | |||
| <if test="nickName != null and nickName != ''"> and nick_name like concat('%', #{nickName}, '%')</if> | |||
| <if test="sex != null and sex != ''"> and sex = #{sex}</if> | |||
| <if test="type != null and type != ''"> and type = #{type}</if> | |||
| <if test="birthday != null "> and birthday = #{birthday}</if> | |||
| <if test="weight != null "> and weight = #{weight}</if> | |||
| <if test="personality != null and personality != ''"> and personality = #{personality}</if> | |||
| <if test="vaccine != null "> and vaccine = #{vaccine}</if> | |||
| <if test="deworm != null "> and deworm = #{deworm}</if> | |||
| <if test="neutered != null "> and neutered = #{neutered}</if> | |||
| <if test="health != null and health != ''"> and health = #{health}</if> | |||
| </where> | |||
| </select> | |||
| <select id="selectAppletPetById" parameterType="Long" resultMap="AppletPetResult"> | |||
| <include refid="selectAppletPetVo"/> | |||
| where id = #{id} | |||
| </select> | |||
| <insert id="insertAppletPet" parameterType="AppletPet" useGeneratedKeys="true" keyProperty="id"> | |||
| insert into applet_pet | |||
| <trim prefix="(" suffix=")" suffixOverrides=","> | |||
| <if test="headImage != null">head_image,</if> | |||
| <if test="nickName != null and nickName != ''">nick_name,</if> | |||
| <if test="sex != null and sex != ''">sex,</if> | |||
| <if test="type != null and type != ''">type,</if> | |||
| <if test="birthday != null">birthday,</if> | |||
| <if test="weight != null">weight,</if> | |||
| <if test="personality != null">personality,</if> | |||
| <if test="vaccine != null">vaccine,</if> | |||
| <if test="deworm != null">deworm,</if> | |||
| <if test="neutered != null">neutered,</if> | |||
| <if test="health != null">health,</if> | |||
| <if test="delFlag != null">del_flag,</if> | |||
| <if test="createBy != null">create_by,</if> | |||
| <if test="createTime != null">create_time,</if> | |||
| <if test="updateBy != null">update_by,</if> | |||
| <if test="updateTime != null">update_time,</if> | |||
| </trim> | |||
| <trim prefix="values (" suffix=")" suffixOverrides=","> | |||
| <if test="headImage != null">#{headImage},</if> | |||
| <if test="nickName != null and nickName != ''">#{nickName},</if> | |||
| <if test="sex != null and sex != ''">#{sex},</if> | |||
| <if test="type != null and type != ''">#{type},</if> | |||
| <if test="birthday != null">#{birthday},</if> | |||
| <if test="weight != null">#{weight},</if> | |||
| <if test="personality != null">#{personality},</if> | |||
| <if test="vaccine != null">#{vaccine},</if> | |||
| <if test="deworm != null">#{deworm},</if> | |||
| <if test="neutered != null">#{neutered},</if> | |||
| <if test="health != null">#{health},</if> | |||
| <if test="delFlag != null">#{delFlag},</if> | |||
| <if test="createBy != null">#{createBy},</if> | |||
| <if test="createTime != null">#{createTime},</if> | |||
| <if test="updateBy != null">#{updateBy},</if> | |||
| <if test="updateTime != null">#{updateTime},</if> | |||
| </trim> | |||
| </insert> | |||
| <update id="updateAppletPet" parameterType="AppletPet"> | |||
| update applet_pet | |||
| <trim prefix="SET" suffixOverrides=","> | |||
| <if test="headImage != null">head_image = #{headImage},</if> | |||
| <if test="nickName != null and nickName != ''">nick_name = #{nickName},</if> | |||
| <if test="sex != null and sex != ''">sex = #{sex},</if> | |||
| <if test="type != null and type != ''">type = #{type},</if> | |||
| <if test="birthday != null">birthday = #{birthday},</if> | |||
| <if test="weight != null">weight = #{weight},</if> | |||
| <if test="personality != null">personality = #{personality},</if> | |||
| <if test="vaccine != null">vaccine = #{vaccine},</if> | |||
| <if test="deworm != null">deworm = #{deworm},</if> | |||
| <if test="neutered != null">neutered = #{neutered},</if> | |||
| <if test="health != null">health = #{health},</if> | |||
| <if test="delFlag != null">del_flag = #{delFlag},</if> | |||
| <if test="createBy != null">create_by = #{createBy},</if> | |||
| <if test="createTime != null">create_time = #{createTime},</if> | |||
| <if test="updateBy != null">update_by = #{updateBy},</if> | |||
| <if test="updateTime != null">update_time = #{updateTime},</if> | |||
| </trim> | |||
| where id = #{id} | |||
| </update> | |||
| <delete id="deleteAppletPetById" parameterType="Long"> | |||
| delete from applet_pet where id = #{id} | |||
| </delete> | |||
| <delete id="deleteAppletPetByIds" parameterType="String"> | |||
| delete from applet_pet where id in | |||
| <foreach item="id" collection="array" open="(" separator="," close=")"> | |||
| #{id} | |||
| </foreach> | |||
| </delete> | |||
| </mapper> | |||
| @ -0,0 +1,148 @@ | |||
| <?xml version="1.0" encoding="UTF-8" ?> | |||
| <!DOCTYPE mapper | |||
| PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | |||
| "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.ruoyi.model.mapper.AppletUsersMapper"> | |||
| <resultMap type="AppletUsers" id="AppletUsersResult"> | |||
| <result property="userId" column="user_id" /> | |||
| <result property="createBy" column="create_by" /> | |||
| <result property="createTime" column="create_time" /> | |||
| <result property="delFlag" column="del_flag" /> | |||
| <result property="remark" column="remark" /> | |||
| <result property="updateTime" column="update_time" /> | |||
| <result property="updatorBy" column="updator_by" /> | |||
| <result property="userImage" column="user_image" /> | |||
| <result property="userName" column="user_name" /> | |||
| <result property="userState" column="user_state" /> | |||
| <result property="userTelephone" column="user_telephone" /> | |||
| <result property="unionid" column="unionid" /> | |||
| <result property="openid" column="openid" /> | |||
| <result property="accessToken" column="access_token" /> | |||
| <result property="expiresIn" column="expires_in" /> | |||
| <result property="refreshToken" column="refresh_token" /> | |||
| <result property="expireTime" column="expire_time" /> | |||
| <result property="userHh" column="user_hh" /> | |||
| <result property="userBcs" column="user_bcs" /> | |||
| <result property="price" column="price" /> | |||
| <result property="invitationCode" column="invitation_code" /> | |||
| </resultMap> | |||
| <sql id="selectAppletUsersVo"> | |||
| select user_id, create_by, create_time, del_flag, remark, update_time, updator_by, user_image, user_name, user_state, user_telephone, unionid, openid, access_token, expires_in, refresh_token, expire_time, user_hh, user_bcs, price, invitation_code from applet_users | |||
| </sql> | |||
| <select id="selectAppletUsersList" parameterType="AppletUsers" resultMap="AppletUsersResult"> | |||
| <include refid="selectAppletUsersVo"/> | |||
| <where> | |||
| <if test="updatorBy != null and updatorBy != ''"> and updator_by = #{updatorBy}</if> | |||
| <if test="userImage != null and userImage != ''"> and user_image = #{userImage}</if> | |||
| <if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if> | |||
| <if test="userState != null "> and user_state = #{userState}</if> | |||
| <if test="userTelephone != null and userTelephone != ''"> and user_telephone = #{userTelephone}</if> | |||
| <if test="unionid != null and unionid != ''"> and unionid = #{unionid}</if> | |||
| <if test="openid != null and openid != ''"> and openid = #{openid}</if> | |||
| <if test="accessToken != null and accessToken != ''"> and access_token = #{accessToken}</if> | |||
| <if test="expiresIn != null "> and expires_in = #{expiresIn}</if> | |||
| <if test="refreshToken != null and refreshToken != ''"> and refresh_token = #{refreshToken}</if> | |||
| <if test="expireTime != null "> and expire_time = #{expireTime}</if> | |||
| <if test="userHh != null "> and user_hh = #{userHh}</if> | |||
| <if test="userBcs != null "> and user_bcs = #{userBcs}</if> | |||
| <if test="price != null "> and price = #{price}</if> | |||
| <if test="invitationCode != null and invitationCode != ''"> and invitation_code = #{invitationCode}</if> | |||
| </where> | |||
| </select> | |||
| <select id="selectAppletUsersByUserId" parameterType="Long" resultMap="AppletUsersResult"> | |||
| <include refid="selectAppletUsersVo"/> | |||
| where user_id = #{userId} | |||
| </select> | |||
| <insert id="insertAppletUsers" parameterType="AppletUsers"> | |||
| insert into applet_users | |||
| <trim prefix="(" suffix=")" suffixOverrides=","> | |||
| <if test="userId != null">user_id,</if> | |||
| <if test="createBy != null">create_by,</if> | |||
| <if test="createTime != null">create_time,</if> | |||
| <if test="delFlag != null">del_flag,</if> | |||
| <if test="remark != null">remark,</if> | |||
| <if test="updateTime != null">update_time,</if> | |||
| <if test="updatorBy != null">updator_by,</if> | |||
| <if test="userImage != null">user_image,</if> | |||
| <if test="userName != null and userName != ''">user_name,</if> | |||
| <if test="userState != null">user_state,</if> | |||
| <if test="userTelephone != null">user_telephone,</if> | |||
| <if test="unionid != null">unionid,</if> | |||
| <if test="openid != null">openid,</if> | |||
| <if test="accessToken != null">access_token,</if> | |||
| <if test="expiresIn != null">expires_in,</if> | |||
| <if test="refreshToken != null">refresh_token,</if> | |||
| <if test="expireTime != null">expire_time,</if> | |||
| <if test="userHh != null">user_hh,</if> | |||
| <if test="userBcs != null">user_bcs,</if> | |||
| <if test="price != null">price,</if> | |||
| <if test="invitationCode != null">invitation_code,</if> | |||
| </trim> | |||
| <trim prefix="values (" suffix=")" suffixOverrides=","> | |||
| <if test="userId != null">#{userId},</if> | |||
| <if test="createBy != null">#{createBy},</if> | |||
| <if test="createTime != null">#{createTime},</if> | |||
| <if test="delFlag != null">#{delFlag},</if> | |||
| <if test="remark != null">#{remark},</if> | |||
| <if test="updateTime != null">#{updateTime},</if> | |||
| <if test="updatorBy != null">#{updatorBy},</if> | |||
| <if test="userImage != null">#{userImage},</if> | |||
| <if test="userName != null and userName != ''">#{userName},</if> | |||
| <if test="userState != null">#{userState},</if> | |||
| <if test="userTelephone != null">#{userTelephone},</if> | |||
| <if test="unionid != null">#{unionid},</if> | |||
| <if test="openid != null">#{openid},</if> | |||
| <if test="accessToken != null">#{accessToken},</if> | |||
| <if test="expiresIn != null">#{expiresIn},</if> | |||
| <if test="refreshToken != null">#{refreshToken},</if> | |||
| <if test="expireTime != null">#{expireTime},</if> | |||
| <if test="userHh != null">#{userHh},</if> | |||
| <if test="userBcs != null">#{userBcs},</if> | |||
| <if test="price != null">#{price},</if> | |||
| <if test="invitationCode != null">#{invitationCode},</if> | |||
| </trim> | |||
| </insert> | |||
| <update id="updateAppletUsers" parameterType="AppletUsers"> | |||
| update applet_users | |||
| <trim prefix="SET" suffixOverrides=","> | |||
| <if test="createBy != null">create_by = #{createBy},</if> | |||
| <if test="createTime != null">create_time = #{createTime},</if> | |||
| <if test="delFlag != null">del_flag = #{delFlag},</if> | |||
| <if test="remark != null">remark = #{remark},</if> | |||
| <if test="updateTime != null">update_time = #{updateTime},</if> | |||
| <if test="updatorBy != null">updator_by = #{updatorBy},</if> | |||
| <if test="userImage != null">user_image = #{userImage},</if> | |||
| <if test="userName != null and userName != ''">user_name = #{userName},</if> | |||
| <if test="userState != null">user_state = #{userState},</if> | |||
| <if test="userTelephone != null">user_telephone = #{userTelephone},</if> | |||
| <if test="unionid != null">unionid = #{unionid},</if> | |||
| <if test="openid != null">openid = #{openid},</if> | |||
| <if test="accessToken != null">access_token = #{accessToken},</if> | |||
| <if test="expiresIn != null">expires_in = #{expiresIn},</if> | |||
| <if test="refreshToken != null">refresh_token = #{refreshToken},</if> | |||
| <if test="expireTime != null">expire_time = #{expireTime},</if> | |||
| <if test="userHh != null">user_hh = #{userHh},</if> | |||
| <if test="userBcs != null">user_bcs = #{userBcs},</if> | |||
| <if test="price != null">price = #{price},</if> | |||
| <if test="invitationCode != null">invitation_code = #{invitationCode},</if> | |||
| </trim> | |||
| where user_id = #{userId} | |||
| </update> | |||
| <delete id="deleteAppletUsersByUserId" parameterType="Long"> | |||
| delete from applet_users where user_id = #{userId} | |||
| </delete> | |||
| <delete id="deleteAppletUsersByUserIds" parameterType="String"> | |||
| delete from applet_users where user_id in | |||
| <foreach item="userId" collection="array" open="(" separator="," close=")"> | |||
| #{userId} | |||
| </foreach> | |||
| </delete> | |||
| </mapper> | |||