Commit edaa696d by fsn

修改字典的业务完成

parent 63f0f9cf
......@@ -27,6 +27,11 @@ public class MutiStrFactory {
public static final String ATTR_SPLIT = ":";
/**
* 拼接字符串的id
*/
public static final String MUTI_STR_ID = "ID";
/**
* 拼接字符串的key
*/
public static final String MUTI_STR_KEY = "KEY";
......@@ -42,7 +47,7 @@ public class MutiStrFactory {
* @author fengshuonan
* @Date 2017/4/27 16:44
*/
public static List<Map<String,String>> parse(String mutiString){
public static List<Map<String,String>> parseKeyValue(String mutiString){
if(ToolUtil.isEmpty(mutiString)){
return new ArrayList<>();
}else{
......@@ -58,4 +63,28 @@ public class MutiStrFactory {
return results;
}
}
/**
* 解析id:key:value这样类型的字符串
*
* @author fengshuonan
* @Date 2017/4/28 11:06
*/
public static List<Map<String,String>> parseIdKeyValue(String mutiString){
if(ToolUtil.isEmpty(mutiString)){
return new ArrayList<>();
}else{
ArrayList<Map<String,String>> results = new ArrayList<>();
String[] items = StrKit.split(StrKit.removeSuffix(mutiString, ITEM_SPLIT), ITEM_SPLIT);
for (String item : items) {
String[] attrs = item.split(ATTR_SPLIT);
HashMap<String, String> itemMap = new HashMap<>();
itemMap.put(MUTI_STR_ID,attrs[0]);
itemMap.put(MUTI_STR_KEY,attrs[1]);
itemMap.put(MUTI_STR_VALUE,attrs[2]);
results.add(itemMap);
}
return results;
}
}
}
......@@ -114,11 +114,11 @@ public class DictController extends BaseController {
@BussinessLog("修改字典")
@RequestMapping(value = "/update")
@ResponseBody
public Object update(Dict dict) {
if (ToolUtil.isEmpty(dict) || dict.getId() == null) {
public Object update(String mutiString) {
if (ToolUtil.isEmpty(mutiString)) {
throw new BussinessException(BizExceptionEnum.REQUEST_NULL);
}
dictMapper.updateById(dict);
dictService.editDict(mutiString);
return super.SUCCESS_TIP;
}
......
......@@ -16,4 +16,12 @@ public interface IDictService {
*/
void addDict(String dictName,String dictValues);
/**
* 编辑字典
*
* @author fengshuonan
* @Date 2017/4/28 11:01
*/
void editDict(String dicts);
}
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.common.constant.factory.MutiStrFactory;
import com.stylefeng.guns.common.exception.BizExceptionEnum;
import com.stylefeng.guns.common.exception.BussinessException;
import com.stylefeng.guns.modular.system.dao.DictDao;
......@@ -15,6 +14,8 @@ import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
import static com.stylefeng.guns.common.constant.factory.MutiStrFactory.*;
@Service
@Transactional
public class DictServiceImpl implements IDictService {
......@@ -35,7 +36,7 @@ public class DictServiceImpl implements IDictService {
}
//解析dictValues
List<Map<String, String>> items = MutiStrFactory.parse(dictValues);
List<Map<String, String>> items = parseKeyValue(dictValues);
//添加字典
Dict dict = new Dict();
......@@ -46,8 +47,8 @@ public class DictServiceImpl implements IDictService {
//添加字典条目
for (Map<String, String> item : items) {
String num = item.get(MutiStrFactory.MUTI_STR_KEY);
String name = item.get(MutiStrFactory.MUTI_STR_VALUE);
String num = item.get(MUTI_STR_KEY);
String name = item.get(MUTI_STR_VALUE);
Dict itemDict = new Dict();
itemDict.setPid(dict.getId());
itemDict.setName(name);
......@@ -55,4 +56,16 @@ public class DictServiceImpl implements IDictService {
this.dictMapper.insert(itemDict);
}
}
@Override
public void editDict(String dicts) {
List<Map<String, String>> items = parseIdKeyValue(dicts);
for (Map<String, String> item : items) {
String dictId = item.get(MUTI_STR_ID);
Dict dict = dictMapper.selectById(dictId);
dict.setNum(Integer.valueOf(item.get(MUTI_STR_KEY)));
dict.setName(item.get(MUTI_STR_VALUE));
dict.updateById();
}
}
}
......@@ -21,4 +21,9 @@ public class DictTest extends BaseTest{
public void addTest() {
dictService.addDict("测试","1:冻结;2:jiedong;3:接触");
}
@Test
public void editTest() {
dictService.editDict("45:0:测试1;46:1:冻结1;47:4:sd1;48:3:接触1;");
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment