Skip to content

Commit 961854f

Browse files
3.1.2,项目名称bugfix
1 parent 02fadb5 commit 961854f

File tree

5 files changed

+17
-9
lines changed

5 files changed

+17
-9
lines changed

gradle.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
kotlin_version=1.3.61
2-
pluginVersion=3.1.1
2+
pluginVersion=3.1.2
33
#每次修改这里去打包
4-
ideaVersionPrefix=191
4+
ideaVersionPrefix=193
55
ideaVersion=

src/main/java/com/ruiyu/beanfactory/FlutterBeanFactoryAction.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class FlutterBeanFactoryAction : AnAction() {
2424
companion object {
2525

2626
fun generateAllFile(project: Project) {
27+
val pubSpecConfig = FileHelpers.getPubSpecConfig(project)
2728
val allClass = FileHelpers.getAllEntityFiles(project)
2829
//重新生成所有helper类
2930
FileHelpers.generateAllDartEntityHelper(project, allClass)
@@ -33,9 +34,9 @@ class FlutterBeanFactoryAction : AnAction() {
3334
content.append("// This file is automatically generated. DO NOT EDIT, all your changes would be lost.\n")
3435
//导包
3536
allClass.forEach {
36-
content.append("import 'package:${project.name}/${it.second.substringAfter("${project.name}/")}")
37+
content.append("import 'package:${pubSpecConfig?.name}/${it.second.substringAfter("${pubSpecConfig?.name}/")}")
3738
content.append("\n")
38-
content.append("import 'package:${project.name}/generated/json/${File(it.second).nameWithoutExtension}_helper.dart';")
39+
content.append("import 'package:${pubSpecConfig?.name}/generated/json/${File(it.second).nameWithoutExtension}_helper.dart';")
3940
content.append("\n")
4041
}
4142
content.append("\n")

src/main/java/com/ruiyu/file/FileHelpers.kt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,13 @@ object FileHelpers {
9797
* 自动生成单个文件的辅助文件
9898
*/
9999
private fun generateDartEntityHelper(project: Project, packageName: String, helperClassGeneratorInfos: MutableList<HelperClassGeneratorInfo>?) {
100-
100+
val pubSpecConfig = getPubSpecConfig(project)
101101
val content = StringBuilder()
102102
//导包
103103
//辅助主类的包名
104104
content.append(packageName)
105105
content.append("\n")
106-
content.append("import 'package:${project.name}/generated/json/base/json_filed.dart';")
106+
content.append("import 'package:${pubSpecConfig?.name}/generated/json/base/json_filed.dart';")
107107
content.append("\n")
108108
content.append(helperClassGeneratorInfos?.joinToString("\n"))
109109
//创建文件
@@ -125,6 +125,7 @@ object FileHelpers {
125125
* 获取所有符合生成的file
126126
*/
127127
fun getAllEntityFiles(project: Project): List<Pair<MutableList<HelperClassGeneratorInfo>, String>> {
128+
val pubSpecConfig = getPubSpecConfig(project)
128129
val psiManager = PsiManager.getInstance(project)
129130
return FilenameIndex.getAllFilesByExt(project, "dart").filter {
130131
it.path.endsWith("_${ServiceManager.getService(Settings::class.java).state.modelSuffix.toLowerCase()}.dart") && it.path.contains("${project.name}/lib/")
@@ -136,7 +137,7 @@ object FileHelpers {
136137
if (dartFileHelperClassGeneratorInfo == null) {
137138
null
138139
} else {
139-
dartFileHelperClassGeneratorInfo to "import 'package:${project.name}/${packageName}';"
140+
dartFileHelperClassGeneratorInfo to "import 'package:${pubSpecConfig?.name}/${packageName}';"
140141
}
141142

142143
}
@@ -307,13 +308,16 @@ fun PsiFileSystemItem.getParentLibEnd(): String {
307308

308309

309310
private const val PUBSPEC_KEY = "flutter_i18n"
311+
private const val PROJECT_NAME = "name"
310312
private const val PUBSPEC_ENABLE_PLUGIN_KEY = "enable-flutter-i18n"
311313
private const val PUBSPEC_DART_ENABLED_KEY = "enable-for-dart"
312314

313315
data class PubSpecConfig(
314316
val project: Project,
315317
val pubRoot: PubRoot,
316318
val map: Map<String, Any>,
319+
//项目名称,导包需要
320+
val name: String = map[PROJECT_NAME]?.toString() ?: "",
317321
val i18nMap: Map<*, *>? = map[PUBSPEC_KEY] as? Map<*, *>,
318322
val isFlutterModule: Boolean = FlutterModuleUtils.hasFlutterModule(project),
319323
val isPluginConfigured: Boolean = i18nMap != null,

src/main/java/com/ruiyu/jsontodart/ModelGenerator.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package com.ruiyu.jsontodart
33
import com.google.gson.GsonBuilder
44
import com.google.gson.reflect.TypeToken
55
import com.intellij.openapi.project.Project
6+
import com.ruiyu.file.FileHelpers
67
import com.ruiyu.json.GsonUtil.MapTypeAdapter
78
import com.ruiyu.utils.Inflector
89
import com.ruiyu.utils.JsonUtils
@@ -75,11 +76,12 @@ class ModelGenerator(
7576
val jsonRawData = gson.fromJson<Map<String, Any>>(collectInfo.userInputJson, object : TypeToken<Map<String, Any>>() {}.type)
7677
// val jsonRawData = gson.fromJson<Map<String, Any>>(collectInfo.userInputJson, HashMap::class.java)
7778
JsonUtils.jsonMapMCompletion(jsonRawData)
79+
val pubSpecConfig = FileHelpers.getPubSpecConfig(project)
7880
val stringBuilder = StringBuilder()
7981
//导包
80-
stringBuilder.append("import 'package:${project.name}/generated/json/base/json_convert_content.dart';")
82+
stringBuilder.append("import 'package:${pubSpecConfig?.name}/generated/json/base/json_convert_content.dart';")
8183
stringBuilder.append("\n")
82-
stringBuilder.append("import 'package:${project.name}/generated/json/base/json_filed.dart';")
84+
stringBuilder.append("import 'package:${pubSpecConfig?.name}/generated/json/base/json_filed.dart';")
8385
stringBuilder.append("\n\n")
8486
stringBuilder.append(generateClassDefinition(collectInfo.firstClassName(), "", jsonRawData).joinToString("\n"))
8587
//生成helper类

src/main/resources/META-INF/plugin.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
<br>If you need generic conversions in your network requests, use the jsonconvert.fromjsonast method directly.</br>
1111
]]></description>
1212
<change-notes><![CDATA[
13+
<br>Solve the guide package project name problem</br>
1314
<br>Version 3.1 has been released,Provide JsonConvert.dart,EntityFactory is deprecated</br>
1415
<br>fixed error occurred when try casting null to List<String></br>
1516
<br>fixed new file bug</br>

0 commit comments

Comments
 (0)