|
@@ -350,54 +350,17 @@ public class DcProductServiceImpl implements IDcProductService {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 导入JSON格式的产品信息
|
|
* 导入JSON格式的产品信息
|
|
- * @param context JSON格式字符串
|
|
|
|
- * @return 成功返回1,失败返回对应错误码
|
|
|
|
- * -1: 基本格式不正确
|
|
|
|
- * -2: 缺少必要分隔符
|
|
|
|
- * -3: 括号不匹配
|
|
|
|
- * -4: 错误的分隔符模式
|
|
|
|
- * -5: 缺少必要字段
|
|
|
|
- * -99: 其他异常
|
|
|
|
|
|
+
|
|
*/
|
|
*/
|
|
public int exportJSON(String context) {
|
|
public int exportJSON(String context) {
|
|
try {
|
|
try {
|
|
- // 1. 验证JSON格式
|
|
|
|
- if (!validateJsonFormat(context)) {
|
|
|
|
- return -1;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 2. 验证必要分隔符
|
|
|
|
- if (!validateSeparators(context)) {
|
|
|
|
- return -2;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 3. 验证括号匹配
|
|
|
|
- if (!validateBraces(context)) {
|
|
|
|
- return -3;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 4. 验证分隔符模式
|
|
|
|
- if (!validateSeparatorPattern(context)) {
|
|
|
|
- return -4;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 5. 验证必要字段
|
|
|
|
- if (!validateRequiredFields(context)) {
|
|
|
|
- return -5;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // 格式验证通过,解析并保存产品信息
|
|
|
|
return processAndSaveProduct(context);
|
|
return processAndSaveProduct(context);
|
|
-
|
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
return -99;
|
|
return -99;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean validateJsonFormat(String context) {
|
|
|
|
- return context.startsWith("DDW{") && context.endsWith("},}");
|
|
|
|
- }
|
|
|
|
|
|
|
|
private boolean validateSeparators(String context) {
|
|
private boolean validateSeparators(String context) {
|
|
String[] sections = {"箱体{", "屏幕{", "},投影机{"};
|
|
String[] sections = {"箱体{", "屏幕{", "},投影机{"};
|
|
@@ -415,15 +378,15 @@ public class DcProductServiceImpl implements IDcProductService {
|
|
return leftBraces == rightBraces;
|
|
return leftBraces == rightBraces;
|
|
}
|
|
}
|
|
|
|
|
|
- private boolean validateSeparatorPattern(String context) {
|
|
|
|
- String[] errorPatterns = {"}箱体", "}屏幕", "}投影机"};
|
|
|
|
- for (String pattern : errorPatterns) {
|
|
|
|
- if (context.contains(pattern)) {
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
|
|
+// private boolean validateSeparatorPattern(String context) {
|
|
|
|
+// String[] errorPatterns = {"}箱体", "}屏幕", "}投影机"};
|
|
|
|
+// for (String pattern : errorPatterns) {
|
|
|
|
+// if (context.contains(pattern)) {
|
|
|
|
+// return false;
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// return true;
|
|
|
|
+// }
|
|
|
|
|
|
private boolean validateRequiredFields(String context) {
|
|
private boolean validateRequiredFields(String context) {
|
|
String[] requiredFields = {
|
|
String[] requiredFields = {
|
|
@@ -446,8 +409,11 @@ public class DcProductServiceImpl implements IDcProductService {
|
|
|
|
|
|
// 获取系统信息
|
|
// 获取系统信息
|
|
String sys_name = mapResult.get("sys_name").toString();
|
|
String sys_name = mapResult.get("sys_name").toString();
|
|
- DcSystem dcSystem = dcSystemMapper.selectDcSystemByName(sys_name);
|
|
|
|
|
|
+ // 查询系统信息
|
|
|
|
+ // DcSystem dcSystem = dcSystemMapper.selectDcSystemByName(sys_name);
|
|
|
|
+ DcSystem dcSystem = dcSystemMapper.selectDcSystemBySysNo(sys_name);
|
|
mapResult.put("sys_no", dcSystem.getSysId());
|
|
mapResult.put("sys_no", dcSystem.getSysId());
|
|
|
|
+ // 获取工程信息
|
|
String wk_name = mapResult.get("wk_name").toString();
|
|
String wk_name = mapResult.get("wk_name").toString();
|
|
DcWork dcWork = workMapper.selectWorkByName(wk_name);
|
|
DcWork dcWork = workMapper.selectWorkByName(wk_name);
|
|
mapResult.put("wr_id", dcWork.getWkId());
|
|
mapResult.put("wr_id", dcWork.getWkId());
|