diff --git a/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/DealerController.java b/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/DealerController.java index 28527b4..b5284a2 100644 --- a/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/DealerController.java +++ b/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/DealerController.java @@ -6,10 +6,7 @@ import com.alibaba.cola.dto.PageResponse; import com.alibaba.cola.dto.Response; import com.alibaba.cola.dto.SingleResponse; import com.xunhong.erp.turbo.api.biz.api.DealerServiceI; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDestroyCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDragCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerListQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerShowQry; @@ -92,4 +89,18 @@ public class DealerController { dealerService.drag(dealerDragCmd); return Response.buildSuccess(); } + + @SaCheckLogin + @RequestMapping(value = "updateDealerSettings", method = {RequestMethod.PATCH, RequestMethod.PUT}) + @Operation(summary = "更新经销商设置", method = "PATCH") + public SingleResponse updateDealerSettings(@RequestBody @Validated DealerUpdateSettingsCmd dealerUpdateSettingsCmd) { + return SingleResponse.of(dealerService.updateSettings(dealerUpdateSettingsCmd)); + } + + @SaCheckLogin + @RequestMapping(value = "updateDealerTemplate", method = {RequestMethod.PATCH, RequestMethod.PUT}) + @Operation(summary = "更新经销商发货单模板", method = "PATCH") + public SingleResponse updateDealerTemplate(@RequestBody @Validated DealerUpdateTemplateCmd dealerUpdateTemplateCmd) { + return SingleResponse.of(dealerService.updateTemplate(dealerUpdateTemplateCmd)); + } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateSettingsCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateSettingsCmdExe.java new file mode 100644 index 0000000..642aa51 --- /dev/null +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateSettingsCmdExe.java @@ -0,0 +1,29 @@ +package com.xunhong.erp.turbo.biz.app.executor.cmd; + +import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateSettingsCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.DealerVO; +import com.xunhong.erp.turbo.biz.app.assembler.DealerAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Dealer; +import com.xunhong.erp.turbo.biz.domain.gateway.DealerGateway; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +/** + * 经销商设置更新执行器 + * + * @author shenyifei + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class DealerUpdateSettingsCmdExe { + + private final DealerAssembler dealerAssembler; + private final DealerGateway dealerGateway; + + public DealerVO execute(DealerUpdateSettingsCmd dealerUpdateSettingsCmd) { + Dealer dealer = dealerGateway.updateSettings(dealerUpdateSettingsCmd); + return dealerAssembler.toDealerVO(dealer); + } +} diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateTemplateCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateTemplateCmdExe.java new file mode 100644 index 0000000..878475c --- /dev/null +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/DealerUpdateTemplateCmdExe.java @@ -0,0 +1,29 @@ +package com.xunhong.erp.turbo.biz.app.executor.cmd; + +import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateTemplateCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.DealerVO; +import com.xunhong.erp.turbo.biz.app.assembler.DealerAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Dealer; +import com.xunhong.erp.turbo.biz.domain.gateway.DealerGateway; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +/** + * 经销商发货单模板更新执行器 + * + * @author shenyifei + */ +@Slf4j +@Component +@RequiredArgsConstructor +public class DealerUpdateTemplateCmdExe { + + private final DealerAssembler dealerAssembler; + private final DealerGateway dealerGateway; + + public DealerVO execute(DealerUpdateTemplateCmd dealerUpdateTemplateCmd) { + Dealer dealer = dealerGateway.updateTemplate(dealerUpdateTemplateCmd); + return dealerAssembler.toDealerVO(dealer); + } +} diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/DealerServiceImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/DealerServiceImpl.java index 77e90cc..57d2498 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/DealerServiceImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/DealerServiceImpl.java @@ -1,18 +1,13 @@ package com.xunhong.erp.turbo.biz.app.service; import com.xunhong.erp.turbo.api.biz.api.DealerServiceI; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDestroyCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDragCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerListQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerShowQry; import com.xunhong.erp.turbo.api.biz.dto.vo.DealerVO; import com.xunhong.erp.turbo.base.dto.PageDTO; -import com.xunhong.erp.turbo.biz.app.executor.cmd.DealerCreateCmdExe; -import com.xunhong.erp.turbo.biz.app.executor.cmd.DealerDestroyCmdExe; -import com.xunhong.erp.turbo.biz.app.executor.cmd.DealerUpdateCmdExe; +import com.xunhong.erp.turbo.biz.app.executor.cmd.*; import com.xunhong.erp.turbo.biz.app.executor.query.DealerDragCmdExe; import com.xunhong.erp.turbo.biz.app.executor.query.DealerListQryExe; import com.xunhong.erp.turbo.biz.app.executor.query.DealerPageQryExe; @@ -40,6 +35,8 @@ public class DealerServiceImpl implements DealerServiceI { private final DealerPageQryExe dealerPageQryExe; private final DealerListQryExe dealerListQryExe; private final DealerDragCmdExe dealerDragCmdExe; + private final DealerUpdateSettingsCmdExe dealerUpdateSettingsCmdExe; + private final DealerUpdateTemplateCmdExe dealerUpdateTemplateCmdExe; @Override public DealerVO create(DealerCreateCmd dealerCreateCmd) { @@ -75,4 +72,14 @@ public class DealerServiceImpl implements DealerServiceI { public void drag(DealerDragCmd dealerDragCmd) { dealerDragCmdExe.execute(dealerDragCmd); } -} \ No newline at end of file + + @Override + public DealerVO updateSettings(DealerUpdateSettingsCmd dealerUpdateSettingsCmd) { + return dealerUpdateSettingsCmdExe.execute(dealerUpdateSettingsCmd); + } + + @Override + public DealerVO updateTemplate(DealerUpdateTemplateCmd dealerUpdateTemplateCmd) { + return dealerUpdateTemplateCmdExe.execute(dealerUpdateTemplateCmd); + } +} diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/DealerGateway.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/DealerGateway.java index 9eb7666..a0d3e7d 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/DealerGateway.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/DealerGateway.java @@ -1,10 +1,7 @@ package com.xunhong.erp.turbo.biz.domain.gateway; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDestroyCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDragCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerListQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerShowQry; @@ -29,4 +26,8 @@ public interface DealerGateway { void destroy(DealerDestroyCmd dealerDestroyCmd); void drag(DealerDragCmd dealerDragCmd); + + Dealer updateSettings(DealerUpdateSettingsCmd dealerUpdateSettingsCmd); + + Dealer updateTemplate(DealerUpdateTemplateCmd dealerUpdateTemplateCmd); } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java index b13adc8..3449719 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java @@ -4,7 +4,6 @@ import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; import com.xunhong.erp.turbo.biz.domain.entity.Dealer; import com.xunhong.erp.turbo.biz.infrastructure.entity.DealerDO; -import com.xunhong.erp.turbo.biz.infrastructure.entity.DealerSettingDO; import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.mapstruct.MappingTarget; @@ -34,7 +33,7 @@ public interface DealerConvert { @Mapping(target = "dealerPaymentAccountList", source = "dealerPaymentAccountDOList") Dealer toDealer(DealerDO dealerDO); - @Mapping(target = "setting", expression = "java(this.toSettingDO(dealerCreateCmd))") + @Mapping(target = "setting", ignore = true) @Mapping(target = "sort", ignore = true) @Mapping(target = "deliveryTemplate", ignore = true) @Mapping(target = "dealerPaymentAccountDOList", ignore = true) @@ -44,27 +43,7 @@ public interface DealerConvert { @Mapping(target = "createdAt", ignore = true) DealerDO toDealerDO(DealerCreateCmd dealerCreateCmd); - default DealerSettingDO toSettingDO(DealerCreateCmd dealerCreateCmd) { - DealerSettingDO dealerSettingDO = new DealerSettingDO(); - dealerSettingDO.setEnableShare(dealerCreateCmd.getEnableShare()); - dealerSettingDO.setShareRatio(dealerCreateCmd.getShareRatio()); - dealerSettingDO.setFreightCostFlag(dealerCreateCmd.getFreightCostFlag()); - dealerSettingDO.setStrawMatCostFlag(dealerCreateCmd.getStrawMatCostFlag()); - dealerSettingDO.setIncludePackingFlag(dealerCreateCmd.getIncludePackingFlag()); - dealerSettingDO.setIncludeFreightFlag(dealerCreateCmd.getIncludeFreightFlag()); - dealerSettingDO.setEnableAccrualTax(dealerCreateCmd.getEnableAccrualTax()); - dealerSettingDO.setAccrualTaxRatio(dealerCreateCmd.getAccrualTaxRatio()); - dealerSettingDO.setEnableCompanyRebate(dealerCreateCmd.getEnableCompanyRebate()); - dealerSettingDO.setCompanyRebateRatio(dealerCreateCmd.getCompanyRebateRatio()); - dealerSettingDO.setShareAdjusted(dealerCreateCmd.getShareAdjusted()); - dealerSettingDO.setEnableLoss(dealerCreateCmd.getEnableLoss()); - dealerSettingDO.setLossAmount(dealerCreateCmd.getLossAmount()); - dealerSettingDO.setEnableInitialTrainNo(dealerCreateCmd.getEnableInitialTrainNo()); - dealerSettingDO.setInitialTrainNo(dealerCreateCmd.getInitialTrainNo()); - return dealerSettingDO; - } - - @Mapping(target = "setting", expression = "java(this.toSettingDO(dealerUpdateCmd))") + @Mapping(target = "setting", ignore = true) @Mapping(target = "sort", ignore = true) @Mapping(target = "dealerPaymentAccountDOList", ignore = true) @Mapping(target = "version", ignore = true) diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java index 2796e20..b90434e 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java @@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDestroyCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDragCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerListQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerShowQry; @@ -175,4 +172,71 @@ public class DealerGatewayImpl implements DealerGateway { return prevSort != null && nextSort != null && (nextSort - prevSort) < 1.0; // 判断间隙是否耗尽 } + + @Override + public Dealer updateSettings(DealerUpdateSettingsCmd dealerUpdateSettingsCmd) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(DealerDO.class); + queryWrapper.eq(DealerDO::getDealerId, dealerUpdateSettingsCmd.getDealerId()); + queryWrapper.last("limit 1"); + + DealerDO dealerDO = dealerMapper.selectOne(queryWrapper); + if (dealerDO == null) { + return null; + } + + // 更新设置字段 + DealerSettingDO setting = dealerDO.getSetting(); + if (setting == null) { + setting = new DealerSettingDO(); + dealerDO.setSetting(setting); + } + + // 分成设置 + setting.setEnableShare(dealerUpdateSettingsCmd.getEnableShare()); + setting.setShareRatio(dealerUpdateSettingsCmd.getShareRatio()); + + // 成本标志 + setting.setFreightCostFlag(dealerUpdateSettingsCmd.getFreightCostFlag()); + setting.setStrawMatCostFlag(dealerUpdateSettingsCmd.getStrawMatCostFlag()); + setting.setIncludePackingFlag(dealerUpdateSettingsCmd.getIncludePackingFlag()); + setting.setIncludeFreightFlag(dealerUpdateSettingsCmd.getIncludeFreightFlag()); + + // 计提税金 + setting.setEnableAccrualTax(dealerUpdateSettingsCmd.getEnableAccrualTax()); + setting.setAccrualTaxRatio(dealerUpdateSettingsCmd.getAccrualTaxRatio()); + + // 公司返点 + setting.setEnableCompanyRebate(dealerUpdateSettingsCmd.getEnableCompanyRebate()); + setting.setCompanyRebateRatio(dealerUpdateSettingsCmd.getCompanyRebateRatio()); + setting.setShareAdjusted(dealerUpdateSettingsCmd.getShareAdjusted()); + + // 损耗设置 + setting.setEnableLoss(dealerUpdateSettingsCmd.getEnableLoss()); + setting.setLossAmount(dealerUpdateSettingsCmd.getLossAmount()); + + // 初始车次号 + setting.setEnableInitialTrainNo(dealerUpdateSettingsCmd.getEnableInitialTrainNo()); + setting.setInitialTrainNo(dealerUpdateSettingsCmd.getInitialTrainNo()); + + dealerMapper.updateById(dealerDO); + return dealerConvert.toDealer(dealerDO); + } + + @Override + public Dealer updateTemplate(DealerUpdateTemplateCmd dealerUpdateTemplateCmd) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(DealerDO.class); + queryWrapper.eq(DealerDO::getDealerId, dealerUpdateTemplateCmd.getDealerId()); + queryWrapper.last("limit 1"); + + DealerDO dealerDO = dealerMapper.selectOne(queryWrapper); + if (dealerDO == null) { + return null; + } + + // 更新发货单模板 + dealerDO.setDeliveryTemplate(dealerUpdateTemplateCmd.getDeliveryTemplate()); + dealerMapper.updateById(dealerDO); + + return dealerConvert.toDealer(dealerDO); + } } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/DealerServiceI.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/DealerServiceI.java index 1b3cb03..c533626 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/DealerServiceI.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/DealerServiceI.java @@ -1,9 +1,6 @@ package com.xunhong.erp.turbo.api.biz.api; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerCreateCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDestroyCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerDragCmd; -import com.xunhong.erp.turbo.api.biz.dto.cmd.DealerUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerListQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.DealerShowQry; @@ -29,5 +26,9 @@ public interface DealerServiceI { void destroy(DealerDestroyCmd dealerDestroyCmd); void drag(DealerDragCmd dealerDragCmd); + + DealerVO updateSettings(DealerUpdateSettingsCmd dealerUpdateSettingsCmd); + + DealerVO updateTemplate(DealerUpdateTemplateCmd dealerUpdateTemplateCmd); } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java index 11912be..ab2f2d0 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java @@ -40,42 +40,6 @@ public class DealerCreateCmd extends Command { @Schema(title = "经销商类型:1_市场;2_超市;", requiredMode = Schema.RequiredMode.REQUIRED) private DealerTypeEnum dealerType; - /** - * 是否开启分成 - */ - @Schema(title = "是否开启分成") - private Boolean enableShare; - - /** - * 分成比例 - */ - @Schema(title = "分成比例") - private BigDecimal shareRatio; - - /** - * 运费是否作为成本 - */ - @Schema(title = "运费是否作为成本") - private Boolean freightCostFlag; - - /** - * 草帘是否作为成本 - */ - @Schema(title = "草帘是否作为成本") - private Boolean strawMatCostFlag; - - /** - * 发货单合计金额是否含包装费 - */ - @Schema(title = "发货单合计金额是否含包装费") - private Boolean includePackingFlag; - - /** - * 发货单合计金额是否含包运费 - */ - @Schema(title = "发货单合计金额是否含包运费") - private Boolean includeFreightFlag; - /** * 应收金额 */ @@ -93,60 +57,5 @@ public class DealerCreateCmd extends Command { */ @Schema(title = "状态:1_启用;0_禁用;", requiredMode = Schema.RequiredMode.REQUIRED) private Boolean status; - - /** - * 是否开启计提税金 - */ - @Schema(title = "是否开启计提税金") - private Boolean enableAccrualTax; - - /** - * 计提税金比例 - */ - @Schema(title = "计提税金比例") - private BigDecimal accrualTaxRatio; - - /** - * 是否开启公司返点 - */ - @Schema(title = "是否开启公司返点") - private Boolean enableCompanyRebate; - - /** - * 公司返点比例 - */ - @Schema(title = "公司返点比例") - private BigDecimal companyRebateRatio; - - /** - * 是否可调整比例 - */ - @Schema(title = "是否可调整比例") - private Boolean shareAdjusted; - - /** - * 是否开启损耗 - */ - @Schema(title = "是否开启损耗") - private Boolean enableLoss; - - /** - * 损耗金额 - */ - @Schema(title = "损耗金额") - private BigDecimal lossAmount; - - /** - * 是否启用初始车次号 - */ - @Schema(title = "是否启用初始车次号") - private Boolean enableInitialTrainNo; - - /** - * 初始车次号 - */ - @Schema(title = "初始车次号") - private Integer initialTrainNo; - } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateSettingsCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateSettingsCmd.java new file mode 100644 index 0000000..757b34c --- /dev/null +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateSettingsCmd.java @@ -0,0 +1,112 @@ +package com.xunhong.erp.turbo.api.biz.dto.cmd; + +import com.xunhong.erp.turbo.base.dto.Command; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 经销商设置更新命令 + * + * @author shenyifei + */ +@Data +@Schema(title = "经销商设置更新") +@EqualsAndHashCode(callSuper = true) +public class DealerUpdateSettingsCmd extends Command { + + @Schema(title = "经销商ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") + private Long dealerId; + + /** + * 是否开启分成 + */ + @Schema(title = "是否开启分成") + private Boolean enableShare; + + /** + * 分成比例 + */ + @Schema(title = "分成比例") + private BigDecimal shareRatio; + + /** + * 运费是否作为成本 + */ + @Schema(title = "运费是否作为成本") + private Boolean freightCostFlag; + + /** + * 草帘是否作为成本 + */ + @Schema(title = "草帘是否作为成本") + private Boolean strawMatCostFlag; + + /** + * 发货单合计金额是否含包装费 + */ + @Schema(title = "发货单合计金额是否含包装费") + private Boolean includePackingFlag; + + /** + * 发货单合计金额是否含包运费 + */ + @Schema(title = "发货单合计金额是否含包运费") + private Boolean includeFreightFlag; + + /** + * 是否开启计提税金 + */ + @Schema(title = "是否开启计提税金") + private Boolean enableAccrualTax; + + /** + * 计提税金比例 + */ + @Schema(title = "计提税金比例") + private BigDecimal accrualTaxRatio; + + /** + * 是否开启公司返点 + */ + @Schema(title = "是否开启公司返点") + private Boolean enableCompanyRebate; + + /** + * 公司返点比例 + */ + @Schema(title = "公司返点比例") + private BigDecimal companyRebateRatio; + + /** + * 是否可调整比例 + */ + @Schema(title = "是否可调整比例") + private Boolean shareAdjusted; + + /** + * 是否开启损耗 + */ + @Schema(title = "是否开启损耗") + private Boolean enableLoss; + + /** + * 损耗金额 + */ + @Schema(title = "损耗金额") + private BigDecimal lossAmount; + + /** + * 是否启用初始车次号 + */ + @Schema(title = "是否启用初始车次号") + private Boolean enableInitialTrainNo; + + /** + * 初始车次号 + */ + @Schema(title = "初始车次号") + private Integer initialTrainNo; +} diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateTemplateCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateTemplateCmd.java new file mode 100644 index 0000000..e0b94c7 --- /dev/null +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerUpdateTemplateCmd.java @@ -0,0 +1,23 @@ +package com.xunhong.erp.turbo.api.biz.dto.cmd; + +import com.xunhong.erp.turbo.base.dto.Command; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 经销商发货单模板更新命令 + * + * @author shenyifei + */ +@Data +@Schema(title = "经销商发货单模板更新") +@EqualsAndHashCode(callSuper = true) +public class DealerUpdateTemplateCmd extends Command { + + @Schema(title = "经销商ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") + private Long dealerId; + + @Schema(title = "发货单模板", requiredMode = Schema.RequiredMode.REQUIRED) + private String deliveryTemplate; +}