修改
This commit is contained in:
@ -3,6 +3,8 @@ package com.xjrsoft.module.approve;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* @title: 审批通用类
|
||||
@ -36,5 +38,5 @@ public class ApproveDto<T> {
|
||||
/**
|
||||
* 操作数据
|
||||
*/
|
||||
private T data;
|
||||
private List<T> data;
|
||||
}
|
||||
|
||||
@ -80,7 +80,7 @@ public class LngPngApproPurVo extends com.xjrsoft.common.model.base.BaseModel{
|
||||
* 采购合同名称
|
||||
*/
|
||||
@ApiModelProperty("采购合同名称")
|
||||
private Long kpName;
|
||||
private String kpName;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -102,7 +102,7 @@ public class LngPngApproVo extends com.xjrsoft.common.model.base.BaseModel{
|
||||
* 交易主体名称(天然气公司/惠贸)
|
||||
*/
|
||||
@ApiModelProperty("交易主体名称(天然气公司/惠贸)")
|
||||
private Long comName;
|
||||
private String comName;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -74,7 +74,15 @@ public class PngApproController {
|
||||
@PostMapping(value = "/approveXS")
|
||||
@SaCheckPermission("pngAppro:approveXS")
|
||||
public R approveXS(@Valid @RequestBody ApproveDto<UpdateLngPngApproDto> dto){
|
||||
pngApproService.approve(dto);
|
||||
pngApproService.approveXS(dto);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@ApiOperation(value = "销售审批")
|
||||
@PostMapping(value = "/batchApproveXS")
|
||||
@SaCheckPermission("pngAppro:batchApproveXS")
|
||||
public R batchApproveXS(@Valid @RequestBody ApproveDto<UpdateLngPngApproDto> dto){
|
||||
pngApproService.approveXS(dto);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@ -82,7 +90,7 @@ public class PngApproController {
|
||||
@PostMapping(value = "/approveGD")
|
||||
@SaCheckPermission("pngAppro:approveGD")
|
||||
public R approveGD(@Valid @RequestBody ApproveDto<UpdateLngPngApproDto> dto){
|
||||
pngApproService.approve(dto);
|
||||
pngApproService.approveGD(dto);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
@ -90,7 +98,7 @@ public class PngApproController {
|
||||
@PostMapping(value = "/approveJSZ")
|
||||
@SaCheckPermission("pngAppro:approveJSZ")
|
||||
public R approveJSZ(@Valid @RequestBody ApproveDto<UpdateLngPngApproDto> dto){
|
||||
pngApproService.approve(dto);
|
||||
pngApproService.approveJSZ(dto);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
||||
@ -25,12 +25,13 @@ import java.util.List;
|
||||
public interface LngPngApproMapper extends MPJBaseMapper<LngPngAppro>, BaseMapper<LngPngAppro> {
|
||||
|
||||
@Select("SELECT a.id, a.rule_user_id, a.demand_org_id, a.date_plan," +
|
||||
" (CASE a.date_plan - CURRENT_DATE " +
|
||||
" (CASE EXTRACT(DAY FROM a.date_plan - CURRENT_DATE)" +
|
||||
" WHEN 0 THEN '当日' " +
|
||||
" WHEN 1 THEN '次日' " +
|
||||
" ELSE IF(a.date_plan - CURRENT_DATE < 0,'',a.date_plan - CURRENT_DATE || '日后') " +
|
||||
" END) days_sign" +
|
||||
" a.cu_code, cu.cu_name, cu.cu_sname, a.ver_no, a.point_dely_code, sp.full_name AS poin_dely_name," +
|
||||
" ELSE IF(EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) < 0,''," +
|
||||
" EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) || '日后') " +
|
||||
" END) days_sign," +
|
||||
" a.cu_code, cu.cu_name, cu.cu_sname, a.ver_no, a.point_dely_code, sp.full_name AS point_dely_name," +
|
||||
" a.qty_demand_gj, a.qty_demand_m3/10000 AS qty_demand_m3," +
|
||||
" a.qty_sales_gj, a.qty_sales_m3/10000 AS qty_sales_m3," +
|
||||
" a.rate_k, a.rate_mp, a.rate_s, k.k_name, a.alter_sign, dd_iud.name AS alter_name," +
|
||||
@ -50,12 +51,13 @@ public interface LngPngApproMapper extends MPJBaseMapper<LngPngAppro>, BaseMappe
|
||||
IPage<LngPngApproVo> queryPage(IPage<LngPngApproPageDto> page, @Param(Constants.WRAPPER) QueryWrapper<LngPngAppro> queryWrapper);
|
||||
|
||||
@Select("SELECT a.*," +
|
||||
" (CASE a.date_plan - CURRENT_DATE " +
|
||||
" (CASE EXTRACT(DAY FROM a.date_plan - CURRENT_DATE)" +
|
||||
" WHEN 0 THEN '当日' " +
|
||||
" WHEN 1 THEN '次日' " +
|
||||
" ELSE IF(a.date_plan - CURRENT_DATE < 0,'',a.date_plan - CURRENT_DATE || '日后') " +
|
||||
" ELSE IF(EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) < 0,''," +
|
||||
" EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) || '日后') " +
|
||||
" END) days_sign," +
|
||||
" cu.cu_name, cu.cu_sname, sp.full_name AS poin_dely_name," +
|
||||
" cu.cu_name, cu.cu_sname, sp.full_name AS point_dely_name," +
|
||||
" k.k_name, dd_iud.name AS alter_name," +
|
||||
" com.name AS com_name, dd_a.name as appro_name" +
|
||||
" FROM lng_png_appro a" +
|
||||
@ -71,12 +73,13 @@ public interface LngPngApproMapper extends MPJBaseMapper<LngPngAppro>, BaseMappe
|
||||
LngPngApproVo getOneById(@Param("id") Long id);
|
||||
|
||||
@Select("SELECT a.*," +
|
||||
" (CASE a.date_plan - CURRENT_DATE " +
|
||||
" (CASE EXTRACT(DAY FROM a.date_plan - CURRENT_DATE)" +
|
||||
" WHEN 0 THEN '当日' " +
|
||||
" WHEN 1 THEN '次日' " +
|
||||
" ELSE IF(a.date_plan - CURRENT_DATE < 0,'',a.date_plan - CURRENT_DATE || '日后') " +
|
||||
" ELSE IF(EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) < 0,''," +
|
||||
" EXTRACT(DAY FROM a.date_plan - CURRENT_DATE) || '日后') " +
|
||||
" END) days_sign," +
|
||||
" cu.cu_name, cu.cu_sname, sp.full_name AS poin_dely_name," +
|
||||
" cu.cu_name, cu.cu_sname, sp.full_name AS point_dely_name," +
|
||||
" k.k_name, dd_iud.name AS alter_name," +
|
||||
" com.name AS com_name, dd_a.name as appro_name" +
|
||||
" FROM lng_png_appro a" +
|
||||
|
||||
@ -27,7 +27,11 @@ public interface IPngApproService extends MPJBaseService<LngPngAppro>, MPJDeepSe
|
||||
|
||||
LngPngApproVo getInfoById(Long id);
|
||||
|
||||
void approve(@Valid ApproveDto<UpdateLngPngApproDto> dto);
|
||||
void approveXS(@Valid ApproveDto<UpdateLngPngApproDto> dto);
|
||||
|
||||
void approveGD(@Valid ApproveDto<UpdateLngPngApproDto> dto);
|
||||
|
||||
void approveJSZ(@Valid ApproveDto<UpdateLngPngApproDto> dto);
|
||||
|
||||
List<LngPngApproVo> compare(Long orgId);
|
||||
}
|
||||
|
||||
@ -3,6 +3,7 @@ package com.xjrsoft.module.dayPlan.service.impl;
|
||||
import cn.dev33.satoken.session.SaSession;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||
@ -34,6 +35,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -93,36 +95,60 @@ public class PngApproServiceImpl extends MPJBaseServiceImpl<LngPngApproMapper, L
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void approve(ApproveDto<UpdateLngPngApproDto> dto) {
|
||||
UpdateLngPngApproDto data = dto.getData();
|
||||
LngPngAppro lngPngAppro = this.baseMapper.selectById(data.getId());
|
||||
public void approveXS(ApproveDto<UpdateLngPngApproDto> dto) {
|
||||
List<UpdateLngPngApproDto> data = dto.getData();
|
||||
if (CollectionUtils.isEmpty(data)) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"请选择审批数据"));
|
||||
}
|
||||
String sql = com.pictc.utils.StringUtils.format("{? = call pc_{0}.f_approval(?, ?, ?, ?, ?)}",
|
||||
"lng_png_appro");
|
||||
SaSession tokenSession = StpUtil.getTokenSession();
|
||||
UserDto user = tokenSession.get(GlobalConstant.LOGIN_USER_INFO_KEY, new UserDto());
|
||||
for (UpdateLngPngApproDto lngPngApproDto : data) {
|
||||
LngPngAppro lngPngAppro = this.baseMapper.selectById(lngPngApproDto.getId());
|
||||
if(lngPngAppro == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
}
|
||||
lngPngAppro.setQtySalesGj(data.getQtySalesGj());
|
||||
lngPngAppro.setQtySalesM3(data.getQtySalesM3());
|
||||
if (CollectionUtils.isEmpty(lngPngApproDto.getLngPngApproPurList())) {
|
||||
List<LngPngApproPur> list = lngPngApproPurMapper.selectList(new LambdaQueryWrapper<LngPngApproPur>()
|
||||
.eq(LngPngApproPur::getApproId, lngPngApproDto.getId()));
|
||||
if (CollectionUtils.isEmpty(list)) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到上载点数据"));
|
||||
}
|
||||
BigDecimal qtySalesGjTotal = BigDecimal.ZERO;
|
||||
BigDecimal qtySalesM3Total = BigDecimal.ZERO;
|
||||
for (LngPngApproPur lngPngApproPur : list) {
|
||||
lngPngApproPur.setQtySalesGj(lngPngApproPur.getQtyDemandGj());
|
||||
lngPngApproPur.setQtySalesM3(lngPngApproPur.getQtyDemandM3());
|
||||
lngPngApproPurMapper.updateById(lngPngApproPur);
|
||||
qtySalesGjTotal = qtySalesGjTotal.add(lngPngApproPur.getQtySalesGj());
|
||||
qtySalesM3Total = qtySalesM3Total.add(lngPngApproPur.getQtySalesM3());
|
||||
}
|
||||
lngPngAppro.setQtySalesGj(qtySalesGjTotal);
|
||||
lngPngAppro.setQtySalesM3(qtySalesM3Total);
|
||||
this.baseMapper.updateById(lngPngAppro);
|
||||
for (UpdateLngPngApproPurDto lngPngApproPurDto : data.getLngPngApproPurList()) {
|
||||
} else {
|
||||
lngPngAppro.setQtySalesGj(lngPngApproDto.getQtySalesGj());
|
||||
lngPngAppro.setQtySalesM3(lngPngApproDto.getQtySalesM3());
|
||||
this.baseMapper.updateById(lngPngAppro);
|
||||
for (UpdateLngPngApproPurDto lngPngApproPurDto : lngPngApproDto.getLngPngApproPurList()) {
|
||||
LngPngApproPur lngPngApproPur = lngPngApproPurMapper.selectById(lngPngApproPurDto.getId());
|
||||
if(lngPngApproPur == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到上载点数据"));
|
||||
}
|
||||
lngPngApproPur.setQtySalesGj(lngPngApproPurDto.getQtySalesGj());
|
||||
lngPngApproPur.setQtySalesM3(lngPngApproPurDto.getQtySalesM3());
|
||||
lngPngApproPur.setNote(lngPngApproPurDto.getNote());
|
||||
lngPngApproPurMapper.updateById(lngPngApproPur);
|
||||
}
|
||||
String sql = com.pictc.utils.StringUtils.format("{? = call pc_{0}.f_approval(?, ?, ?, ?, ?)}",
|
||||
"lng_png_appro");
|
||||
}
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofLong(data.getId()));
|
||||
params.add(JdbcParam.ofLong(lngPngApproDto.getId()));
|
||||
params.add(JdbcParam.ofString("XS"));
|
||||
params.add(JdbcParam.ofString(dto.getResult()));
|
||||
params.add(JdbcParam.ofString(dto.getRemark()));
|
||||
SaSession tokenSession = StpUtil.getTokenSession();
|
||||
UserDto user = tokenSession.get(GlobalConstant.LOGIN_USER_INFO_KEY, new UserDto());
|
||||
params.add(JdbcParam.ofLong(user.getId()));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
@ -130,4 +156,69 @@ public class PngApproServiceImpl extends MPJBaseServiceImpl<LngPngApproMapper, L
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void approveGD(ApproveDto<UpdateLngPngApproDto> dto) {
|
||||
List<UpdateLngPngApproDto> data = dto.getData();
|
||||
if (CollectionUtils.isEmpty(data)) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"请选择审批数据"));
|
||||
}
|
||||
String sql = com.pictc.utils.StringUtils.format("{? = call pc_{0}.f_approval_gd(?, ?, ?, ?, ?)}",
|
||||
"lng_png_appro");
|
||||
SaSession tokenSession = StpUtil.getTokenSession();
|
||||
UserDto user = tokenSession.get(GlobalConstant.LOGIN_USER_INFO_KEY, new UserDto());
|
||||
for (UpdateLngPngApproDto lngPngApproDto : data) {
|
||||
LngPngAppro lngPngAppro = this.baseMapper.selectById(lngPngApproDto.getId());
|
||||
if(lngPngAppro == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
}
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofString(user.getStaCode()));
|
||||
params.add(JdbcParam.ofLocalDateTime(lngPngAppro.getDatePlan()));
|
||||
params.add(JdbcParam.ofString(dto.getResult()));
|
||||
params.add(JdbcParam.ofString(dto.getRemark()));
|
||||
params.add(JdbcParam.ofLong(user.getId()));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (com.pictc.utils.StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void approveJSZ(ApproveDto<UpdateLngPngApproDto> dto) {
|
||||
List<UpdateLngPngApproDto> data = dto.getData();
|
||||
if (CollectionUtils.isEmpty(data)) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"请选择审批数据"));
|
||||
}
|
||||
String sql = com.pictc.utils.StringUtils.format("{? = call pc_{0}.f_approval_jsz(?, ?, ?, ?, ?)}",
|
||||
"lng_png_appro");
|
||||
SaSession tokenSession = StpUtil.getTokenSession();
|
||||
UserDto user = tokenSession.get(GlobalConstant.LOGIN_USER_INFO_KEY, new UserDto());
|
||||
for (UpdateLngPngApproDto lngPngApproDto : data) {
|
||||
LngPngAppro lngPngAppro = this.baseMapper.selectById(lngPngApproDto.getId());
|
||||
if(lngPngAppro == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
}
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofString(user.getStaCode()));
|
||||
params.add(JdbcParam.ofLocalDateTime(lngPngAppro.getDatePlan()));
|
||||
params.add(JdbcParam.ofString(dto.getResult()));
|
||||
params.add(JdbcParam.ofString(dto.getRemark()));
|
||||
params.add(JdbcParam.ofLong(user.getId()));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (com.pictc.utils.StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user