package com.product.org.admin.controller;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import com.product.common.lang.StringUtils;
|
import com.product.org.admin.config.CmnConst;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import com.product.core.config.CoreConst;
|
import com.product.core.controller.support.AbstractBaseController;
|
import com.product.core.entity.DataTableEntity;
|
import com.product.core.entity.FieldSetEntity;
|
import com.product.core.entity.RequestParameterEntity;
|
import com.product.core.exception.BaseException;
|
import com.product.core.permission.PermissionService;
|
import com.product.core.spring.context.SpringMVCContextHolder;
|
import com.product.module.sys.config.SystemErrorCode;
|
import com.product.module.sys.version.ApiVersion;
|
import com.product.org.admin.config.SystemCode;
|
import com.product.org.admin.service.CompanyExchangeRateService;
|
|
import java.util.Date;
|
|
/**
|
*
|
* Copyright LX-BASE
|
*
|
* @Title: CompanyExchangeRateController
|
* @Project: LX-BASE-SERVER
|
* @Date: 2020年5月29日 上午11:05:27
|
* @Author: 郑盟
|
* @Description:单位汇率配置,对应单位汇率表
|
*/
|
@RequestMapping("/api/company_exchange_rate")
|
@RestController
|
public class CompanyExchangeRateController extends AbstractBaseController {
|
|
@Autowired
|
public CompanyExchangeRateService companyExchangeRateService;
|
|
@Autowired
|
PermissionService permissionService;
|
|
@Autowired
|
SystemOrgLevelsController SystemOrgLevelsController;
|
|
/**
|
* 根据uuid查询单位汇率详情 @param request @return String @throws
|
*/
|
@RequestMapping(value = "/find-exchange/{varsion}", method = RequestMethod.POST)
|
@ApiVersion(1)
|
@Deprecated
|
public String findExchange(HttpServletRequest request) {
|
try {
|
Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
|
RequestParameterEntity reqp = (RequestParameterEntity) bean;
|
FieldSetEntity fse = reqp.getFormData();
|
String uuid = fse.getString("uuid");
|
if ("".equals(uuid) || null == uuid) {
|
return this.error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_FIND_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_FIND_FAIL.getText());
|
}
|
//数据操作的权限验证
|
if(!permissionService.validDataPermission(fse,CoreConst.DATA_PERMISSION_VALID_TYPE_ORG)) {
|
SpringMVCContextHolder.getSystemLogger().error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(),SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText());
|
return this.error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(), SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText());
|
}
|
|
FieldSetEntity fs = companyExchangeRateService.findEmailSmtp(fse);
|
return OK_List(fs);
|
} catch (BaseException e) {
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return this.error(e.getCode(), e.getMessageInfo());
|
}catch (Exception e) {
|
e.printStackTrace();
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_FIND_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_FIND_FAIL.getText()+ e.getMessage());
|
}
|
}
|
|
/**
|
* 根据单位uuid查询单位汇率列表 @param request @return String @throws
|
*/
|
@RequestMapping(value = "/list-exchange/{varsion}", method = RequestMethod.POST)
|
@ApiVersion(1)
|
public String listExchange(HttpServletRequest request) {
|
try {
|
Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
|
RequestParameterEntity reqp = (RequestParameterEntity) bean;
|
FieldSetEntity fse = reqp.getFormData();
|
String org_level_uuid = fse.getString("org_level_uuid");
|
if ("".equals(org_level_uuid) || null == org_level_uuid) {
|
return this.error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_LIST_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_LIST_FAIL.getText());
|
}
|
FieldSetEntity fs = new FieldSetEntity();
|
fs.setTableName(CmnConst.PRODUCT_SYS_ORG_LEVELS);
|
fs.setValue("uuid", org_level_uuid);
|
SystemOrgLevelsController.orgLevelOperPermission(true, 0, fs);
|
DataTableEntity dt = companyExchangeRateService.listEmailSmtp(fse);
|
return OK_List(dt);
|
} catch (BaseException e) {
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return this.error(e.getCode(), e.getMessageInfo());
|
}catch (Exception e) {
|
e.printStackTrace();
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_LIST_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_LIST_FAIL.getText()+ e.getMessage());
|
}
|
}
|
|
/**
|
* 根据单位uuid删除单位汇率
|
*
|
* @return
|
*/
|
@RequestMapping(value = "/delete-exchange/{varsion}", method = RequestMethod.POST)
|
@ApiVersion(1)
|
@Deprecated
|
public String deleteExchange(HttpServletRequest request) {
|
try {
|
Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
|
RequestParameterEntity reqp = (RequestParameterEntity) bean;
|
FieldSetEntity fse = reqp.getFormData();
|
String uuid = fse.getString("uuid");
|
if ("".equals(uuid) || null == uuid) {
|
return this.error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText());
|
}
|
return companyExchangeRateService.deleteEmailList(fse) ? OK()
|
: error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText());
|
} catch (BaseException e) {
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return this.error(e.getCode(), e.getMessageInfo());
|
}catch (Exception e) {
|
e.printStackTrace();
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText()+ e.getMessage());
|
}
|
}
|
|
/**
|
* 根据单位uuid单位清空本单位下的单位汇率
|
*
|
* @return
|
*/
|
@RequestMapping(value = "/delete-levels-exchange/{varsion}", method = RequestMethod.POST)
|
@ApiVersion(1)
|
public String deleteLevelsExchange(HttpServletRequest request) {
|
try {
|
Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
|
RequestParameterEntity reqp = (RequestParameterEntity) bean;
|
FieldSetEntity fse = reqp.getFormData();
|
String org_level_uuid = fse.getString("org_level_uuid");
|
if ("".equals(org_level_uuid) || null == org_level_uuid) {
|
return this.error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText());
|
}
|
FieldSetEntity fs = new FieldSetEntity();
|
fs.setTableName(CmnConst.PRODUCT_SYS_ORG_LEVELS);
|
fs.setValue("uuid", org_level_uuid);
|
SystemOrgLevelsController.orgLevelOperPermission(false, 0, fs);
|
//数据操作的权限验证
|
return companyExchangeRateService.deleteLevelsEmailList(fse) ? OK()
|
: error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText());
|
} catch (BaseException e) {
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return this.error(e.getCode(), e.getMessageInfo());
|
}catch (Exception e) {
|
e.printStackTrace();
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_DELETE_FAIL.getText()+ e.getMessage());
|
}
|
}
|
|
/**
|
* 单位汇率新增和修改 @param request @return String @throws
|
*/
|
@RequestMapping(value = "/add-update-exchange/{varsion}", method = RequestMethod.POST)
|
@ApiVersion(1)
|
public String addUpdateExchange(HttpServletRequest request) {
|
Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
|
RequestParameterEntity reqp = (RequestParameterEntity) bean;
|
FieldSetEntity fse = reqp.getFormData();
|
try {
|
FieldSetEntity fs = new FieldSetEntity();
|
fs.setTableName(CmnConst.PRODUCT_SYS_ORG_LEVELS);
|
fs.setValue("uuid", fse.getString(CmnConst.ORG_LEVEL_UUID));
|
SystemOrgLevelsController.orgLevelOperPermission(false, 0, fs);
|
if (StringUtils.isEmpty(fse.getString("uuid"))){
|
//数据操作的权限验证
|
fse.setValue("exchanged_utc_datetime",new Date());
|
String add = companyExchangeRateService.add(fse);
|
return OK_Add(add);
|
} else {
|
return companyExchangeRateService.update(fse) ? OK()
|
: error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_ADD_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_ADD_FAIL.getText());
|
}
|
} catch (BaseException e) {
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return this.error(e.getCode(), e.getMessageInfo());
|
}catch (Exception e) {
|
e.printStackTrace();
|
SpringMVCContextHolder.getSystemLogger().error(e);
|
return error(SystemCode.SYSTEM_COMPANYEXCHANGERATE_ADD_FAIL.getValue(),
|
SystemCode.SYSTEM_COMPANYEXCHANGERATE_ADD_FAIL.getText()+ e.getMessage());
|
}
|
}
|
|
}
|