硬件商城

This commit is contained in:
愉快的大福 2024-07-22 08:44:18 +08:00
parent 68b67c6e1a
commit 4a8345a964
24 changed files with 1403 additions and 4 deletions

View File

@ -0,0 +1,37 @@
import request from '@/utils/request'
// 分页查询所有的订单信息
export function getListApi(query) {
return request({
url: 'hardwareStore',
method: 'get',
params: query
})
}
//
export function deleteApi(ids) {
return request({
url: 'hardwareStore?idList=' + ids,
method: 'delete'
})
}
//
export function saveApi(data) {
return request({
url: 'hardwareStore',
method: 'post',
data: data
})
}
// 保存修改信息
export function updateApi(data) {
return request({
url: 'hardwareStore',
method: 'put',
data: data
})
}

View File

@ -32,6 +32,7 @@ export default {
}, },
computed: { computed: {
realSrc() { realSrc() {
let real_src = this.src.split(",")[0]; let real_src = this.src.split(",")[0];
if (isExternal(real_src)) { if (isExternal(real_src)) {
return real_src; return real_src;

View File

@ -88,8 +88,10 @@ export default {
value: { value: {
handler(val) { handler(val) {
if (val) { if (val) {
console.log(91111)
// //
const list = Array.isArray(val) ? val : this.value.split(','); const list = Array.isArray(val) ? val : this.value.split(',');
console.log(9333)
// //
this.fileList = list.map(item => { this.fileList = list.map(item => {
if (typeof item === "string") { if (typeof item === "string") {
@ -127,7 +129,8 @@ export default {
}, },
// //
handleUploadSuccess(res) { handleUploadSuccess(res) {
this.uploadList.push({ name: res.fileName, url: res.fileName }); console.log(res,132)
this.uploadList.push({ name: res.data.fileName, url: res.data.fileName });
if (this.uploadList.length === this.number) { if (this.uploadList.length === this.number) {
this.fileList = this.fileList.concat(this.uploadList); this.fileList = this.fileList.concat(this.uploadList);
this.uploadList = []; this.uploadList = [];
@ -185,6 +188,7 @@ export default {
listToString(list, separator) { listToString(list, separator) {
let strs = ""; let strs = "";
separator = separator || ","; separator = separator || ",";
console.log(list,190)
for (let i in list) { for (let i in list) {
strs += list[i].url.replace(this.baseUrl, "") + separator; strs += list[i].url.replace(this.baseUrl, "") + separator;
} }

View File

@ -0,0 +1,343 @@
<template>
<div class="app-container">
<el-card >
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="90px">
<el-form-item label="" prop="name">
<el-input
v-model="queryParams.name"
placeholder="请输入商品名称"
clearable
style="width: 240px;"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="请选择分类" prop="categoryName">
<el-select v-model="queryParams.categoryName" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.hardware_type"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item label="请选择状态" prop="status">
<el-select v-model="queryParams.status" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.hardware_status"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button
type="primary"
icon="el-icon-plus"
@click="handleAdd"
>新增商品</el-button>
</el-form-item>
</el-form>
<el-table :data="tableData" style="width: 100%">
<el-table-column type="index" label="序号"></el-table-column>
<el-table-column prop="name" label="商品名称"></el-table-column>
<el-table-column prop="categoryName" label="商品分类"></el-table-column>
<el-table-column prop="image" label="商品图片">
<template slot-scope="scope">
<ImagePreview :src="scope.row.image"></ImagePreview>
</template>
</el-table-column>
<el-table-column prop="formStore" label="采购商家"></el-table-column>
<el-table-column prop="content" label="商品介绍"></el-table-column>
<el-table-column prop="status" label="商品状态">
<template slot-scope="scope">
<div v-if="scope.row.status==0">
未上架
</div>
<div v-else>
已上架
</div>
</template>
</el-table-column>
<el-table-column prop="createName" label="创建人"></el-table-column>
<el-table-column prop="createTime" label="创建时间"></el-table-column>
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-view"
@click="edit(scope.row)"
>编辑</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="del(scope.row)"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-card>
<el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="50%" append-to-body>
<el-form ref="form" :rules="rules" :model="form" label-width="80px">
<el-form-item label="商品名称" prop="name">
<el-input v-model="form.name" style="width: 300px"></el-input>
</el-form-item>
<el-form-item label="商品分类" prop="categoryName">
<el-select v-model="form.categoryName" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.hardware_type"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item label="采购商家" prop="formStore">
<el-input v-model="form.formStore" style="width: 300px"></el-input>
</el-form-item>
<el-form-item label="图片" prop="image">
<ImageUpload v-model="form.image"></ImageUpload>
</el-form-item>
<el-form-item label="商品介绍" prop="content">
<el-input type="textarea" v-model="form.content"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('form')">提交</el-button>
</el-form-item>
</el-form>
</el-dialog>
</div>
</template>
<script>
import {deleteApi, getListApi, saveApi, updateApi} from "@/api/setting/hardware";
import { getToken } from '@/utils/auth'
export default {
name: "printIndex",
dicts: ['hardware_type','hardware_status'],
data() {
return {
tableData: [],
form: {
},
systemPositionList:[{
value: '首页',
label: '首页'
}, {
value: '系统首页',
label: '系统首页'
},],
//
open: false,
title:"",
total:0,
//
queryParams: {
page: 1,
pageSize: 10,
bannerName:'',
systemPosition:'',
bannerStatus:'',
},
//
uploadAction: process.env.VUE_APP_BASE_API + 'backendApi/file/upload',
uploadHeader: { 'Access-Token' : getToken() }, //
uploadFiles: [
{name:"nihao",
url:'http://localhost:8008/static/uploadImages/20231103/ffbbe7d3ee1441fdaf706802fa0f176a.png'}
],
//
imagePath: process.env.VUE_APP_BASE_API,
//
hideUpload: false,
//
rules: {
name: [
{ required: true, message: "商品名称不能为空", trigger: "blur" }
],
categoryName: [
{ required: true, message: "商品分类不能为空", trigger: "blur" }
],
formStore: [
{ required: true, message: "采购商家不能为空", trigger: "blur" }
],
image: [
{ required: true, message: "商品图片不能为空", trigger: "blur" }
],
content: [
{ required: true, message: "商品介绍不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList()
},
methods: {
getList(){
getListApi(this.queryParams).then(res=>{
this.tableData = res.data.records;
this.total = res.data.total
})
},
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
//
this.submitDeviceInfo();
} else {
//
return false;
}
});
},
submitDeviceInfo() {
//
console.log('提交设备信息数据:', this.form);
if (this.form.id) {
updateApi(this.form).then(res=>{
if(res.code === 200) {
this.getList()
this.open = false
}
})
}else {
saveApi(this.form).then(res=>{
if(res.code === 200) {
this.getList()
this.open = false
}
})
}
},
changeStatus(data){
updateApi(data).then(res=>{
if(res.code === 200) {
this.$message({
type: 'success',
message: '修改状态成功!'
});
this.getList()
}
})
},
//
handleUploadSuccessCover(file) {
this.form.productImage = file.data.fileName;
this.form.productImage = file.data.fileName;
},
handleQuery(){
this.getList()
},
resetQuery(){
this.queryParams = {
page: 1,
pageSize: 10,
deviceName:'',
},
this.getList()
},
handleAdd(e) {
this.clean()
this.open = true;
this.title = "新增商品"
},
edit(e) {
this.clean()
this.open = true;
this.title = "修改商品"
this.form = e
},
del(e) {
this.$confirm('此操作将永久删除该商品, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteApi(e.id).then(res=>{
if (res.code == 200) {
this.$message({
type: 'success',
message: '删除成功!'
});
this.getList()
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
});
},
clean() {
this.form= {
id: null, // id
bannerName: '', // Banner
productImage: '', //
systemPosition: '', //
sortOrder: null, //
bannerLink: '', // Banner
bannerStatus: false, // Banner
note: '', //
createByName: '', //
}
},
}
};
</script>
<style lang="scss" scoped>
.common-dialog >>> .el-upload--picture-card {
width: 60px;
height: 50px;
line-height: 60px;
}
.d-dialog >>> .el-upload--picture-card {
width: 100px;
height: 100px;
line-height: 100px;
}
.d-dialog >>> .avatar-uploader .el-upload {
width: 100px;
height: 100px;
}
.d-dialog >>> .el-upload-list--picture-card .el-upload-list__item {
width: 100px;
height: 100px;
}
.list-img{
width: 98px;
height: 98px;
}
</style>

View File

@ -0,0 +1,343 @@
<template>
<div class="app-container">
<el-card >
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="90px">
<el-form-item label="" prop="name">
<el-input
v-model="queryParams.name"
placeholder="请输入短信名称"
clearable
style="width: 240px;"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="请选择接收角色" prop="roleIds">
<el-select v-model="queryParams.roleIds" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.hardware_type"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item label="请选择短信模版状态" prop="status">
<el-select v-model="queryParams.status" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.message_status"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button
type="primary"
icon="el-icon-plus"
@click="handleAdd"
>新增商品</el-button>
</el-form-item>
</el-form>
<el-table :data="tableData" style="width: 100%">
<el-table-column type="index" label="序号"></el-table-column>
<el-table-column prop="name" label="商品名称"></el-table-column>
<el-table-column prop="categoryName" label="商品分类"></el-table-column>
<el-table-column prop="image" label="商品图片">
<template slot-scope="scope">
<ImagePreview :src="scope.row.image"></ImagePreview>
</template>
</el-table-column>
<el-table-column prop="formStore" label="采购商家"></el-table-column>
<el-table-column prop="content" label="商品介绍"></el-table-column>
<el-table-column prop="status" label="商品状态">
<template slot-scope="scope">
<div v-if="scope.row.status==0">
未上架
</div>
<div v-else>
已上架
</div>
</template>
</el-table-column>
<el-table-column prop="createName" label="创建人"></el-table-column>
<el-table-column prop="createTime" label="创建时间"></el-table-column>
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-view"
@click="edit(scope.row)"
>编辑</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="del(scope.row)"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.page"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-card>
<el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="50%" append-to-body>
<el-form ref="form" :rules="rules" :model="form" label-width="80px">
<el-form-item label="商品名称" prop="name">
<el-input v-model="form.name" style="width: 300px"></el-input>
</el-form-item>
<el-form-item label="商品分类" prop="categoryName">
<el-select v-model="form.categoryName" style="width: 150px" placeholder="全部">
<el-option
v-for="dict in dict.type.hardware_type"
:key="dict.label"
:label="dict.label"
:value="dict.label"
/>
</el-select>
</el-form-item>
<el-form-item label="采购商家" prop="formStore">
<el-input v-model="form.formStore" style="width: 300px"></el-input>
</el-form-item>
<el-form-item label="图片" prop="image">
<ImageUpload v-model="form.image"></ImageUpload>
</el-form-item>
<el-form-item label="商品介绍" prop="content">
<el-input type="textarea" v-model="form.content"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('form')">提交</el-button>
</el-form-item>
</el-form>
</el-dialog>
</div>
</template>
<script>
import {deleteApi, getListApi, saveApi, updateApi} from "@/api/setting/hardware";
import { getToken } from '@/utils/auth'
export default {
name: "printIndex",
dicts: ['hardware_type','hardware_status'],
data() {
return {
tableData: [],
form: {
},
systemPositionList:[{
value: '首页',
label: '首页'
}, {
value: '系统首页',
label: '系统首页'
},],
//
open: false,
title:"",
total:0,
//
queryParams: {
page: 1,
pageSize: 10,
bannerName:'',
systemPosition:'',
bannerStatus:'',
},
//
uploadAction: process.env.VUE_APP_BASE_API + 'backendApi/file/upload',
uploadHeader: { 'Access-Token' : getToken() }, //
uploadFiles: [
{name:"nihao",
url:'http://localhost:8008/static/uploadImages/20231103/ffbbe7d3ee1441fdaf706802fa0f176a.png'}
],
//
imagePath: process.env.VUE_APP_BASE_API,
//
hideUpload: false,
//
rules: {
name: [
{ required: true, message: "商品名称不能为空", trigger: "blur" }
],
categoryName: [
{ required: true, message: "商品分类不能为空", trigger: "blur" }
],
formStore: [
{ required: true, message: "采购商家不能为空", trigger: "blur" }
],
image: [
{ required: true, message: "商品图片不能为空", trigger: "blur" }
],
content: [
{ required: true, message: "商品介绍不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList()
},
methods: {
getList(){
getListApi(this.queryParams).then(res=>{
this.tableData = res.data.records;
this.total = res.data.total
})
},
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
//
this.submitDeviceInfo();
} else {
//
return false;
}
});
},
submitDeviceInfo() {
//
console.log('提交设备信息数据:', this.form);
if (this.form.id) {
updateApi(this.form).then(res=>{
if(res.code === 200) {
this.getList()
this.open = false
}
})
}else {
saveApi(this.form).then(res=>{
if(res.code === 200) {
this.getList()
this.open = false
}
})
}
},
changeStatus(data){
updateApi(data).then(res=>{
if(res.code === 200) {
this.$message({
type: 'success',
message: '修改状态成功!'
});
this.getList()
}
})
},
//
handleUploadSuccessCover(file) {
this.form.productImage = file.data.fileName;
this.form.productImage = file.data.fileName;
},
handleQuery(){
this.getList()
},
resetQuery(){
this.queryParams = {
page: 1,
pageSize: 10,
deviceName:'',
},
this.getList()
},
handleAdd(e) {
this.clean()
this.open = true;
this.title = "新增商品"
},
edit(e) {
this.clean()
this.open = true;
this.title = "修改商品"
this.form = e
},
del(e) {
this.$confirm('此操作将永久删除该商品, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteApi(e.id).then(res=>{
if (res.code == 200) {
this.$message({
type: 'success',
message: '删除成功!'
});
this.getList()
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
});
},
clean() {
this.form= {
id: null, // id
bannerName: '', // Banner
productImage: '', //
systemPosition: '', //
sortOrder: null, //
bannerLink: '', // Banner
bannerStatus: false, // Banner
note: '', //
createByName: '', //
}
},
}
};
</script>
<style lang="scss" scoped>
.common-dialog >>> .el-upload--picture-card {
width: 60px;
height: 50px;
line-height: 60px;
}
.d-dialog >>> .el-upload--picture-card {
width: 100px;
height: 100px;
line-height: 100px;
}
.d-dialog >>> .avatar-uploader .el-upload {
width: 100px;
height: 100px;
}
.d-dialog >>> .el-upload-list--picture-card .el-upload-list__item {
width: 100px;
height: 100px;
}
.list-img{
width: 98px;
height: 98px;
}
</style>

View File

@ -0,0 +1,105 @@
package com.fuint.business.setting.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fuint.business.setting.entity.HardwareStore;
import com.fuint.business.setting.service.HardwareStoreService;
import com.fuint.common.dto.AccountInfo;
import com.fuint.common.util.StringUtils;
import com.fuint.common.util.TokenUtil;
import com.fuint.framework.web.BaseController;
import com.fuint.framework.web.ResponseObject;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.Serializable;
import java.util.List;
/**
* 硬件商城(HardwareStore)表控制层
*
* @author makejava
* @since 2024-07-18 17:30:38
*/
@RestController
@RequestMapping("hardwareStore")
public class HardwareStoreController extends BaseController {
/**
* 服务对象
*/
@Resource
private HardwareStoreService hardwareStoreService;
/**
* 分页查询所有数据
*
* @param page 分页对象
* @param hardwareStore 查询实体
* @return 所有数据
*/
@GetMapping
public ResponseObject selectAll(Page<HardwareStore> page, HardwareStore hardwareStore) {
LambdaQueryWrapper<HardwareStore> hardwareStoreQueryWrapper = new LambdaQueryWrapper();
if (!StringUtils.isEmpty(hardwareStore.getName())){
hardwareStoreQueryWrapper.like(HardwareStore::getName,hardwareStore.getName());
}
if (!StringUtils.isEmpty(hardwareStore.getStatus())){
hardwareStoreQueryWrapper.eq(HardwareStore::getStatus,hardwareStore.getStatus());
}
if (!StringUtils.isEmpty(hardwareStore.getCategoryName())){
hardwareStoreQueryWrapper.eq(HardwareStore::getCategoryName,hardwareStore.getCategoryName());
}
return getSuccessResult(this.hardwareStoreService.page(page, hardwareStoreQueryWrapper));
}
/**
* 通过主键查询单条数据
*
* @param id 主键
* @return 单条数据
*/
@GetMapping("{id}")
public ResponseObject selectOne(@PathVariable Serializable id) {
return getSuccessResult(this.hardwareStoreService.getById(id));
}
/**
* 新增数据
*
* @param hardwareStore 实体对象
* @return 新增结果
*/
@PostMapping
public ResponseObject insert(@RequestBody HardwareStore hardwareStore) {
//获取当前登录用户
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
hardwareStore.setCreateName(nowAccountInfo.getRealName());
return getSuccessResult(this.hardwareStoreService.save(hardwareStore));
}
/**
* 修改数据
*
* @param hardwareStore 实体对象
* @return 修改结果
*/
@PutMapping
public ResponseObject update(@RequestBody HardwareStore hardwareStore) {
return getSuccessResult(this.hardwareStoreService.updateById(hardwareStore));
}
/**
* 删除数据
*
* @param idList 主键结合
* @return 删除结果
*/
@DeleteMapping
public ResponseObject delete(@RequestParam("idList") List<Long> idList) {
return getSuccessResult(this.hardwareStoreService.removeByIds(idList));
}
}

View File

@ -0,0 +1,88 @@
package com.fuint.business.setting.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fuint.business.setting.entity.MessageTemplate;
import com.fuint.business.setting.service.MessageTemplateService;
import com.fuint.framework.web.BaseController;
import com.fuint.framework.web.ResponseObject;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.Serializable;
import java.util.List;
/**
* (MessageTemplate)表控制层
*
* @author makejava
* @since 2024-07-18 14:58:50
*/
@RestController
@RequestMapping("messageTemplate")
public class MessageTemplateController extends BaseController {
/**
* 服务对象
*/
@Resource
private MessageTemplateService messageTemplateService;
/**
* 分页查询所有数据
*
* @param page 分页对象
* @param messageTemplate 查询实体
* @return 所有数据
*/
@GetMapping
public ResponseObject selectAll(Page<MessageTemplate> page, MessageTemplate messageTemplate) {
return getSuccessResult(this.messageTemplateService.page(page, new QueryWrapper<>(messageTemplate)));
}
/**
* 通过主键查询单条数据
*
* @param id 主键
* @return 单条数据
*/
@GetMapping("{id}")
public ResponseObject selectOne(@PathVariable Serializable id) {
return getSuccessResult(this.messageTemplateService.getById(id));
}
/**
* 新增数据
*
* @param messageTemplate 实体对象
* @return 新增结果
*/
@PostMapping
public ResponseObject insert(@RequestBody MessageTemplate messageTemplate) {
return getSuccessResult(this.messageTemplateService.save(messageTemplate));
}
/**
* 修改数据
*
* @param messageTemplate 实体对象
* @return 修改结果
*/
@PutMapping
public ResponseObject update(@RequestBody MessageTemplate messageTemplate) {
return getSuccessResult(this.messageTemplateService.updateById(messageTemplate));
}
/**
* 删除数据
*
* @param idList 主键结合
* @return 删除结果
*/
@DeleteMapping
public ResponseObject delete(@RequestParam("idList") List<Long> idList) {
return getSuccessResult(this.messageTemplateService.removeByIds(idList));
}
}

View File

@ -0,0 +1,88 @@
package com.fuint.business.setting.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fuint.business.setting.entity.SysLog;
import com.fuint.business.setting.service.SysLogService;
import com.fuint.framework.web.BaseController;
import com.fuint.framework.web.ResponseObject;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.Serializable;
import java.util.List;
/**
* (SysLog)表控制层
*
* @author makejava
* @since 2024-07-18 15:37:16
*/
@RestController
@RequestMapping("sysLog")
public class SysLogController extends BaseController {
/**
* 服务对象
*/
@Resource
private SysLogService sysLogService;
/**
* 分页查询所有数据
*
* @param page 分页对象
* @param sysLog 查询实体
* @return 所有数据
*/
@GetMapping
public ResponseObject selectAll(Page<SysLog> page, SysLog sysLog) {
return getSuccessResult(this.sysLogService.page(page, new QueryWrapper<>(sysLog)));
}
/**
* 通过主键查询单条数据
*
* @param id 主键
* @return 单条数据
*/
@GetMapping("{id}")
public ResponseObject selectOne(@PathVariable Serializable id) {
return getSuccessResult(this.sysLogService.getById(id));
}
/**
* 新增数据
*
* @param sysLog 实体对象
* @return 新增结果
*/
@PostMapping
public ResponseObject insert(@RequestBody SysLog sysLog) {
return getSuccessResult(this.sysLogService.save(sysLog));
}
/**
* 修改数据
*
* @param sysLog 实体对象
* @return 修改结果
*/
@PutMapping
public ResponseObject update(@RequestBody SysLog sysLog) {
return getSuccessResult(this.sysLogService.updateById(sysLog));
}
/**
* 删除数据
*
* @param idList 主键结合
* @return 删除结果
*/
@DeleteMapping
public ResponseObject delete(@RequestParam("idList") List<Long> idList) {
return getSuccessResult(this.sysLogService.removeByIds(idList));
}
}

View File

@ -0,0 +1,49 @@
package com.fuint.business.setting.entity;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
/**
* 硬件商城(HardwareStore)表实体类
*
* @author makejava
* @since 2024-07-18 17:30:38
*/
@Data
public class HardwareStore extends Model<HardwareStore> {
@TableId(type = IdType.AUTO)
private Integer id;
//商品名称
private String name;
//分类
private String categoryName;
//图片
private String image;
//采购商家
private String formStore;
//商品介绍
private String content;
//状态0未上架1已上架
private String status;
//创建时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
//创建人
private String createBy;
//更新时间
private Date updateTime;
//更新人
private String updateBy;
//创建人名称
private String createName;
}

View File

@ -0,0 +1,41 @@
package com.fuint.business.setting.entity;
import java.util.Date;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import java.io.Serializable;
/**
* (MessageTemplate)表实体类
*
* @author makejava
* @since 2024-07-18 14:58:56
*/
@Data
public class MessageTemplate extends Model<MessageTemplate> {
//主键
private Integer id;
//短信名称
private String name;
//短信内容
private String content;
//适用范围
private String deptIds;
//适用角色
private String roleIds;
//状态0停用1启用
private String status;
//创建者名称
private String createName;
//创建时间
private Date createTime;
//创建人
private String createBy;
//更新时间
private Date updateTime;
//更新人
private String updateBy;
}

View File

@ -0,0 +1,147 @@
package com.fuint.business.setting.entity;
import java.util.Date;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
/**
* (SysLog)表实体类
*
* @author makejava
* @since 2024-07-18 15:37:16
*/
@SuppressWarnings("serial")
public class SysLog extends Model<SysLog> {
private Integer id;
//ip地址
private String ipAddr;
//操作内容
private String content;
//操作模块
private String moudle;
//1中台端2油站端
private String systemName;
//机构名称
private String deptName;
//登录账户
private String createAccount;
//创建人名称
private String createName;
//创建时间
private Date createTime;
//创建人
private String createBy;
//更新时间
private Date updateTime;
//更新人
private String updateBy;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getIpAddr() {
return ipAddr;
}
public void setIpAddr(String ipAddr) {
this.ipAddr = ipAddr;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getMoudle() {
return moudle;
}
public void setMoudle(String moudle) {
this.moudle = moudle;
}
public String getSystemName() {
return systemName;
}
public void setSystemName(String systemName) {
this.systemName = systemName;
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
public String getCreateAccount() {
return createAccount;
}
public void setCreateAccount(String createAccount) {
this.createAccount = createAccount;
}
public String getCreateName() {
return createName;
}
public void setCreateName(String createName) {
this.createName = createName;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public String getCreateBy() {
return createBy;
}
public void setCreateBy(String createBy) {
this.createBy = createBy;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getUpdateBy() {
return updateBy;
}
public void setUpdateBy(String updateBy) {
this.updateBy = updateBy;
}
/**
* 获取主键值
*
* @return 主键值
*/
@Override
protected Serializable pkVal() {
return this.id;
}
}

View File

@ -0,0 +1,17 @@
package com.fuint.business.setting.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.fuint.business.setting.entity.HardwareStore;
import org.mapstruct.Mapper;
/**
* 硬件商城(HardwareStore)表数据库访问层
*
* @author makejava
* @since 2024-07-18 17:30:38
*/
@Mapper
public interface HardwareStoreMapper extends BaseMapper<HardwareStore> {
}

View File

@ -0,0 +1,17 @@
package com.fuint.business.setting.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.fuint.business.setting.entity.MessageTemplate;
import org.mapstruct.Mapper;
/**
* (MessageTemplate)表数据库访问层
*
* @author makejava
* @since 2024-07-18 14:58:51
*/
@Mapper
public interface MessageTemplateMapper extends BaseMapper<MessageTemplate> {
}

View File

@ -0,0 +1,17 @@
package com.fuint.business.setting.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.fuint.business.setting.entity.SysLog;
import org.mapstruct.Mapper;
/**
* (SysLog)表数据库访问层
*
* @author makejava
* @since 2024-07-18 15:37:16
*/
@Mapper
public interface SysLogMapper extends BaseMapper<SysLog> {
//插入数据库日志
}

View File

@ -0,0 +1,15 @@
package com.fuint.business.setting.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fuint.business.setting.entity.HardwareStore;
/**
* 硬件商城(HardwareStore)表服务接口
*
* @author makejava
* @since 2024-07-18 17:30:39
*/
public interface HardwareStoreService extends IService<HardwareStore> {
}

View File

@ -0,0 +1,15 @@
package com.fuint.business.setting.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fuint.business.setting.entity.MessageTemplate;
/**
* (MessageTemplate)表服务接口
*
* @author makejava
* @since 2024-07-18 14:58:57
*/
public interface MessageTemplateService extends IService<MessageTemplate> {
}

View File

@ -0,0 +1,15 @@
package com.fuint.business.setting.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fuint.business.setting.entity.SysLog;
/**
* (SysLog)表服务接口
*
* @author makejava
* @since 2024-07-18 15:37:16
*/
public interface SysLogService extends IService<SysLog> {
}

View File

@ -0,0 +1,19 @@
package com.fuint.business.setting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fuint.business.setting.mapper.HardwareStoreMapper;
import com.fuint.business.setting.entity.HardwareStore;
import com.fuint.business.setting.service.HardwareStoreService;
import org.springframework.stereotype.Service;
/**
* 硬件商城(HardwareStore)表服务实现类
*
* @author makejava
* @since 2024-07-18 17:30:39
*/
@Service("hardwareStoreService")
public class HardwareStoreServiceImpl extends ServiceImpl<HardwareStoreMapper, HardwareStore> implements HardwareStoreService {
}

View File

@ -0,0 +1,19 @@
package com.fuint.business.setting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fuint.business.setting.mapper.MessageTemplateMapper;
import com.fuint.business.setting.entity.MessageTemplate;
import com.fuint.business.setting.service.MessageTemplateService;
import org.springframework.stereotype.Service;
/**
* (MessageTemplate)表服务实现类
*
* @author makejava
* @since 2024-07-18 14:58:57
*/
@Service("messageTemplateService")
public class MessageTemplateServiceImpl extends ServiceImpl<MessageTemplateMapper, MessageTemplate> implements MessageTemplateService {
}

View File

@ -0,0 +1,19 @@
package com.fuint.business.setting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fuint.business.setting.mapper.SysLogMapper;
import com.fuint.business.setting.entity.SysLog;
import com.fuint.business.setting.service.SysLogService;
import org.springframework.stereotype.Service;
/**
* (SysLog)表服务实现类
*
* @author makejava
* @since 2024-07-18 15:37:16
*/
@Service("sysLogService")
public class SysLogServiceImpl extends ServiceImpl<SysLogMapper, SysLog> implements SysLogService {
}

View File

@ -43,7 +43,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectDictDataByType" resultMap="SysDictDataResult"> <select id="selectDictDataByType" resultMap="SysDictDataResult">
<include refid="selectDictDataVo"/> <include refid="selectDictDataVo"/>
where status = 'qy' and dict_type = #{dictType} order by dict_sort asc where dict_type = #{dictType} order by dict_sort asc
</select> </select>
<select id="selectDictLabel" resultType="String"> <select id="selectDictLabel" resultType="String">

View File

@ -3,7 +3,7 @@ server.port=8081
env.profile=dev env.profile=dev
#env.properties.path=D:/workspaces/oilSystem/fuintBackend/configure/ #env.properties.path=D:/workspaces/oilSystem/fuintBackend/configure/
env.properties.path=D:/code/oilSystem/fuintBackend/configure/ env.properties.path=F:/work/oilSystem/fuintBackend/configure/
#env.properties.path=D:/oil/new-oil/oilSystem/fuintBackend/configure/ #env.properties.path=D:/oil/new-oil/oilSystem/fuintBackend/configure/

View File

@ -227,7 +227,7 @@
<version>1.4.19</version> <version>1.4.19</version>
</dependency> </dependency>
<!-- mvn install:install-file -DgroupId=yly_sdk -DartifactId=yly_sdk -Dversion=2.2 -Dpackaging=jar -Dfile=D:\office\proj\oilSystem\fuintBackend\lib\yly_sdk_2.2.jar--> <!-- mvn install:install-file -DgroupId=yly_sdk -DartifactId=yly_sdk -Dversion=2.2 -Dpackaging=jar -Dfile=F:\work\oilSystem\fuintBackend\lib\yly_sdk_2.2.jar-->
<dependency> <dependency>
<groupId>yly_sdk</groupId> <groupId>yly_sdk</groupId>