|
|
|
@ -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<ClodopTemplateHeaderData> templateHeaderList = clodopTemplateHeaderMapper.selectGetList(record); |
|
|
|
// 循环遍历主记录 取明细记录 |
|
|
|
for (ClodopTemplateHeaderData templateHeaderData: templateHeaderList) { |
|
|
|
for (ClodopTemplateHeaderData templateHeaderData : templateHeaderList) { |
|
|
|
ClodopTemplateDetailData queryTemplateDetail = new ClodopTemplateDetailData(); |
|
|
|
queryTemplateDetail.setSupplierId(templateHeaderData.getId()); |
|
|
|
List<ClodopTemplateDetailData> 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<String> 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<ClodopTemplateDetailData> 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<ClodopTemplateDetailData> 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<ClodopTableColumnsData> columns = tempItemDetail.getColumns(); |
|
|
|
// 获取table 列信息 |
|
|
|
List<ClodopColumnsAttrData> columnsAttrList = tempItemDetail.getColumnsAttr(); |
|
|
|
// 字段名 |
|
|
|
// List<String> 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<ClodopTableColumnsData> columns = tempItemDetail.getColumns(); |
|
|
|
//获取table 列信息 |
|
|
|
List<ClodopColumnsAttrData> 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<ClodopTableColumnsData> columns = tempItemDetail.getColumns(); |
|
|
|
// // 获取table 列信息 |
|
|
|
// List<ClodopColumnsAttrData> 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", "操作成功!"); |
|
|
|
} |
|
|
|
} |