Browse Source

Merge remote-tracking branch 'remotes/origin/master'

master
hehongxing 4 years ago
parent
commit
81382734a3
  1. 4
      04.系统编码/Backend/src/main/java/com/userinformation/backend/controller/UserController.java
  2. 3
      04.系统编码/Backend/src/main/java/com/userinformation/backend/mapper/UserMapper.java
  3. 2
      04.系统编码/Backend/src/main/java/com/userinformation/backend/mapper/provider/UserMapperProvider.java
  4. 8
      04.系统编码/Backend/src/main/java/com/userinformation/backend/service/UserService.java
  5. 13
      04.系统编码/Frontend/.idea/workspace.xml
  6. 3734
      04.系统编码/Frontend/package-lock.json
  7. 98
      04.系统编码/Frontend/src/components/Login.vue
  8. 382
      04.系统编码/Frontend/src/components/SystemManagement.vue
  9. 1
      04.系统编码/Frontend/src/hooks/Config.ts
  10. 3
      04.系统编码/Frontend/src/uilts/axios.ts

4
04.系统编码/Backend/src/main/java/com/userinformation/backend/controller/UserController.java

@ -37,8 +37,8 @@ public class UserController {
} }
@RequestMapping("findUserByUserAccountNumber") @RequestMapping("findUserByUserAccountNumber")
public RequestResult findUserByUserAccountNumber(String userAccountNumber){ public RequestResult findUserByUserAccountNumber(String userName){
return RequestResult.success(userService.findUserByUserAccountNumber(userAccountNumber)); return RequestResult.success(userService.findUserByUserAccountNumber(userName));
} }
@RequestMapping("findUserByUserName") @RequestMapping("findUserByUserName")

3
04.系统编码/Backend/src/main/java/com/userinformation/backend/mapper/UserMapper.java

@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.InsertProvider;
import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.SelectProvider;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
public interface UserMapper extends BaseMapper<User> { public interface UserMapper extends BaseMapper<User> {
@ -14,7 +15,7 @@ public interface UserMapper extends BaseMapper<User> {
User userLogin(String userAccountNumber, String userPassword); User userLogin(String userAccountNumber, String userPassword);
@SelectProvider(type = UserMapperProvider.class, method = "findUserByUserAccountNumber") @SelectProvider(type = UserMapperProvider.class, method = "findUserByUserAccountNumber")
User findUserByUserAccountNumber(String userAccountNumber); List<User> findUserByUserAccountNumber(String userAccountNumber);
@SelectProvider(type = UserMapperProvider.class, method = "findUserByUserName") @SelectProvider(type = UserMapperProvider.class, method = "findUserByUserName")
User findUserByUserName(String userName); User findUserByUserName(String userName);

2
04.系统编码/Backend/src/main/java/com/userinformation/backend/mapper/provider/UserMapperProvider.java

@ -7,7 +7,7 @@ public class UserMapperProvider {
} }
public String findUserByUserAccountNumber(String userAccountNumber){ public String findUserByUserAccountNumber(String userAccountNumber){
return "select * from user where user_account_number = #{userAccountNumber}"; return "select * from user where user_name like '%" + userAccountNumber.trim() + "%' limit 10";
} }
public String findUserByUserName(String userName){ public String findUserByUserName(String userName){

8
04.系统编码/Backend/src/main/java/com/userinformation/backend/service/UserService.java

@ -1,5 +1,6 @@
package com.userinformation.backend.service; package com.userinformation.backend.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -7,6 +8,7 @@ import com.userinformation.backend.mapper.UserMapper;
import com.userinformation.backend.model.dao.User; import com.userinformation.backend.model.dao.User;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@Service @Service
@ -14,7 +16,7 @@ public class UserService extends ServiceImpl<UserMapper, User> {
public User userLogin(String userAccountNumber, String userPassword){return baseMapper.userLogin(userAccountNumber, userPassword);} public User userLogin(String userAccountNumber, String userPassword){return baseMapper.userLogin(userAccountNumber, userPassword);}
public User findUserByUserAccountNumber(String userAccountNumber){return baseMapper.findUserByUserAccountNumber(userAccountNumber);} public List<User> findUserByUserAccountNumber(String userAccountNumber){return baseMapper.findUserByUserAccountNumber(userAccountNumber);}
public User findUserByUserName(String userName){ public User findUserByUserName(String userName){
return baseMapper.findUserByUserName(userName); return baseMapper.findUserByUserName(userName);
@ -24,10 +26,11 @@ public class UserService extends ServiceImpl<UserMapper, User> {
public List<User> findAllUserPage(Integer current, Integer size){ public List<User> findAllUserPage(Integer current, Integer size){
IPage<User> page = new Page<>(current, size); IPage<User> page = new Page<>(current, size);
return baseMapper.selectPage(page, null).getRecords(); return baseMapper.selectPage(page, new QueryWrapper<User>().orderByDesc("user_registration_date")).getRecords();
} }
public int insertUser(User user){ public int insertUser(User user){
user.setUserRegistrationDate(LocalDateTime.now());
return baseMapper.insert(user); return baseMapper.insert(user);
} }
@ -36,6 +39,7 @@ public class UserService extends ServiceImpl<UserMapper, User> {
} }
public int updateUser(User user){ public int updateUser(User user){
user.setUserRegistrationDate(LocalDateTime.now());
return baseMapper.updateById(user); return baseMapper.updateById(user);
} }
} }

13
04.系统编码/Frontend/.idea/workspace.xml

@ -3,11 +3,8 @@
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="4b7d7b72-f5b8-41e4-85d5-6267bdc12fc5" name="默认变更列表" comment=""> <list default="true" id="4b7d7b72-f5b8-41e4-85d5-6267bdc12fc5" name="默认变更列表" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/package-lock.json" beforeDir="false" afterPath="$PROJECT_DIR$/package-lock.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/package.json" beforeDir="false" afterPath="$PROJECT_DIR$/package.json" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/components/Login.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/components/Login.vue" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/components/Login.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/components/Login.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/uilts/axios.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/uilts/axios.ts" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/components/SystemManagement.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/components/SystemManagement.vue" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/uilts/string.ts" beforeDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -72,6 +69,14 @@
<workItem from="1638358323504" duration="523000" /> <workItem from="1638358323504" duration="523000" />
<workItem from="1638407060517" duration="348000" /> <workItem from="1638407060517" duration="348000" />
<workItem from="1638407479402" duration="5596000" /> <workItem from="1638407479402" duration="5596000" />
<workItem from="1638417203483" duration="797000" />
<workItem from="1638419623341" duration="2328000" />
<workItem from="1638423248552" duration="2170000" />
<workItem from="1638425594612" duration="5238000" />
<workItem from="1638430901827" duration="2042000" />
<workItem from="1638433091413" duration="7649000" />
<workItem from="1638440893221" duration="943000" />
<workItem from="1638441956659" duration="5371000" />
</task> </task>
<task id="LOCAL-00001" summary="2021 12 01"> <task id="LOCAL-00001" summary="2021 12 01">
<created>1638357539757</created> <created>1638357539757</created>

3734
04.系统编码/Frontend/package-lock.json

File diff suppressed because it is too large

98
04.系统编码/Frontend/src/components/Login.vue

@ -9,11 +9,11 @@
<el-icon><img src="/images/pen.png"></el-icon> <el-icon><img src="/images/pen.png"></el-icon>
</template> </template>
</el-input> </el-input>
<el-input placeholder="请输入登录密码" type="password" v-model="inputPassword" class="input" > <el-input placeholder="请输入登录密码" type="password" v-model="inputPassword" class="input" >
<template #prefix> <template #prefix>
<el-icon><img src="/images/lock.png"></el-icon> <el-icon><img src="/images/lock.png"></el-icon>
</template> </template>
</el-input> </el-input>
<el-button type="primary" class="btn" @click="onLoginClick">登录</el-button> <el-button type="primary" class="btn" @click="onLoginClick">登录</el-button>
</div> </div>
</div> </div>
@ -22,10 +22,10 @@
<script lang="ts"> <script lang="ts">
import {reactive, toRefs} from "vue"; import {reactive, toRefs} from "vue";
import { setStaff } from "../uilts/storage";
import { post } from "./../uilts/axios"; import { post } from "./../uilts/axios";
import { useRouter } from "vue-router" import { useRouter } from "vue-router"
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
export default { export default {
name: 'Login', name: 'Login',
setup() { setup() {
@ -36,51 +36,39 @@ export default {
}) })
const router = useRouter() const router = useRouter()
const onLoginClick = () => { const staffValidate = ()=> {
post('user/userLogin',{ const errors = [];
userAccountNumber: option.inputName, if (option.inputName == null || option.inputName.trim().length == 0)
userPassword: option.inputPassword errors.push('登录名');
}).then((res:any)=>{ if (option.inputPassword == null || option.inputPassword.trim().length == 0)
console.log(res) errors.push('登录密码');
}) return errors;
// const errors = staffValidate();
// if (errors.length > 0) {
// ElMessage.warning({
// message: '' + errors.join(''),
// type: 'warning'
// })
// } else {
// post('/user/userLogin', {
// userAccountNumber: option.inputName,
// userPassword: option.inputPassword,
// }).then((res: any) => {
// if (res.error == 1) {
// ElMessage.error({
// message: res.message,
// type: 'error'
// });
// } else {
// // setStaff('login_staff', res.data);
// // console.log(res.data)
// router.push({
// path: '/SystemManagement'
// });
// }
// });
// }
} }
// const staffValidate = ()=> {
// const errors = [];
// if (staff.loginName == null || staff.loginName.trim().length == 0)
// errors.push('');
//
// if (staff.loginPassword == null || staff.loginPassword.trim().length == 0)
// errors.push('');
//
// return errors;
// }
const onLoginClick = () => {
const errors = staffValidate();
if (errors.length > 0) {
ElMessage.warning({
message: '请输入' + errors.join('、'),
type: 'warning'
})
}else {
post("user/userLogin",{
userAccountNumber: option.inputName,
userPassword: option.inputPassword
}).then((res :any)=>{
if (res.error !=0){
ElMessage.error({
message: res.message,
type: 'error'
});
}else {
console.log(res)
router.push("/MicrowaveRadiation")
}
})
}
}
return { return {
...toRefs(option), ...toRefs(option),
@ -100,7 +88,7 @@ export default {
border-radius: 10px; border-radius: 10px;
position: relative; position: relative;
left: 50%; left: 50%;
top: 2.55rem; top: 1.55rem;
transform: translateX(-50%); transform: translateX(-50%);
.litterSemicircle { .litterSemicircle {
@ -117,8 +105,6 @@ export default {
} }
.importInput { .importInput {
width: 6.51rem;
height: 6.89rem;
background: #FFFFFF; background: #FFFFFF;
border: 1px solid #707070; border: 1px solid #707070;
opacity: 1; opacity: 1;
@ -154,13 +140,14 @@ export default {
height: 100% !important; height: 100% !important;
position: relative; position: relative;
border: none; border: none;
font-size: 18px; font-size: 0.15rem;
font-weight: 400; font-weight: 400;
line-height: 0.24rem; line-height: 0.24rem;
color: #999999; color: #999999;
padding-left: 0.54rem; padding-left: 0.54rem;
} }
} }
img { img {
width: 0.18rem; width: 0.18rem;
height: 0.1792rem; height: 0.1792rem;
@ -168,13 +155,15 @@ export default {
top: -0.10rem; top: -0.10rem;
left: 0.18rem; left: 0.18rem;
} }
}
} }
}
img { img {
width: 1.5733rem; width: 1.5733rem;
height: 1.5715rem; height: 1.5715rem;
margin-top: .35rem; margin-top: .35rem;
} }
.btn{ .btn{
width: 4.96rem; width: 4.96rem;
height: 0.69rem; height: 0.69rem;
@ -185,4 +174,5 @@ export default {
font-size: 0.22rem; font-size: 0.22rem;
margin-bottom: 1.27rem; margin-bottom: 1.27rem;
} }
</style> </style>

382
04.系统编码/Frontend/src/components/SystemManagement.vue

@ -5,15 +5,9 @@
<div class="container system-container panel"> <div class="container system-container panel">
<div class="box"> <div class="box">
<div class="left"> <div class="left">
<h1>用户名称</h1> <h1>用户姓名</h1>
<input type="text" v-model="state1" class="textInput"/>
<el-autocomplete <div><img src="/images/search.png" @click="onSearch"></div>
v-model="state1"
:fetch-suggestions="querySearch"
class="inline-input"
@select="handleSelect"/>
<img src="/images/search.png" @click="onSearch">
</div> </div>
<div class="right"> <div class="right">
<span @click="onAddClick">添加新用户</span> <span @click="onAddClick">添加新用户</span>
@ -21,13 +15,13 @@
</div> </div>
<div class="tableMessage"> <div class="tableMessage">
<el-table :data="tableData" border style="width: 100%;color: black;height: 539px"> <el-table :data="tableData" border style="color: black;">
<el-table-column prop="date" label="序号" width="176px" align="center"/> <el-table-column type="index" label="序号" align="center" width="100px"/>
<el-table-column prop="name" label="用户名" width="201px" align="center"/> <el-table-column prop="userName" label="用户名" align="center"/>
<el-table-column prop="accountNumber" label="用户账号" width="280px" align="center"/> <el-table-column prop="userAccountNumber" label="用户账号" align="center"/>
<el-table-column prop="phone" label="电话" width="281px" align="center"/> <el-table-column prop="userPhone" label="电话" align="center"/>
<el-table-column prop="emil" label="邮箱" width="280px" align="center"/> <el-table-column prop="userEmail" label="邮箱" align="center"/>
<el-table-column prop="operation" label="操作" width="301px" align="center"> <el-table-column prop="operation" label="操作" align="center">
<template #default="scope"> <template #default="scope">
<div class="operation"> <div class="operation">
<span @click.prevent="onAmendClick(scope.$index, tableData)">修改信息</span> <span @click.prevent="onAmendClick(scope.$index, tableData)">修改信息</span>
@ -35,9 +29,10 @@
<el-popconfirm <el-popconfirm
confirm-button-text="确认" confirm-button-text="确认"
cancel-button-text="取消" cancel-button-text="取消"
@confirm="confirmEvent(scope.$index, tableData)"
title="确认删除?"> title="确认删除?">
<template #reference> <template #reference>
<span>删除用户</span> <span>删除用户</span>
</template> </template>
</el-popconfirm> </el-popconfirm>
</div> </div>
@ -46,35 +41,39 @@
</el-table> </el-table>
<!---分页--> <!---分页-->
<div class="pagination"> <div class="pagination">
<el-pagination background layout="prev, pager, next" :total="total*10"> <el-pagination background
layout="prev, pager, next"
:total="total"
page-size="2"
@prev-click="prev"
@next-click="next"
@current-change="changEnum">
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
</div> </div>
<!--弹出框---> <!--弹出框--->
<el-dialog v-model="dialogFormVisible" :title="title" show-close=false center=true width="961px" top="17%"> <el-dialog v-model="dialogFormVisible" :title="title" show-close=false center=true width="961px" top="17%">
<el-form :model="form"> <el-form :model="form">
<el-form-item label="用户账号:" :label-width="formLabelWidth"> <el-form-item label="用户账号:" :label-width="formLabelWidth" >
<el-input v-model="form.accountNumber" autocomplete="off" style="width: 260px"></el-input> <el-input v-model="form.userAccountNumber" autocomplete="off" style="width: 260px" :disabled="isDisabled"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="用户姓名:" :label-width="formLabelWidth"> <el-form-item label="用户密码:" :label-width="formLabelWidth">
<el-input v-model="form.name" autocomplete="off" style="width: 260px"></el-input> <el-input v-model="form.userPassword" autocomplete="off" style="width: 260px" type="password"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="电话:" :label-width="formLabelWidth"> <el-form-item label="电话:" :label-width="formLabelWidth">
<el-input v-model="form.phone" autocomplete="off" style="width: 260px"></el-input> <el-input v-model="form.userPhone" autocomplete="off" style="width: 260px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="邮箱:" :label-width="formLabelWidth"> <el-form-item label="邮箱:" :label-width="formLabelWidth">
<el-input v-model="form.emil" autocomplete="off" style="width: 260px"></el-input> <el-input v-model="form.userEmail" autocomplete="off" style="width: 260px"></el-input>
</el-form-item>
<el-form-item label="用户姓名:" :label-width="formLabelWidth">
<el-input v-model="form.userName" autocomplete="off" style="width: 260px"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button type="primary" @click="dialogFormVisible = false" style="color:#FFFFFF;">保存</el-button> <el-button type="primary" @click="submit" style="color:#FFFFFF;">保存</el-button>
<el-button @click="dialogFormVisible = false">取消</el-button> <el-button @click="dialogFormVisible = false">取消</el-button>
</span> </span>
</template> </template>
@ -87,193 +86,192 @@
<script lang="ts"> <script lang="ts">
import {reactive, toRefs ,ref , onMounted} from 'vue'; import {reactive, toRefs ,ref , onMounted} from 'vue';
import { deepClone } from "../uilts/deepclone"; import { post } from "../uilts/axios";
import { ElMessage } from 'element-plus'
import { format } from '../hooks/String';
export default { export default {
name: 'SystemManagement', name: 'SystemManagement',
setup() { setup() {
let option = reactive({ let option = reactive({
val:'', state1:'',
dialogFormVisible:false, dialogFormVisible:false,
isDisabled:false,
title:'', title:'',
formLabelWidth:"100px", formLabelWidth:"100px",
total:3, total:"",
current:1,
size:10,
form:{ form:{
name:'', userName:'',
accountNumber:'', userAccountNumber:'',
phone:'', userPhone:'',
emil:'' userEmail:'',
userPassword:''
}, },
tableData:[ tableData:[]
{ })
date: '1', const findAllUser= ()=>{
name: 'Tom', return post("user/findAllUser",{
address: 'No. 189, Grove St, Los Angeles', current:option.current,
accountNumber:'11', size:option.size
phone:'11', }).then((res:any)=>{
emil:'xxxx' option.tableData=res.data
}, })
{ }
date: '2',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'22',
emil:'xxxx'
},
{
date: '3',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'33',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
}, {
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
}, {
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
},
{
date: '4',
name: 'Tom',
address: 'No. 189, Grove St, Los Angeles',
accountNumber:'11',
phone:'44',
emil:'xxxx'
}]
post('user/findUserCount',{
}).then((res :any)=>{
option.total=res.data
findAllUser()
}) })
// //
const onAddClick = ()=> { const onAddClick = ()=> {
option.isDisabled=false
option.title = '添加用户' option.title = '添加用户'
option.dialogFormVisible = true option.dialogFormVisible = true
option.form = {} option.form = {
userName:'',
userAccountNumber:'',
userPhone:'',
userEmail:'',
userPassword:''
}
} }
// //
const onAmendClick = (index, rows)=>{ const onAmendClick = (index, rows)=>{
option.isDisabled = true
option.title = '修改信息' option.title = '修改信息'
option.dialogFormVisible = true option.dialogFormVisible = true
option.form = JSON.parse(JSON.stringify(rows[index])) option.form = JSON.parse(JSON.stringify(rows[index]))
} }
//
const confirmEvent = (index, rows)=>{
console.log(rows[index].userAccountNumber)
post('user/delUser',{
userAccountNumber:rows[index].userAccountNumber
}).then((res:any)=>{
if (res.error != 0){
ElMessage.error({
message: "删除失败",
type: 'error'
});
return;
}else {
findAllUser()
ElMessage.success({
message: "删除成功",
type: 'success'
});
}
})
}
// //
const onSearch = ()=>{ const onSearch = ()=> {
post("user/findUserByUserAccountNumber",{
userName: option.state1
}).then((res:any)=>{
option.tableData=[]
option.tableData = option.tableData.concat(res.data)
console.log(res)
})
}
const prev = (e)=>{
option.current= e
findAllUser()
} }
const restaurants = ref([]) const next = (e)=>{
const querySearch = (queryString: string, cb) => { option.current= e
const results = queryString findAllUser()
? restaurants.value.filter(createFilter(queryString))
: restaurants.value
cb(results)
} }
const createFilter = (queryString) => {
return (restaurant) => { const changEnum =(e)=>{
return ( option.current= e
restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) ===0 findAllUser()
)
}
} }
const loadAll = () => {
return [ const verify = () => {
{ value: 'vue'}, let errors = [];
{ value: 'element'}, if (option.form.userAccountNumber == null || option.form.userAccountNumber.trim() == ""){
{ value: 'cooking'}, errors.push("用户账号");
{ value: 'mint-ui' }, }
{ value: 'vuex' }, if (option.form.userPassword == null || option.form.userPassword.trim() == ""){
{ value: 'vue-router' }, errors.push("用户密码");
{ value: 'babel' }, }
] if (option.form.userName == null || option.form.userName.trim() == ""){
errors.push("用户姓名");
}
// if (option.form.userPhone == null || option.form.userPhone.trim() == ""){
// errors.push("");
// }
if (errors.length > 0){
ElMessage.error({
message: format("{0}不能为空", errors.join(", ")),
type: 'error'
});
}
return errors.length > 0;
} }
const handleSelect = (item) => {
console.log(item) const submit = ()=> {
if (verify()) return;
if(option.title === '修改信息'){
post("user/updateUser", option.form, "application/json").then((res: any) => {
option.dialogFormVisible=false
if (res.error != 0){
ElMessage.error({
message: "修改失败",
type: 'error'
});
return;
}else {
findAllUser()
ElMessage.success({
message: "修改成功",
type: 'success'
});
}
})
}
if(option.title === '添加用户'){
if (verify()) return;
post("user/insertUser",option.form,"application/json").then((res:any)=>{
option.dialogFormVisible = false
if (res.error != 0){
ElMessage.error({
message: "修改失败",
type: 'error'
});
return;
}else {
findAllUser()
ElMessage.success({
message: "修改成功",
type: 'success'
});
}
})
}
} }
onMounted(() => {
restaurants.value = loadAll()
})
return { return {
...toRefs(option), ...toRefs(option),
onAddClick, onAddClick,
onAmendClick, onAmendClick,
onSearch, onSearch,
restaurants, submit,
state1: ref(''), findAllUser,
state2: ref(''), confirmEvent,
querySearch, prev,
createFilter, next,
loadAll, changEnum
handleSelect,
} }
} }
} }
@ -299,20 +297,13 @@ export default {
.left{ .left{
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
position: relative; align-items: center;
&::after { .textInput{
content: ''; width: 305px;
width: 0; height: 35px;
height: 0; line-height: 35px;
display: block; font-size: 20px;
position: absolute;
top: 50%;
right: 70px;
transform: translateY(-50%);
border-left: 0.08rem solid transparent;
border-right: 0.08rem solid transparent;
border-top: 0.08rem solid #222222;
} }
h1{ h1{
@ -329,6 +320,7 @@ export default {
width: 44px; width: 44px;
height: 44px; height: 44px;
margin-left: 10px; margin-left: 10px;
padding-top: 4px;
cursor: pointer; cursor: pointer;
} }
} }
@ -365,7 +357,6 @@ export default {
opacity: 1; opacity: 1;
cursor: pointer; cursor: pointer;
font-weight: 400; font-weight: 400;
} }
} }
@ -383,7 +374,10 @@ export default {
:deep(.el-form){ :deep(.el-form){
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-evenly; justify-content: space-between;
margin: 0 auto;
width: 90%;
//align-content: flex-start;
} }
:deep(.el-button){ :deep(.el-button){

1
04.系统编码/Frontend/src/hooks/Config.ts

@ -7,7 +7,6 @@ export class Config {
export class MicrowaveRadiationConfig { export class MicrowaveRadiationConfig {
private static url: string = Config.parentUrl + "/weibo"; private static url: string = Config.parentUrl + "/weibo";
public static getUrl(station: string, type: string, time: Moment): string { public static getUrl(station: string, type: string, time: Moment): string {
return this.url+ '/' + station + '/' + type + '/' + time.format("YYYY/YYYYMM/YYYYMMDD/YYYYMMDDHHmmss.png"); return this.url+ '/' + station + '/' + type + '/' + time.format("YYYY/YYYYMM/YYYYMMDD/YYYYMMDDHHmmss.png");
} }

3
04.系统编码/Frontend/src/uilts/axios.ts

@ -2,9 +2,10 @@ import * as qs from "qs"
import axios from "axios" import axios from "axios"
import { ElLoading } from 'element-plus' import { ElLoading } from 'element-plus'
let loading = null; let loading = null;
const service = axios.create({ const service = axios.create({
baseURL: 'http://localhost:8001', baseURL:"http://localhost:8001",
timeout: 500000 timeout: 500000
}) })

Loading…
Cancel
Save