package com.matrix.system.common.actions; import com.matrix.core.constance.MatrixConstance; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.tools.StringUtils; import com.matrix.core.tools.WebUtil; import com.matrix.system.common.bean.BusParameterSettings; import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.hive.action.util.QueryUtil; import com.matrix.system.hive.bean.ParameterSettings; import com.matrix.system.hive.dao.ParameterSettingsDao; import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; /** * This field was generated by Zking.software.Codegen. * * @date 2016-11-28 15:14 */ @Controller @RequestMapping(value = "admin/busParameterSettings") public class BusParameterSettingsAction { private static final int COMPANY = 1; private static final int SHOP = 2; @Resource private BusParameterSettingsDao busParameterSettingsService; @Autowired private BusParameterSettingsDao busParameterSettingsDao; @Autowired private ParameterSettingsDao parameterSettingsDao; // 记录编辑前的值Before_Edit_Value public static final String BEV = "BusParameterSettings_BEV"; /** * 查询所有的配置分类 * * @return */ @GetMapping(value = "/getAllCategoryList") public @ResponseBody AjaxResult getAllCategoryList() { return AjaxResult.buildSuccessInstance(parameterSettingsDao.selectAllCategory()); } /** * 根据条件查询特定的配置 * 公司维度 */ @PostMapping(value = "/getByCategory") public @ResponseBody AjaxResult getByCategory(@RequestBody ParameterSettings parameterSettings) { //查询总部配置 QueryUtil.setQueryLimitCom(parameterSettings); return AjaxResult.buildSuccessInstance(parameterSettingsDao.getByCategory(parameterSettings)); } /** * 根据条件查询当前登录用户的参数配置 * 门店维度 * */ @PostMapping(value = "/getShopParamByCategory") public @ResponseBody AjaxResult getShopParamByCategory(@RequestBody ParameterSettings parameterSettings) { //查询总部配置 QueryUtil.setQueryLimit(parameterSettings); return AjaxResult.buildSuccessInstance(parameterSettingsDao.getByCategory(parameterSettings)); } /** * 修改公司维度的参数 */ @PostMapping(value = "/modifyCompanyParams") public @ResponseBody AjaxResult modifyCompanyParams(@RequestBody List parameterSettings) { return getModifParams(parameterSettings,COMPANY); } /** * 修改门店维度的参数 */ @PostMapping(value = "/modifyShopParams") public @ResponseBody AjaxResult modifyShopParams(@RequestBody List parameterSettings) { return getModifParams(parameterSettings,SHOP); } /** * 修改参数 * @param parameterSettings * @param type * @return */ private AjaxResult getModifParams(@RequestBody List parameterSettings,int type) { SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); for (ParameterSettings parameterSetting:parameterSettings ) { if(StringUtils.isNotBlank(parameterSetting.getCode())){ //删除原有code BusParameterSettings delParanm=new BusParameterSettings(); delParanm.setCompanyId(user.getCompanyId()); delParanm.setParamCode(parameterSetting.getCode()); busParameterSettingsDao.deleteByModel(delParanm); //添加新的code BusParameterSettings newParam=new BusParameterSettings(); newParam.setParamCode(parameterSetting.getCode()); newParam.setCompanyId(user.getCompanyId()); newParam.setParamValue(parameterSetting.getUserValue()); if(type==SHOP){ newParam.setShopId(user.getShopId()); } busParameterSettingsDao.insert(newParam); }else{ return AjaxResult.buildFailInstance("code不能为空"); } } AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, "更新成功"); return result; } /** * 根据参数编码查询参数配置 * * @param codes * @return */ @GetMapping(value = "/getByCodes") public @ResponseBody AjaxResult getByCodes(@RequestBody ArrayList codes) { SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); List dataList = busParameterSettingsDao.selectByCodes(codes, user.getCompanyId(), user.getShopId()); AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList); return result; } }