diff --git a/pom.xml b/pom.xml
index 6605663..7804504 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,8 +9,8 @@
com.lodop
- dome
- 0.0.1-SNAPSHOT
+ XJ-Lodop
+ 1.0
lodop-dome
Demo project for Spring Boot
diff --git a/src/main/java/com/lodop/dome/Controller/LodopController.java b/src/main/java/com/lodop/dome/Controller/LodopController.java
index 1a92f8d..7421364 100644
--- a/src/main/java/com/lodop/dome/Controller/LodopController.java
+++ b/src/main/java/com/lodop/dome/Controller/LodopController.java
@@ -1,10 +1,10 @@
package com.lodop.dome.Controller;
-import com.lodop.dome.common.utils.R;
+import com.lodop.dome.common.util.R;
import com.lodop.dome.data.ClodopAssemblyDetailData;
import com.lodop.dome.data.ClodopTemplateHeaderData;
-import com.lodop.dome.seriver.ClodopAssemblyService;
-import com.lodop.dome.seriver.ClodopTemplateService;
+import com.lodop.dome.service.ClodopAssemblyService;
+import com.lodop.dome.service.ClodopTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -12,13 +12,12 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
-import java.util.Map;
/**
* @author ZuoWen
* @version 1.0.0
* @ClassName LodopController.java
- * @Description TODO
+ * @Description
* @createTime 2022年03月16日
*/
@RestController
diff --git a/src/main/java/com/lodop/dome/common/exception/XJException.java b/src/main/java/com/lodop/dome/common/exception/XJException.java
new file mode 100644
index 0000000..b4147e8
--- /dev/null
+++ b/src/main/java/com/lodop/dome/common/exception/XJException.java
@@ -0,0 +1,55 @@
+
+
+package com.lodop.dome.common.exception;
+
+/**
+ * 自定义异常
+ *
+ *
+ */
+public class XJException extends RuntimeException {
+ private static final long serialVersionUID = 1L;
+
+ private String msg;
+ private int code = 500;
+
+ public XJException(String msg) {
+ super(msg);
+ this.msg = msg;
+ }
+
+ public XJException(String msg, Throwable e) {
+ super(msg, e);
+ this.msg = msg;
+ }
+
+ public XJException(String msg, int code) {
+ super(msg);
+ this.msg = msg;
+ this.code = code;
+ }
+
+ public XJException(String msg, int code, Throwable e) {
+ super(msg, e);
+ this.msg = msg;
+ this.code = code;
+ }
+
+ public String getMsg() {
+ return msg;
+ }
+
+ public void setMsg(String msg) {
+ this.msg = msg;
+ }
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+
+}
diff --git a/src/main/java/com/lodop/dome/common/exception/XJExceptionHandler.java b/src/main/java/com/lodop/dome/common/exception/XJExceptionHandler.java
new file mode 100644
index 0000000..1d9443d
--- /dev/null
+++ b/src/main/java/com/lodop/dome/common/exception/XJExceptionHandler.java
@@ -0,0 +1,60 @@
+
+
+package com.lodop.dome.common.exception;
+
+import com.lodop.dome.common.util.R;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.dao.DuplicateKeyException;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
+import org.springframework.web.servlet.NoHandlerFoundException;
+
+/**
+ * 异常处理器
+ *
+ *
+ */
+@RestControllerAdvice
+public class XJExceptionHandler {
+ private Logger logger = LoggerFactory.getLogger(getClass());
+
+ /**
+ * 处理自定义异常
+ */
+ @ExceptionHandler(XJException.class)
+ public R handleRRException(XJException e){
+ R r = new R();
+ r.put("code", e.getCode());
+ r.put("msg", e.getMessage());
+ e.printStackTrace();
+ return r;
+ }
+
+ @ExceptionHandler(NoHandlerFoundException.class)
+ public R handlerNoFoundException(Exception e) {
+ //logger.error(e.getMessage(), e);
+ e.printStackTrace();
+ return R.error(404, "路径不存在,请检查路径是否正确");
+ }
+
+ @ExceptionHandler(DuplicateKeyException.class)
+ public R handleDuplicateKeyException(DuplicateKeyException e){
+ //logger.error(e.getMessage(), e);
+ String message = "";
+ if(e.getMessage().indexOf("sys_user")>-1){
+ message = "用户名不允许重复!";
+ }else {
+ message = "数据库存已在该记录!";
+ }
+ return R.error(message);
+ }
+
+
+ @ExceptionHandler(Exception.class)
+ public R handleException(Exception e){
+ //logger.error(e.getMessage(), e);
+ e.printStackTrace();
+ return R.error(e.getMessage());
+ }
+}
diff --git a/src/main/java/com/lodop/dome/common/utils/R.java b/src/main/java/com/lodop/dome/common/util/R.java
similarity index 96%
rename from src/main/java/com/lodop/dome/common/utils/R.java
rename to src/main/java/com/lodop/dome/common/util/R.java
index ad89342..499c620 100644
--- a/src/main/java/com/lodop/dome/common/utils/R.java
+++ b/src/main/java/com/lodop/dome/common/util/R.java
@@ -1,6 +1,6 @@
-package com.lodop.dome.common.utils;
+package com.lodop.dome.common.util;
import org.apache.http.HttpStatus;
diff --git a/src/main/java/com/lodop/dome/seriver/ClodopAssemblyService.java b/src/main/java/com/lodop/dome/service/ClodopAssemblyService.java
similarity index 96%
rename from src/main/java/com/lodop/dome/seriver/ClodopAssemblyService.java
rename to src/main/java/com/lodop/dome/service/ClodopAssemblyService.java
index 9244e54..633eda1 100644
--- a/src/main/java/com/lodop/dome/seriver/ClodopAssemblyService.java
+++ b/src/main/java/com/lodop/dome/service/ClodopAssemblyService.java
@@ -1,6 +1,6 @@
-package com.lodop.dome.seriver;
+package com.lodop.dome.service;
-import com.lodop.dome.common.utils.R;
+import com.lodop.dome.common.util.R;
import com.lodop.dome.data.ClodopAssemblyDetailData;
import com.lodop.dome.data.ClodopAssemblyHeaderData;
diff --git a/src/main/java/com/lodop/dome/seriver/ClodopTemplateService.java b/src/main/java/com/lodop/dome/service/ClodopTemplateService.java
similarity index 94%
rename from src/main/java/com/lodop/dome/seriver/ClodopTemplateService.java
rename to src/main/java/com/lodop/dome/service/ClodopTemplateService.java
index 45142b0..6ebdbe3 100644
--- a/src/main/java/com/lodop/dome/seriver/ClodopTemplateService.java
+++ b/src/main/java/com/lodop/dome/service/ClodopTemplateService.java
@@ -1,10 +1,9 @@
-package com.lodop.dome.seriver;
+package com.lodop.dome.service;
-import com.lodop.dome.common.utils.R;
+import com.lodop.dome.common.util.R;
import com.lodop.dome.data.ClodopTemplateHeaderData;
import java.util.List;
-import java.util.Map;
/**
* @author ZuoWen
diff --git a/src/main/java/com/lodop/dome/seriver/impl/ClodopAssemblyServiceImpl.java b/src/main/java/com/lodop/dome/service/impl/ClodopAssemblyServiceImpl.java
similarity index 97%
rename from src/main/java/com/lodop/dome/seriver/impl/ClodopAssemblyServiceImpl.java
rename to src/main/java/com/lodop/dome/service/impl/ClodopAssemblyServiceImpl.java
index deb983f..b9925f4 100644
--- a/src/main/java/com/lodop/dome/seriver/impl/ClodopAssemblyServiceImpl.java
+++ b/src/main/java/com/lodop/dome/service/impl/ClodopAssemblyServiceImpl.java
@@ -1,7 +1,7 @@
-package com.lodop.dome.seriver.impl;
+package com.lodop.dome.service.impl;
import com.alibaba.fastjson.JSON;
-import com.lodop.dome.common.utils.R;
+import com.lodop.dome.common.util.R;
import com.lodop.dome.dao.ClodopAssemblyDetailMapper;
import com.lodop.dome.dao.ClodopAssemblyHeaderMapper;
import com.lodop.dome.dao.ClodopBarCodeMapper;
@@ -10,7 +10,7 @@ import com.lodop.dome.data.ClodopAssemblyDetailData;
import com.lodop.dome.data.ClodopAssemblyHeaderData;
import com.lodop.dome.data.ClodopBarCodeData;
import com.lodop.dome.data.ClodopColumnsAttrData;
-import com.lodop.dome.seriver.ClodopAssemblyService;
+import com.lodop.dome.service.ClodopAssemblyService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
diff --git a/src/main/java/com/lodop/dome/seriver/impl/ClodopTemplateServiceImpl.java b/src/main/java/com/lodop/dome/service/impl/ClodopTemplateServiceImpl.java
similarity index 55%
rename from src/main/java/com/lodop/dome/seriver/impl/ClodopTemplateServiceImpl.java
rename to src/main/java/com/lodop/dome/service/impl/ClodopTemplateServiceImpl.java
index 8c9b375..4bf9e6b 100644
--- a/src/main/java/com/lodop/dome/seriver/impl/ClodopTemplateServiceImpl.java
+++ b/src/main/java/com/lodop/dome/service/impl/ClodopTemplateServiceImpl.java
@@ -1,18 +1,16 @@
-package com.lodop.dome.seriver.impl;
+package com.lodop.dome.service.impl;
-import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.ObjectMapper;
-import com.lodop.dome.common.utils.R;
+import com.lodop.dome.common.util.R;
import com.lodop.dome.dao.*;
import com.lodop.dome.data.*;
-import com.lodop.dome.seriver.ClodopTemplateService;
+import com.lodop.dome.service.ClodopTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
-import java.util.Map;
/**
@@ -44,22 +42,14 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
// 查询模板主记录信息
List templateHeaderList = clodopTemplateHeaderMapper.selectGetList(record);
// 循环遍历主记录 取明细记录
- for (ClodopTemplateHeaderData templateHeaderData: templateHeaderList) {
+ for (ClodopTemplateHeaderData templateHeaderData : templateHeaderList) {
ClodopTemplateDetailData queryTemplateDetail = new ClodopTemplateDetailData();
queryTemplateDetail.setSupplierId(templateHeaderData.getId());
List templateDetailList = clodopTemplateDetailMapper.getTemplateDetailList(queryTemplateDetail);
// 根据明细记录 取样式信息
- for (ClodopTemplateDetailData templateDetailData: templateDetailList) {
-// 判断是否为文本或二维码
- if(templateDetailData.getType().equals("braid-txt") || templateDetailData.getType().equals("bar-code")){
-// 获取文本或二维码样式
- ClodopStyleData queryStyleData = new ClodopStyleData();
- queryStyleData.setSupplierId(templateDetailData.getId());
- ClodopStyleData clodopStyleData = clodopStyleMapper.selectByPrimaryKey(queryStyleData);
-// 将样式保存到明细记录中
- templateDetailData.setStyle(clodopStyleData);
-// 判断是否为table
- }else if(templateDetailData.getType().equals("braid-table")){
+ for (ClodopTemplateDetailData templateDetailData : templateDetailList) {
+ // 判断是否为table
+ if (templateDetailData.getType().equals("braid-table")) {
// 根据明细记录id 获取table 参数信息
ClodopTableColumnsData queryColumns = new ClodopTableColumnsData();
queryColumns.setSupplierId(templateDetailData.getId());
@@ -68,7 +58,7 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
templateDetailData.setColumns(resultTableColumnsList);
// 获取字段信息
List selectColList = new ArrayList<>();
- for (ClodopTableColumnsData tableColumnsData: resultTableColumnsList) {
+ for (ClodopTableColumnsData tableColumnsData : resultTableColumnsList) {
selectColList.add(tableColumnsData.getName());
}
templateDetailData.setSelectCol(selectColList);
@@ -90,6 +80,15 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
queryStyle.setSite(templateDetailData.getSite());
ClodopStyleData clodopStyleData = clodopStyleMapper.selectByPrimaryKey(queryStyle);
templateDetailData.setStyle(clodopStyleData);
+ // 判断是否为文本或二维码
+ }else{
+// 获取文本或二维码样式
+ ClodopStyleData queryStyleData = new ClodopStyleData();
+ queryStyleData.setSupplierId(templateDetailData.getId());
+ ClodopStyleData clodopStyleData = clodopStyleMapper.selectByPrimaryKey(queryStyleData);
+// 将样式保存到明细记录中
+ templateDetailData.setStyle(clodopStyleData);
+
}
}
templateHeaderData.setTempItems(templateDetailList);
@@ -101,7 +100,7 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
@Override
public R saveClodopTemplate(ClodopTemplateHeaderData record) {
clodopTemplateHeaderMapper.insertSelective(record);
- return R.ok().put("msg","操作成功!");
+ return R.ok().put("msg", "操作成功!");
}
@Override
@@ -115,14 +114,14 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
List templateDetailList = clodopTemplateDetailMapper.getTemplateDetailList(queryTemplateDetail);
// 删除明细记录
clodopTemplateDetailMapper.deleteTemplateDetail(queryTemplateDetail);
- for (ClodopTemplateDetailData templateDetailData: templateDetailList) {
+ for (ClodopTemplateDetailData templateDetailData : templateDetailList) {
// 删除样式信息
ClodopStyleData queryStyle = new ClodopStyleData();
queryStyle.setSupplierId(templateDetailData.getId());
queryStyle.setSite(templateDetailData.getSite());
clodopStyleMapper.deleteByPrimaryKey(queryStyle);
// 判断是否为table
- if(templateDetailData.getType().equals("braid-table")){
+ if (templateDetailData.getType().equals("braid-table")) {
// 删除字段信息
ClodopTableColumnsData queryColumns = new ClodopTableColumnsData();
queryColumns.setSupplierId(templateDetailData.getId());
@@ -140,16 +139,16 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
clodopTableValueMapper.deleteByPrimaryKey(queryTableValue);
}
}
- return R.ok().put("msg","操作成功!");
+ return R.ok().put("msg", "操作成功!");
}
@Override
@Transactional
public R saveClodopTemplateHeaders(ClodopTemplateHeaderData record) {
// 判断为模板保存 还是复制新增
- if(record.getInsertFlag() != null && record.getInsertFlag()){
+ if (record.getInsertFlag() != null && record.getInsertFlag()) {
clodopTemplateHeaderMapper.insertSelective(record);
- }else {
+ } else {
clodopTemplateHeaderMapper.updateByPrimaryKeySelective(record);
ClodopTemplateDetailData delTemplateDetail = new ClodopTemplateDetailData();
delTemplateDetail.setSupplierId(record.getId());
@@ -158,58 +157,98 @@ public class ClodopTemplateServiceImpl implements ClodopTemplateService {
// 获取新增明细信息
List result = record.getTempItems();
// 根据类型新增记录信息
- for (ClodopTemplateDetailData tempItemDetail: result) {
- if(tempItemDetail.getType().equals("braid-txt") || tempItemDetail.getType().equals("bar-code")){
-// 新增明细信息
- tempItemDetail.setDefaultValue(tempItemDetail.getDefaultValue());
- tempItemDetail.setSupplierId(record.getId());
- clodopTemplateDetailMapper.insertSelective(tempItemDetail);
- int supplierId = tempItemDetail.getId();
-// 新增样式信息
- ClodopStyleData style = tempItemDetail.getStyle();
- style.setSupplierId(supplierId);
- clodopStyleMapper.insertSelective(style);
-// 判断是否为table
- }else if(tempItemDetail.getType().equals("braid-table")){
-// 设置列名及属性
-// 获取table 字段名及值
- List columns = tempItemDetail.getColumns();
-// 获取table 列信息
- List columnsAttrList = tempItemDetail.getColumnsAttr();
-// 字段名
-// List selectColList = tempItemDetail.getSelectCol();
-// 获取默认值信息
- Object defaultValue = tempItemDetail.getDefaultValue();
- // 新增明细记录信息
- tempItemDetail.setDefaultValue("");
- tempItemDetail.setSupplierId(record.getId());
- clodopTemplateDetailMapper.insertSelective(tempItemDetail);
- int supplierId = tempItemDetail.getId();
-// 新增table 参数名及字段
- for (ClodopTableColumnsData column : columns) {
- column.setSupplierId(supplierId);
- clodopTableColumnsMapper.insertSelective(column);
- }
-// 新增table 列信息
-// for (ClodopColumnsAttrData clodopColumnsAttrData : columnsAttrList) {
-// clodopColumnsAttrData.setSupplierId(supplierId);
-// clodopColumnsAttrMapper.insertSelective(clodopColumnsAttrData);
-// }
-// 新增默认值信息
- if (defaultValue instanceof ArrayList>) {
- for (Object o : (List>) defaultValue) {
- ObjectMapper objectMapper = new ObjectMapper();
- ClodopTableValueData tableValueData = objectMapper.convertValue(o, ClodopTableValueData.class);
- tableValueData.setAssemblyId(supplierId);
- clodopTableValueMapper.insertSelective(tableValueData);
+ for (ClodopTemplateDetailData tempItemDetail : result) {
+ switch (tempItemDetail.getType()) {
+ case "braid-table":
+ //获取table 字段名及值
+ List columns = tempItemDetail.getColumns();
+ //获取table 列信息
+ List columnsAttrList = tempItemDetail.getColumnsAttr();
+ //获取默认值信息
+ Object defaultValue = tempItemDetail.getDefaultValue();
+ // 新增明细记录信息
+ tempItemDetail.setDefaultValue("");
+ tempItemDetail.setSupplierId(record.getId());
+ clodopTemplateDetailMapper.insertSelective(tempItemDetail);
+ int supplierId = tempItemDetail.getId();
+ //新增table 参数名及字段
+ for (ClodopTableColumnsData column : columns) {
+ column.setSupplierId(supplierId);
+ clodopTableColumnsMapper.insertSelective(column);
}
- }
-// 新增table样式信息
- ClodopStyleData style = tempItemDetail.getStyle();
- style.setSupplierId(supplierId);
- clodopStyleMapper.insertSelective(style);
+ //新增默认值信息
+ if (defaultValue instanceof ArrayList>) {
+ for (Object o : (List>) defaultValue) {
+ ObjectMapper objectMapper = new ObjectMapper();
+ ClodopTableValueData tableValueData = objectMapper.convertValue(o, ClodopTableValueData.class);
+ tableValueData.setAssemblyId(supplierId);
+ clodopTableValueMapper.insertSelective(tableValueData);
+ }
+ }
+ //新增table样式信息
+ ClodopStyleData style = tempItemDetail.getStyle();
+ style.setSupplierId(supplierId);
+ clodopStyleMapper.insertSelective(style);
+ break;
+ default:
+ //新增明细信息
+ tempItemDetail.setDefaultValue(tempItemDetail.getDefaultValue());
+ tempItemDetail.setSupplierId(record.getId());
+ clodopTemplateDetailMapper.insertSelective(tempItemDetail);
+ int supplierIdD = tempItemDetail.getId();
+ // 新增样式信息
+ ClodopStyleData styleD = tempItemDetail.getStyle();
+ styleD.setSupplierId(supplierIdD);
+ clodopStyleMapper.insertSelective(styleD);
+
}
+// if (tempItemDetail.getType().equals("braid-txt") || tempItemDetail.getType().equals("bar-code")) {
+// //新增明细信息
+// tempItemDetail.setDefaultValue(tempItemDetail.getDefaultValue());
+// tempItemDetail.setSupplierId(record.getId());
+// clodopTemplateDetailMapper.insertSelective(tempItemDetail);
+// int supplierId = tempItemDetail.getId();
+// // 新增样式信息
+// ClodopStyleData style = tempItemDetail.getStyle();
+// style.setSupplierId(supplierId);
+// clodopStyleMapper.insertSelective(style);
+// // 判断是否为table
+// } else
+// if (tempItemDetail.getType().equals("braid-table")) {
+// // 设置列名及属性
+// // 获取table 字段名及值
+// List columns = tempItemDetail.getColumns();
+// // 获取table 列信息
+// List columnsAttrList = tempItemDetail.getColumnsAttr();
+// // 字段名
+// // 获取默认值信息
+// Object defaultValue = tempItemDetail.getDefaultValue();
+// // 新增明细记录信息
+// tempItemDetail.setDefaultValue("");
+// tempItemDetail.setSupplierId(record.getId());
+// clodopTemplateDetailMapper.insertSelective(tempItemDetail);
+// int supplierId = tempItemDetail.getId();
+// // 新增table 参数名及字段
+// for (ClodopTableColumnsData column : columns) {
+// column.setSupplierId(supplierId);
+// clodopTableColumnsMapper.insertSelective(column);
+// }
+//
+// // 新增默认值信息
+// if (defaultValue instanceof ArrayList>) {
+// for (Object o : (List>) defaultValue) {
+// ObjectMapper objectMapper = new ObjectMapper();
+// ClodopTableValueData tableValueData = objectMapper.convertValue(o, ClodopTableValueData.class);
+// tableValueData.setAssemblyId(supplierId);
+// clodopTableValueMapper.insertSelective(tableValueData);
+// }
+// }
+// // 新增table样式信息
+// ClodopStyleData style = tempItemDetail.getStyle();
+// style.setSupplierId(supplierId);
+// clodopStyleMapper.insertSelective(style);
+// }
}
- return R.ok().put("msg" ,"操作成功!");
+ return R.ok().put("msg", "操作成功!");
}
}