package com.terra.system.service.sys; import com.terra.system.entity.all.SettingData; import com.terra.system.entity.sys.ArgsEntity; import com.terra.system.helper.StringHelper; import com.terra.system.mapper.sys.ArgsMapper; import javax.annotation.Resource; import org.springframework.stereotype.Service; import java.lang.reflect.Field; import java.util.List; /** * 参数设置 * @author WWW */ @Service public class ArgsService implements ArgsMapper { @Resource ArgsMapper argsMapper; @Override public Integer selectCount(String name) { name = StringHelper.getLikeUpperStr(name); return argsMapper.selectCount(name); } @Override public List selectByPage(String name, Integer limit, Integer offset) { name = StringHelper.getLikeUpperStr(name); return argsMapper.selectByPage(name, limit, offset); } @Override public List selectAll() { return argsMapper.selectAll(); } @Override public ArgsEntity selectById(int id) { return argsMapper.selectById(id); } @Override public Integer insert(ArgsEntity entity) { return argsMapper.insert(entity); } @Override public Integer inserts(List list) { return argsMapper.inserts(list); } @Override public Integer delete(int id) { return argsMapper.delete(id); } @Override public Integer deletes(List ids) { return argsMapper.deletes(ids); } @Override public Integer update(ArgsEntity entity) { return argsMapper.update(entity); } @Override public Integer updateForValue(ArgsEntity entity) { return argsMapper.updateForValue(entity); } @Override public Integer updates(List list) { return argsMapper.updates(list); } /** * 初始化设置值 */ public void initSettingData() throws Exception { List list = selectAll(); if (list == null || list.isEmpty()) { return; } for (ArgsEntity entity : list) { updateSettingData(entity); } } /** * 更新设置值 */ public void updateSettingData(ArgsEntity entity) throws Exception { Field field = SettingData.class.getField(entity.getMark()); // field.setAccessible(true) field.set(null, entity.getCvalue() * entity.getTimes()); } }