Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@ -0,0 +1,159 @@
|
||||
package com.xjrsoft.module.contract.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.google.api.client.util.Lists;
|
||||
import com.pictc.datalog.DataOperationContent;
|
||||
import com.pictc.datalog.DataOperationListener;
|
||||
import com.pictc.enums.BusinessCode;
|
||||
import com.pictc.enums.ExceptionCommonCode;
|
||||
import com.pictc.jdbc.JdbcTools;
|
||||
import com.pictc.jdbc.model.JdbcParam;
|
||||
import com.pictc.utils.StringUtils;
|
||||
import com.xjrsoft.common.exception.BusinessException;
|
||||
import com.xjrsoft.common.model.result.R;
|
||||
import com.xjrsoft.common.page.ConventPage;
|
||||
import com.xjrsoft.common.page.PageOutput;
|
||||
import com.xjrsoft.common.utils.VoToColumnUtil;
|
||||
import com.xjrsoft.module.contract.dto.LngContractPageDto;
|
||||
import com.xjrsoft.module.contract.dto.UpdateLngContractPIDto;
|
||||
import com.xjrsoft.module.contract.entity.LngContract;
|
||||
import com.xjrsoft.module.contract.service.IContractPurIntService;
|
||||
import com.xjrsoft.module.contract.vo.LngContractPageVo;
|
||||
import com.xjrsoft.module.datalog.service.DatalogService;
|
||||
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @title: 国际采购合同
|
||||
* @Author 管理员
|
||||
* @Date: 2026-01-30
|
||||
* @Version 1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/contract" + "/contractPurInt")
|
||||
@Api(value = "/contract" + "/contractPurInt",tags = "国际采购合同代码")
|
||||
@AllArgsConstructor
|
||||
public class ContractPurIntController {
|
||||
|
||||
|
||||
private final IContractPurIntService contractPurIntService;
|
||||
private final DatalogService dataService;
|
||||
|
||||
@GetMapping(value = "/page")
|
||||
@ApiOperation(value="LngContract列表(分页)")
|
||||
@SaCheckPermission("contractPurInt:list")
|
||||
public R page(@Valid LngContractPageDto dto){
|
||||
|
||||
LambdaQueryWrapper<LngContract> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper
|
||||
.eq(ObjectUtil.isNotNull(dto.getId()),LngContract::getId,dto.getId())
|
||||
.orderByDesc(LngContract::getId)
|
||||
.select(LngContract.class,x -> VoToColumnUtil.fieldsToColumns(LngContractPageVo.class).contains(x.getProperty()));
|
||||
IPage<LngContract> page = contractPurIntService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngContractPageVo> pageOutput = ConventPage.getPageOutput(page, LngContractPageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/info")
|
||||
@ApiOperation(value="根据id查询LngContract信息")
|
||||
@SaCheckPermission("contractPurInt:detail")
|
||||
public R info(@RequestParam Long id){
|
||||
return R.ok(contractPurIntService.getInfoById(id));
|
||||
}
|
||||
|
||||
@GetMapping(value = "/datalog")
|
||||
@ApiOperation(value="根据id查询LngContract数据详细日志")
|
||||
@SaCheckPermission("contractPurInt:datalog")
|
||||
public R datalog(@RequestParam Long id){
|
||||
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateLngContractPIDto.class,id);
|
||||
return R.ok(logs);
|
||||
}
|
||||
|
||||
|
||||
@PostMapping
|
||||
@ApiOperation(value = "新增LngContract")
|
||||
@SaCheckPermission("contractPurInt:add")
|
||||
public R add(@Valid @RequestBody UpdateLngContractPIDto dto){
|
||||
UpdateLngContractPIDto res = dataService.insert(dto, new DataOperationListener<UpdateLngContractPIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractPIDto before(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractPIDto after(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
execAfter(content.getTableName(), content.getIdValue(), "I");
|
||||
return content.getObj();
|
||||
}
|
||||
});
|
||||
return R.ok(res);
|
||||
}
|
||||
|
||||
private void execAfter(String table, Long id, String sign) {
|
||||
String sql = StringUtils.format("{? = call pc_{0}.f_save(?, ?)}", table);
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofLong(id));
|
||||
params.add(JdbcParam.ofString(sign));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_SAVE_EXEC_ERROR, error));
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@ApiOperation(value = "修改LngContract")
|
||||
@SaCheckPermission("contractPurInt:edit")
|
||||
public R update(@Valid @RequestBody UpdateLngContractPIDto dto){
|
||||
return R.ok(dataService.updateById(dto, new DataOperationListener<UpdateLngContractPIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractPIDto before(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractPIDto after(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
execAfter(content.getTableName(), content.getIdValue(), "U");
|
||||
return content.getObj();
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
@DeleteMapping
|
||||
@ApiOperation(value = "删除")
|
||||
@SaCheckPermission("contractPurInt:delete")
|
||||
public R delete(@Valid @RequestBody List<Long> ids){
|
||||
return R.ok(dataService.deleteByIds(UpdateLngContractPIDto.class, ids, new DataOperationListener<UpdateLngContractPIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractPIDto before(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
String sql = StringUtils.format("{? = call pc_{0}.f_before_delete(?)}", content.getTableName());
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofLong(content.getIdValue()));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error));
|
||||
}
|
||||
return content.getObj();
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractPIDto after(DataOperationContent<UpdateLngContractPIDto> content) {
|
||||
return null;
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,159 @@
|
||||
package com.xjrsoft.module.contract.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.google.api.client.util.Lists;
|
||||
import com.pictc.datalog.DataOperationContent;
|
||||
import com.pictc.datalog.DataOperationListener;
|
||||
import com.pictc.enums.BusinessCode;
|
||||
import com.pictc.enums.ExceptionCommonCode;
|
||||
import com.pictc.jdbc.JdbcTools;
|
||||
import com.pictc.jdbc.model.JdbcParam;
|
||||
import com.pictc.utils.StringUtils;
|
||||
import com.xjrsoft.common.exception.BusinessException;
|
||||
import com.xjrsoft.common.model.result.R;
|
||||
import com.xjrsoft.common.page.ConventPage;
|
||||
import com.xjrsoft.common.page.PageOutput;
|
||||
import com.xjrsoft.common.utils.VoToColumnUtil;
|
||||
import com.xjrsoft.module.contract.dto.LngContractPageDto;
|
||||
import com.xjrsoft.module.contract.dto.UpdateLngContractSIDto;
|
||||
import com.xjrsoft.module.contract.entity.LngContract;
|
||||
import com.xjrsoft.module.contract.service.IContractSalesIntService;
|
||||
import com.xjrsoft.module.contract.vo.LngContractPageVo;
|
||||
import com.xjrsoft.module.datalog.service.DatalogService;
|
||||
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @title: 国际销售合同
|
||||
* @Author 管理员
|
||||
* @Date: 2026-02-03
|
||||
* @Version 1.0
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/contract" + "/contractSalesInt")
|
||||
@Api(value = "/contract" + "/contractSalesInt",tags = "国际销售合同代码")
|
||||
@AllArgsConstructor
|
||||
public class ContractSalesIntController {
|
||||
|
||||
|
||||
private final IContractSalesIntService contractSalesIntService;
|
||||
private final DatalogService dataService;
|
||||
|
||||
@GetMapping(value = "/page")
|
||||
@ApiOperation(value="LngContract列表(分页)")
|
||||
@SaCheckPermission("contractSalesInt:list")
|
||||
public R page(@Valid LngContractPageDto dto){
|
||||
|
||||
LambdaQueryWrapper<LngContract> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper
|
||||
.eq(ObjectUtil.isNotNull(dto.getId()),LngContract::getId,dto.getId())
|
||||
.orderByDesc(LngContract::getId)
|
||||
.select(LngContract.class,x -> VoToColumnUtil.fieldsToColumns(LngContractPageVo.class).contains(x.getProperty()));
|
||||
IPage<LngContract> page = contractSalesIntService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngContractPageVo> pageOutput = ConventPage.getPageOutput(page, LngContractPageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/info")
|
||||
@ApiOperation(value="根据id查询LngContract信息")
|
||||
@SaCheckPermission("contractSalesInt:detail")
|
||||
public R info(@RequestParam Long id){
|
||||
return R.ok(contractSalesIntService.getInfoById(id));
|
||||
}
|
||||
|
||||
@GetMapping(value = "/datalog")
|
||||
@ApiOperation(value="根据id查询LngContract数据详细日志")
|
||||
@SaCheckPermission("contractSalesInt:datalog")
|
||||
public R datalog(@RequestParam Long id){
|
||||
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateLngContractSIDto.class,id);
|
||||
return R.ok(logs);
|
||||
}
|
||||
|
||||
|
||||
@PostMapping
|
||||
@ApiOperation(value = "新增LngContract")
|
||||
@SaCheckPermission("contractSalesInt:add")
|
||||
public R add(@Valid @RequestBody UpdateLngContractSIDto dto){
|
||||
UpdateLngContractSIDto res = dataService.insert(dto, new DataOperationListener<UpdateLngContractSIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractSIDto before(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractSIDto after(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
execAfter(content.getTableName(), content.getIdValue(), "I");
|
||||
return content.getObj();
|
||||
}
|
||||
});
|
||||
return R.ok(res);
|
||||
}
|
||||
|
||||
private void execAfter(String table, Long id, String sign) {
|
||||
String sql = StringUtils.format("{? = call pc_{0}.f_save(?, ?)}", table);
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofLong(id));
|
||||
params.add(JdbcParam.ofString(sign));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_SAVE_EXEC_ERROR, error));
|
||||
}
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@ApiOperation(value = "修改LngContract")
|
||||
@SaCheckPermission("contractSalesInt:edit")
|
||||
public R update(@Valid @RequestBody UpdateLngContractSIDto dto){
|
||||
return R.ok(dataService.updateById(dto, new DataOperationListener<UpdateLngContractSIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractSIDto before(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractSIDto after(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
execAfter(content.getTableName(), content.getIdValue(), "U");
|
||||
return content.getObj();
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
@DeleteMapping
|
||||
@ApiOperation(value = "删除")
|
||||
@SaCheckPermission("contractSalesInt:delete")
|
||||
public R delete(@Valid @RequestBody List<Long> ids){
|
||||
return R.ok(dataService.deleteByIds(UpdateLngContractSIDto.class, ids, new DataOperationListener<UpdateLngContractSIDto>() {
|
||||
@Override
|
||||
public UpdateLngContractSIDto before(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
String sql = StringUtils.format("{? = call pc_{0}.f_before_delete(?)}", content.getTableName());
|
||||
List<JdbcParam> params = Lists.newArrayList();
|
||||
JdbcParam outParam = JdbcParam.ofString(null).setOut(true);
|
||||
params.add(outParam);
|
||||
params.add(JdbcParam.ofLong(content.getIdValue()));
|
||||
JdbcTools.call(sql,params);
|
||||
String error = outParam.getStringValue();
|
||||
if (StringUtils.isNotEmpty(error)) {
|
||||
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_DELETE_EXEC_ERROR, error));
|
||||
}
|
||||
return content.getObj();
|
||||
}
|
||||
|
||||
@Override
|
||||
public UpdateLngContractSIDto after(DataOperationContent<UpdateLngContractSIDto> content) {
|
||||
return null;
|
||||
}
|
||||
}));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,282 @@
|
||||
package com.xjrsoft.module.contract.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
/**
|
||||
* @title: 国际采购合同
|
||||
* @Author 管理员
|
||||
* @Date: 2026-01-30
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("lng_contract_pur_int")
|
||||
@ApiModel(value = "国际采购合同对象", description = "国际采购合同")
|
||||
public class LngContractPurInt implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ApiModelProperty("主键")
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 合同-档案主键
|
||||
*/
|
||||
@ApiModelProperty("合同-档案主键")
|
||||
private Long kId;
|
||||
|
||||
/**
|
||||
* 长协/现货(长协/现货……)
|
||||
*/
|
||||
@ApiModelProperty("长协/现货(长协/现货……)")
|
||||
private String longSpotCode;
|
||||
|
||||
/**
|
||||
* 国际气源地
|
||||
*/
|
||||
@ApiModelProperty("国际气源地")
|
||||
private String sourceName;
|
||||
|
||||
/**
|
||||
* 销售区域
|
||||
*/
|
||||
@ApiModelProperty("销售区域")
|
||||
private String salesAreaCode;
|
||||
|
||||
/**
|
||||
* 价格条款
|
||||
*/
|
||||
@ApiModelProperty("价格条款")
|
||||
private String prcTermCode;
|
||||
|
||||
/**
|
||||
* 价格说明
|
||||
*/
|
||||
@ApiModelProperty("价格说明")
|
||||
private String prcDesc;
|
||||
|
||||
/**
|
||||
* 信用担保(SBLC/Open)
|
||||
*/
|
||||
@ApiModelProperty("信用担保(SBLC/Open)")
|
||||
private String crTermCode;
|
||||
|
||||
/**
|
||||
* 信用说明
|
||||
*/
|
||||
@ApiModelProperty("信用说明")
|
||||
private String crDesc;
|
||||
|
||||
/**
|
||||
* 最小合同量(百万英热)
|
||||
*/
|
||||
@ApiModelProperty("最小合同量(百万英热)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal qtyFrom;
|
||||
|
||||
/**
|
||||
* 最大合同量(百万英热)
|
||||
*/
|
||||
@ApiModelProperty("最大合同量(百万英热)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal qtyTo;
|
||||
|
||||
/**
|
||||
* 合同量约定
|
||||
*/
|
||||
@ApiModelProperty("合同量约定")
|
||||
private String qtyDesc;
|
||||
|
||||
/**
|
||||
* 最小甲烷含量(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最小甲烷含量(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specCh4From;
|
||||
|
||||
/**
|
||||
* 最低热值(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最低热值(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specMmbtuFrom;
|
||||
|
||||
/**
|
||||
* 最高热值(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最高热值(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specMmbtuTo;
|
||||
|
||||
/**
|
||||
* 气质约定
|
||||
*/
|
||||
@ApiModelProperty("气质约定")
|
||||
private String specDesc;
|
||||
|
||||
/**
|
||||
* 收付款说明(收到发票后日)
|
||||
*/
|
||||
@ApiModelProperty("收付款说明(收到发票后日)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Short afterInv;
|
||||
|
||||
/**
|
||||
* 自然日/工作日(N-自然日,CN-工作日)
|
||||
*/
|
||||
@ApiModelProperty("自然日/工作日(N-自然日,CN-工作日)")
|
||||
private String calTypeCode;
|
||||
|
||||
/**
|
||||
* 收付款说明
|
||||
*/
|
||||
@ApiModelProperty("收付款说明")
|
||||
private String paymentDesc;
|
||||
|
||||
/**
|
||||
* 装港(可选可录入)
|
||||
*/
|
||||
@ApiModelProperty("装港(可选可录入)")
|
||||
private String loadingPort;
|
||||
|
||||
/**
|
||||
* 装港描述
|
||||
*/
|
||||
@ApiModelProperty("装港描述")
|
||||
private String loadingPortDesc;
|
||||
|
||||
/**
|
||||
* 卸港(可选可录入)
|
||||
*/
|
||||
@ApiModelProperty("卸港(可选可录入)")
|
||||
private String unloadingPort;
|
||||
|
||||
/**
|
||||
* 卸港描述
|
||||
*/
|
||||
@ApiModelProperty("卸港描述")
|
||||
private String unloadingPortDesc;
|
||||
|
||||
/**
|
||||
* 装卸条款说明
|
||||
*/
|
||||
@ApiModelProperty("装卸条款说明")
|
||||
private String loadUnloadDesc;
|
||||
|
||||
/**
|
||||
* 滞期费说明
|
||||
*/
|
||||
@ApiModelProperty("滞期费说明")
|
||||
private String dmDesc;
|
||||
|
||||
/**
|
||||
* 交付说明
|
||||
*/
|
||||
@ApiModelProperty("交付说明")
|
||||
private String deliveryDesc;
|
||||
|
||||
/**
|
||||
* 计量说明
|
||||
*/
|
||||
@ApiModelProperty("计量说明")
|
||||
private String meaDesc;
|
||||
|
||||
/**
|
||||
* 所有权和风险说明
|
||||
*/
|
||||
@ApiModelProperty("所有权和风险说明")
|
||||
private String riskDesc;
|
||||
|
||||
/**
|
||||
* 保险说明
|
||||
*/
|
||||
@ApiModelProperty("保险说明")
|
||||
private String insurDesc;
|
||||
|
||||
/**
|
||||
* GT&C
|
||||
*/
|
||||
@ApiModelProperty("GT&C")
|
||||
private String gtc;
|
||||
|
||||
/**
|
||||
* 法律仲裁信息
|
||||
*/
|
||||
@ApiModelProperty("法律仲裁信息")
|
||||
private String legalDesc;
|
||||
|
||||
/**
|
||||
* 违约条款说明
|
||||
*/
|
||||
@ApiModelProperty("违约条款说明")
|
||||
private String defaultDesc;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ApiModelProperty("备注")
|
||||
private String note;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ApiModelProperty("创建人id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long createUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ApiModelProperty("创建时间")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private LocalDateTime createDate;
|
||||
|
||||
/**
|
||||
* 修改人id
|
||||
*/
|
||||
@ApiModelProperty("修改人id")
|
||||
@TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long modifyUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@ApiModelProperty("修改时间")
|
||||
@TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED)
|
||||
private LocalDateTime modifyDate;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@ApiModelProperty("租户id")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long tenantId;
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
@ApiModelProperty("部门id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 数据权限id
|
||||
*/
|
||||
@ApiModelProperty("数据权限id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long ruleUserId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,282 @@
|
||||
package com.xjrsoft.module.contract.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
||||
/**
|
||||
* @title: 国际销售合同
|
||||
* @Author 管理员
|
||||
* @Date: 2026-02-03
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
@TableName("lng_contract_sales_int")
|
||||
@ApiModel(value = "国际销售合同对象", description = "国际销售合同")
|
||||
public class LngContractSalesInt implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@ApiModelProperty("主键")
|
||||
@TableId
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 合同-档案主键
|
||||
*/
|
||||
@ApiModelProperty("合同-档案主键")
|
||||
private Long kId;
|
||||
|
||||
/**
|
||||
* 长协/现货(长协/现货……)
|
||||
*/
|
||||
@ApiModelProperty("长协/现货(长协/现货……)")
|
||||
private String longSpotCode;
|
||||
|
||||
/**
|
||||
* 国际气源地
|
||||
*/
|
||||
@ApiModelProperty("国际气源地")
|
||||
private String sourceName;
|
||||
|
||||
/**
|
||||
* 销售区域
|
||||
*/
|
||||
@ApiModelProperty("销售区域")
|
||||
private String salesAreaCode;
|
||||
|
||||
/**
|
||||
* 价格条款
|
||||
*/
|
||||
@ApiModelProperty("价格条款")
|
||||
private String prcTermCode;
|
||||
|
||||
/**
|
||||
* 价格说明
|
||||
*/
|
||||
@ApiModelProperty("价格说明")
|
||||
private String prcDesc;
|
||||
|
||||
/**
|
||||
* 信用担保(SBLC/Open)
|
||||
*/
|
||||
@ApiModelProperty("信用担保(SBLC/Open)")
|
||||
private String crTermCode;
|
||||
|
||||
/**
|
||||
* 信用说明
|
||||
*/
|
||||
@ApiModelProperty("信用说明")
|
||||
private String crDesc;
|
||||
|
||||
/**
|
||||
* 最小合同量(百万英热)
|
||||
*/
|
||||
@ApiModelProperty("最小合同量(百万英热)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal qtyFrom;
|
||||
|
||||
/**
|
||||
* 最大合同量(百万英热)
|
||||
*/
|
||||
@ApiModelProperty("最大合同量(百万英热)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal qtyTo;
|
||||
|
||||
/**
|
||||
* 合同量约定
|
||||
*/
|
||||
@ApiModelProperty("合同量约定")
|
||||
private String qtyDesc;
|
||||
|
||||
/**
|
||||
* 最小甲烷含量(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最小甲烷含量(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specCh4From;
|
||||
|
||||
/**
|
||||
* 最低热值(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最低热值(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specMmbtuFrom;
|
||||
|
||||
/**
|
||||
* 最高热值(百万英热/立方英尺)
|
||||
*/
|
||||
@ApiModelProperty("最高热值(百万英热/立方英尺)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private BigDecimal specMmbtuTo;
|
||||
|
||||
/**
|
||||
* 气质约定
|
||||
*/
|
||||
@ApiModelProperty("气质约定")
|
||||
private String specDesc;
|
||||
|
||||
/**
|
||||
* 收付款说明(收到发票后日)
|
||||
*/
|
||||
@ApiModelProperty("收付款说明(收到发票后日)")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Short afterInv;
|
||||
|
||||
/**
|
||||
* 自然日/工作日(N-自然日,W-工作日)
|
||||
*/
|
||||
@ApiModelProperty("自然日/工作日(N-自然日,W-工作日)")
|
||||
private String calTypeCode;
|
||||
|
||||
/**
|
||||
* 收付款说明
|
||||
*/
|
||||
@ApiModelProperty("收付款说明")
|
||||
private String paymentDesc;
|
||||
|
||||
/**
|
||||
* 装港(可选可录入)
|
||||
*/
|
||||
@ApiModelProperty("装港(可选可录入)")
|
||||
private String loadingPort;
|
||||
|
||||
/**
|
||||
* 装港描述
|
||||
*/
|
||||
@ApiModelProperty("装港描述")
|
||||
private String loadingPortDesc;
|
||||
|
||||
/**
|
||||
* 卸港(可选可录入)
|
||||
*/
|
||||
@ApiModelProperty("卸港(可选可录入)")
|
||||
private String unloadingPort;
|
||||
|
||||
/**
|
||||
* 卸港描述
|
||||
*/
|
||||
@ApiModelProperty("卸港描述")
|
||||
private String unloadingPortDesc;
|
||||
|
||||
/**
|
||||
* 装卸条款说明
|
||||
*/
|
||||
@ApiModelProperty("装卸条款说明")
|
||||
private String loadUnloadDesc;
|
||||
|
||||
/**
|
||||
* 滞期费说明
|
||||
*/
|
||||
@ApiModelProperty("滞期费说明")
|
||||
private String dmDesc;
|
||||
|
||||
/**
|
||||
* 交付说明
|
||||
*/
|
||||
@ApiModelProperty("交付说明")
|
||||
private String deliveryDesc;
|
||||
|
||||
/**
|
||||
* 计量说明
|
||||
*/
|
||||
@ApiModelProperty("计量说明")
|
||||
private String meaDesc;
|
||||
|
||||
/**
|
||||
* 所有权和风险说明
|
||||
*/
|
||||
@ApiModelProperty("所有权和风险说明")
|
||||
private String riskDesc;
|
||||
|
||||
/**
|
||||
* 保险说明
|
||||
*/
|
||||
@ApiModelProperty("保险说明")
|
||||
private String insurDesc;
|
||||
|
||||
/**
|
||||
* GT&C
|
||||
*/
|
||||
@ApiModelProperty("GT&C")
|
||||
private String gtc;
|
||||
|
||||
/**
|
||||
* 法律仲裁信息
|
||||
*/
|
||||
@ApiModelProperty("法律仲裁信息")
|
||||
private String legalDesc;
|
||||
|
||||
/**
|
||||
* 违约条款说明
|
||||
*/
|
||||
@ApiModelProperty("违约条款说明")
|
||||
private String defaultDesc;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ApiModelProperty("备注")
|
||||
private String note;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ApiModelProperty("创建人id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long createUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ApiModelProperty("创建时间")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private LocalDateTime createDate;
|
||||
|
||||
/**
|
||||
* 修改人id
|
||||
*/
|
||||
@ApiModelProperty("修改人id")
|
||||
@TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long modifyUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@ApiModelProperty("修改时间")
|
||||
@TableField(fill = FieldFill.UPDATE, updateStrategy = FieldStrategy.IGNORED)
|
||||
private LocalDateTime modifyDate;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@ApiModelProperty("租户id")
|
||||
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long tenantId;
|
||||
|
||||
/**
|
||||
* 部门id
|
||||
*/
|
||||
@ApiModelProperty("部门id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long deptId;
|
||||
|
||||
/**
|
||||
* 数据权限id
|
||||
*/
|
||||
@ApiModelProperty("数据权限id")
|
||||
@TableField(fill = FieldFill.INSERT, updateStrategy = FieldStrategy.IGNORED)
|
||||
private Long ruleUserId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
package com.xjrsoft.module.contract.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.github.yulichang.base.MPJBaseMapper;
|
||||
import com.xjrsoft.module.contract.entity.LngContractPurInt;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* @title: mapper
|
||||
* @Author 管理员
|
||||
* @Date: 2026-01-30
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface LngContractPurIntMapper extends MPJBaseMapper<LngContractPurInt>, BaseMapper<LngContractPurInt> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,17 @@
|
||||
package com.xjrsoft.module.contract.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.github.yulichang.base.MPJBaseMapper;
|
||||
import com.xjrsoft.module.contract.entity.LngContractSalesInt;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* @title: mapper
|
||||
* @Author 管理员
|
||||
* @Date: 2026-02-03
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface LngContractSalesIntMapper extends MPJBaseMapper<LngContractSalesInt>, BaseMapper<LngContractSalesInt> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
package com.xjrsoft.module.contract.service;
|
||||
|
||||
import com.github.yulichang.base.MPJBaseService;
|
||||
import com.github.yulichang.extension.mapping.base.MPJDeepService;
|
||||
import com.github.yulichang.extension.mapping.base.MPJRelationService;
|
||||
import com.xjrsoft.module.contract.entity.LngContract;
|
||||
import com.xjrsoft.module.contract.vo.LngContractPIVo;
|
||||
|
||||
/**
|
||||
* @title: service
|
||||
* @Author 管理员
|
||||
* @Date: 2026-01-30
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
public interface IContractPurIntService extends MPJBaseService<LngContract>, MPJDeepService<LngContract>, MPJRelationService<LngContract> {
|
||||
|
||||
LngContractPIVo getInfoById(Long id);
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
package com.xjrsoft.module.contract.service;
|
||||
|
||||
import com.github.yulichang.base.MPJBaseService;
|
||||
import com.github.yulichang.extension.mapping.base.MPJDeepService;
|
||||
import com.github.yulichang.extension.mapping.base.MPJRelationService;
|
||||
import com.xjrsoft.module.contract.entity.LngContract;
|
||||
import com.xjrsoft.module.contract.vo.LngContractSIVo;
|
||||
|
||||
/**
|
||||
* @title: service
|
||||
* @Author 管理员
|
||||
* @Date: 2026-02-03
|
||||
* @Version 1.0
|
||||
*/
|
||||
|
||||
public interface IContractSalesIntService extends MPJBaseService<LngContract>, MPJDeepService<LngContract>, MPJRelationService<LngContract> {
|
||||
|
||||
LngContractSIVo getInfoById(Long id);
|
||||
}
|
||||
@ -0,0 +1,86 @@
|
||||
package com.xjrsoft.module.contract.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.pictc.enums.BusinessCode;
|
||||
import com.xjrsoft.common.exception.BusinessException;
|
||||
import com.xjrsoft.module.contract.entity.*;
|
||||
import com.xjrsoft.module.contract.mapper.*;
|
||||
import com.xjrsoft.module.contract.service.IContractPurIntService;
|
||||
import com.xjrsoft.module.contract.vo.*;
|
||||
import com.xjrsoft.module.sales.vo.LngApproVo;
|
||||
import com.xjrsoft.module.system.client.IFileClient;
|
||||
import com.xjrsoft.module.system.vo.LngFileUploadVo;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @title: service
|
||||
* @Author 管理员
|
||||
* @Date: 2026-01-30
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class ContractPurIntServiceImpl extends MPJBaseServiceImpl<LngContractMapper, LngContract> implements IContractPurIntService {
|
||||
|
||||
private final LngContractPurIntMapper lngContractPurIntMapper;
|
||||
private final LngContractFactMapper lngContractFactMapper;
|
||||
private final LngContractFactRelMapper lngContractFactRelMapper;
|
||||
private final LngContractApproRelMapper lngContractApproRelMapper;
|
||||
private final IFileClient fileClient;
|
||||
|
||||
@Override
|
||||
public LngContractPIVo getInfoById(Long id) {
|
||||
LngContract lngContract = this.getById(id);
|
||||
if(lngContract == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
}
|
||||
LngContractPIVo vo = BeanUtil.toBean(lngContract, LngContractPIVo.class);
|
||||
List<LngContractPurInt> lngContractPurIntList = lngContractPurIntMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractPurInt>()
|
||||
.eq(LngContractPurInt::getKId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractPurIntList)) {
|
||||
vo.setLngContractPurIntList(BeanUtil.copyToList(lngContractPurIntList,
|
||||
LngContractPurIntVo.class));
|
||||
}
|
||||
List<LngContractFactRel> lngContractFactRelList = lngContractFactRelMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractFactRel>()
|
||||
.eq(LngContractFactRel::getKId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractFactRelList)) {
|
||||
List<LngContractFactVo> lngContractFactVoList = Lists.newArrayList();
|
||||
lngContractFactRelList.forEach(x -> {
|
||||
LngContractFact lngContractFact = lngContractFactMapper.selectById(x.getKFactId());
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract_fact",
|
||||
"lngFileUploadList", lngContractFact.getId());
|
||||
LngContractFactVo lngContractFactVo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class);
|
||||
lngContractFactVo.setLngFileUploadList(fileList);
|
||||
lngContractFactVoList.add(lngContractFactVo);
|
||||
});
|
||||
vo.setLngContractFactList(lngContractFactVoList);
|
||||
}
|
||||
List<LngContractApproRel> lngContractApproRelList = lngContractApproRelMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractApproRel>()
|
||||
.eq(LngContractApproRel::getTableId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractApproRelList)) {
|
||||
List<LngApproVo> approVoList = Lists.newArrayList();
|
||||
lngContractApproRelList.forEach(x -> {
|
||||
LngApproVo approVo = lngContractFactMapper.getLngApproVo(x.getApproId());
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
|
||||
"lngFileUploadList", approVo.getId());
|
||||
approVo.setLngFileUploadList(fileList);
|
||||
approVoList.add(approVo);
|
||||
});
|
||||
vo.setLngApproVoList(approVoList);
|
||||
}
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract",
|
||||
"lngFileUploadList", vo.getId());
|
||||
vo.setLngFileUploadList(fileList);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,86 @@
|
||||
package com.xjrsoft.module.contract.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.github.yulichang.base.MPJBaseServiceImpl;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.pictc.enums.BusinessCode;
|
||||
import com.xjrsoft.common.exception.BusinessException;
|
||||
import com.xjrsoft.module.contract.entity.*;
|
||||
import com.xjrsoft.module.contract.mapper.*;
|
||||
import com.xjrsoft.module.contract.service.IContractSalesIntService;
|
||||
import com.xjrsoft.module.contract.vo.*;
|
||||
import com.xjrsoft.module.sales.vo.LngApproVo;
|
||||
import com.xjrsoft.module.system.client.IFileClient;
|
||||
import com.xjrsoft.module.system.vo.LngFileUploadVo;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @title: service
|
||||
* @Author 管理员
|
||||
* @Date: 2026-02-03
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class ContractSalesIntServiceImpl extends MPJBaseServiceImpl<LngContractMapper, LngContract> implements IContractSalesIntService {
|
||||
|
||||
private final LngContractSalesIntMapper lngContractSalesIntMapper;
|
||||
private final LngContractFactMapper lngContractFactMapper;
|
||||
private final LngContractFactRelMapper lngContractFactRelMapper;
|
||||
private final LngContractApproRelMapper lngContractApproRelMapper;
|
||||
private final IFileClient fileClient;
|
||||
|
||||
@Override
|
||||
public LngContractSIVo getInfoById(Long id) {
|
||||
LngContract lngContract = this.getById(id);
|
||||
if(lngContract == null) {
|
||||
throw new BusinessException(BusinessCode.of(10500,"找不到此数据"));
|
||||
}
|
||||
LngContractSIVo vo = BeanUtil.toBean(lngContract, LngContractSIVo.class);
|
||||
List<LngContractSalesInt> lngContractSalesIntList = lngContractSalesIntMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractSalesInt>()
|
||||
.eq(LngContractSalesInt::getKId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractSalesIntList)) {
|
||||
vo.setLngContractSalesIntList(BeanUtil.copyToList(lngContractSalesIntList,
|
||||
LngContractSalesIntVo.class));
|
||||
}
|
||||
List<LngContractFactRel> lngContractFactRelList = lngContractFactRelMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractFactRel>()
|
||||
.eq(LngContractFactRel::getKId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractFactRelList)) {
|
||||
List<LngContractFactVo> lngContractFactVoList = Lists.newArrayList();
|
||||
lngContractFactRelList.forEach(x -> {
|
||||
LngContractFact lngContractFact = lngContractFactMapper.selectById(x.getKFactId());
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract_fact",
|
||||
"lngFileUploadList", lngContractFact.getId());
|
||||
LngContractFactVo lngContractFactVo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class);
|
||||
lngContractFactVo.setLngFileUploadList(fileList);
|
||||
lngContractFactVoList.add(lngContractFactVo);
|
||||
});
|
||||
vo.setLngContractFactList(lngContractFactVoList);
|
||||
}
|
||||
List<LngContractApproRel> lngContractApproRelList = lngContractApproRelMapper.selectList(
|
||||
new LambdaQueryWrapper<LngContractApproRel>()
|
||||
.eq(LngContractApproRel::getTableId, lngContract.getId()));
|
||||
if (CollectionUtils.isNotEmpty(lngContractApproRelList)) {
|
||||
List<LngApproVo> approVoList = Lists.newArrayList();
|
||||
lngContractApproRelList.forEach(x -> {
|
||||
LngApproVo approVo = lngContractFactMapper.getLngApproVo(x.getApproId());
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
|
||||
"lngFileUploadList", approVo.getId());
|
||||
approVo.setLngFileUploadList(fileList);
|
||||
approVoList.add(approVo);
|
||||
});
|
||||
vo.setLngApproVoList(approVoList);
|
||||
}
|
||||
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract",
|
||||
"lngFileUploadList", vo.getId());
|
||||
vo.setLngFileUploadList(fileList);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user