enilu / web-flash Goto Github PK
View Code? Open in Web Editor NEWweb-flash -- Admin Framework and Mobile Website Based on Spring Boot and Vue.js
Home Page: http://webflash.enilu.cn
License: MIT License
web-flash -- Admin Framework and Mobile Website Based on Spring Boot and Vue.js
Home Page: http://webflash.enilu.cn
License: MIT License
封装baseService
个人资料页包含三个标签页:个人信息,最近活动,修改密码
//排序字段名称 String sortName = queryMap.get("sort").toString(); //asc或desc(升序或降序) String order = queryMap.get("order").toString(); if (StringUtil.isEmpty(sortName)) { Page<T> page = new Page<>((offset / limit + 1), limit); return page; } else { Page<T> page = new Page<>((offset / limit + 1), limit, sortName); if (Order.ASC.getDes().equals(order)) { // Sort sort = Sort.by(Sort.Direction.ASC, order); Sort sort = Sort.by(Sort.Direction.ASC, sortName); page.setSort(sort); } else { Sort sort = Sort.by(Sort.Direction.DESC, sortName); page.setSort(sort); } return page; }
按注释的意思 sort代表按照哪个字段排序
order 是控制 升降序
但是在 Sort.by的时候却把 order 放在了排序字段的位置,这就导致
No property 属性名 found for type 类名 的错误.
我上面把原来的代码注释了, 设置成sortName以后程序可以正常跑了
为避免无效问题和冗余问题,提问前请确认
1.你确定Google不能解决你的问题
google搜索都是web-flash的在线介绍文档
2.你确定已有issue不能解决你的问题
现有issue没有这个问题
3.你确定本项目readme和在线文档不能解决你的问题
在线文档解释说让运行install打包,尝试没有效果
4.请按照如下格式提问问题
描述你遇到的问题
按照文档说明步骤运行代码生成插件无法生成代码,测试用的是项目自带的Girl实体类
PS:另外通过反编译发现代码生成插件的内部生成类的包路径是写死的,希望可以开放能够配置
如何重现问题
1.首先发现用IDEA插件商店安装的插件无法弹出web-flash mvc,故选用了项目中的插件jar包安装;
2.安装后install全工程成功;
3.选择Girl类,alt+Ins弹出web-flash mvc,默认点ok,代码无法生成;
4.本人IDEA版本是2020.1.2,初步怀疑是不是版本问题?
期待修复的效果
1.代码生成插件能够正常生成代码
2.如果可以,不知道是否能够开源插件的代码,能够让大家一起学习,如果不便,不强求
如有必要,可以截图说明
版本说明
最新master分支
使用java.util.Base64 代替
WARNING Compiled with 1 warnings 11:30:50 AM
warning in ./src/icons/svgo.yml
Module parse failed: Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
replace default config
| # 基于svgo对svg文件进行压缩:https://panjiachen.github.io/vue-element-admin-site/zh/feature/script/svgo.html
| # multipass: true
@ ./src sync ^./.*$
@ ./src/utils/route.js
@ ./src/store/modules/menu.js
@ ./src/store/index.js
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://10.219.40.21:9528/sockjs-node (webpack)/hot/dev-server.js ./src/main.js
这里提示这个,但是目前不影响使用。。。百度没找到解决方案
这里的消息中心指的是发送短信和邮件功能
为避免无效问题和冗余问题,提问前请确认
1.你确定Google不能解决你的问题
2.你确定已有issue不能解决你的问题
3.你确定本项目readme和在线文档不能解决你的问题
4.请按照如下格式提问问题
描述你遇到的问题
简洁有效的说明
如何重现问题
把你遇到问题发生的步骤替换掉下面的内容
1.Go to...
2.Click on ...
3,See error
期待修复的效果
简单描述
如有必要,可以截图说明
版本说明,如果不说明默认为最新master分支
我在测试使用cms的文章编辑功能的时候, 发现编辑器不能根据系统动态切换语言, 我看到public目录tinymec下是有中文语言包的, src/views/cms/article/edit.js里也是有根据语言切换的, 说明是语言切换出了问题, 果然打开控制台切换语言发现vuex报错了, 去官方vue-admin-template找到vuex切换语言是不报错的, 排查了下是因为src/store/modules/app.js的actions少了setLanguage方法
然后src/components/LangSelect/index.vue文件的this.$store.dispatch('setLanguage', lang)改为this.$store.dispatch('app/setLanguage', lang)
在测试AccountController的info接口的时候,发现User user = userService.get(idUser);每次都查询数据库,,不走缓存, 但是其它的service的缓存是正常走缓存的, 我尝试将缓存框架切换到redis发现userService的查询结果也没有成功存到redis,想起之前看到的一篇技术文章,说shiro的UserRealm依赖的service的事务注解会失效,所以猜想也是它导致缓存注解失效,我刚好记得解决方案是让UserRealm的service懒加载,即同时使用@Autowired + @lazy注解,问题成功解决。
参考博客:https://blog.csdn.net/elonpage/article/details/78965176
权限分配仅实现了前端页面的路由,后端的接口并没有做权限区分。
如:admin权限的【登录日志】http://47.104.84.62:8080/api/loginLog/list?page=1&limit=20
使用admin的cookie可以正常访问,使用developer的cookie也可以正常访问。
隐患比较大~
建议集成上接口权限的管理。
1,先在oracle创建表空间,表结构
2,通过PLSQL工具导入数据
3,替换数据库驱动依赖,这个比较简单,百度一下就知道如何用maven引入oracle.jar包
启动成功,正常运行.
但是有一堆报错..目前读取数据是正常的.
我在替换oracle的过程 ,外键关联\索引都去掉了
是因为这个原因报错么?
大家方便的话将使用该项目的按理在这个issue里回复下,我会手动整理到使用者列表,鼓励更多的人用这个项目
另外项目基于MIT协议,随便用,不需要授权
回复格式:
项目名:比如,XX管理系统
公司名:公司名或者团队名称(不方便的可以不写)
项目地址:(不方便的可以不写)
分支:develop
这个菜单没有多级目录呀, 前端是 vue-element-admin 的 ,后台是 guns 的?
搜索了全局,只发现一个自定义的ShiroUser对象
提取常用的dao层方法封装在BaseRepository中
如果打包API项目的话会提示 访问不了core包
我在core包下面加入了一个包
如果整体打包的项目的话提示标题的错误。
请问应该怎么打包?
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:824)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:773)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:412)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:704)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:411)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
1.项目运行后,正常登录、登出、登录失败均无日志记录。
package cn.enilu.flash.service.system;
import cn.enilu.flash.bean.entity.system.LoginLog;
import cn.enilu.flash.cache.ConfigCache;
import cn.enilu.flash.dao.system.LoginLogRepository;
import cn.enilu.flash.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
}
2.api运行报错
org.quartz.JobExecutionException: org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field 'id' cannot be found on null
at cn.enilu.flash.service.task.BaseJob.execute(BaseJob.java:20)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field 'id' cannot be found on null
at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:213)
at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:104)
at org.springframework.expression.spel.ast.PropertyOrFieldReference.access$000(PropertyOrFieldReference.java:51)
at org.springframework.expression.spel.ast.PropertyOrFieldReference$AccessorLValue.getValue(PropertyOrFieldReference.java:406)
at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:90)
at org.springframework.expression.spel.ast.OpPlus.getValueInternal(OpPlus.java:85)
1、我看楼主项目里面自定义异常类型,遇到异常都会抛出ApplicationException类型的异常,但是出现这类异常后,并不会再t_sys_operation_log表中记录异常,这算是正常吗?
2、文档此处有说明了异常处理类:GlobalExceptionHandler,但是我没在项目里找到?
warning in ./src/views/layout/components/Sidebar/Link.vue?vue&type=script&lang=js&
"export 'isExternal' was not found in '@/utils'
一级菜单点击后就剩一个列表页面,三级菜单点击后多了一层菜单页面,这个怎么解决呢
当前我们在Controller class中的定义是这样:
@RequestMapping(method = RequestMethod.DELETE)
public Object remove(Long id){
在swagger-ui中,测试该api时候,如果 我们在value中输入:
{id:1}
然后点击"Try it out"按钮。
这时候在Controller class中得到的id是null
C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin>npm run build --report
> [email protected] build C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin
> node build/build.js
- building for undefined...C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\script-ext-html-webpack-plugin\lib\plugin.js:50
compilation.hooks.htmlWebpackPluginAlterAssetTags.tap(PLUGIN, alterAssetTags);
^
TypeError: Cannot read property 'tap' of undefined
at ScriptExtHtmlWebpackPlugin.compilationCallback (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\script-ext-html-webpack-plugin\lib\plugin.js:50:57)
at SyncHook.eval [as call] (eval at create (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\HookCodeFactory.js:19:10), <anonymous>:11:1)
at SyncHook.lazyCompileHook (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\Hook.js:154:20)
at Compiler.newCompilation (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:504:26)
at hooks.beforeCompile.callAsync.err (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:540:29)
at AsyncSeriesHook.eval [as callAsync] (eval at create (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\HookCodeFactory.js:33:10), <anonymous>:6:1)
at AsyncSeriesHook.lazyCompileHook (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\Hook.js:154:20)
at Compiler.compile (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:535:28)
at readRecords.err (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:274:11)
at Compiler.readRecords (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:402:11)
at hooks.run.callAsync.err (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:271:10)
at AsyncSeriesHook.eval [as callAsync] (eval at create (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\HookCodeFactory.js:33:10), <anonymous>:6:1)
at AsyncSeriesHook.lazyCompileHook (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\Hook.js:154:20)
at hooks.beforeRun.callAsync.err (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\webpack\lib\Compiler.js:268:19)
at AsyncSeriesHook.eval [as callAsync] (eval at create (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\HookCodeFactory.js:33:10), <anonymous>:15:1)
at AsyncSeriesHook.lazyCompileHook (C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\tapable\lib\Hook.js:154:20)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] build: `node build/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Mr.Guo\AppData\Roaming\npm-cache\_logs\2019-08-13T10_48_14_380Z-debug.log
日志文件
0 info it worked if it ends with ok
1 verbose cli [ 'D:\\Program Files\\nodejs\\node.exe',
1 verbose cli 'D:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli 'run',
1 verbose cli 'build',
1 verbose cli '--report' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'prebuild', 'build', 'postbuild' ]
5 info lifecycle [email protected]~prebuild: [email protected]
6 info lifecycle [email protected]~build: [email protected]
7 verbose lifecycle [email protected]~build: unsafe-perm in lifecycle true
8 verbose lifecycle [email protected]~build: PATH: D:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin\node_modules\.bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;D:\jdk8\bin;D:\msys2\home\Mr.Guo\openssl-1.0.2q\dist\bin;D:\msys64\mingw32\bin;C:\Program Files\CMake\bin;C:\Program Files\Git\cmd;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;D:\TDM\bin;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;D:\matlab\runtime\win64;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;D:\matlab\bin;D:\matlab\polyspace\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\swipl\bin;D:\apache-maven-3.6.1\bin;D:\Program Files\nodejs\;C:\Program Files\dotnet\;D:\redis\;C:\ProgramData\Oracle\Java\javapath;D:\anaconda;D:\anaconda\Library\mingw-w64\bin;D:\anaconda\Library\usr\bin;D:\anaconda\Library\bin;D:\anaconda\Scripts;C:\Program Files\MySQL\MySQL Shell 8.0\bin\;D:\IntelliJ IDEA 2019.1.2\bin;D:\VS Code\bin;C:\Users\Mr.Guo\AppData\Local\GitHubDesktop\bin;D:\Fiddler;C:\Users\Mr.Guo\AppData\Roaming\npm;D:\WebStorm 2019.2\bin;
9 verbose lifecycle [email protected]~build: CWD: C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin
10 silly lifecycle [email protected]~build: Args: [ '/d /s /c', 'node build/build.js' ]
11 silly lifecycle [email protected]~build: Returned: code: 1 signal: null
12 info lifecycle [email protected]~build: Failed to exec build script
13 verbose stack Error: [email protected] build: `node build/build.js`
13 verbose stack Exit status 1
13 verbose stack at EventEmitter.<anonymous> (D:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\index.js:301:16)
13 verbose stack at EventEmitter.emit (events.js:198:13)
13 verbose stack at ChildProcess.<anonymous> (D:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack at ChildProcess.emit (events.js:198:13)
13 verbose stack at maybeClose (internal/child_process.js:982:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid [email protected]
15 verbose cwd C:\Users\Mr.Guo\Documents\GitHub\web-flash-master\flash-vue-admin
16 verbose Windows_NT 10.0.17763
17 verbose argv "D:\\Program Files\\nodejs\\node.exe" "D:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "build" "--report"
18 verbose node v10.16.0
19 verbose npm v6.9.0
20 error code ELIFECYCLE
21 error errno 1
22 error [email protected] build: `node build/build.js`
22 error Exit status 1
23 error Failed at the [email protected] build script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
您是否有建议修复此问题,谢谢!
2019-8-10 1:4:2.79 DEBUG [main] Using 95 castor for Castors
Exception in thread "main" java.lang.RuntimeException: folder or file like '^(.+[.])(js|json)$' no found in code/code.json
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.nutz.lang.born.ConstructorBorning.born(ConstructorBorning.java:17)
at org.nutz.lang.born.BornContext.doBorn(BornContext.java:60)
at org.nutz.lang.Mirror.born(Mirror.java:990)
at org.nutz.lang.Lang.makeThrow(Lang.java:149)
at org.nutz.resource.Scans.loadResource(Scans.java:116)
at org.nutz.ioc.loader.json.JsonLoader.(JsonLoader.java:45)
at cn.enilu.flash.code.Generator.main(Generator.java:162)
UserController.java这个类中
第108行:在设置账号角色接口中: if (userId.equals(Const.ADMIN_ID)) { 这行代码判断一直不为true,因为一个是Long 一个是Integer,
ps:楼主加油!
参考 https://blog.csdn.net/liubenlong007/article/details/86139598
我修改了 flash-core 模块 pom.xml
指定lombok版本1.18.4
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.4</version>
<scope>compile</scope>
</dependency>
做下记录,对可能会出现同样问题的人有所帮助,感谢!
[Error] TypeError: Attempted to assign to readonly property.
(anonymous function) (app.js:114840)
./node_modules/webpack-dev-server/client/clients/BaseClient.js (app.js:114856)
webpack_require (app.js:768)
fn (app.js:131)
(anonymous function) (app.js:114955)
./node_modules/webpack-dev-server/client/clients/SockJSClient.js (app.js:115004)
webpack_require (app.js:768)
fn (app.js:131)
./node_modules/webpack-dev-server/client/socket.js (app.js:115387)
webpack_require (app.js:768)
fn (app.js:131)
(anonymous function) (app.js:115023)
./node_modules/webpack-dev-server/client/index.js?http://localhost:9528 (app.js:115192)
webpack_require (app.js:768)
fn (app.js:131)
(anonymous function) (app.js:137143)
webpack_require (app.js:768)
(anonymous function) (app.js:904)
Global Code (app.js:905)
控制按钮权限的显示隐藏权限不完善 不能隐藏权限按钮
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.