From 6428899f85db45029cdb9e40bf6cd5ce9843a580 Mon Sep 17 00:00:00 2001 From: fanzongzhe0036 Date: Wed, 19 Feb 2025 16:26:25 +0800 Subject: [PATCH 01/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=95=86=E5=93=81?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E8=A7=84=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/basegoodssku/BaseGoodsSkuMapper.xml | 4 ++-- .../base/basegoodsspu/BaseGoodsSpuMapper.xml | 2 +- .../basegoodsspu/BaseGoodsSpuService.java | 14 ++++++----- .../AdPurchaseAssetApplyMapper.xml | 2 +- .../AdPurchaseAssetApplyService.java | 11 +++++++-- .../PurchaseAssetApplyVo.java | 8 +++++++ .../AdReimbursedAssetApplyService.java | 23 ++++++++++++++----- .../AssetObjDetailsVo.java | 21 +++++++++++++++++ .../adreimbursedassetdetails/AssetObjVo.java | 3 +-- 9 files changed, 68 insertions(+), 20 deletions(-) create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adreimbursedassetdetails/AssetObjDetailsVo.java diff --git a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml index 3b1d29fa97..c72f33ba5d 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml +++ b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml @@ -65,7 +65,7 @@ spu.sid as goodsSpuSid, sku.title goodsSpuName, sku.goodsSkuCode, - sku.indexes, + sku.own_spec as indexes, spu.goodsUnitName, spu.manufacturerSid, spu.manufacturerName @@ -83,7 +83,7 @@ sku.title AS goodsSkuTitle, sku.goodsSkuCode, spu.goodsUnitName AS unit, - sku.indexes AS goodsSkuOwnSpec, + sku.own_spec AS goodsSkuOwnSpec, spu.manufacturerSid, spu.manufacturerName from base_goods_sku sku diff --git a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuMapper.xml b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuMapper.xml index 0fa1176cdb..37474ed1b5 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuMapper.xml +++ b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuMapper.xml @@ -51,7 +51,7 @@ WHERE p.barCode, p.goodsUnitName, t.goodsTypeName, - k.indexes, + k.own_spec as indexes, p.shelfLife, b.brandName, m.manufacturerName, diff --git a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java index 09bc30d165..9b78d9bdc8 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java +++ b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java @@ -320,7 +320,8 @@ public class BaseGoodsSpuService extends MybatisBaseService + select remarks, sid + from ad_frockallot_apply + where sid = #{sid} + + + + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyService.java new file mode 100644 index 0000000000..b14aaa162e --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyService.java @@ -0,0 +1,300 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.oa.biz.adfrockallotdetail.AdFrockallotDetailDto; +import com.yxt.anrui.oa.biz.adfrockallotdetail.AdFrockallotDetailService; +import com.yxt.anrui.oa.biz.adfrockallotdetail.AdFrockallotDetailVo; +import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.*; +import com.yxt.anrui.oa.biz.oaform.flowable.*; +import com.yxt.anrui.oa.feign.file.OaFileEnum; +import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class AdFrockallotApplyService extends MybatisBaseService { + @Autowired + private OaAppendixService oaAppendixService; + @Autowired + private OaFormService oaFormService; + @Autowired + private AdFrockallotDetailService adFrockallotDetailService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + public ResultBean getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdFrockallotApplyVo adFrockallotApplyVo = new AdFrockallotApplyVo(); + adFrockallotApplyVo.setCreateBySid(userSid); + adFrockallotApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adFrockallotApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdFrockallotApplyVo adFrockallotApplyVo = new AdFrockallotApplyVo(); + AdFrockallotApply adFrockallotApply = fetchBySid(sid); + if (adFrockallotApply == null) { + return rb.setMsg("该申请不存在"); + } +// adExpatriatesApplyVo.setTestPage(adExpatriatesApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adFrockallotApplyVo.setTaskId(oaForm.getTaskId()); + adFrockallotApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adFrockallotApplyVo.setOrgSidPath(orgSidPath); + adFrockallotApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adFrockallotApply, adFrockallotApplyVo); + List list = adFrockallotDetailService.getUpdateInit(sid); + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + adFrockallotApplyVo.setFiles(files); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adFrockallotApplyVo.setAppes(appes); + adFrockallotApplyVo.setList(list); + adFrockallotApplyVo.setSid(sid); + return rb.success().setData(adFrockallotApplyVo); + } + + public ResultBean saveOrUpdateDto(AdFrockallotApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + List files = dto.getFiles(); + List appes = dto.getAppes(); + List list = dto.getList(); + if (StringUtils.isBlank(sid)) { + // 新建操作 + AdFrockallotApply entity = new AdFrockallotApply(); + BeanUtil.copyProperties(dto, entity, "sid"); + + dto.setBillNo("GZDZPFSQ"); + dto.setSid(entity.getSid()); + ResultBean resultBean = oaFormService.saveOaForm(dto); + + if (!resultBean.getSuccess()) { + return rb; + } + + entity.setFormSid(resultBean.getData()); + baseMapper.insert(entity); + sid = entity.getSid(); + } else { + // 更新操作 + AdFrockallotApply entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + adFrockallotDetailService.saveDetails(list, sid); + // 处理附件 + saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片"); + saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件"); + return rb.success().setData(sid); + } + + // 保存文件 + private void saveFiles(String sid, List files, String attachType, String fileType) { + files.removeAll(Collections.singleton(null)); + oaAppendixService.saveFile(sid, files, attachType, fileType); + } + + public ResultBean details(String sid, String application) { + ResultBean rb = ResultBean.fireFail(); + AdFrockallotApplyDetailsVo adFrockallotApplyDetailsVo = baseMapper.details(sid); + if (adFrockallotApplyDetailsVo == null) { + return rb.setMsg("该申请不存在"); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adFrockallotApplyDetailsVo.setFiles(files); + adFrockallotApplyDetailsVo.setAppes(appes); + //基础字段赋值 + BeanUtil.copyProperties(oaFormService.getDetails(sid), adFrockallotApplyDetailsVo); + return rb.success().setData(adFrockallotApplyDetailsVo); + } + + /** + * 提交 + * + * @param dto + * @return + */ + public ResultBean submit(AdFrockallotApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + ResultBean stringResultBean = saveOrUpdateDto(dto); + if (!stringResultBean.getSuccess()) { + return rb.setMsg(stringResultBean.getData()); + } + String businessSid = stringResultBean.getData(); + + SubmitDto submitDto = new SubmitDto(); + submitDto.setUserSid(dto.getCreateBySid()); + submitDto.setBusinessSid(businessSid); + + Map formVariables = new HashMap<>(); + formVariables = getMap(formVariables, businessSid); + submitDto.setFormVariables(formVariables); + submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId()); + submitDto.setNextTaskId(dto.getTaskId()); + submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule()); + return oaFormService.submit(submitDto); + } + + /** + * 办理(同意) + * + * @param dto + * @return + */ + public ResultBean complete(CompleteDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); + BeanUtil.copyProperties(dto, businessVariablesDto); + return oaFormService.complete(businessVariablesDto); + } + + /** + * 驳回 + * + * @param dto + * @return + */ + public ResultBean reject(TaskDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + return oaFormService.reject(dto); + } + + public ResultBean getFlowOperateTitle(NodeQuery query) { + // 默认失败返回 + ResultBean rb = ResultBean.fireFail(); + + // 获取next值和formVariables + int next = query.getNext(); + + // 获取并更新formVariables + Map formVariables = getMap(query.getFormVariables(), query.getBusinessSid()); + query.setFormVariables(formVariables); + + // 校验next参数是否有效(只允许0或1) + if (next != 0 && next != 1) { + return rb.setMsg("参数错误:next"); // 如果next不是0或1,返回错误信息 + } + + // 获取节点名称 + String data = getNodeName(query, next); + + // 如果data为null,表示未获取到有效的节点信息 + if (data == null) { + return rb.setMsg("没有获取到节点信息"); // 返回错误消息 + } + + // 返回成功的结果和获取到的节点名称 + return rb.success().setData(data); + } + + /** + * 网关参数组成 + * + * @param formVariables + * @param sid + * @return + */ + public Map getMap(Map formVariables, String sid) { + Map appMap = new HashMap<>(); + appMap.put("sid", sid); + /*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid); + appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid); + appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle"); + appMap.put("agreeUrl", "oa/v1/HrHireApply/complete"); + appMap.put("stopUrl", "oa/v1/oaform/breakProcess"); + appMap.put("rejectUrl", "oa/v1/HrHireApply/reject"); + appMap.put("recallUrl", "oa/v1/oaform/revokeProcess"); + appMap.put("signUrl", "oa/v1/oaform/delegate"); + appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/ + appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl()); + appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl()); + appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl()); + appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl()); + appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl()); + formVariables.put("app", appMap); + //根据组织查询是否是分公司 + OaForm oaForm = oaFormService.fetchBySid(sid); + AdFrockallotApply adFrockallotApply = fetchBySid(sid); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData(); + //是否是分公司 + formVariables.put("isTrue", sysOrganization.getIsDept() == 0); + return formVariables; + } + + /** + * 根据next的值获取前一个节点或下一个节点的名称。 + * + * @param query 包含查询所需参数的NodeQuery对象 + * @param next 参数,0表示上一环节,1表示下一环节 + * @return 节点名称,如果失败则返回null + */ + private String getNodeName(NodeQuery query, int next) { + // 根据next值选择相应的服务方法获取节点信息 + ResultBean> resultBean = (next == 0) + ? oaFormService.getPreviousNodesForReject(query) // 获取上一环节的节点 + : oaFormService.getNextNodesForSubmit(query); // 获取下一环节的节点 + // 如果服务调用成功 + if (resultBean.getSuccess()) { + // 清除结果列表中的null值,避免空节点 + resultBean.getData().removeAll(Collections.singleton(null)); + // 如果结果列表非空,返回第一个节点的名称 + if (!resultBean.getData().isEmpty()) { + return resultBean.getData().get(0).getName(); + } + } else { + // 如果服务调用失败,返回null + return null; + } + // 如果结果为空,返回null + return null; + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyVo.java new file mode 100644 index 0000000000..4e2aac3b2f --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyVo.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotapply; + + +import com.yxt.anrui.oa.biz.adfrockallotdetail.AdFrockallotDetailVo; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + + +@Data +@ApiModel(value = "工装订制配发申请 视图数据对象", description = "工装订制配发申请 视图数据对象") +public class AdFrockallotApplyVo implements Vo { + + private String sid; + /* private String userSid; + private String orgPath;*/ + private String orgSidPath; + private String createBySid; + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); + + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + +// private String testPage; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java new file mode 100644 index 0000000000..80f0f6fe85 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java @@ -0,0 +1,48 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + +@Data +@ApiModel(value = "工装订制配发列表", description = "工装订制配发列表") +@TableName("ad_frockallot_detail") +public class AdFrockallotDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请sid") + private String mainSid; // 申请sid + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailDto.java new file mode 100644 index 0000000000..4750539d04 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailDto.java @@ -0,0 +1,46 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + + +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + + +@Data +@ApiModel(value = "工装订制配发列表 数据传输对象", description = "工装订制配发列表 数据传输对象") +public class AdFrockallotDetailDto implements Dto { + + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java new file mode 100644 index 0000000000..ca5cb73c69 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java @@ -0,0 +1,50 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetail; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetail; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailVo; + +import java.util.List; + + +@Mapper +public interface AdFrockallotDetailMapper extends BaseMapper { + + List getUpdateInit(String sid); + + @Select("select * from ad_frockallot_detail where mainSid = #{mainSid}") + List selectByMainSid(String mainSid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.xml new file mode 100644 index 0000000000..284b2c3232 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java new file mode 100644 index 0000000000..6ac1817752 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java @@ -0,0 +1,79 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetail; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailDto; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetail; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailQuery; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailVo; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDetailsVo; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDto; +import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailFeign; + +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + + +@Service +public class AdFrockallotDetailService extends MybatisBaseService { + + public void saveDetails(List list, String sid) { + //根据sid查询明细并删除 + List list2 = baseMapper.selectByMainSid(sid); + list2.removeAll(Collections.singleton(null)); + if (!list2.isEmpty()) { + list2.stream().forEach(v -> { + deleteBySid(v.getSid()); + }); + } + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + AdFrockallotDetail adFrockallotDetail = new AdFrockallotDetail(); + BeanUtil.copyProperties(details, adFrockallotDetail); + adFrockallotDetail.setMainSid(sid); + baseMapper.insert(adFrockallotDetail); + }); + } + } + + public List getUpdateInit(String sid) { + return baseMapper.getUpdateInit(sid); + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailVo.java new file mode 100644 index 0000000000..27171062aa --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailVo.java @@ -0,0 +1,48 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + + +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + + +@Data +@ApiModel(value = "工装订制配发列表 视图数据对象", description = "工装订制配发列表 视图数据对象") +public class AdFrockallotDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotListDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotListDetailVo.java new file mode 100644 index 0000000000..b5a5ff1ba5 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotListDetailVo.java @@ -0,0 +1,44 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfrockallotdetail; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.math.BigDecimal; + +@Data +@ApiModel(value = "工装订制配发列表 视图数据对象", description = "工装订制配发列表 视图数据对象") +public class AdFrockallotListDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adleasehostapply/AdLeasehostApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adleasehostapply/AdLeasehostApply.java index 6ebe5df68c..13abca2f35 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adleasehostapply/AdLeasehostApply.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adleasehostapply/AdLeasehostApply.java @@ -31,28 +31,15 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(宿舍租赁)
- * File: AdLeasehostApply.java
- * Class: com.yxt.anrui.oa.api.adleasehostapply.AdLeasehostApply
- * Description: 宿舍租赁申请.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-17 14:11:50
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Data @ApiModel(value = "宿舍租赁申请", description = "宿舍租赁申请") @TableName("ad_leasehost_apply") public class AdLeasehostApply extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty("基础表单sid") + @ApiModelProperty("基础表单sid") private String formSid; // 基础表单sid - @ApiModelProperty("关联审批sid列表,英文逗号分隔") + @ApiModelProperty("关联审批sid列表,英文逗号分隔") private String linkFormSids; // 关联审批sid列表,英文逗号分隔 } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetail.java index 7e6a51e0d2..0ce2737bee 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetail.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetail.java @@ -33,19 +33,7 @@ import lombok.Data; import java.math.BigDecimal; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetail.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetail
- * Description: 驻外人员认定列表.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "办公用品领用列表", description = "办公用品领用列表") @TableName("ad_office_supplies_detail") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailDto.java index b4ddf66f26..966145bfa7 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailDto.java @@ -32,19 +32,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetailDto.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetailDto
- * Description: 驻外人员认定列表 数据传输对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "驻外人员认定列表 数据传输对象", description = "驻外人员认定列表 数据传输对象") public class AdOfficeSuppliesDetailDto implements Dto { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailVo.java index 0754415071..0cd4b5491a 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adofficesuppliesdetail/AdOfficeSuppliesDetailVo.java @@ -31,19 +31,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetailVo.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetailVo
- * Description: 驻外人员认定列表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "驻外人员认定列表 视图数据对象", description = "驻外人员认定列表 视图数据对象") public class AdOfficeSuppliesDetailVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApply.java index bd7461b3d7..ca7091e116 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApply.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApply.java @@ -31,19 +31,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(办公场地租赁)
- * File: AdOffspaceApply.java
- * Class: com.yxt.anrui.oa.api.adoffspaceapply.AdOffspaceApply
- * Description: 办公场地租赁申请.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-18 11:50:51
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "办公场地租赁申请", description = "办公场地租赁申请") @TableName("ad_offspace_apply") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApplyDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApplyDetailsVo.java index c4e97de8a5..83e118aa91 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApplyDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspaceapply/AdOffspaceApplyDetailsVo.java @@ -37,19 +37,7 @@ import lombok.Data; import java.util.ArrayList; import java.util.List; -/** - * Project: yxt-oa(办公场地租赁)
- * File: AdOffspaceApplyVo.java
- * Class: com.yxt.anrui.oa.api.adoffspaceapply.AdOffspaceApplyVo
- * Description: 办公场地租赁申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-18 11:50:51
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "办公场地租赁申请 视图数据详情", description = "办公场地租赁申请 视图数据详情") public class AdOffspaceApplyDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceDetailDto.java index 4086216d30..a1b4b50f4b 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceDetailDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceDetailDto.java @@ -34,19 +34,7 @@ import lombok.Data; import java.math.BigDecimal; -/** - * Project: yxt-oa(办公场地租赁)
- * File: AdOffspaceDetailDto.java
- * Class: com.yxt.anrui.oa.api.adoffspacedetail.AdOffspaceDetailDto
- * Description: 办公场地租赁列表 数据传输对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-18 11:50:51
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "办公场地租赁列表 数据传输对象", description = "办公场地租赁列表 数据传输对象") public class AdOffspaceDetailDto implements Dto { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceListDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceListDetailVo.java index 582562be7d..e318df68b4 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceListDetailVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adoffspacedetail/AdOffspaceListDetailVo.java @@ -33,19 +33,7 @@ import lombok.Data; import java.math.BigDecimal; -/** - * Project: yxt-oa(办公场地租赁)
- * File: AdOffspaceDetailVo.java
- * Class: com.yxt.anrui.oa.api.adoffspacedetail.AdOffspaceDetailVo
- * Description: 办公场地租赁列表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-18 11:50:51
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "办公场地租赁列表 视图数据对象", description = "办公场地租赁列表 视图数据对象") public class AdOffspaceListDetailVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApply.java new file mode 100644 index 0000000000..12a0aae842 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApply.java @@ -0,0 +1,58 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulApply.java
+ * Class: com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApply
+ * Description: 临时私车公用申请.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用申请", description = "临时私车公用申请") +@TableName("ad_pircarpul_apply") +public class AdPircarpulApply extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("基础表单sid") + private String formSid; // 基础表单sid + @ApiModelProperty("关联审批sid列表,英文逗号分隔") + private String linkFormSids; // 关联审批sid列表,英文逗号分隔 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDetailsVo.java new file mode 100644 index 0000000000..18707d9375 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDetailsVo.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + + +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostListDetailVo; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulApplyVo.java
+ * Class: com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApplyVo
+ * Description: 临时私车公用申请 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用申请 视图数据详情", description = "临时私车公用申请 视图数据详情") +public class AdPircarpulApplyDetailsVo implements Vo { + + @ApiModelProperty("备注") + private String remarks; + + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDto.java new file mode 100644 index 0000000000..1956295671 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyDto.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + + +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailDto; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailDto; +import com.yxt.anrui.oa.biz.oaform.OaFormDto; +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulApplyDto.java
+ * Class: com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApplyDto
+ * Description: 临时私车公用申请 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用申请 数据传输对象", description = "临时私车公用申请 数据传输对象") +public class AdPircarpulApplyDto extends OaFormDto { + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("基础表单sid") + private String formSid; + @ApiModelProperty("关联审批单") + private String linkFormSids; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("文件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java new file mode 100644 index 0000000000..c0eb75ee34 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java @@ -0,0 +1,58 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.oa.biz.adleasehostapply.AdLeasehostApplyDetailsVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApply; +import com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApplyVo; + +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulApplyMapper.java
+ * Class: com.yxt.anrui.oa.biz.adpircarpulapply.AdPircarpulApplyMapper
+ * Description: 临时私车公用申请.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface AdPircarpulApplyMapper extends BaseMapper { + + AdPircarpulApplyDetailsVo details(String sid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.xml new file mode 100644 index 0000000000..e5ec32580c --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyService.java new file mode 100644 index 0000000000..3e21d3c5b4 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyService.java @@ -0,0 +1,311 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailDto; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailService; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.*; +import com.yxt.anrui.oa.biz.oaform.flowable.*; +import com.yxt.anrui.oa.feign.file.OaFileEnum; +import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class AdPircarpulApplyService extends MybatisBaseService { + + @Autowired + private OaAppendixService oaAppendixService; + @Autowired + private OaFormService oaFormService; + @Autowired + private AdPircarpulDetailService adPircarpulDetailService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + public ResultBean getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdPircarpulApplyVo adPircarpulApplyVo = new AdPircarpulApplyVo(); + adPircarpulApplyVo.setCreateBySid(userSid); + adPircarpulApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adPircarpulApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdPircarpulApplyVo adPircarpulApplyVo = new AdPircarpulApplyVo(); + AdPircarpulApply adPircarpulApply = fetchBySid(sid); + if (adPircarpulApply == null) { + return rb.setMsg("该申请不存在"); + } +// adExpatriatesApplyVo.setTestPage(adExpatriatesApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adPircarpulApplyVo.setTaskId(oaForm.getTaskId()); + adPircarpulApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adPircarpulApplyVo.setOrgSidPath(orgSidPath); + adPircarpulApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adPircarpulApply, adPircarpulApplyVo); + List list = adPircarpulDetailService.getUpdateInit(sid); + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + FormCommon userObj = FormCommon.of(details.getUserKey(), details.getUserValue()); + details.setUserObj(userObj); + FormCommon deptObj = FormCommon.of(details.getDeptKey(), details.getDeptValue()); + details.setDeptObj(deptObj); + FormCommon jobObj = FormCommon.of(details.getJobKey(), details.getJobValue()); + details.setJobObj(jobObj); + }); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + adPircarpulApplyVo.setFiles(files); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adPircarpulApplyVo.setAppes(appes); + adPircarpulApplyVo.setList(list); + adPircarpulApplyVo.setSid(sid); + return rb.success().setData(adPircarpulApplyVo); + } + + public ResultBean saveOrUpdateDto(AdPircarpulApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + List files = dto.getFiles(); + List appes = dto.getAppes(); + List list = dto.getList(); + if (StringUtils.isBlank(sid)) { + // 新建操作 + AdPircarpulApply entity = new AdPircarpulApply(); + BeanUtil.copyProperties(dto, entity, "sid"); + + dto.setBillNo("LSSCGYSQ"); + dto.setSid(entity.getSid()); + ResultBean resultBean = oaFormService.saveOaForm(dto); + + if (!resultBean.getSuccess()) { + return rb; + } + + entity.setFormSid(resultBean.getData()); + baseMapper.insert(entity); + sid = entity.getSid(); + } else { + // 更新操作 + AdPircarpulApply entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + adPircarpulDetailService.saveDetails(list, sid); + // 处理附件 + saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片"); + saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件"); + return rb.success().setData(sid); + } + + // 保存文件 + private void saveFiles(String sid, List files, String attachType, String fileType) { + files.removeAll(Collections.singleton(null)); + oaAppendixService.saveFile(sid, files, attachType, fileType); + } + + public ResultBean details(String sid, String application) { + ResultBean rb = ResultBean.fireFail(); + AdPircarpulApplyDetailsVo adPircarpulApplyDetailsVo = baseMapper.details(sid); + if (adPircarpulApplyDetailsVo == null) { + return rb.setMsg("该申请不存在"); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adPircarpulApplyDetailsVo.setFiles(files); + adPircarpulApplyDetailsVo.setAppes(appes); + //基础字段赋值 + BeanUtil.copyProperties(oaFormService.getDetails(sid), adPircarpulApplyDetailsVo); + return rb.success().setData(adPircarpulApplyDetailsVo); + } + + /** + * 提交 + * + * @param dto + * @return + */ + public ResultBean submit(AdPircarpulApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + ResultBean stringResultBean = saveOrUpdateDto(dto); + if (!stringResultBean.getSuccess()) { + return rb.setMsg(stringResultBean.getData()); + } + String businessSid = stringResultBean.getData(); + + SubmitDto submitDto = new SubmitDto(); + submitDto.setUserSid(dto.getCreateBySid()); + submitDto.setBusinessSid(businessSid); + + Map formVariables = new HashMap<>(); + formVariables = getMap(formVariables, businessSid); + submitDto.setFormVariables(formVariables); + submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId()); + submitDto.setNextTaskId(dto.getTaskId()); + submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule()); + return oaFormService.submit(submitDto); + } + + /** + * 办理(同意) + * + * @param dto + * @return + */ + public ResultBean complete(CompleteDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); + BeanUtil.copyProperties(dto, businessVariablesDto); + return oaFormService.complete(businessVariablesDto); + } + + /** + * 驳回 + * + * @param dto + * @return + */ + public ResultBean reject(TaskDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + return oaFormService.reject(dto); + } + + public ResultBean getFlowOperateTitle(NodeQuery query) { + // 默认失败返回 + ResultBean rb = ResultBean.fireFail(); + + // 获取next值和formVariables + int next = query.getNext(); + + // 获取并更新formVariables + Map formVariables = getMap(query.getFormVariables(), query.getBusinessSid()); + query.setFormVariables(formVariables); + + // 校验next参数是否有效(只允许0或1) + if (next != 0 && next != 1) { + return rb.setMsg("参数错误:next"); // 如果next不是0或1,返回错误信息 + } + + // 获取节点名称 + String data = getNodeName(query, next); + + // 如果data为null,表示未获取到有效的节点信息 + if (data == null) { + return rb.setMsg("没有获取到节点信息"); // 返回错误消息 + } + + // 返回成功的结果和获取到的节点名称 + return rb.success().setData(data); + } + + /** + * 网关参数组成 + * + * @param formVariables + * @param sid + * @return + */ + public Map getMap(Map formVariables, String sid) { + Map appMap = new HashMap<>(); + appMap.put("sid", sid); + /*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid); + appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid); + appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle"); + appMap.put("agreeUrl", "oa/v1/HrHireApply/complete"); + appMap.put("stopUrl", "oa/v1/oaform/breakProcess"); + appMap.put("rejectUrl", "oa/v1/HrHireApply/reject"); + appMap.put("recallUrl", "oa/v1/oaform/revokeProcess"); + appMap.put("signUrl", "oa/v1/oaform/delegate"); + appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/ + appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl()); + appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl()); + appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl()); + appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl()); + appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl()); + formVariables.put("app", appMap); + //根据组织查询是否是分公司 + OaForm oaForm = oaFormService.fetchBySid(sid); + AdPircarpulApply adPircarpulApply = fetchBySid(sid); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData(); + //是否是分公司 + formVariables.put("isTrue", sysOrganization.getIsDept() == 0); + return formVariables; + } + + /** + * 根据next的值获取前一个节点或下一个节点的名称。 + * + * @param query 包含查询所需参数的NodeQuery对象 + * @param next 参数,0表示上一环节,1表示下一环节 + * @return 节点名称,如果失败则返回null + */ + private String getNodeName(NodeQuery query, int next) { + // 根据next值选择相应的服务方法获取节点信息 + ResultBean> resultBean = (next == 0) + ? oaFormService.getPreviousNodesForReject(query) // 获取上一环节的节点 + : oaFormService.getNextNodesForSubmit(query); // 获取下一环节的节点 + // 如果服务调用成功 + if (resultBean.getSuccess()) { + // 清除结果列表中的null值,避免空节点 + resultBean.getData().removeAll(Collections.singleton(null)); + // 如果结果列表非空,返回第一个节点的名称 + if (!resultBean.getData().isEmpty()) { + return resultBean.getData().get(0).getName(); + } + } else { + // 如果服务调用失败,返回null + return null; + } + // 如果结果为空,返回null + return null; + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyVo.java new file mode 100644 index 0000000000..33c96bdf54 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyVo.java @@ -0,0 +1,77 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpulapply; + + +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailVo; +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulApplyVo.java
+ * Class: com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApplyVo
+ * Description: 临时私车公用申请 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用申请 视图数据对象", description = "临时私车公用申请 视图数据对象") +public class AdPircarpulApplyVo implements Vo { + + private String sid; + /* private String userSid; + private String orgPath;*/ + private String orgSidPath; + private String createBySid; + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); + + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + +// private String testPage; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java new file mode 100644 index 0000000000..062f12d806 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java @@ -0,0 +1,72 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + + +@Data +@ApiModel(value = "临时私车公用列表", description = "临时私车公用列表") +@TableName("ad_pircarpul_detail") +public class AdPircarpulDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请sid") + private String mainSid; // 申请sid + @ApiModelProperty("人员sid") + private String userSid; // 人员sid + @ApiModelProperty("人员姓名") + private String userName; // 人员姓名 + @ApiModelProperty("部门sid") + private String deptSid; // 部门sid + @ApiModelProperty("部门名称") + private String deptName; // 部门名称 + @ApiModelProperty("岗位sid") + private String postSid; // 岗位sid + @ApiModelProperty("岗位名称") + private String postName; // 岗位名称 + @ApiModelProperty("用车事由") + private String reasonsForUsingVehicles; // 用车事由 + @ApiModelProperty("计划出发地址") + private String departureAddress; // 计划出发地址 + @ApiModelProperty("目的地地址") + private String destinationAddress; // 目的地地址 + @ApiModelProperty("计划出发时间") + private String departureTime; // 计划出发时间 + @ApiModelProperty("计划返回时间") + private String returnTime; // 计划返回时间 + @ApiModelProperty("车牌号") + private String plateNumber; // 车牌号 + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailDto.java new file mode 100644 index 0000000000..890b6a57de --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailDto.java @@ -0,0 +1,83 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulDetailDto.java
+ * Class: com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailDto
+ * Description: 临时私车公用列表 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用列表 数据传输对象", description = "临时私车公用列表 数据传输对象") +public class AdPircarpulDetailDto implements Dto { + + @ApiModelProperty("人员") + private FormCommon userObj; + private String userKey; + private String userValue; + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptKey; + private String deptValue; + @ApiModelProperty("岗位") + private FormCommon jobObj; + private String jobKey; + private String jobValue; + @ApiModelProperty("用车事由") + private String reasonsForUsingVehicles; // 用车事由 + @ApiModelProperty("计划出发地址") + private String departureAddress; // 计划出发地址 + @ApiModelProperty("目的地地址") + private String destinationAddress; // 目的地地址 + @ApiModelProperty("计划出发时间") + private String departureTime; // 计划出发时间 + @ApiModelProperty("计划返回时间") + private String returnTime; // 计划返回时间 + @ApiModelProperty("车牌号") + private String plateNumber; // 车牌号 + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java new file mode 100644 index 0000000000..ef614b36d3 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java @@ -0,0 +1,62 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetail; +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetail; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo; + +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulDetailMapper.java
+ * Class: com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailMapper
+ * Description: 临时私车公用列表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Mapper +public interface AdPircarpulDetailMapper extends BaseMapper { + + List getUpdateInit(String sid); + + @Select("select * from ad_pircarpul_detail where mainSid = #{mainSid}") + List selectByMainSid(String mainSid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.xml new file mode 100644 index 0000000000..cb38b88310 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.xml @@ -0,0 +1,25 @@ + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java new file mode 100644 index 0000000000..ca8ed81fd9 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java @@ -0,0 +1,91 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetail; +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailDto; +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetail; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailQuery; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailDetailsVo; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailDto; +import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailFeign; + +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulDetailService.java
+ * Class: com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailService
+ * Description: 临时私车公用列表 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class AdPircarpulDetailService extends MybatisBaseService { + + public void saveDetails(List list, String sid) { + //根据sid查询明细并删除 + List list2 = baseMapper.selectByMainSid(sid); + list2.removeAll(Collections.singleton(null)); + if (!list2.isEmpty()) { + list2.stream().forEach(v -> { + deleteBySid(v.getSid()); + }); + } + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + AdPircarpulDetail adPircarpulDetail = new AdPircarpulDetail(); + BeanUtil.copyProperties(details, adPircarpulDetail); + adPircarpulDetail.setMainSid(sid); + baseMapper.insert(adPircarpulDetail); + }); + } + } + + public List getUpdateInit(String sid) { + return baseMapper.getUpdateInit(sid); + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailVo.java new file mode 100644 index 0000000000..7bce796c21 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailVo.java @@ -0,0 +1,85 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulDetailVo.java
+ * Class: com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo
+ * Description: 临时私车公用列表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用列表 视图数据对象", description = "临时私车公用列表 视图数据对象") +public class AdPircarpulDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("人员") + private FormCommon userObj; + private String userKey; + private String userValue; + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptKey; + private String deptValue; + @ApiModelProperty("岗位") + private FormCommon jobObj; + private String jobKey; + private String jobValue; + @ApiModelProperty("用车事由") + private String reasonsForUsingVehicles; // 用车事由 + @ApiModelProperty("计划出发地址") + private String departureAddress; // 计划出发地址 + @ApiModelProperty("目的地地址") + private String destinationAddress; // 目的地地址 + @ApiModelProperty("计划出发时间") + private String departureTime; // 计划出发时间 + @ApiModelProperty("计划返回时间") + private String returnTime; // 计划返回时间 + @ApiModelProperty("车牌号") + private String plateNumber; // 车牌号 + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulListDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulListDetailVo.java new file mode 100644 index 0000000000..bd03c5b3d6 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulListDetailVo.java @@ -0,0 +1,78 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * Project: yxt-oa(私车临时公用)
+ * File: AdPircarpulDetailVo.java
+ * Class: com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo
+ * Description: 临时私车公用列表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 09:42:01
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "临时私车公用列表 视图数据对象", description = "临时私车公用列表 视图数据对象") +public class AdPircarpulListDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("人员") + private String userValue; + @ApiModelProperty("部门") + private String deptValue; + @ApiModelProperty("岗位") + private String jobValue; + @ApiModelProperty("用车事由") + private String reasonsForUsingVehicles; // 用车事由 + @ApiModelProperty("计划出发地址") + private String departureAddress; // 计划出发地址 + @ApiModelProperty("目的地地址") + private String destinationAddress; // 目的地地址 + @ApiModelProperty("计划出发时间") + private String departureTime; // 计划出发时间 + @ApiModelProperty("计划返回时间") + private String returnTime; // 计划返回时间 + @ApiModelProperty("车牌号") + private String plateNumber; // 车牌号 + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetDetailsVo.java index 319c7a7c9b..b4b196df51 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetDetailsVo.java @@ -32,19 +32,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetailVo.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetailVo
- * Description: 驻外人员认定列表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "固定资产列表 视图数据对象", description = "固定资产列表 视图数据对象") public class AdPurchaseAssetDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetListDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetListDetailsVo.java index fa087d3f4c..89196ff072 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetListDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpurchaseassetdetails/AdPurchaseAssetListDetailsVo.java @@ -31,19 +31,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetailVo.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetailVo
- * Description: 驻外人员认定列表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "固定资产列表 视图数据对象", description = "固定资产列表 视图数据对象") public class AdPurchaseAssetListDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adreimbursedassetdetails/AdReimbursedAssetListDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adreimbursedassetdetails/AdReimbursedAssetListDetailsVo.java index 67f7944cd6..0c2ae52a54 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adreimbursedassetdetails/AdReimbursedAssetListDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adreimbursedassetdetails/AdReimbursedAssetListDetailsVo.java @@ -31,19 +31,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(认定人员)
- * File: AdExpatriatesDetailVo.java
- * Class: com.yxt.anrui.oa.api.adexpatriatesdetail.AdExpatriatesDetailVo
- * Description: 驻外人员认定列表 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-01-20 15:35:08
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "固定资产费用报销列表 视图数据对象", description = "固定资产费用报销列表 视图数据对象") public class AdReimbursedAssetListDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyMapper.java index 1d8d6fde92..ec80dcae68 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyMapper.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyMapper.java @@ -32,19 +32,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireApplyMapper.java
- * Class: com.yxt.anrui.oa.biz.oahireapply.OaHireApplyMapper
- * Description: 招聘需求申请.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Mapper public interface OaHireApplyMapper extends BaseMapper { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyQuery.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyQuery.java index 23d65709e3..3ea574f9a9 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyQuery.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahireapply/OaHireApplyQuery.java @@ -34,19 +34,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireApplyQuery.java
- * Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyQuery
- * Description: 招聘需求申请 查询条件.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "招聘需求申请 查询条件", description = "招聘需求申请 查询条件") public class OaHireApplyQuery implements Query { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetails.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetails.java index fa05c44c9e..5d5b9b82e5 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetails.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetails.java @@ -31,19 +31,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireDetails.java
- * Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetails
- * Description: 招聘需求明细.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "招聘需求明细", description = "招聘需求明细") @TableName("oa_hire_details") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsDetailsVo.java index 1b8de6f594..49c676edc8 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsDetailsVo.java @@ -32,19 +32,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireDetailsVo.java
- * Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo
- * Description: 招聘需求明细 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "招聘需求明细 视图数据详情", description = "招聘需求明细 视图数据详情") public class OaHireDetailsDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsFeign.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsFeign.java index c0c498b6a2..6ec6dce15c 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsFeign.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsFeign.java @@ -35,19 +35,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireDetailsFeign.java
- * Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsFeign
- * Description: 招聘需求明细.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Api(tags = "招聘需求明细") @FeignClient( contextId = "yxt-oa-OaHireDetails", diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsQuery.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsQuery.java index ccb6615f67..138323da26 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsQuery.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsQuery.java @@ -32,19 +32,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireDetailsQuery.java
- * Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsQuery
- * Description: 招聘需求明细 查询条件.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "招聘需求明细 查询条件", description = "招聘需求明细 查询条件") public class OaHireDetailsQuery implements Query { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsVo.java index 77bc6ebfdc..9f5c8e4a0f 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsVo.java @@ -32,19 +32,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(招聘需求)
- * File: OaHireDetailsVo.java
- * Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo
- * Description: 招聘需求明细 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-05 11:51:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "招聘需求明细 视图数据对象", description = "招聘需求明细 视图数据对象") public class OaHireDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDetailsVo.java index aa6689c409..3854682613 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDetailsVo.java @@ -38,19 +38,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(请假申请)
- * File: OaLeaveApplyVo.java
- * Class: com.yxt.anrui.oa.api.oaleaveapply.OaLeaveApplyVo
- * Description: 请假申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-11-28 15:24:37
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "请假申请 视图数据详情", description = "请假申请 视图数据详情") public class OaLeaveApplyDetailsVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDto.java index 370e06f272..adb4d4a72b 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyDto.java @@ -38,19 +38,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(请假申请)
- * File: OaLeaveApplyDto.java
- * Class: com.yxt.anrui.oa.api.oaleaveapply.OaLeaveApplyDto
- * Description: 请假申请 数据传输对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-11-28 15:24:37
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "请假申请 数据传输对象", description = "请假申请 数据传输对象") public class OaLeaveApplyDto implements Dto { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyInitVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyInitVo.java index fb4471ca4e..43d20182c0 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyInitVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyInitVo.java @@ -36,19 +36,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -/** - * Project: yxt-oa(请假申请)
- * File: OaLeaveApplyVo.java
- * Class: com.yxt.anrui.oa.api.oaleaveapply.OaLeaveApplyVo
- * Description: 请假申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-11-28 15:24:37
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "请假申请 视图数据详情", description = "请假申请 视图数据详情") public class OaLeaveApplyInitVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyVo.java index da11384b42..f331b6eb66 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaleaveapply/OaLeaveApplyVo.java @@ -34,19 +34,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(请假申请)
- * File: OaLeaveApplyVo.java
- * Class: com.yxt.anrui.oa.api.oaleaveapply.OaLeaveApplyVo
- * Description: 请假申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-11-28 15:24:37
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "请假申请 视图数据对象", description = "请假申请 视图数据对象") public class OaLeaveApplyVo implements Vo { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java index 1d569d72df..6bd07c59b6 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java @@ -38,19 +38,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.data.annotation.Transient; -/** - * Project: yxt-oa(补卡申请)
- * File: OaMendApply.java
- * Class: com.yxt.anrui.oa.api.oamendapply.OaMendApply
- * Description: 补卡申请.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-04 14:14:34
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "补卡申请", description = "补卡申请") @TableName("oa_mend_apply") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java index 7b9bc25510..ff42acf0aa 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java @@ -39,19 +39,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(补卡申请)
- * File: OaMendApplyDto.java
- * Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyDto
- * Description: 补卡申请 数据传输对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-04 14:14:34
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象") public class OaMendApplyDto extends OaFormDto { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyVo.java index 7a2b963d2c..5343ca6756 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyVo.java @@ -38,19 +38,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -/** - * Project: yxt-oa(补卡申请)
- * File: OaMendApplyVo.java
- * Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo
- * Description: 补卡申请 视图数据对象.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2024-12-04 14:14:34
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ + @Data @ApiModel(value = "补卡申请 视图数据对象", description = "补卡申请 视图数据对象") public class OaMendApplyVo implements Vo { From 538a06f74288ca9f8ee31d50a9b929099fdaef6a Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Thu, 20 Feb 2025 14:23:14 +0800 Subject: [PATCH 05/90] =?UTF-8?q?=E5=87=BA=E5=BA=93=E3=80=81=E6=AC=A0?= =?UTF-8?q?=E6=AC=BE=E5=87=BA=E5=BA=93=E6=8E=A8=E9=80=81=E9=87=91=E8=9E=8D?= =?UTF-8?q?=E8=B4=B4=E6=81=AF=E5=8D=95=E8=BD=A6=E8=BF=94=E5=88=A9=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=A6=82=E6=9E=9C=E9=87=91=E9=A2=9D=E4=B8=BA0?= =?UTF-8?q?=EF=BC=8C=E5=88=99=E4=B8=8D=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusDeliveredApplyService.java | 34 +++++++++++-------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java index 85184ee4a3..8db454751f 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java @@ -1191,14 +1191,17 @@ public class BusDeliveredApplyService extends MybatisBaseService { - pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount()); - }); - Future future12 = pool.submit(() -> { - pushVehRebateAdjustBill(busDeliveredApply, detailsList, solutionsDetailsVo); - }); + if(!"0".equals(solutionsDetailsVo.getFactoryDiscount())){ + if ("2".equals(busSalesOrder.getFinancePlan())) { + Future future11 = pool.submit(() -> { + pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount()); + }); + Future future12 = pool.submit(() -> { + pushVehRebateAdjustBill(busDeliveredApply, detailsList, solutionsDetailsVo); + }); + } } + } } } @@ -1680,14 +1683,17 @@ public class BusDeliveredApplyService extends MybatisBaseService { - pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount()); - }); - Future future12 = pool.submit(() -> { - pushVehRebateAdjustBill(busDeliveredApply, detailsList, solutionsDetailsVo); - }); + if(!"0".equals(solutionsDetailsVo.getFactoryDiscount())){ + if ("2".equals(busSalesOrder.getFinancePlan())) { + Future future11 = pool.submit(() -> { + pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount()); + }); + Future future12 = pool.submit(() -> { + pushVehRebateAdjustBill(busDeliveredApply, detailsList, solutionsDetailsVo); + }); + } } + } } } From 4342690676e3ee3695eb3e779d027955da92d9b4 Mon Sep 17 00:00:00 2001 From: ligaode Date: Thu, 20 Feb 2025 14:28:18 +0800 Subject: [PATCH 06/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../as/api/assaleinvoiceapply/AsSaleinvoiceapplyVo.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/assaleinvoiceapply/AsSaleinvoiceapplyVo.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/assaleinvoiceapply/AsSaleinvoiceapplyVo.java index 80865c1c83..70915f8f53 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/assaleinvoiceapply/AsSaleinvoiceapplyVo.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/assaleinvoiceapply/AsSaleinvoiceapplyVo.java @@ -68,10 +68,10 @@ public class AsSaleinvoiceapplyVo implements Vo { private String deptName; @ApiModelProperty("申请人") private String createByName; - @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @ApiModelProperty("申请日期") private Date createTime; - @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @ApiModelProperty("办结日期") private Date finishTime; @ApiModelProperty("开票单位") @@ -84,4 +84,8 @@ public class AsSaleinvoiceapplyVo implements Vo { private BigDecimal invoicePrice; @ApiModelProperty("附件") private List files = new ArrayList<>(); + @ApiModelProperty("流程定义的id") + private String procDefId; + @ApiModelProperty("流程实例的sid") + private String procInstId; } From ae9393810707c0d0dbe46dac0efb9532b01b9ab9 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Thu, 20 Feb 2025 14:42:02 +0800 Subject: [PATCH 07/90] =?UTF-8?q?=E9=80=80=E8=BD=A6=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E9=80=9A=E8=BF=87=E5=88=A0=E9=99=A4=E6=8E=A8=E9=80=81=E7=9A=84?= =?UTF-8?q?=E5=8D=95=E8=BD=A6=E8=BF=94=E5=88=A9=E6=9D=A1=E4=BB=B6=EF=BC=9A?= =?UTF-8?q?=E5=88=86=E5=85=AC=E5=8F=B8=E3=80=81=E8=BD=A6=E6=9E=B6=E5=8F=B7?= =?UTF-8?q?=E3=80=81=E8=BF=94=E5=88=A9=E7=B1=BB=E5=9E=8B=E4=B8=BA=E9=87=91?= =?UTF-8?q?=E8=9E=8D=E8=B4=B4=E6=81=AF=EF=BC=88=E7=BC=96=E7=A0=81=20029?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusSalesOrderReturnVehApplyService.java | 2 +- .../scm/api/scmvehrebate/ScmVehRebateFeign.java | 5 +++++ .../api/scmvehrebate/ScmVehRebateFeignFallback.java | 5 +++++ .../scm/biz/scmvehrebate/ScmVehRebateMapper.java | 2 ++ .../scm/biz/scmvehrebate/ScmVehRebateMapper.xml | 12 ++++++++++-- .../anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java | 5 +++++ .../scm/biz/scmvehrebate/ScmVehRebateService.java | 6 ++++++ 7 files changed, 34 insertions(+), 3 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java index 73d3466595..2aa38b657b 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java @@ -746,7 +746,7 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService { List checkApplyGetVehRebateAll(@Param(Constants.WRAPPER) QueryWrapper qw); List listAll(@Param(Constants.WRAPPER) QueryWrapper qw); + + int delByVehSid2(@Param("vehSid") String vehSid, @Param("useOrgSid") String useOrgSid, @Param("key") String key); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml index c14436ba0e..11e3da7487 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml @@ -87,7 +87,7 @@ UPDATE - scm_veh_rebate + scm_veh_rebate SET uploadDate = #{uploadDate}, uploadMoney = #{uploadMoney}, onceTreatCost = #{onceTreatCost}, @@ -104,7 +104,7 @@ UPDATE - scm_veh_rebate + scm_veh_rebate SET secondaryUploadDate = #{secondaryUploadDate}, secondaryUploadMoney = #{secondaryUploadMoney}, secondTreatCost = #{secondTreatCost}, @@ -159,4 +159,12 @@ ${ew.sqlSegment} + + + delete + from scm_veh_rebate + where vehSid = #{vehSid} + and useOrgSid = #{useOrgSid} + and rebateTypeKey = #{key} + diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java index b89b4214a6..6ebeda8fa2 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java @@ -228,4 +228,9 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { public ResultBean delByVehSid(String vehSid) { return scmVehRebateService.delByVehSid(vehSid); } + + @Override + public ResultBean delByVehSid2(String vehSid, String useOrgSid, String key) { + return scmVehRebateService.delByVehSid2(vehSid,useOrgSid,key); + } } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index 724bc4b656..d69c46d683 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -2095,6 +2095,12 @@ public class ScmVehRebateService extends MybatisBaseService excelList(ScmVehRebateQuery query) { QueryWrapper qw = new QueryWrapper<>(); //========================================数据授权开始 From ab2c1e59a3eae3928b3d0f0e607d3338f8acbe97 Mon Sep 17 00:00:00 2001 From: ligaode Date: Thu, 20 Feb 2025 15:23:23 +0800 Subject: [PATCH 08/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BasePurchaseSystemFeignFallback.java | 5 + .../BaseVehicleBrandFeignFallback.java | 5 + .../AsSaleinvoiceapplyRest.java | 162 ++++----- .../anrui/oa/api/AdSenpircarpulApplyRest.java | 104 ++++++ .../oa/api/AdSenpircarpulDetailRest.java | 36 ++ .../AdSenpircarpulApply.java | 58 ++++ .../AdSenpircarpulApplyDetailsVo.java | 65 ++++ .../AdSenpircarpulApplyDto.java | 70 ++++ .../AdSenpircarpulApplyMapper.java | 35 ++ .../AdSenpircarpulApplyMapper.xml | 27 ++ .../AdSenpircarpulApplyService.java | 310 ++++++++++++++++++ .../AdSenpircarpulApplyVo.java | 77 +++++ .../AdSenpircarpulDetail.java | 68 ++++ .../AdSenpircarpulDetailDto.java | 65 ++++ .../AdSenpircarpulDetailMapper.java | 40 +++ .../AdSenpircarpulDetailMapper.xml | 17 + .../AdSenpircarpulDetailService.java | 60 ++++ .../AdSenpircarpulDetailVo.java | 67 ++++ .../AdSenpircarpulListDetailVo.java | 60 ++++ .../inventroy/WmsInventoryProfitoutRest.java | 2 +- 20 files changed, 1251 insertions(+), 82 deletions(-) create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulApplyRest.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulDetailRest.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApply.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDetailsVo.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDto.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.xml create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyService.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyVo.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetail.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailDto.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.xml create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailService.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailVo.java create mode 100644 yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulListDetailVo.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basepurchasesystem/BasePurchaseSystemFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basepurchasesystem/BasePurchaseSystemFeignFallback.java index 76019efae5..213fb31935 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basepurchasesystem/BasePurchaseSystemFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basepurchasesystem/BasePurchaseSystemFeignFallback.java @@ -94,4 +94,9 @@ public class BasePurchaseSystemFeignFallback implements BasePurchaseSystemFeign public ResultBean> fetchDetailsByUseOrgPath(String orgPath) { return null; } + + @Override + public ResultBean selByPurchaseSystemName(String purchaseSystemName, String useOrgSid) { + return null; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclebrand/BaseVehicleBrandFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclebrand/BaseVehicleBrandFeignFallback.java index 8b5f6e7e27..edd0bcc1ec 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclebrand/BaseVehicleBrandFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehiclebrand/BaseVehicleBrandFeignFallback.java @@ -91,5 +91,10 @@ public class BaseVehicleBrandFeignFallback implements BaseVehicleBrandFeign { return null; } + @Override + public ResultBean selByBrandName(String brandName) { + return null; + } + } \ No newline at end of file diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/assaleinvoiceapply/AsSaleinvoiceapplyRest.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/assaleinvoiceapply/AsSaleinvoiceapplyRest.java index 49ddf1c495..48207812c4 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/assaleinvoiceapply/AsSaleinvoiceapplyRest.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/assaleinvoiceapply/AsSaleinvoiceapplyRest.java @@ -51,88 +51,88 @@ import java.util.List; @RequestMapping("v1/salesInvoice") public class AsSaleinvoiceapplyRest { - @Autowired - private AsSaleinvoiceapplyService asSaleinvoiceapplyService; - - @ApiOperation("根据条件分页查询数据的列表") - @PostMapping("/listPage") - public ResultBean> listPage(@RequestBody PagerQuery pq){ - ResultBean rb = ResultBean.fireFail(); - PagerVo pv = asSaleinvoiceapplyService.listPageVo(pq); - return rb.success().setData(pv); - } - - @ApiOperation("新增或修改") - @PostMapping("/saveOrUpdate") - public ResultBean save(@RequestBody AsSaleinvoiceapplyDto dto){ - ResultBean rb = ResultBean.fireFail(); - asSaleinvoiceapplyService.saveOrUpdateDto(dto); - return rb.success(); - } - - @ApiOperation("根据sid批量删除") + @Autowired + private AsSaleinvoiceapplyService asSaleinvoiceapplyService; + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = asSaleinvoiceapplyService.listPageVo(pq); + return rb.success().setData(pv); + } + + @ApiOperation("新增或修改") + @PostMapping("/saveOrUpdate") + public ResultBean save(@RequestBody AsSaleinvoiceapplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + asSaleinvoiceapplyService.saveOrUpdateDto(dto); + return rb.success(); + } + + @ApiOperation("根据sid批量删除") @DeleteMapping("/delBySids") - public ResultBean delBySids(@RequestBody String[] sids){ - return asSaleinvoiceapplyService.delAll(sids); - } + public ResultBean delBySids(@RequestBody String[] sids) { + return asSaleinvoiceapplyService.delAll(sids); + } - @ApiOperation("根据SID获取一条记录") + @ApiOperation("根据SID获取一条记录") @GetMapping("/fetchDetailsBySid/{sid}") - public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ - ResultBean rb = ResultBean.fireFail(); - AsSaleinvoiceapplyDetailsVo vo = asSaleinvoiceapplyService.fetchDetailsVoBySid(sid); - return rb.success().setData(vo); - } - - @ApiOperation("提交") - @PostMapping("/submit") - public ResultBean submitApply(@Valid @RequestBody SubmitSaleinvoiceapplyDto dto) { - return asSaleinvoiceapplyService.submitApply(dto); - } - - @ApiOperation(value = "办理(同意)") - @PostMapping("/complete") - public ResultBean complete(@Valid @RequestBody CompleteSaleinvoiceapplyDto query) { - BusinessVariables bv = new BusinessVariables(); - BeanUtil.copyProperties(query, bv); - bv.setModelId(""); - return asSaleinvoiceapplyService.complete(bv); - } - - @ApiOperation(value = "获取上一个环节") - @GetMapping(value = "/getPreviousNodesForReject") - ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap SaleinvoiceapplyNodeQuery query) { - return asSaleinvoiceapplyService.getPreviousNodesForReject(query); - } - - @ApiOperation(value = "获取下一个环节") - @GetMapping(value = "/getNextNodesForSubmit") - ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap SaleinvoiceapplyNodeQuery query) { - return asSaleinvoiceapplyService.getNextNodesForSubmit(query); - } - - @ApiOperation(value = "驳回任务") - @PostMapping(value = "/reject") - public ResultBean taskReject(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { - return asSaleinvoiceapplyService.taskReject(query); - } - - @ApiOperation(value = "撤回流程") - @PostMapping(value = "/revokeProcess") - public ResultBean revokeProcess(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { - return asSaleinvoiceapplyService.revokeProcess(query); - } - - @ApiOperation(value = "终止任务") - @PostMapping(value = "/breakProcess") - public ResultBean breakProcess(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { - return asSaleinvoiceapplyService.breakProcess(query); - } - - @ApiOperation(value = "加签") - @PostMapping(value = "/delegate") - @ResponseBody - public ResultBean delegate(@RequestBody SaleinvoiceapplyDelegateQuery query) { - return asSaleinvoiceapplyService.delegate(query); - } + public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid) { + ResultBean rb = ResultBean.fireFail(); + AsSaleinvoiceapplyDetailsVo vo = asSaleinvoiceapplyService.fetchDetailsVoBySid(sid); + return rb.success().setData(vo); + } + + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submitApply(@Valid @RequestBody SubmitSaleinvoiceapplyDto dto) { + return asSaleinvoiceapplyService.submitApply(dto); + } + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody CompleteSaleinvoiceapplyDto query) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(""); + return asSaleinvoiceapplyService.complete(bv); + } + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap SaleinvoiceapplyNodeQuery query) { + return asSaleinvoiceapplyService.getPreviousNodesForReject(query); + } + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap SaleinvoiceapplyNodeQuery query) { + return asSaleinvoiceapplyService.getNextNodesForSubmit(query); + } + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { + return asSaleinvoiceapplyService.taskReject(query); + } + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { + return asSaleinvoiceapplyService.revokeProcess(query); + } + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@Valid @RequestBody SaleinvoiceapplyTaskQuery query) { + return asSaleinvoiceapplyService.breakProcess(query); + } + + @ApiOperation(value = "加签") + @PostMapping(value = "/delegate") + @ResponseBody + public ResultBean delegate(@RequestBody SaleinvoiceapplyDelegateQuery query) { + return asSaleinvoiceapplyService.delegate(query); + } } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulApplyRest.java new file mode 100644 index 0000000000..2253ad104c --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulApplyRest.java @@ -0,0 +1,104 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.api; + +import com.yxt.anrui.oa.biz.adsenpircarpulapply.*; +import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; +import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; +import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; +import com.yxt.common.core.result.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; + +@Api(tags = "总经理级固定私车公用申请") +@RestController +@RequestMapping("v1/adsenpircarpulapply") +public class AdSenpircarpulApplyRest { + + @Autowired + private AdSenpircarpulApplyService adSenpircarpulApplyService; + + @ApiOperation("初始化(新增或修改)") + @GetMapping({"/getInit", "/getInit/{sid}"}) + public ResultBean getInit( + @PathVariable(value = "sid", required = false) String sid, + @RequestParam(value = "userSid", required = false) String userSid, + @RequestParam(value = "orgPath", required = false) String orgPath) { + ResultBean rb = ResultBean.fireFail(); + if (sid == null || sid.isEmpty()) { + // 执行新增初始化 + if (userSid == null || orgPath == null) { + return rb.setMsg("userSid和orgPath不能为空"); + } + return adSenpircarpulApplyService.getSaveInit(userSid, orgPath); + } else { + // 执行修改初始化 + return adSenpircarpulApplyService.getUpdateInit(sid); + } + } + + @ApiOperation("新增或修改") + @PostMapping("/save") + public ResultBean save(@RequestBody AdSenpircarpulApplyDto dto) { + return adSenpircarpulApplyService.saveOrUpdateDto(dto); + } + + @ApiOperation("详情") + @GetMapping("/details/{sid}") + ResultBean details(@PathVariable("sid") String sid + , @RequestParam(value = "application", required = false) String application) { + return adSenpircarpulApplyService.details(sid,application); + } + + @ApiOperation("提交审批流程") + @PostMapping("/submit") + public ResultBean submit(@RequestBody AdSenpircarpulApplyDto dto) { + return adSenpircarpulApplyService.submit(dto); + } + + @ApiOperation(value = "办理(同意)") + @PutMapping("/complete") + public ResultBean complete(@Valid @RequestBody CompleteDto dto) { + return adSenpircarpulApplyService.complete(dto); + } + + @ApiOperation(value = "驳回任务") + @PutMapping(value = "/reject") + public ResultBean reject(@Valid @RequestBody TaskDto dto) { + return adSenpircarpulApplyService.reject(dto); + } + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap NodeQuery query) { + return adSenpircarpulApplyService.getFlowOperateTitle(query); + } +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulDetailRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulDetailRest.java new file mode 100644 index 0000000000..b4be327f6c --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdSenpircarpulDetailRest.java @@ -0,0 +1,36 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.api; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.*; + +@Api(tags = "总经理级固定私车公用列表") +@RestController +@RequestMapping("v1/adsenpircarpuldetail") +public class AdSenpircarpulDetailRest { + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApply.java new file mode 100644 index 0000000000..d9051ff8c2 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApply.java @@ -0,0 +1,58 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulApply.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpulapply.AdSenpircarpulApply
+ * Description: 总经理级固定私车公用申请.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用申请", description = "总经理级固定私车公用申请") +@TableName("ad_senpircarpul_apply") +public class AdSenpircarpulApply extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("基础表单sid") + private String formSid; // 基础表单sid + @ApiModelProperty("关联审批sid列表,英文逗号分隔") + private String linkFormSids; // 关联审批sid列表,英文逗号分隔 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDetailsVo.java new file mode 100644 index 0000000000..af0ff0c764 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDetailsVo.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + + +import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostListDetailVo; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulApplyVo.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpulapply.AdSenpircarpulApplyVo
+ * Description: 总经理级固定私车公用申请 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用申请 视图数据详情", description = "总经理级固定私车公用申请 视图数据详情") +public class AdSenpircarpulApplyDetailsVo implements Vo { + + @ApiModelProperty("备注") + private String remarks; + + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDto.java new file mode 100644 index 0000000000..3430333bfc --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyDto.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + + +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailDto; +import com.yxt.anrui.oa.biz.adsenpircarpuldetail.AdSenpircarpulDetailDto; +import com.yxt.anrui.oa.biz.oaform.OaFormDto; +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulApplyDto.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpulapply.AdSenpircarpulApplyDto
+ * Description: 总经理级固定私车公用申请 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用申请 数据传输对象", description = "总经理级固定私车公用申请 数据传输对象") +public class AdSenpircarpulApplyDto extends OaFormDto { + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("基础表单sid") + private String formSid; + @ApiModelProperty("关联审批单") + private String linkFormSids; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("文件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.java new file mode 100644 index 0000000000..ac7a92ae5a --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.java @@ -0,0 +1,35 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface AdSenpircarpulApplyMapper extends BaseMapper { + + AdSenpircarpulApplyDetailsVo details(String sid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.xml new file mode 100644 index 0000000000..6665a8c115 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyService.java new file mode 100644 index 0000000000..8b6ad73b9b --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyService.java @@ -0,0 +1,310 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.oa.biz.adsenpircarpuldetail.AdSenpircarpulDetailDto; +import com.yxt.anrui.oa.biz.adsenpircarpuldetail.AdSenpircarpulDetailService; +import com.yxt.anrui.oa.biz.adsenpircarpuldetail.AdSenpircarpulDetailVo; +import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.*; +import com.yxt.anrui.oa.biz.oaform.flowable.*; +import com.yxt.anrui.oa.feign.file.OaFileEnum; +import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class AdSenpircarpulApplyService extends MybatisBaseService { + @Autowired + private OaAppendixService oaAppendixService; + @Autowired + private OaFormService oaFormService; + @Autowired + private AdSenpircarpulDetailService adSenpircarpulDetailService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + public ResultBean getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdSenpircarpulApplyVo adSenpircarpulApplyVo = new AdSenpircarpulApplyVo(); + adSenpircarpulApplyVo.setCreateBySid(userSid); + adSenpircarpulApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adSenpircarpulApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdSenpircarpulApplyVo adSenpircarpulApplyVo = new AdSenpircarpulApplyVo(); + AdSenpircarpulApply adSenpircarpulApply = fetchBySid(sid); + if (adSenpircarpulApply == null) { + return rb.setMsg("该申请不存在"); + } +// adExpatriatesApplyVo.setTestPage(adExpatriatesApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adSenpircarpulApplyVo.setTaskId(oaForm.getTaskId()); + adSenpircarpulApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adSenpircarpulApplyVo.setOrgSidPath(orgSidPath); + adSenpircarpulApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adSenpircarpulApply, adSenpircarpulApplyVo); + List list = adSenpircarpulDetailService.getUpdateInit(sid); + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + FormCommon userObj = FormCommon.of(details.getUserKey(), details.getUserValue()); + details.setUserObj(userObj); + FormCommon deptObj = FormCommon.of(details.getDeptKey(), details.getDeptValue()); + details.setDeptObj(deptObj); + FormCommon jobObj = FormCommon.of(details.getJobKey(), details.getJobValue()); + details.setJobObj(jobObj); + }); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + adSenpircarpulApplyVo.setFiles(files); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adSenpircarpulApplyVo.setAppes(appes); + adSenpircarpulApplyVo.setList(list); + adSenpircarpulApplyVo.setSid(sid); + return rb.success().setData(adSenpircarpulApplyVo); + } + + public ResultBean saveOrUpdateDto(AdSenpircarpulApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + List files = dto.getFiles(); + List appes = dto.getAppes(); + List list = dto.getList(); + if (StringUtils.isBlank(sid)) { + // 新建操作 + AdSenpircarpulApply entity = new AdSenpircarpulApply(); + BeanUtil.copyProperties(dto, entity, "sid"); + + dto.setBillNo("ZJLJGDSCGYSQ"); + dto.setSid(entity.getSid()); + ResultBean resultBean = oaFormService.saveOaForm(dto); + + if (!resultBean.getSuccess()) { + return rb; + } + + entity.setFormSid(resultBean.getData()); + baseMapper.insert(entity); + sid = entity.getSid(); + } else { + // 更新操作 + AdSenpircarpulApply entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + adSenpircarpulDetailService.saveDetails(list, sid); + // 处理附件 + saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片"); + saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件"); + return rb.success().setData(sid); + } + + // 保存文件 + private void saveFiles(String sid, List files, String attachType, String fileType) { + files.removeAll(Collections.singleton(null)); + oaAppendixService.saveFile(sid, files, attachType, fileType); + } + + public ResultBean details(String sid, String application) { + ResultBean rb = ResultBean.fireFail(); + AdSenpircarpulApplyDetailsVo adSenpircarpulApplyDetailsVo = baseMapper.details(sid); + if (adSenpircarpulApplyDetailsVo == null) { + return rb.setMsg("该申请不存在"); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adSenpircarpulApplyDetailsVo.setFiles(files); + adSenpircarpulApplyDetailsVo.setAppes(appes); + //基础字段赋值 + BeanUtil.copyProperties(oaFormService.getDetails(sid), adSenpircarpulApplyDetailsVo); + return rb.success().setData(adSenpircarpulApplyDetailsVo); + } + + /** + * 提交 + * + * @param dto + * @return + */ + public ResultBean submit(AdSenpircarpulApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + ResultBean stringResultBean = saveOrUpdateDto(dto); + if (!stringResultBean.getSuccess()) { + return rb.setMsg(stringResultBean.getData()); + } + String businessSid = stringResultBean.getData(); + + SubmitDto submitDto = new SubmitDto(); + submitDto.setUserSid(dto.getCreateBySid()); + submitDto.setBusinessSid(businessSid); + + Map formVariables = new HashMap<>(); + formVariables = getMap(formVariables, businessSid); + submitDto.setFormVariables(formVariables); + submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId()); + submitDto.setNextTaskId(dto.getTaskId()); + submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule()); + return oaFormService.submit(submitDto); + } + + /** + * 办理(同意) + * + * @param dto + * @return + */ + public ResultBean complete(CompleteDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); + BeanUtil.copyProperties(dto, businessVariablesDto); + return oaFormService.complete(businessVariablesDto); + } + + /** + * 驳回 + * + * @param dto + * @return + */ + public ResultBean reject(TaskDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + return oaFormService.reject(dto); + } + + public ResultBean getFlowOperateTitle(NodeQuery query) { + // 默认失败返回 + ResultBean rb = ResultBean.fireFail(); + + // 获取next值和formVariables + int next = query.getNext(); + + // 获取并更新formVariables + Map formVariables = getMap(query.getFormVariables(), query.getBusinessSid()); + query.setFormVariables(formVariables); + + // 校验next参数是否有效(只允许0或1) + if (next != 0 && next != 1) { + return rb.setMsg("参数错误:next"); // 如果next不是0或1,返回错误信息 + } + + // 获取节点名称 + String data = getNodeName(query, next); + + // 如果data为null,表示未获取到有效的节点信息 + if (data == null) { + return rb.setMsg("没有获取到节点信息"); // 返回错误消息 + } + + // 返回成功的结果和获取到的节点名称 + return rb.success().setData(data); + } + + /** + * 网关参数组成 + * + * @param formVariables + * @param sid + * @return + */ + public Map getMap(Map formVariables, String sid) { + Map appMap = new HashMap<>(); + appMap.put("sid", sid); + /*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid); + appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid); + appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle"); + appMap.put("agreeUrl", "oa/v1/HrHireApply/complete"); + appMap.put("stopUrl", "oa/v1/oaform/breakProcess"); + appMap.put("rejectUrl", "oa/v1/HrHireApply/reject"); + appMap.put("recallUrl", "oa/v1/oaform/revokeProcess"); + appMap.put("signUrl", "oa/v1/oaform/delegate"); + appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/ + appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl()); + appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl()); + appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl()); + appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl()); + appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl()); + formVariables.put("app", appMap); + //根据组织查询是否是分公司 + OaForm oaForm = oaFormService.fetchBySid(sid); + AdSenpircarpulApply adSenpircarpulApply = fetchBySid(sid); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData(); + //是否是分公司 + formVariables.put("isTrue", sysOrganization.getIsDept() == 0); + return formVariables; + } + + /** + * 根据next的值获取前一个节点或下一个节点的名称。 + * + * @param query 包含查询所需参数的NodeQuery对象 + * @param next 参数,0表示上一环节,1表示下一环节 + * @return 节点名称,如果失败则返回null + */ + private String getNodeName(NodeQuery query, int next) { + // 根据next值选择相应的服务方法获取节点信息 + ResultBean> resultBean = (next == 0) + ? oaFormService.getPreviousNodesForReject(query) // 获取上一环节的节点 + : oaFormService.getNextNodesForSubmit(query); // 获取下一环节的节点 + // 如果服务调用成功 + if (resultBean.getSuccess()) { + // 清除结果列表中的null值,避免空节点 + resultBean.getData().removeAll(Collections.singleton(null)); + // 如果结果列表非空,返回第一个节点的名称 + if (!resultBean.getData().isEmpty()) { + return resultBean.getData().get(0).getName(); + } + } else { + // 如果服务调用失败,返回null + return null; + } + // 如果结果为空,返回null + return null; + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyVo.java new file mode 100644 index 0000000000..cacc1b8401 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpulapply/AdSenpircarpulApplyVo.java @@ -0,0 +1,77 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpulapply; + + +import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; +import com.yxt.anrui.oa.biz.adsenpircarpuldetail.AdSenpircarpulDetailVo; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulApplyVo.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpulapply.AdSenpircarpulApplyVo
+ * Description: 总经理级固定私车公用申请 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用申请 视图数据对象", description = "总经理级固定私车公用申请 视图数据对象") +public class AdSenpircarpulApplyVo implements Vo { + + private String sid; + /* private String userSid; + private String orgPath;*/ + private String orgSidPath; + private String createBySid; + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); + + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + +// private String testPage; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetail.java new file mode 100644 index 0000000000..f2f8ca09c5 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetail.java @@ -0,0 +1,68 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulDetail.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpuldetail.AdSenpircarpulDetail
+ * Description: 总经理级固定私车公用列表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用列表", description = "总经理级固定私车公用列表") +@TableName("ad_senpircarpul_detail") +public class AdSenpircarpulDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请sid") + private String mainSid; // 申请sid + @ApiModelProperty("人员sid") + private String userSid; // 人员sid + @ApiModelProperty("人员姓名") + private String userName; // 人员姓名 + @ApiModelProperty("部门sid") + private String deptSid; // 部门sid + @ApiModelProperty("部门名称") + private String deptName; // 部门名称 + @ApiModelProperty("岗位sid") + private String postSid; // 岗位sid + @ApiModelProperty("岗位名称") + private String postName; // 岗位名称 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailDto.java new file mode 100644 index 0000000000..5547f3932e --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailDto.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.dto.Dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulDetailDto.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpuldetail.AdSenpircarpulDetailDto
+ * Description: 总经理级固定私车公用列表 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用列表 数据传输对象", description = "总经理级固定私车公用列表 数据传输对象") +public class AdSenpircarpulDetailDto implements Dto { + + @ApiModelProperty("人员") + private FormCommon userObj; + private String userKey; + private String userValue; + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptKey; + private String deptValue; + @ApiModelProperty("岗位") + private FormCommon jobObj; + private String jobKey; + private String jobValue; +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.java new file mode 100644 index 0000000000..d7890ddfef --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.java @@ -0,0 +1,40 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; +import java.util.List; + +@Mapper +public interface AdSenpircarpulDetailMapper extends BaseMapper { + + List getUpdateInit(String sid); + + @Select("select * from ad_senpircarpul_detail where mainSid = #{mainSid}") + List selectByMainSid(String mainSid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.xml new file mode 100644 index 0000000000..16cf794d75 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailMapper.xml @@ -0,0 +1,17 @@ + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailService.java new file mode 100644 index 0000000000..0c3dafe176 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailService.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.List; + +@Service +public class AdSenpircarpulDetailService extends MybatisBaseService { + + public void saveDetails(List list, String sid) { + //根据sid查询明细并删除 + List list2 = baseMapper.selectByMainSid(sid); + list2.removeAll(Collections.singleton(null)); + if (!list2.isEmpty()) { + list2.stream().forEach(v -> { + deleteBySid(v.getSid()); + }); + } + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + AdSenpircarpulDetail adSenpircarpulDetail = new AdSenpircarpulDetail(); + BeanUtil.copyProperties(details, adSenpircarpulDetail); + adSenpircarpulDetail.setMainSid(sid); + baseMapper.insert(adSenpircarpulDetail); + }); + } + } + + public List getUpdateInit(String sid) { + return baseMapper.getUpdateInit(sid); + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailVo.java new file mode 100644 index 0000000000..e38ce4fc28 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulDetailVo.java @@ -0,0 +1,67 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulDetailVo.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpuldetail.AdSenpircarpulDetailVo
+ * Description: 总经理级固定私车公用列表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用列表 视图数据对象", description = "总经理级固定私车公用列表 视图数据对象") +public class AdSenpircarpulDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("人员") + private FormCommon userObj; + private String userKey; + private String userValue; + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptKey; + private String deptValue; + @ApiModelProperty("岗位") + private FormCommon jobObj; + private String jobKey; + private String jobValue; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulListDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulListDetailVo.java new file mode 100644 index 0000000000..56432fdcbe --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adsenpircarpuldetail/AdSenpircarpulListDetailVo.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adsenpircarpuldetail; + + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Project: yxt-oa(1)
+ * File: AdSenpircarpulDetailVo.java
+ * Class: com.yxt.anrui.oa.api.adsenpircarpuldetail.AdSenpircarpulDetailVo
+ * Description: 总经理级固定私车公用列表 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2025-02-20 11:28:22
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Data +@ApiModel(value = "总经理级固定私车公用列表 视图数据对象", description = "总经理级固定私车公用列表 视图数据对象") +public class AdSenpircarpulListDetailVo implements Vo { + + private String sid; // sid + + @ApiModelProperty("人员") + private String userValue; + @ApiModelProperty("部门") + private String deptValue; + @ApiModelProperty("岗位") + private String jobValue; +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryProfitoutRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryProfitoutRest.java index 372f8c7e43..2e9caacefc 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryProfitoutRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryProfitoutRest.java @@ -98,7 +98,7 @@ public class WmsInventoryProfitoutRest { } @ApiOperation("提交") - @PostMapping("/submitApply") + @PostMapping("/submit") public ResultBean submitApply(@Valid @RequestBody SubmitInventoryProfitoutDto dto) { return wmsInventoryProfitoutService.submitApply(dto); } From 624fa4ef1f948305e60ec4695cefdac00d0e59f3 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 09:05:31 +0800 Subject: [PATCH 09/90] =?UTF-8?q?=E9=80=9A=E7=94=A8=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/flowapprover/FlowApprover.java | 23 + .../api/flowapprover/FlowApproverDto.java | 20 + .../yxt/anrui/flowable/api/flowcc/FlowCc.java | 21 + .../flowable/biz/flow3/Flow3Service.java | 39 +- .../anrui/flowable/biz/flow4/Flow4Mapper.java | 18 + .../anrui/flowable/biz/flow4/Flow4Mapper.xml | 9 + .../anrui/flowable/biz/flow4/Flow4Rest.java | 111 +++++ .../flowable/biz/flow4/Flow4Service.java | 441 ++++++++++++++++++ .../biz/flowapprover/FlowApproverMapper.java | 17 + .../biz/flowapprover/FlowApproverMapper.xml | 10 + .../biz/flowapprover/FlowApproverService.java | 53 +++ .../flowable/biz/flowcc/FlowCcMapper.java | 16 + .../flowable/biz/flowcc/FlowCcMapper.xml | 4 + .../flowable/biz/flowcc/FlowCcService.java | 19 + 14 files changed, 798 insertions(+), 3 deletions(-) create mode 100644 anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java create mode 100644 anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApproverDto.java create mode 100644 anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowcc/FlowCc.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.xml create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml create mode 100644 anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java new file mode 100644 index 0000000000..7378438c5a --- /dev/null +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java @@ -0,0 +1,23 @@ +package com.yxt.anrui.flowable.api.flowapprover; + +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Data +public class FlowApprover extends BaseEntity { + private static final long serialVersionUID = 8140464420543873852L; + @ApiModelProperty("申请sid") + private String businessSid; + @ApiModelProperty("序号") + private Integer sortNo; + @ApiModelProperty("审批人sid") + private String approverSid; + @ApiModelProperty("审批人名称") + private String approvalName; +} diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApproverDto.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApproverDto.java new file mode 100644 index 0000000000..2d7597af72 --- /dev/null +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApproverDto.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.flowable.api.flowapprover; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Data +public class FlowApproverDto { + + @ApiModelProperty("申请sid") + private String businessSid; + @ApiModelProperty("审批人sid") + private List approverSidList; +} diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowcc/FlowCc.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowcc/FlowCc.java new file mode 100644 index 0000000000..24f6e3810a --- /dev/null +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowcc/FlowCc.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.flowable.api.flowcc; + +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Data +public class FlowCc extends BaseEntity { + private static final long serialVersionUID = -4299550952719113083L; + @ApiModelProperty("申请sid") + private String businessSid; + @ApiModelProperty("抄送人sids") + private String ccSids; + @ApiModelProperty("抄送人名称") + private String ccNames; +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java index cb7e2ce5b3..e0628875e7 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java @@ -95,8 +95,6 @@ public class Flow3Service extends MybatisBaseService { private MessageFeign messageFeign; @Autowired private SysFlowccFeign sysFlowccFeign; - @Autowired - private ProcessEngine processEngine; public ResultBean businessStartProcessInstanceById(BusinessVariables bv) { ResultBean rb = ResultBean.fireFail(); @@ -146,6 +144,8 @@ public class Flow3Service extends MybatisBaseService { String id_ = ""; String name_ = ""; String task_def_key_ = ""; + //设置是否是管理员自动审批,默认否 + boolean adminContains = false; //查询当前实例的最新待办任务 List tasks = taskService.createTaskQuery().processInstanceId(processInstance.getId()).list(); if (StringUtils.isBlank(nextNodeUserSids)) { @@ -168,6 +168,21 @@ public class Flow3Service extends MybatisBaseService { taskService.setVariablesLocal(id_, variables); } } + tasks = taskService.createTaskQuery().processInstanceId(processInstance.getId()).list(); + //遍历待办任务 + for (int i = 0; i < tasks.size(); i++) { + Task task2 = tasks.get(i); + String isMultiInstanceTask = isMultiInstanceTask(task2); + id_ = task2.getId(); + task_def_key_ = task2.getTaskDefinitionKey(); + name_ = task2.getName(); + if ("会签任务".equals(isMultiInstanceTask) || "或签任务".equals(isMultiInstanceTask)) { + if(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId().equals(task2.getAssignee())){ + adminContains = true; + break; + } + } + } } else { Task task2 = tasks.get(0); id_ = task2.getId(); @@ -179,8 +194,10 @@ public class Flow3Service extends MybatisBaseService { taskService.setVariablesLocal(id_, variables); } + + //提交前传入下一环节待办人 - if (ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId().equals(nextNodeUserSids)) { + if (ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId().equals(nextNodeUserSids) || adminContains) { return handleAutomaticApproval(bv, task, id_, task_def_key_, variables, variablesSeconds, processDefinition); } // 如果申请人与下一环节审批人相同,则自动审批 @@ -301,6 +318,22 @@ public class Flow3Service extends MybatisBaseService { nodeState = task2.getName(); taskDefKey = task2.getTaskDefinitionKey(); } + tasks = taskService.createTaskQuery().processInstanceId(instanceId).list(); + //遍历待办任务 + for (int i = 0; i < tasks.size(); i++) { + Task task2 = tasks.get(i); + isMultiInstanceTask = isMultiInstanceTask(task2); + vo.setTaskId(task2.getId()); + nodeState = task2.getName(); + taskDefKey = task2.getTaskDefinitionKey(); + if ("会签任务".equals(isMultiInstanceTask) || "或签任务".equals(isMultiInstanceTask)) { + if(ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId().equals(task2.getAssignee())){ + nextUserSid = ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId(); + adminContains = true; + break; + } + } + } } else { nodeState = FlowComment.SETTLE.getRemark(); taskDefKey = "Event_end"; diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.java new file mode 100644 index 0000000000..a2c0a120ba --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.java @@ -0,0 +1,18 @@ +package com.yxt.anrui.flowable.biz.flow4; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.flowable.api.flow.Flowable; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Mapper +public interface Flow4Mapper extends BaseMapper { + + List selectByProcInstId(String instanceId); +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.xml b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.xml new file mode 100644 index 0000000000..457aa52e23 --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Mapper.xml @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java new file mode 100644 index 0000000000..005a0798f3 --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java @@ -0,0 +1,111 @@ +package com.yxt.anrui.flowable.biz.flow4; + +import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSONObject; +import com.google.common.util.concurrent.ThreadFactoryBuilder; +import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.biz.flow2.FlowRest; +import com.yxt.anrui.flowable.feign.form.MessageFlowVo; +import com.yxt.anrui.flowable.feign.form.MessageFlowableQuery; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.sysflowcc.SysFlowccVo; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; +import com.yxt.anrui.portal.api.sysuser.UserByRolesAndOrgQuery; +import com.yxt.common.base.utils.StringUtils; +import com.yxt.common.core.result.ResultBean; +import org.apache.tomcat.util.threads.ThreadPoolExecutor; +import org.flowable.task.api.history.HistoricTaskInstance; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.*; +import java.util.concurrent.*; + +/** + * @description: 通用审批 + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@RestController +@RequestMapping("v4/flow") +public class Flow4Rest { + + Logger log = LoggerFactory.getLogger(FlowRest.class); + + @Autowired + private Flow4Service flowService; + + @PostMapping("/startProcess") + public ResultBean startProcess(@RequestBody BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + //获取表单中的参数 + Map formVariables = bv.getFormVariables(); + formVariables = formVariables == null ? new HashMap<>() : formVariables; + //发起人的组织全路径 + String orgPath = bv.getOrgSidPath(); + formVariables.put("createrOrgPath", orgPath); + formVariables.put("businessSid", bv.getBusinessSid()); + + //启动流程实例 + ResultBean startResultBean = flowService.businessStartProcessInstanceById(bv); + return startResultBean; + } + + @PostMapping("/submit2") + ResultBean submit2() { + ResultBean rb = ResultBean.fireFail(); + List userIds = new ArrayList<>(); + userIds.add("aaa"); + userIds.add("bbb"); + userIds.add("ccc"); + + Map variables = new HashMap<>(); + variables.put("approvers", userIds); + BusinessVariables bv = new BusinessVariables(); + bv.setFormVariables(variables); + bv.setModelId("process_wj9q4vwi:1:17170004"); + bv.setUserSid("7f56f6ec-4a5f-47b0-aaab-158d64cb97b1"); + //启动流程 + ResultBean voResultBean = startProcess(bv); + System.out.println("voResultBean{}" + voResultBean); + return rb.success(); + } + + public ResultBean handleProsess(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + ResultBean updateFlowFieldVoResultBean = flowService.handleProsess(bv, true); + //添加抄送 + log.info("流程返回:{}", JSONObject.toJSONString(updateFlowFieldVoResultBean)); + //需要判断办结后再执行 TODO + if (updateFlowFieldVoResultBean.getSuccess()) { + log.info("流程返回:{}", JSONObject.toJSONString(updateFlowFieldVoResultBean)); + if ("Event_end".equals(updateFlowFieldVoResultBean.getData().getTaskDefKey())) { + try { + ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() + .setNameFormat("demo-pool-%d").build(); + ExecutorService pool = new ThreadPoolExecutor(2, 100, + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); + + Future future1 = pool.submit(() -> { + HashMap map = new HashMap<>(); + map.put("bv", bv); + UpdateFlowFieldVo ufVo = updateFlowFieldVoResultBean.getData(); + ufVo.setTaskId(bv.getTaskId()); + map.put("uff", ufVo); + flowService.cc(map, bv.getTaskDefKey()); + }); + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("抄送失败"); + } + } + } + return updateFlowFieldVoResultBean; + } +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java new file mode 100644 index 0000000000..41c6389c4a --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java @@ -0,0 +1,441 @@ +package com.yxt.anrui.flowable.biz.flow4; + +import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.yxt.anrui.flowable.api.flow.Flowable; +import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.api.flowapprover.FlowApprover; +import com.yxt.anrui.flowable.api.flowapprover.FlowApproverDto; +import com.yxt.anrui.flowable.api.flowcc.FlowCc; +import com.yxt.anrui.flowable.api.flowcomment.FlowComment; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; +import com.yxt.anrui.flowable.api.processcomment.ProcessCommentDto; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.biz.flow2.FlowMapper; +import com.yxt.anrui.flowable.biz.flowapprover.FlowApproverService; +import com.yxt.anrui.flowable.biz.flowcc.FlowCcService; +import com.yxt.anrui.flowable.biz.flowtask.FlowTaskService; +import com.yxt.anrui.flowable.biz.process.ProcessService; +import com.yxt.anrui.flowable.biz.processcomment.ProcessCommentService; +import com.yxt.anrui.flowable.common.ProcessConstants; +import com.yxt.anrui.flowable.feign.MessageFeign; +import com.yxt.anrui.flowable.feign.form.MessageFlowVo; +import com.yxt.anrui.flowable.feign.form.MessageFlowableQuery; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.sysflowableconfig.SysFlowableConfigFeign; +import com.yxt.anrui.portal.api.sysflowableconfig.SysFlowableConfigQuery; +import com.yxt.anrui.portal.api.sysflowableconfig.SysFlowableConfigVvo; +import com.yxt.anrui.portal.api.sysflowcc.SysFlowccFeign; +import com.yxt.anrui.portal.api.sysflowcc.SysFlowccVo; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; +import com.yxt.anrui.portal.api.sysuser.UserByRolesAndOrgQuery; +import com.yxt.anrui.portal.api.sysuser.UserssQuery; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.StringUtils; +import com.yxt.common.core.result.ResultBean; +import lombok.extern.slf4j.Slf4j; +import org.flowable.bpmn.model.BpmnModel; +import org.flowable.bpmn.model.FlowElement; +import org.flowable.bpmn.model.UserTask; +import org.flowable.common.engine.impl.identity.Authentication; +import org.flowable.engine.*; +import org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl; +import org.flowable.engine.repository.ProcessDefinition; +import org.flowable.engine.runtime.ProcessInstance; +import org.flowable.task.api.DelegationState; +import org.flowable.task.api.Task; +import org.flowable.task.api.history.HistoricTaskInstance; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.*; +import java.util.stream.Collectors; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Service +@Slf4j +public class Flow4Service extends MybatisBaseService { + + @Autowired + RepositoryService repositoryService; + @Autowired + RuntimeService runtimeService; + + @Autowired + ManagementService managementService; + @Autowired + ProcessEngineConfigurationImpl processEngineConfiguration; + @Autowired + private SysUserFeign sysUserFeign; + + @Autowired + protected IdentityService identityService; + @Autowired + protected TaskService taskService; + @Autowired + private SysFlowableConfigFeign sysFlowableConfigFeign; + @Autowired + private FlowTaskService flowTaskService; + @Autowired + private ProcessCommentService processCommentService; + + @Autowired + protected HistoryService historyService; + + @Autowired + private ProcessService processService; + + @Autowired + private MessageFeign messageFeign; + @Autowired + private SysFlowccFeign sysFlowccFeign; + + @Autowired + private FlowApproverService flowApproverService; + @Autowired + private FlowCcService flowCcService; + + + /** + * 启动流程 + * + * @param bv + * @return + */ + public ResultBean businessStartProcessInstanceById(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + UpdateFlowFieldVo updateFlowFieldVo = new UpdateFlowFieldVo(); + String procDefId = bv.getModelId(); + String userSid = bv.getUserSid(); + String nextNodeUserSids = bv.getNextNodeUserSids(); + Map variables = bv.getFormVariables(); + // 获取审批人列表 + List approvers = (List) variables.get("approvers"); + // 获取抄送人列表 + List ccList = (List) variables.get("ccList"); + + + //根据流程定义id查询 + ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(procDefId) + .latestVersion().singleResult(); + if (Objects.nonNull(processDefinition) && processDefinition.isSuspended()) { + return rb.setMsg("流程已被挂起,请先激活流程"); + } + // 设置流程发起人Id到流程中 + ResultBean sysUserVoResultBean = sysUserFeign.fetchBySid(userSid); + SysUserVo sysUser = sysUserVoResultBean.getData(); + identityService.setAuthenticatedUserId(sysUser.getSid()); + variables.put(ProcessConstants.PROCESS_INITIATOR, userSid); + variables.put(ProcessConstants.USER_TYPE_ASSIGNEE, userSid); + ProcessInstance processInstance = runtimeService.startProcessInstanceById(procDefId, variables); + // 给第一步申请人节点设置任务执行人和意见 + Task task = taskService.createTaskQuery().processInstanceId(processInstance.getProcessInstanceId()).singleResult(); + if (Objects.nonNull(task)) { + taskService.addComment(task.getId(), processInstance.getProcessInstanceId(), FlowComment.START.getType(), + sysUser.getName() + "发起流程申请"); + taskService.setAssignee(task.getId(), userSid); + taskService.complete(task.getId(), variables); + } + assembleFlowApprover(bv); + //查询当前实例的最新待办任务 + List tasks = taskService.createTaskQuery().processInstanceId(processInstance.getId()).list(); + task = tasks.get(0); + Integer sortNo = sortNo(procDefId, task.getTaskDefinitionKey()); + System.out.println("获取环节序号================" + sortNo); + String approverSid = flowApproverService.selectApproverSid(bv.getBusinessSid(), sortNo); + String id_ = task.getId(); + String task_def_key_ = task.getTaskDefinitionKey(); + String nodeState = task.getName(); + //查询下一环节是否有转办并添加评论 + nextNodeUserSids = change(approverSid, processInstance.getProcessInstanceId()); + taskService.setAssignee(id_, nextNodeUserSids); + taskService.setVariablesLocal(id_, variables); + updateFlowFieldVo.setProcInsId(task.getProcessInstanceId()); + updateFlowFieldVo.setNodeState(nodeState); + updateFlowFieldVo.setTaskId(id_); + updateFlowFieldVo.setTaskDefKey(task_def_key_); + updateFlowFieldVo.setProcDefId(bv.getModelId()); + updateFlowFieldVo.setSid(bv.getBusinessSid()); + updateFlowFieldVo.setName(processDefinition.getName()); + return rb.success().setData(updateFlowFieldVo).setMsg("流程启动成功"); + } + + /** + * 查询下一环节用户是否有转办用户,若有转办用户则添加转办评论 + * + * @param nextNodeUserSids 下一环节用户 + * @param instanceId 实例id + * @return + */ + public String change(String nextNodeUserSids, String instanceId) { + //查询下一环节是否有转办 + String firstSid = ""; + String firstName = ""; + //默认无转办 + boolean isChange = false; + if (StringUtils.isNotBlank(nextNodeUserSids)) { + List nextUserList = Arrays.asList(nextNodeUserSids.split(",")); + if (nextUserList.size() == 1) { + firstSid = nextUserList.get(0); + ResultBean userVoResultBean = sysUserFeign.fetchBySid(firstSid); + if (userVoResultBean.getData() != null) { + firstName = userVoResultBean.getData().getName(); + } + SysFlowableConfigQuery sysFlowableConfigQuery = new SysFlowableConfigQuery(); + sysFlowableConfigQuery.setUserSid(firstSid); + sysFlowableConfigQuery.setNowDate(new Date()); + ResultBean sysFlowableConfigVvoResultBean = sysFlowableConfigFeign.selectByUserSid(sysFlowableConfigQuery); + if (sysFlowableConfigVvoResultBean.getData() != null) { + if (StringUtils.isNotBlank(sysFlowableConfigVvoResultBean.getData().getChangeUserSid())) { + nextNodeUserSids = sysFlowableConfigVvoResultBean.getData().getChangeUserSid(); + isChange = true; + } + } + } + } + if (isChange) {//添加评论 + ResultBean userVoResultBean = sysUserFeign.fetchBySid(nextNodeUserSids); + ProcessCommentDto processCommentDto = new ProcessCommentDto(); + processCommentDto.setReviewerSid(firstSid); + if (userVoResultBean.getData() != null) { + String changeName = userVoResultBean.getData().getName(); + processCommentDto.setReviewer(firstName); + processCommentDto.setContent("交" + changeName + "转办"); + } + processCommentDto.setTime(new Date()); + processCommentDto.setProcessId(instanceId); + processCommentService.saveOrUpdateDto(processCommentDto); + } + return nextNodeUserSids; + } + + public Integer sortNo(String proDefId, String taskDefKey) { + // 获取所有 UserTask,并以 Map 形式存储环节位置 + Map taskKeyToPositionMap = new HashMap<>(); + // 获取流程定义的 BPMN 模型 + BpmnModel bpmnModel = repositoryService.getBpmnModel(proDefId); + // 使用 Stream API 遍历流程元素并缓存顺序 + List userTasks = bpmnModel.getProcesses().stream() + .flatMap(process -> process.getFlowElements().stream()) // 遍历所有流程 + .filter(flowElement -> flowElement instanceof UserTask) // 只筛选 UserTask + .map(flowElement -> (UserTask) flowElement) + .collect(Collectors.toList()); + + // 将 UserTask 的 key 和位置映射到 Map 中 + int position = 1; + for (UserTask userTask : userTasks) { + taskKeyToPositionMap.put(userTask.getId(), position++); + } + Integer taskPosition = taskKeyToPositionMap.get(taskDefKey); + + return taskPosition; + } + + public void assembleFlowApprover(BusinessVariables bv) { + Map variables = bv.getFormVariables(); + // 获取审批人列表 + List approvers = (List) variables.get("approvers"); + // 获取抄送人列表 + List ccList = (List) variables.get("ccList"); + + FlowApproverDto flowApproverDto = new FlowApproverDto(); + flowApproverDto.setBusinessSid(bv.getBusinessSid()); + flowApproverDto.setApproverSidList(approvers); + ResultBean resultBean = flowApproverService.saveFlowApprover(flowApproverDto); + String ccSids = String.join(",", ccList); + ResultBean> listResultBean = sysUserFeign.fetchBySids(ccSids); + List ccNameList = listResultBean.getData().stream().map(v -> v.getName()).collect(Collectors.toList()); + // 将 List 转换为逗号分隔的字符串 + String result = String.join(",", ccNameList); + FlowCc flowCc = new FlowCc(); + flowCc.setBusinessSid(bv.getBusinessSid()); + flowCc.setCcSids(ccSids); + flowCc.setCcNames(result); + flowCcService.insert(flowCc); + } + + /** + * 办理 + * + * @param bv + * @param b + * @return + */ + public ResultBean handleProsess(BusinessVariables bv, boolean b) { + ResultBean rb = ResultBean.fireFail(); + UpdateFlowFieldVo vo = new UpdateFlowFieldVo(); + //获取表单中的参数 + Map formVariables = bv.getFormVariables(); + formVariables = formVariables == null ? new HashMap<>() : formVariables; + formVariables.put("businessSid", bv.getBusinessSid()); + String nextUserSid = bv.getNextNodeUserSids(); + String taskId = bv.getTaskId(); + String userSid = bv.getUserSid(); + String instanceId = bv.getInstanceId(); + String comment = bv.getComment(); + String nodeState = ""; + String taskDefKey = ""; + String orgPath = bv.getOrgSidPath(); + //查询任务id为taskId的任务是否存在 + Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); + if (Objects.isNull(task)) { + return rb.setMsg("任务不存在"); + } + String assignee = task.getAssignee(); + if (b && (StringUtils.isNotBlank(assignee) && assignee.indexOf(userSid) < 0)) { + return rb.setMsg("当前用户不是环节的待办人,不能进行办理操作!"); + } + if (DelegationState.PENDING.equals(task.getDelegationState())) { + //加签 + Authentication.setAuthenticatedUserId(userSid); + taskService.addComment(taskId, instanceId, + FlowComment.DELEGATE.getType(), comment); + taskService.resolveTask(taskId, formVariables); + nodeState = task.getName(); + taskDefKey = task.getTaskDefinitionKey(); + } else { + //当前环节办理通过,且将下一环节用户放入流程中 + taskService.addComment(taskId, instanceId, FlowComment.NORMAL.getType(), comment); + log.error("taskid:{},userSid:{}", taskId, userSid); + log.error("formVariables:{}", JSON.toJSONString(formVariables)); + taskService.setAssignee(taskId, userSid); + taskService.complete(taskId, formVariables);//当前用户办理通过 + //查询当前实例的最新待办任务 + List tasks = taskService.createTaskQuery().processInstanceId(bv.getInstanceId()).list(); + if (tasks.size() > 0) { + task = tasks.get(0); + Integer sortNo = sortNo(bv.getModelId(), task.getTaskDefinitionKey()); + System.out.println("获取环节序号================" + sortNo); + String approverSid = flowApproverService.selectApproverSid(bv.getBusinessSid(), sortNo); + String id_ = task.getId(); + //查询下一环节用户是否有转办人 + nextUserSid = change(approverSid, bv.getInstanceId()); + taskService.setAssignee(id_, nextUserSid);//将下一环节用户放入流程中 + vo.setTaskId(id_); + //在act_ru_variable表中增加环节上的业务参数的变量 + taskService.setVariablesLocal(id_, formVariables); + nodeState = task.getName(); + taskDefKey = task.getTaskDefinitionKey(); + + } else { + nodeState = FlowComment.SETTLE.getRemark(); + taskDefKey = "Event_end"; + vo.setNodeState(FlowComment.SETTLE.getRemark()); + } + } + vo.setProcInsId(instanceId); + vo.setProcDefId(bv.getModelId()); + vo.setNodeState(nodeState); + vo.setTaskDefKey(taskDefKey); + vo.setSid(bv.getBusinessSid()); + return rb.success().setData(vo); + } + + /** + * 流程抄送的功能 + * + * @param map + * @return + */ + public ResultBean cc(Map map, String taskDefKey) { + ResultBean rb = ResultBean.fireFail(); + log.info("FlowableRest-cc:{}", JSONObject.toJSONString(map)); + Object bv1 = map.get("bv"); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(bv1, bv); + Object uff1 = map.get("uff"); + UpdateFlowFieldVo uff = new UpdateFlowFieldVo(); + BeanUtil.copyProperties(uff1, uff); + uff.setTaskDefKey(taskDefKey); + + FlowCc flowCc = flowCcService.selectByBusinessSid(bv.getBusinessSid()); + StringBuilder userSids = new StringBuilder(flowCc.getCcSids()); + StringBuilder userName = new StringBuilder(flowCc.getCcNames()); + + //抄送的业务逻辑 + MessageFlowableQuery mfq = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(uff, messageFlowVo); + mfq.setUfVo(messageFlowVo); + //移动端的参数 + HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery() + .includeProcessVariables().taskId(bv.getTaskId()).singleResult(); + if (historicTaskInstance == null) { + log.info("抄送失败:没有获取到业务参数!"); + return rb.setMsg("抄送失败!"); + } + Map processVariables = historicTaskInstance.getProcessVariables(); + String createrOrgPath = (String) processVariables.get("createrOrgPath"); + if (historicTaskInstance == null) { + log.info("抄送失败:没有获取到业务参数!"); + return rb.setMsg("抄送失败!"); + } + // + String assignee = (String) processVariables.get("assignee"); + ResultBean stringResultBean = sysUserFeign.fetchBySid(assignee); + String assigneeName = ""; + if (stringResultBean.getData() != null) { + assigneeName = stringResultBean.getData().getName(); + } + + Map app = new HashMap<>(); + if (processVariables.get("app") != null) { + app = (Map) processVariables.get("app"); + } + log.info("抄送方法-historicTaskInstance:{}", JSONObject.toJSONString(historicTaskInstance)); + mfq.setAppMap(app); + mfq.setBusinessSid(bv.getBusinessSid()); + mfq.setMsgContent(assigneeName + "抄送的流程审批,请查看"); +// act_re_procdef + Map process = processService.getProcessDefByDefId(historicTaskInstance.getProcessDefinitionId()); + log.info("抄送成功-process:{}", process); + if (process == null) { + log.info("抄送失败,流程定义不存在!"); + return rb.setMsg("抄送失败,流程定义不存在!"); + } + mfq.setModuleName(process.get("NAME_")); + if (processVariables.containsKey("orderNames")) { + mfq.setMsgTitle(processVariables.get("orderNames").toString()); + } else { + mfq.setMsgTitle(process.get("NAME_")); + } + if (processVariables.containsKey("sendRecommendSid")) {//增加的其他的抄送人 + userSids.append(processVariables.get("sendRecommendSid").toString()).append(","); + } + //查询是否有设置转办的,抄送给设置转办人员 + List zbUserSids = processCommentService.selectByIdAndComment("转办", bv.getInstanceId()); + zbUserSids.removeAll(Collections.singleton(null)); + if (!zbUserSids.isEmpty()) { + String zbUser = String.join(",", zbUserSids); + userSids.append(zbUser).append(","); + } + userSids.deleteCharAt(userSids.length() - 1); + //若抄送的用户已在审批人员中(审批记录中有该用户),则该用户不抄送 + List taskinstUserSidList = baseMapper.selectByProcInstId(bv.getInstanceId()); + List uss = Arrays.asList(userSids.toString().split(",")); + List uniqueList = new ArrayList(new HashSet(uss)); + uniqueList.removeIf(taskinstUserSidList::contains); + String userSidss = String.join(",", uniqueList); + mfq.setUserSids(userSidss); + mfq.setOrgPath(createrOrgPath); + mfq.setUserSid(assignee); + mfq.setApplicationName(assigneeName); + ResultBean resultBean = messageFeign.pushMessageCC(mfq); + log.info("抄送成功:{}", userName.toString()); + log.info("抄送成功-resultBean:{}", resultBean); + if (!resultBean.getSuccess()) { + log.info("抄送失败,同送消息异常!:{}", JSONObject.toJSONString(resultBean)); + return rb.setMsg("抄送失败,同送消息异常!"); + } + return rb.success().setMsg("抄送" + userName.toString() + "成功!"); + } + +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java new file mode 100644 index 0000000000..6149af4ece --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.flowable.biz.flowapprover; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.flowable.api.flow.Flowable; +import com.yxt.anrui.flowable.api.flowapprover.FlowApprover; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Mapper +public interface FlowApproverMapper extends BaseMapper { + String selectApproverSid(@Param("businessSid") String businessSid, @Param("sortNo") Integer sortNo); +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml new file mode 100644 index 0000000000..223f2ea762 --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java new file mode 100644 index 0000000000..41364483fe --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java @@ -0,0 +1,53 @@ +package com.yxt.anrui.flowable.biz.flowapprover; + +import com.yxt.anrui.flowable.api.flow.Flowable; +import com.yxt.anrui.flowable.api.flowapprover.FlowApprover; +import com.yxt.anrui.flowable.api.flowapprover.FlowApproverDto; +import com.yxt.anrui.flowable.biz.flow4.Flow4Mapper; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Service +public class FlowApproverService extends MybatisBaseService { + + @Autowired + private SysUserFeign sysUserFeign; + + public ResultBean saveFlowApprover(FlowApproverDto flowApproverDto) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = flowApproverDto.getBusinessSid(); + List approverSidList = flowApproverDto.getApproverSidList(); + approverSidList.removeAll(Collections.singleton(null)); + if (!approverSidList.isEmpty()) { + for (int i = 0; i < approverSidList.size(); i++) { + FlowApprover flowApprover = new FlowApprover(); + String approverSid = approverSidList.get(i); + Integer sortNo = i + 2; + flowApprover.setBusinessSid(businessSid); + flowApprover.setApproverSid(approverSid); + ResultBean sysUserVoResultBean = sysUserFeign.fetchBySid(approverSid); + SysUserVo sysUser = sysUserVoResultBean.getData(); + flowApprover.setApprovalName(sysUser.getName()); + flowApprover.setSortNo(sortNo); + baseMapper.insert(flowApprover); + } + } + return rb.success(); + } + + public String selectApproverSid(String businessSid, Integer sortNo) { + return baseMapper.selectApproverSid(businessSid,sortNo); + } +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java new file mode 100644 index 0000000000..5aabe3925a --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java @@ -0,0 +1,16 @@ +package com.yxt.anrui.flowable.biz.flowcc; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.flowable.api.flowapprover.FlowApprover; +import com.yxt.anrui.flowable.api.flowcc.FlowCc; +import org.apache.ibatis.annotations.Mapper; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Mapper +public interface FlowCcMapper extends BaseMapper { + FlowCc selectByBusinessSid(String businessSid); +} diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml new file mode 100644 index 0000000000..7d0742116e --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java new file mode 100644 index 0000000000..8ca47a60a3 --- /dev/null +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java @@ -0,0 +1,19 @@ +package com.yxt.anrui.flowable.biz.flowcc; + +import com.yxt.anrui.flowable.api.flowapprover.FlowApprover; +import com.yxt.anrui.flowable.api.flowcc.FlowCc; +import com.yxt.anrui.flowable.biz.flowapprover.FlowApproverMapper; +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.stereotype.Service; + +/** + * @description: + * @author: dimengzhe + * @date: 2025/2/20 + **/ +@Service +public class FlowCcService extends MybatisBaseService { + public FlowCc selectByBusinessSid(String businessSid) { + return baseMapper.selectByBusinessSid(businessSid); + } +} From 19113c068bcbb187fbdbda6fd5df48ecdb0825da Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 09:11:05 +0800 Subject: [PATCH 10/90] =?UTF-8?q?=E9=80=9A=E7=94=A8=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/databases/flowable.sql | 44 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 doc/databases/flowable.sql diff --git a/doc/databases/flowable.sql b/doc/databases/flowable.sql new file mode 100644 index 0000000000..fb3468a781 --- /dev/null +++ b/doc/databases/flowable.sql @@ -0,0 +1,44 @@ +DROP TABLE IF EXISTS `flow_approver`; +CREATE TABLE `flow_approver` +( + `id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id', + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(32) DEFAULT '0' COMMENT '版本锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', + `isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用', + `state` int(32) DEFAULT '1' COMMENT '状态', + `isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '更新人sid', + `businessSid` varchar(64) DEFAULT NULL COMMENT '申请sid', + `sortNo` int(32) DEFAULT NULL COMMENT '序号', + `approverSid` varchar(64) DEFAULT NULL COMMENT '审批人sid', + `approvalName` varchar(64) DEFAULT NULL COMMENT '审批人名称', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = INNODB + DEFAULT CHARSET = utf8 COMMENT ='流程审批人'; + +DROP TABLE IF EXISTS `flow_cc`; +CREATE TABLE `flow_cc` +( + `id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id', + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(32) DEFAULT '0' COMMENT '版本锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间', + `isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用', + `state` int(32) DEFAULT '1' COMMENT '状态', + `isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '更新人sid', + `businessSid` varchar(64) DEFAULT NULL COMMENT '申请sid', + `ccSids` text DEFAULT NULL COMMENT '抄送人sid', + `ccNames` text DEFAULT NULL COMMENT '抄送名称', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = INNODB + DEFAULT CHARSET = utf8 COMMENT ='流程抄送人'; \ No newline at end of file From 6283cd8c4b8431fed0190e21703d105c57b53d88 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Fri, 21 Feb 2025 09:23:19 +0800 Subject: [PATCH 11/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=B4=A2=E8=B5=94?= =?UTF-8?q?=E5=8D=95=E5=BC=80=E7=A5=A8=E7=AE=A1=E7=90=86--=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=BC=80=E7=A5=A8=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/operation/claimbilling/claimbilling.vue | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/yxt-as-ui/src/views/operation/claimbilling/claimbilling.vue b/yxt-as-ui/src/views/operation/claimbilling/claimbilling.vue index a53d457704..b5d9b00940 100644 --- a/yxt-as-ui/src/views/operation/claimbilling/claimbilling.vue +++ b/yxt-as-ui/src/views/operation/claimbilling/claimbilling.vue @@ -31,6 +31,9 @@ + + + @@ -72,6 +75,7 @@ + @@ -168,6 +172,7 @@ export default { closeDateEnd: '', invoiceName: '', invoiceValue: '', + purchaseSystemName: '', menuUrl: '', userSid: '', orgPath: '' @@ -291,6 +296,7 @@ export default { closeDateEnd: '', invoiceName: '', invoiceValue: '', + purchaseSystemName: '', menuUrl: '', userSid: '', orgPath: '' From e7ba76556a5e138c7bacfc9d226c6243cb820f3e Mon Sep 17 00:00:00 2001 From: ligaode Date: Fri, 21 Feb 2025 09:26:06 +0800 Subject: [PATCH 12/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AsBusclaimInvoiceBillQuery.java | 2 ++ .../AsBusclaimInvoiceBillService.java | 10 ++++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusclaiminvoicebill/AsBusclaimInvoiceBillQuery.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusclaiminvoicebill/AsBusclaimInvoiceBillQuery.java index 5b3756233d..a239dd5fc9 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusclaiminvoicebill/AsBusclaimInvoiceBillQuery.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusclaiminvoicebill/AsBusclaimInvoiceBillQuery.java @@ -31,6 +31,8 @@ public class AsBusclaimInvoiceBillQuery implements Query { private String closeDateEnd; @ApiModelProperty("开票名称") private String invoiceName; + @ApiModelProperty("开票单位名称") + private String purchaseSystemName; @ApiModelProperty("开票类型key") private String invoiceValue; diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusclaiminvoicebill/AsBusclaimInvoiceBillService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusclaiminvoicebill/AsBusclaimInvoiceBillService.java index 726b5a60d6..e4533f2acf 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusclaiminvoicebill/AsBusclaimInvoiceBillService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusclaiminvoicebill/AsBusclaimInvoiceBillService.java @@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.yxt.anrui.as.api.asappendix.AsAppendix; -import com.yxt.anrui.as.api.asarrearsoutapply.AsArrearsoutApply; import com.yxt.anrui.as.api.asbusclaimbill.AsBusclaimBill; -import com.yxt.anrui.as.api.asbusclaimbill.AsBusclaimBillExcelInfo; -import com.yxt.anrui.as.api.asbusclaimbill.AsBusclaimBillVo; import com.yxt.anrui.as.api.asbusclaimcheck.AsBusclaimCheckDto; import com.yxt.anrui.as.api.asbusclaiminvoicebill.*; import com.yxt.anrui.as.api.asbusclaiminvoicebill.flowable.*; @@ -22,7 +19,6 @@ import com.yxt.anrui.as.api.asbusclaiminvoicebillproject.AsBusclaimInvoiceBillPr import com.yxt.anrui.as.api.asbusclaiminvoicebillproject.AsBusclaimInvoiceBillProjectFile; import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBill; import com.yxt.anrui.as.api.asbusrepairbillvech.AsBusrepairBillVech; -import com.yxt.anrui.as.api.asbwinvoiceapply.AsBwinvoiceapplyFile; import com.yxt.anrui.as.biz.asappendix.AsAppendixService; import com.yxt.anrui.as.biz.asbusclaimbill.AsBusclaimBillService; import com.yxt.anrui.as.biz.asbusclaimcheck.AsBusclaimCheckService; @@ -65,10 +61,8 @@ import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.tomcat.util.threads.ThreadPoolExecutor; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; - import javax.servlet.http.HttpServletRequest; import java.io.File; import java.io.IOException; @@ -191,6 +185,10 @@ public class AsBusclaimInvoiceBillService extends MybatisBaseService Date: Fri, 21 Feb 2025 09:49:13 +0800 Subject: [PATCH 13/90] =?UTF-8?q?=E9=80=9A=E7=94=A8=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java index 005a0798f3..5cd998feeb 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java @@ -60,9 +60,9 @@ public class Flow4Rest { ResultBean submit2() { ResultBean rb = ResultBean.fireFail(); List userIds = new ArrayList<>(); - userIds.add("aaa"); - userIds.add("bbb"); - userIds.add("ccc"); + userIds.add("1d85d1fe-e527-4ec5-a5e4-c37a76a36518"); + userIds.add("64e289bc-80cd-487a-9498-5ae61e260f71"); + userIds.add("7ffcd76a-4fa0-4c9c-87ca-a0c2116bb2ed"); Map variables = new HashMap<>(); variables.put("approvers", userIds); From af13fa89c7fd4a353d4db67ea3b22f6bab036d80 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Fri, 21 Feb 2025 10:39:32 +0800 Subject: [PATCH 14/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E4=B8=93=E9=A1=B9?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=20--=20=E5=85=B6=E4=B8=AD?= =?UTF-8?q?=E6=94=AF=E5=87=BA=E8=B4=B9=E7=94=A8=E3=80=81=E5=85=B6=E4=B8=AD?= =?UTF-8?q?=E5=BE=85=E6=94=AF=E4=BB=98=E8=B4=B9=E7=94=A8=E3=80=81=E5=85=B6?= =?UTF-8?q?=E4=B8=AD=E6=8A=B5=E9=A1=B6=E8=B4=B9=E7=94=A8=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B3=A8=E9=87=8A=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bikerebatemanagement/bicyclerebatemanagementAdd.vue | 4 ++-- .../bikerebatemanagement/bicyclerebatemanagementEdit.vue | 4 ++-- .../specialrebatemanagement/specialrebatemanagementAdd.vue | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue index fc98b5c66c..fdcb3f6cc6 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue @@ -76,12 +76,12 @@ diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementEdit.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementEdit.vue index 60911e589c..557e72e03c 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementEdit.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementEdit.vue @@ -74,11 +74,11 @@
其中待支付费用
- +
其中抵顶费用
- +
diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagementAdd.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagementAdd.vue index e52b9ae67e..6163cc2ba8 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagementAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagementAdd.vue @@ -70,15 +70,15 @@
其中支出费用
- +
其中待支付费用
- +
其中抵顶费用
- +
From 3456050b12c5e1f906fc87c50e3b0cf88e20e755 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 10:52:48 +0800 Subject: [PATCH 15/90] =?UTF-8?q?=E9=80=9A=E7=94=A8=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/flowapprover/FlowApprover.java | 2 +- .../anrui/flowable/biz/flow4/Flow4Rest.java | 3 +- .../flowable/biz/flow4/Flow4Service.java | 42 +++++++++++-------- .../biz/flowapprover/FlowApproverMapper.java | 2 + .../biz/flowapprover/FlowApproverMapper.xml | 34 +++++++++++++++ .../biz/flowapprover/FlowApproverService.java | 6 +-- .../flowable/biz/flowcc/FlowCcMapper.java | 2 + .../flowable/biz/flowcc/FlowCcMapper.xml | 33 +++++++++++++++ .../flowable/biz/flowcc/FlowCcService.java | 4 ++ doc/databases/flowable.sql | 2 +- 10 files changed, 107 insertions(+), 23 deletions(-) diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java index 7378438c5a..d111bd2c1c 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flowapprover/FlowApprover.java @@ -19,5 +19,5 @@ public class FlowApprover extends BaseEntity { @ApiModelProperty("审批人sid") private String approverSid; @ApiModelProperty("审批人名称") - private String approvalName; + private String approverName; } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java index 5cd998feeb..658a5b531d 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Rest.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSONObject; import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.api.flowcc.FlowCc; import com.yxt.anrui.flowable.biz.flow2.FlowRest; import com.yxt.anrui.flowable.feign.form.MessageFlowVo; import com.yxt.anrui.flowable.feign.form.MessageFlowableQuery; @@ -73,7 +74,7 @@ public class Flow4Rest { //启动流程 ResultBean voResultBean = startProcess(bv); System.out.println("voResultBean{}" + voResultBean); - return rb.success(); + return voResultBean; } public ResultBean handleProsess(BusinessVariables bv) { diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java index 41c6389c4a..e576886108 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow4/Flow4Service.java @@ -245,21 +245,26 @@ public class Flow4Service extends MybatisBaseService { List approvers = (List) variables.get("approvers"); // 获取抄送人列表 List ccList = (List) variables.get("ccList"); + if (approvers != null) { + FlowApproverDto flowApproverDto = new FlowApproverDto(); + flowApproverDto.setBusinessSid(bv.getBusinessSid()); + flowApproverDto.setApproverSidList(approvers); + ResultBean resultBean = flowApproverService.saveFlowApprover(flowApproverDto); + } + + if (ccList != null) { + String ccSids = String.join(",", ccList); + ResultBean> listResultBean = sysUserFeign.fetchBySids(ccSids); + List ccNameList = listResultBean.getData().stream().map(v -> v.getName()).collect(Collectors.toList()); + // 将 List 转换为逗号分隔的字符串 + String result = String.join(",", ccNameList); + FlowCc flowCc = new FlowCc(); + flowCc.setBusinessSid(bv.getBusinessSid()); + flowCc.setCcSids(ccSids); + flowCc.setCcNames(result); + flowCcService.insertFlowCc(flowCc); + } - FlowApproverDto flowApproverDto = new FlowApproverDto(); - flowApproverDto.setBusinessSid(bv.getBusinessSid()); - flowApproverDto.setApproverSidList(approvers); - ResultBean resultBean = flowApproverService.saveFlowApprover(flowApproverDto); - String ccSids = String.join(",", ccList); - ResultBean> listResultBean = sysUserFeign.fetchBySids(ccSids); - List ccNameList = listResultBean.getData().stream().map(v -> v.getName()).collect(Collectors.toList()); - // 将 List 转换为逗号分隔的字符串 - String result = String.join(",", ccNameList); - FlowCc flowCc = new FlowCc(); - flowCc.setBusinessSid(bv.getBusinessSid()); - flowCc.setCcSids(ccSids); - flowCc.setCcNames(result); - flowCcService.insert(flowCc); } /** @@ -355,10 +360,13 @@ public class Flow4Service extends MybatisBaseService { UpdateFlowFieldVo uff = new UpdateFlowFieldVo(); BeanUtil.copyProperties(uff1, uff); uff.setTaskDefKey(taskDefKey); - + StringBuilder userSids = new StringBuilder(); + StringBuilder userName = new StringBuilder(); FlowCc flowCc = flowCcService.selectByBusinessSid(bv.getBusinessSid()); - StringBuilder userSids = new StringBuilder(flowCc.getCcSids()); - StringBuilder userName = new StringBuilder(flowCc.getCcNames()); + if(flowCc != null){ + userSids = new StringBuilder(flowCc.getCcSids()); + userName = new StringBuilder(flowCc.getCcNames()); + } //抄送的业务逻辑 MessageFlowableQuery mfq = new MessageFlowableQuery(); diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java index 6149af4ece..e712aeff93 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.java @@ -14,4 +14,6 @@ import org.apache.ibatis.annotations.Param; @Mapper public interface FlowApproverMapper extends BaseMapper { String selectApproverSid(@Param("businessSid") String businessSid, @Param("sortNo") Integer sortNo); + + int insertApprover(FlowApprover flowApprover); } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml index 223f2ea762..71963306b9 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverMapper.xml @@ -7,4 +7,38 @@ where businessSid = #{businessSid} and sortNo = #{sortNo} + + + insert into flow_approver + + sid, + + businessSid, + + + approverSid, + + + approverName, + + + sortNo, + + + + UUID(), + + #{businessSid}, + + + #{approverSid}, + + + #{approverName}, + + + #{sortNo}, + + + \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java index 41364483fe..7d5127d362 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowapprover/FlowApproverService.java @@ -39,15 +39,15 @@ public class FlowApproverService extends MybatisBaseService sysUserVoResultBean = sysUserFeign.fetchBySid(approverSid); SysUserVo sysUser = sysUserVoResultBean.getData(); - flowApprover.setApprovalName(sysUser.getName()); + flowApprover.setApproverName(sysUser.getName()); flowApprover.setSortNo(sortNo); - baseMapper.insert(flowApprover); + baseMapper.insertApprover(flowApprover); } } return rb.success(); } public String selectApproverSid(String businessSid, Integer sortNo) { - return baseMapper.selectApproverSid(businessSid,sortNo); + return baseMapper.selectApproverSid(businessSid, sortNo); } } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java index 5aabe3925a..3306cea860 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.java @@ -13,4 +13,6 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface FlowCcMapper extends BaseMapper { FlowCc selectByBusinessSid(String businessSid); + + int insertFlowCc(FlowCc flowCc); } diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml index 7d0742116e..46dcb001f4 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcMapper.xml @@ -1,4 +1,37 @@ + + + + insert into flow_cc + + sid, + + businessSid, + + + ccSids, + + + ccNames, + + + + UUID(), + + #{businessSid}, + + + #{ccSids}, + + + #{ccNames}, + + + \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java index 8ca47a60a3..8cdecd1f70 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowcc/FlowCcService.java @@ -16,4 +16,8 @@ public class FlowCcService extends MybatisBaseService { public FlowCc selectByBusinessSid(String businessSid) { return baseMapper.selectByBusinessSid(businessSid); } + + public int insertFlowCc(FlowCc flowCc) { + return baseMapper.insertFlowCc(flowCc); + } } diff --git a/doc/databases/flowable.sql b/doc/databases/flowable.sql index fb3468a781..9fb5ca796a 100644 --- a/doc/databases/flowable.sql +++ b/doc/databases/flowable.sql @@ -15,7 +15,7 @@ CREATE TABLE `flow_approver` `businessSid` varchar(64) DEFAULT NULL COMMENT '申请sid', `sortNo` int(32) DEFAULT NULL COMMENT '序号', `approverSid` varchar(64) DEFAULT NULL COMMENT '审批人sid', - `approvalName` varchar(64) DEFAULT NULL COMMENT '审批人名称', + `approverName` varchar(64) DEFAULT NULL COMMENT '审批人名称', PRIMARY KEY (`id`), KEY `id` (`id`) ) ENGINE = INNODB From d2495fea6c2360b49293f38fc8df5ccca4236fc8 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 11:33:33 +0800 Subject: [PATCH 16/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A8=E9=80=81?= =?UTF-8?q?=E5=8D=95=E8=BD=A6=E8=BF=94=E5=88=A9=E6=9D=A1=E4=BB=B6=E4=B8=BA?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=A4=A7=E4=BA=8E0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinCollectionConfirmationService.java | 143 +++++++++--------- .../biz/loandiff/LoanDiffService.java | 75 ++++----- 2 files changed, 114 insertions(+), 104 deletions(-) diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java index 995492918a..8dea604160 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java @@ -2205,14 +2205,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService scmVehRebateVehDtos = new ArrayList<>(); - ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); - scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid()); - scmVehRebateDto.setRebateTypeKey("029"); - scmVehRebateDto.setRebateTypeValue("金融贴息"); - scmVehRebateDto.setRebateName("金融贴息"); BigDecimal all = BigDecimal.ZERO; if(loanSolutions.getActualDiscount() != null){ all = all.add(loanSolutions.getActualDiscount()); @@ -2220,33 +2212,44 @@ public class FinCollectionConfirmationService extends MybatisBaseService 0){ + //推送单车返利管理 + ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto(); + List scmVehRebateVehDtos = new ArrayList<>(); + ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); + scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid()); + scmVehRebateDto.setRebateTypeKey("029"); + scmVehRebateDto.setRebateTypeValue("金融贴息"); + scmVehRebateDto.setRebateName("金融贴息"); + scmVehRebateDto.setCalculationStandard(all.toString()); + scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM")); + scmVehRebateDto.setCalculationModeKey("002"); + scmVehRebateDto.setCalculationModeValue("固定金额"); + scmVehRebateDto.setOrgPath(confirmation.getOrgSidPath()); + scmVehRebateVehDto.setState("2"); + scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid()); + scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName()); + scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid()); + scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName()); + scmVehRebateVehDto.setVehSid(baseVehicle.getSid()); + scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8)); + scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString()); + scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString()); + BigDecimal ll = BigDecimal.ZERO; + if(loanSolutions.getActualDiscount() != null){ + ll = ll.add(loanSolutions.getActualDiscount()); + } + if(loanSolutionsOtherpolicy != null && loanSolutionsOtherpolicy.getOtherActualDiscount() != null){ + ll = ll.add(loanSolutionsOtherpolicy.getOtherActualDiscount()); + } + scmVehRebateVehDto.setEstimateRebate(ll.toString()); + scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); + scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); + scmVehRebateVehDtos.add(scmVehRebateVehDto); + scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); + scmVehRebateFeign.save(scmVehRebateDto); } - scmVehRebateVehDto.setEstimateRebate(ll.toString()); - scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); - scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); - scmVehRebateVehDtos.add(scmVehRebateVehDto); - scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); - scmVehRebateFeign.save(scmVehRebateDto); + finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString()); finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed); } @@ -2374,14 +2377,6 @@ public class FinCollectionConfirmationService extends MybatisBaseService scmVehRebateVehDtos = new ArrayList<>(); - ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); - scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid()); - scmVehRebateDto.setRebateTypeKey("029"); - scmVehRebateDto.setRebateTypeValue("金融贴息"); - scmVehRebateDto.setRebateName("金融贴息"); BigDecimal all = BigDecimal.ZERO; if(loanSolutions.getActualDiscount() != null){ all = all.add(loanSolutions.getActualDiscount()); @@ -2389,33 +2384,45 @@ public class FinCollectionConfirmationService extends MybatisBaseService0){ + //推送单车返利管理 + ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto(); + List scmVehRebateVehDtos = new ArrayList<>(); + ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); + scmVehRebateDto.setCreateBySid(confirmation.getCreateBySid()); + scmVehRebateDto.setRebateTypeKey("029"); + scmVehRebateDto.setRebateTypeValue("金融贴息"); + scmVehRebateDto.setRebateName("金融贴息"); + + scmVehRebateDto.setCalculationStandard(all.toString()); + scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM")); + scmVehRebateDto.setCalculationModeKey("002"); + scmVehRebateDto.setCalculationModeValue("固定金额"); + scmVehRebateDto.setOrgPath(confirmation.getOrgSidPath()); + scmVehRebateVehDto.setState("2"); + scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid()); + scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName()); + scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid()); + scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName()); + scmVehRebateVehDto.setVehSid(baseVehicle.getSid()); + scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8)); + scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString()); + scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString()); + BigDecimal ll = BigDecimal.ZERO; + if(loanSolutions.getActualDiscount() != null){ + ll = ll.add(loanSolutions.getActualDiscount()); + } + if(loanSolutionsOtherpolicy != null && loanSolutionsOtherpolicy.getOtherActualDiscount() != null){ + ll = ll.add(loanSolutionsOtherpolicy.getOtherActualDiscount()); + } + scmVehRebateVehDto.setEstimateRebate(ll.toString()); + scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); + scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); + scmVehRebateVehDtos.add(scmVehRebateVehDto); + scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); + scmVehRebateFeign.save(scmVehRebateDto); } - scmVehRebateVehDto.setEstimateRebate(ll.toString()); - scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); - scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); - scmVehRebateVehDtos.add(scmVehRebateVehDto); - scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); - scmVehRebateFeign.save(scmVehRebateDto); + finUncollectedReceivablesDetailed.setReveivableMoney(finSelectedReceivablesDetailed.getSubscriptionMoney().toString()); finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed); } diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java index b21c11ccc0..93542496ae 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java @@ -421,48 +421,51 @@ public class LoanDiffService extends MybatisBaseService scmVehRebateVehDtos = new ArrayList<>(); - ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); - scmVehRebateDto.setCreateBySid(loanDiff.getCreateBySid()); - scmVehRebateDto.setRebateTypeKey("029"); - scmVehRebateDto.setRebateTypeValue("金融贴息"); - scmVehRebateDto.setRebateName("金融贴息"); BigDecimal all = BigDecimal.ZERO; - if(loanDiffDetails.getRealityDiscount() != null){ + if (loanDiffDetails.getRealityDiscount() != null) { all = all.add(loanDiffDetails.getRealityDiscount()); } - if(loanDiffDetails.getRealityOtherDiscount() != null){ + if (loanDiffDetails.getRealityOtherDiscount() != null) { all = all.add(loanDiffDetails.getRealityOtherDiscount()); } - scmVehRebateDto.setCalculationStandard(all.toString()); - scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM")); - scmVehRebateDto.setCalculationModeKey("002"); - scmVehRebateDto.setCalculationModeValue("固定金额"); - scmVehRebateDto.setOrgPath(loanDiff.getOrgSidPath()); - scmVehRebateVehDto.setState("2"); - scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid()); - scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName()); - scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid()); - scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName()); - scmVehRebateVehDto.setVehSid(baseVehicle.getSid()); - scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8)); - scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString()); - scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString()); - BigDecimal ll = BigDecimal.ZERO; - if(loanDiffDetails.getRealityDiscount() != null){ - ll = ll.add(loanDiffDetails.getRealityDiscount()); - } - if(loanDiffDetails.getRealityOtherDiscount() != null){ - ll = ll.add(loanDiffDetails.getRealityOtherDiscount()); + if (all.compareTo(BigDecimal.ZERO) > 0) { + //推送单车返利管理 + ScmVehRebateDto scmVehRebateDto = new ScmVehRebateDto(); + List scmVehRebateVehDtos = new ArrayList<>(); + ScmVehRebateVehDto scmVehRebateVehDto = new ScmVehRebateVehDto(); + scmVehRebateDto.setCreateBySid(loanDiff.getCreateBySid()); + scmVehRebateDto.setRebateTypeKey("029"); + scmVehRebateDto.setRebateTypeValue("金融贴息"); + scmVehRebateDto.setRebateName("金融贴息"); + scmVehRebateDto.setCalculationStandard(all.toString()); + scmVehRebateDto.setPalceGenDate(DateUtil.format(new Date(), "yyyy-MM")); + scmVehRebateDto.setCalculationModeKey("002"); + scmVehRebateDto.setCalculationModeValue("固定金额"); + scmVehRebateDto.setOrgPath(loanDiff.getOrgSidPath()); + scmVehRebateVehDto.setState("2"); + scmVehRebateVehDto.setBrandSid(baseVehicle.getCarBrandSid()); + scmVehRebateVehDto.setBrandName(baseVehicle.getCarBrandName()); + scmVehRebateVehDto.setVehModelSid(baseVehicle.getModelSid()); + scmVehRebateVehDto.setVehModelName(baseVehicle.getModelName()); + scmVehRebateVehDto.setVehSid(baseVehicle.getSid()); + scmVehRebateVehDto.setVinNo(baseVehicle.getVinNo().substring(baseVehicle.getVinNo().length() - 8)); + scmVehRebateVehDto.setManufactorSettlementPrice(baseVehicle.getCostPrice().toString()); + scmVehRebateVehDto.setFreight(baseVehicle.getFreight().toString()); + BigDecimal ll = BigDecimal.ZERO; + if (loanDiffDetails.getRealityDiscount() != null) { + ll = ll.add(loanDiffDetails.getRealityDiscount()); + } + if (loanDiffDetails.getRealityOtherDiscount() != null) { + ll = ll.add(loanDiffDetails.getRealityOtherDiscount()); + } + scmVehRebateVehDto.setEstimateRebate(ll.toString()); + scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); + scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); + scmVehRebateVehDtos.add(scmVehRebateVehDto); + scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); + scmVehRebateFeign.save(scmVehRebateDto); } - scmVehRebateVehDto.setEstimateRebate(ll.toString()); - scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid()); - scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName()); - scmVehRebateVehDtos.add(scmVehRebateVehDto); - scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos); - scmVehRebateFeign.save(scmVehRebateDto); + int updateCount = baseMapper.selectByBusVnS(loanDiffDetails.getBusVinSid(), loanDiffDetails.getRealityLoan().toString()); } } From e1d99518fd58194dc4ea43eabac37abf9a86ed8a Mon Sep 17 00:00:00 2001 From: ligaode Date: Fri, 21 Feb 2025 15:40:08 +0800 Subject: [PATCH 17/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoanHomevisitPrepFeign.java | 15 --------- .../ScmSpecialRebateRest.java | 11 ++----- .../biz/scmvehrebate/ScmVehRebateRest.java | 4 +-- .../anrui/oa/api/AdFrockallotApplyRest.java | 19 ++--------- .../anrui/oa/api/AdFrockallotDetailRest.java | 15 --------- .../anrui/oa/api/AdPircarpulApplyRest.java | 7 ---- .../AdFrockallotDetail.java | 2 +- .../AdFrockallotDetailMapper.java | 10 ------ .../AdFrockallotDetailService.java | 19 ----------- .../AdPircarpulApplyMapper.java | 23 ------------- .../adpircarpuldetail/AdPircarpulDetail.java | 32 +++++++++---------- .../AdPircarpulDetailMapper.java | 22 ------------- .../AdPircarpulDetailService.java | 31 ------------------ .../anrui/oa/biz/oamendapply/OaMendApply.java | 8 ----- .../wms/feign/flowable/flow/ProcDefEnum.java | 10 +++--- 15 files changed, 29 insertions(+), 199 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitprep/LoanHomevisitPrepFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitprep/LoanHomevisitPrepFeign.java index 5131ef579c..4c582d2bc0 100644 --- a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitprep/LoanHomevisitPrepFeign.java +++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitprep/LoanHomevisitPrepFeign.java @@ -33,21 +33,6 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; -import java.util.List; - -/** - * Project: anrui-riskcenter(家访准备)
- * File: LoanHomevisitPrepFeign.java
- * Class: com.yxt.anrui.riskcenter.api.loanhomevisitprep.LoanHomevisitPrepFeign
- * Description: 家访准备.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2023-08-09 15:47:52
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Api(tags = "家访准备") @FeignClient( contextId = "anrui-riskcenter-LoanHomevisitPrep", diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java index 48a6b5ee59..76b2194658 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java @@ -115,17 +115,10 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign { public ResultBean delBySids(@RequestBody String[] sids) { ResultBean rb = ResultBean.fireFail(); for (String sid : sids) { - List stringList = scmSpecialRebateWithService.fetchBySpecialReBateSid(sid); - for (String s : stringList) { - ScmSpecialRebateWithApply scmSpecialRebateWithApply = scmSpecialRebateWithApplyService.fetchBySid(s); - if (!scmSpecialRebateWithApply.getNodeState().equals("待提交")) { - return rb.setMsg("所选数据中包含已提交专项返利信息,无法删除"); - } - } ScmSpecialRebate scmSpecialRebate = scmSpecialRebateService.fetchBySid(sid); Integer state = scmSpecialRebate.getState(); - if (state == 1) { - return rb.setMsg("所选数据中包含已预提专项返利信息,无法删除"); + if (state != 0) { + return rb.setMsg("请选择状态为未预提的记录删除"); } } scmSpecialRebateService.delBySids(sids); diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java index 6ebeda8fa2..a61f072aaa 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java @@ -197,8 +197,8 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { for (String sid : sids) { ScmVehRebate scmVehRebate = scmVehRebateService.fetchBySid(sid); Integer state = scmVehRebate.getState(); - if (state == 1) { - return rb.setMsg("所选数据中包含已预提单车返利信息,无法删除"); + if (state != 0) { + return rb.setMsg("请选择状态为未预提的记录删除"); } } scmVehRebateService.delBySids(sids); diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotApplyRest.java index cf3a0d025a..ecc67f3b5d 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotApplyRest.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotApplyRest.java @@ -26,29 +26,16 @@ package com.yxt.anrui.oa.api; import com.yxt.anrui.oa.biz.adfrockallotapply.*; -import com.yxt.anrui.oa.biz.adpircarpulapply.AdPircarpulApplyDetailsVo; import com.yxt.anrui.oa.biz.adpircarpulapply.AdPircarpulApplyDto; -import com.yxt.anrui.oa.biz.adpircarpulapply.AdPircarpulApplyVo; import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; -import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; - -import java.util.List; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApply; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApplyQuery; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApplyVo; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApplyDetailsVo; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApplyDto; -import com.yxt.anrui.oa.api.adfrockallotapply.AdFrockallotApplyFeign; - import javax.validation.Valid; @Api(tags = "工装订制配发申请") @@ -80,20 +67,20 @@ public class AdFrockallotApplyRest { @ApiOperation("新增或修改") @PostMapping("/save") - public ResultBean save(@RequestBody AdPircarpulApplyDto dto) { + public ResultBean save(@RequestBody AdFrockallotApplyDto dto) { return adFrockallotApplyService.saveOrUpdateDto(dto); } @ApiOperation("详情") @GetMapping("/details/{sid}") - ResultBean details(@PathVariable("sid") String sid + ResultBean details(@PathVariable("sid") String sid , @RequestParam(value = "application", required = false) String application) { return adFrockallotApplyService.details(sid,application); } @ApiOperation("提交审批流程") @PostMapping("/submit") - public ResultBean submit(@RequestBody AdPircarpulApplyDto dto) { + public ResultBean submit(@RequestBody AdFrockallotApplyDto dto) { return adFrockallotApplyService.submit(dto); } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotDetailRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotDetailRest.java index c6fff4a48e..16dcf0b126 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotDetailRest.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdFrockallotDetailRest.java @@ -25,24 +25,9 @@ *********************************************************/ package com.yxt.anrui.oa.api; -import com.yxt.anrui.oa.biz.adfrockallotdetail.*; -import com.yxt.common.core.query.PagerQuery; -import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.List; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetail; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailQuery; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailVo; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDetailsVo; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDto; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailFeign; - - @Api(tags = "工装订制配发列表") @RestController @RequestMapping("v1/adfrockallotdetail") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPircarpulApplyRest.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPircarpulApplyRest.java index d895ef0830..0e49cab1e7 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPircarpulApplyRest.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdPircarpulApplyRest.java @@ -25,23 +25,16 @@ *********************************************************/ package com.yxt.anrui.oa.api; -import com.yxt.anrui.oa.biz.adleasehostapply.AdLeasehostApplyDetailsVo; -import com.yxt.anrui.oa.biz.adleasehostapply.AdLeasehostApplyDto; -import com.yxt.anrui.oa.biz.adleasehostapply.adPircarpulApplyService; -import com.yxt.anrui.oa.biz.adleasehostapply.AdLeasehostApplyVo; import com.yxt.anrui.oa.biz.adpircarpulapply.*; import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto; import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery; import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto; -import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; - import javax.validation.Valid; @Api(tags = "临时私车公用申请") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java index 80f0f6fe85..da53734b1f 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetail.java @@ -30,7 +30,7 @@ import com.yxt.common.core.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - +import java.math.BigDecimal; @Data @ApiModel(value = "工装订制配发列表", description = "工装订制配发列表") diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java index ca5cb73c69..87a0c03244 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailMapper.java @@ -25,21 +25,11 @@ *********************************************************/ package com.yxt.anrui.oa.biz.adfrockallotdetail; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetail; -import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetail; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailVo; - import java.util.List; - @Mapper public interface AdFrockallotDetailMapper extends BaseMapper { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java index 6ac1817752..8454db38bb 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotdetail/AdFrockallotDetailService.java @@ -26,30 +26,11 @@ package com.yxt.anrui.oa.biz.adfrockallotdetail; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetail; -import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailDto; -import com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailVo; -import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; -import com.yxt.common.base.utils.PagerUtil; -import com.yxt.common.core.query.PagerQuery; -import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetail; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailQuery; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailVo; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDetailsVo; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailDto; -import com.yxt.anrui.oa.api.adfrockallotdetail.AdFrockallotDetailFeign; - import org.springframework.stereotype.Service; - import java.util.Collections; import java.util.List; - @Service public class AdFrockallotDetailService extends MybatisBaseService { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java index c0eb75ee34..1dc74326b9 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpulapply/AdPircarpulApplyMapper.java @@ -25,32 +25,9 @@ *********************************************************/ package com.yxt.anrui.oa.biz.adpircarpulapply; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.yxt.anrui.oa.biz.adleasehostapply.AdLeasehostApplyDetailsVo; import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; -import org.apache.ibatis.annotations.Select; -import com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApply; -import com.yxt.anrui.oa.api.adpircarpulapply.AdPircarpulApplyVo; -import java.util.List; - -/** - * Project: yxt-oa(私车临时公用)
- * File: AdPircarpulApplyMapper.java
- * Class: com.yxt.anrui.oa.biz.adpircarpulapply.AdPircarpulApplyMapper
- * Description: 临时私车公用申请.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-20 09:42:01
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Mapper public interface AdPircarpulApplyMapper extends BaseMapper { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java index 062f12d806..7bfe84f057 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetail.java @@ -30,7 +30,7 @@ import com.yxt.common.core.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - +import java.math.BigDecimal; @Data @ApiModel(value = "临时私车公用列表", description = "临时私车公用列表") @@ -38,35 +38,35 @@ import lombok.Data; public class AdPircarpulDetail extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty("申请sid") + @ApiModelProperty("申请sid") private String mainSid; // 申请sid - @ApiModelProperty("人员sid") + @ApiModelProperty("人员sid") private String userSid; // 人员sid - @ApiModelProperty("人员姓名") + @ApiModelProperty("人员姓名") private String userName; // 人员姓名 - @ApiModelProperty("部门sid") + @ApiModelProperty("部门sid") private String deptSid; // 部门sid - @ApiModelProperty("部门名称") + @ApiModelProperty("部门名称") private String deptName; // 部门名称 - @ApiModelProperty("岗位sid") + @ApiModelProperty("岗位sid") private String postSid; // 岗位sid - @ApiModelProperty("岗位名称") + @ApiModelProperty("岗位名称") private String postName; // 岗位名称 - @ApiModelProperty("用车事由") + @ApiModelProperty("用车事由") private String reasonsForUsingVehicles; // 用车事由 - @ApiModelProperty("计划出发地址") + @ApiModelProperty("计划出发地址") private String departureAddress; // 计划出发地址 - @ApiModelProperty("目的地地址") + @ApiModelProperty("目的地地址") private String destinationAddress; // 目的地地址 - @ApiModelProperty("计划出发时间") + @ApiModelProperty("计划出发时间") private String departureTime; // 计划出发时间 - @ApiModelProperty("计划返回时间") + @ApiModelProperty("计划返回时间") private String returnTime; // 计划返回时间 - @ApiModelProperty("车牌号") + @ApiModelProperty("车牌号") private String plateNumber; // 车牌号 - @ApiModelProperty("预计费用") + @ApiModelProperty("预计费用") private BigDecimal expectCost; // 预计费用 - @ApiModelProperty("费用明细") + @ApiModelProperty("费用明细") private String costRemarks; // 费用明细 } diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java index ef614b36d3..089f127964 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailMapper.java @@ -25,33 +25,11 @@ *********************************************************/ package com.yxt.anrui.oa.biz.adpircarpuldetail; -import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.toolkit.Constants; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetail; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailVo; import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetail; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo; - import java.util.List; -/** - * Project: yxt-oa(私车临时公用)
- * File: AdPircarpulDetailMapper.java
- * Class: com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailMapper
- * Description: 临时私车公用列表.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-20 09:42:01
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Mapper public interface AdPircarpulDetailMapper extends BaseMapper { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java index ca8ed81fd9..6a1c4df5a6 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adpircarpuldetail/AdPircarpulDetailService.java @@ -26,42 +26,11 @@ package com.yxt.anrui.oa.biz.adpircarpuldetail; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetail; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailDto; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostDetailVo; -import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; -import com.yxt.common.base.utils.PagerUtil; -import com.yxt.common.core.query.PagerQuery; -import com.yxt.common.core.result.ResultBean; -import com.yxt.common.core.vo.PagerVo; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetail; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailQuery; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailVo; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailDetailsVo; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailDto; -import com.yxt.anrui.oa.api.adpircarpuldetail.AdPircarpulDetailFeign; - import org.springframework.stereotype.Service; - import java.util.Collections; import java.util.List; -/** - * Project: yxt-oa(私车临时公用)
- * File: AdPircarpulDetailService.java
- * Class: com.yxt.anrui.oa.biz.adpircarpuldetail.AdPircarpulDetailService
- * Description: 临时私车公用列表 业务逻辑.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2025-02-20 09:42:01
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Service public class AdPircarpulDetailService extends MybatisBaseService { diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java index 6bd07c59b6..bf6d93d15c 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java @@ -25,19 +25,11 @@ *********************************************************/ package com.yxt.anrui.oa.biz.oamendapply; -import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; -import com.yxt.anrui.oa.biz.oaform.OaForm; import com.yxt.common.core.domain.BaseEntity; -import com.fasterxml.jackson.annotation.JsonFormat; - -import java.util.Date; - import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import org.springframework.data.annotation.Transient; - @Data @ApiModel(value = "补卡申请", description = "补卡申请") diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/feign/flowable/flow/ProcDefEnum.java b/yxt-wms-biz/src/main/java/com/yxt/wms/feign/flowable/flow/ProcDefEnum.java index ba000270da..2b409e7093 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/feign/flowable/flow/ProcDefEnum.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/feign/flowable/flow/ProcDefEnum.java @@ -8,13 +8,13 @@ public enum ProcDefEnum { /***************************正式流程id***********************************/ WMSINVENCHECKREPORT("盘点报告审批", "process_wtab67fj:1:14197600"), - WMSOLDINVENCHECKREPORT("旧件盘点报告审批", "process_wtab67fj:1:14197600"), + WMSOLDINVENCHECKREPORT("旧件盘点报告审批", "process_chyb7xug:1:17592520"), WMSINVENTORYPROFITIN("盘盈入库申请", "process_kwd3cagu:1:14197564"), WMSINVENTORYPROFITOUT("盘亏出库申请", "process_gmjrjghm:1:14197568"), - WMSOLDINVENTORYPROFITIN("旧件盘盈入库申请", "process_kwd3cagu:2:15792504"), - WMSOLDINVENTORYPROFITOUT("旧件盘亏出库申请", "process_gmjrjghm:2:15792512"), - WMSDISINVENTORYPROFITIN("拆件盘盈入库申请", "process_kwd3cagu:3:15792508"), - WMSDISINVENTORYPROFITOUT("拆件盘亏出库申请", "process_gmjrjghm:3:15792516"), + WMSOLDINVENTORYPROFITIN("旧件盘盈入库申请", "process_g4zmi6xc:1:17592504"), + WMSOLDINVENTORYPROFITOUT("旧件盘亏出库申请", "process_w4rvfxuv:1:17592512"), + WMSDISINVENTORYPROFITIN("拆件盘盈入库申请", "process_x0piy712:1:17592508"), + WMSDISINVENTORYPROFITOUT("拆件盘亏出库申请", "process_bqtvd42s:1:17592516"), WMSOTHEROUTAPPLY("其他出库(报损出库)", "process_iks2hour:1:14197560"), WMSINVENTORYALLOCATEBILLONE("调拨申请(自有、合作二级站间调拨)", "process_hw0a2ybh:3:14242504"), WMSINVENTORYALLOCATEBILLTWO("调拨申请(集团内不同分公司两一级站间调拨)", "process_9pm5umo8:2:14242508"), From 5ee7c1c3f7cc78662e8c607cb0958d3c865339f4 Mon Sep 17 00:00:00 2001 From: ligaode Date: Fri, 21 Feb 2025 16:55:03 +0800 Subject: [PATCH 18/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scmspecialrebate/ScmSpecialRebateVo.java | 4 ++++ .../scm/api/scmvehrebate/ScmVehRebateVo.java | 4 ++++ .../ScmSpecialRebateMapper.xml | 3 ++- .../ScmSpecialRebateService.java | 20 +++++++++++++++++++ .../biz/scmvehrebate/ScmVehRebateMapper.xml | 6 ++++-- .../biz/scmvehrebate/ScmVehRebateService.java | 18 +++++++++++++++++ 6 files changed, 52 insertions(+), 3 deletions(-) diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java index 85ca827c7d..3412216bf9 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java @@ -138,4 +138,8 @@ public class ScmSpecialRebateVo implements Vo { private String secondSuppRemark; @ApiModelProperty("上传状态(0未上传、1已上传)") private String uploadState; + @ApiModelProperty("未上传金额") + private BigDecimal notUploadMoney; + @ApiModelProperty("二次核对状态") + private String secondCheckState; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java index e702fe1cba..0b2dc2272e 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java @@ -154,4 +154,8 @@ public class ScmVehRebateVo implements Vo { private String purchaseSystemName; @ApiModelProperty("上装金额") private BigDecimal topAmount; + @ApiModelProperty("未上传金额") + private BigDecimal notUploadMoney; + @ApiModelProperty("二次核对状态") + private String secondCheckState; } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml index 8633e675aa..c3099044a7 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml @@ -7,7 +7,8 @@ SELECT *, expectItureCost + expectTreatCost + expectSuppCost AS expectCost, expectItureCost + expectTreatCost + expectSuppCost AS withholdCost, - onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money + onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney FROM scm_special_rebate ${ew.sqlSegment} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index ddc2291cb0..746376cc3c 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -159,6 +159,17 @@ public class ScmSpecialRebateService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.selectPageVo(page, qw); + for (ScmSpecialRebateVo record : pagging.getRecords()) { + if (StringUtils.isNotBlank(record.getSecondaryUploadMoney())){ + if (Integer.parseInt(record.getSecondaryUploadMoney()) > 0 && "是".equals(record.getIsAdjustment())){ + record.setSecondCheckState("是"); + }else { + record.setSecondCheckState("否"); + } + }else { + record.setSecondCheckState("否"); + } + } PagerVo p = PagerUtil.pageToVo(pagging, null); return p; } @@ -478,6 +489,15 @@ public class ScmSpecialRebateService extends MybatisBaseService 0 && "是".equals(record.getIsAdjustment())){ + record.setSecondCheckState("是"); + }else { + record.setSecondCheckState("否"); + } + }else { + record.setSecondCheckState("否"); + } } return scmSpecialRebateVoList; } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml index 11e3da7487..54614a9361 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml @@ -9,7 +9,8 @@ sid AS vehRebateSid, expectTreatCost + expectSuppCost AS expectCost, expectTreatCost + expectSuppCost AS withholdCost, - onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money + onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney FROM scm_veh_rebate @@ -138,7 +139,8 @@ sid AS vehRebateSid, expectTreatCost + expectSuppCost AS expectCost, expectTreatCost + expectSuppCost AS withholdCost, - onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money + onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney FROM scm_veh_rebate diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index d69c46d683..55e6affce7 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -161,6 +161,15 @@ public class ScmVehRebateService extends MybatisBaseService 0 && "是".equals(record.getIsAdjustment())){ + record.setSecondCheckState("是"); + }else { + record.setSecondCheckState("否"); + } + }else { + record.setSecondCheckState("否"); + } } PagerVo p = PagerUtil.pageToVo(pagging, null); return p; @@ -449,6 +458,15 @@ public class ScmVehRebateService extends MybatisBaseService 0 && "是".equals(record.getIsAdjustment())){ + record.setSecondCheckState("是"); + }else { + record.setSecondCheckState("否"); + } + }else { + record.setSecondCheckState("否"); + } } return scmVehRebateVoList; } From c37a09638611dc83fa1823dc6922d24e6ad8c714 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Fri, 21 Feb 2025 17:12:55 +0800 Subject: [PATCH 19/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=94=80=E5=94=AE?= =?UTF-8?q?=E5=8D=95=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/operation/salesticket/salesticketAdd.vue | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/yxt-as-ui/src/views/operation/salesticket/salesticketAdd.vue b/yxt-as-ui/src/views/operation/salesticket/salesticketAdd.vue index 83710fe8cd..036caa60c7 100644 --- a/yxt-as-ui/src/views/operation/salesticket/salesticketAdd.vue +++ b/yxt-as-ui/src/views/operation/salesticket/salesticketAdd.vue @@ -4,7 +4,6 @@
{{ viewTitle }}
- 选择客户 保存 关闭
@@ -48,7 +47,14 @@
*客户
- {{ formobj.customerName }} + +
+
+ {{ formobj.customerName }} +
+ 选择 +
+
联系电话
From 045aca7a24f3d851d66e29ffec4d1867bacbf41d Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Fri, 21 Feb 2025 17:37:58 +0800 Subject: [PATCH 20/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue b/anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue index 68222996d7..24137d8569 100644 --- a/anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue +++ b/anrui-management/anrui-management-ui/src/views/sysstaffinfo/yuangongAdd.vue @@ -553,7 +553,8 @@ export default { // props传值 value: 'sid', label: 'name', - children: 'children' + children: 'children', + checkStrictly: true }, // 上传图片 // photo_list: [], From 8eefbe36084e90cdcb7097c6316479c5e39c6e92 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Fri, 21 Feb 2025 18:00:45 +0800 Subject: [PATCH 21/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E4=B8=93=E9=A1=B9?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9=E3=80=81=E4=B8=93?= =?UTF-8?q?=E9=A1=B9=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9--?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=88=97=E8=A1=A8=E7=9A=84=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=E5=8F=8A=E5=A2=9E=E5=8A=A0=E9=83=A8=E5=88=86?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bicyclerebatetobechecked.vue | 82 +++++++++------- .../bicyclerebatemanagement.vue | 95 +++++++++++-------- .../specialrebatetobechecked.vue | 69 ++++++++------ .../specialrebatemanagement.vue | 69 ++++++++------ 4 files changed, 184 insertions(+), 131 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue index dc911326db..114de6b73a 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue @@ -58,47 +58,55 @@
- - - + + + - - - - - - - - - + + - - - - - + + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -841,4 +849,12 @@ export default { margin-left: 120px !important; width: calc(100% - 115px); } +/*表格列设置fixed后固定列出现下边框的设置*/ +/deep/ .el-table__fixed { + height: 100% !important; +} +/*表格列设置fixed后固定列出现下边框的设置*/ +/deep/ .el-table__fixed-right { + height: 100% !important; +} diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue index 7a4c355b0b..8ff6546308 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue @@ -56,52 +56,63 @@
- - - + + + - - - - - - - - - + + - - - - - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
@@ -559,4 +570,12 @@ export default { } diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue index bcca43b973..d5892e58d6 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue @@ -57,43 +57,54 @@
- - - + + + - - - - - - - - - - + + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue index 794aa4a28b..1df8cd08c9 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue @@ -48,45 +48,52 @@
- - - + + + - - + + + + + + + + + + + - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - + +
From 74b7695ef61a95100ac1e8f8692844f8f606a6a2 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 22:43:04 +0800 Subject: [PATCH 22/90] =?UTF-8?q?=E9=94=80=E5=94=AE=E6=8A=A5=E8=A1=A8?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/dailyreport/DailyReportMapper.java | 16 + .../biz/dailyreport/DailyReportMapper.xml | 1382 +++++--- .../biz/dailyreport/DailyReportRest.java | 4 +- .../biz/dailyreport/DailyReportService.java | 2939 ++++++++++++++--- 4 files changed, 3386 insertions(+), 955 deletions(-) diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java index e0aaef1b58..dfcedeb91c 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java @@ -12,6 +12,7 @@ import org.apache.ibatis.annotations.Param; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; +import java.util.Map; /** * @description: @@ -41,8 +42,10 @@ public interface DailyReportMapper extends BaseMapper { String select3(@Param("busOrgSid") String busOrgSid, @Param("brandSid") String brandSid, @Param("vehModelSid") String vehModelSid, @Param("vehMConfigSid") String vehMConfigSid, @Param("createTime") String createTime); List selectByBrand(@Param("sybOrgSid") String sybOrgSid, @Param("queryTime") String queryTime); + List selectByBrandNew(@Param("sybOrgSid") String sybOrgSid, @Param("startDate") String startDate,@Param("endDate") String endDate); List selectReport(@Param("join") List brandList, @Param("sybOrgSid") String sybOrgSid, @Param("queryTime") String queryTime); + List selectReportNew(@Param("join") List brandList, @Param("sybOrgSid") String sybOrgSid, @Param("startDate") String startDate,@Param("endDate") String endDate); IPage pageList1(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); IPage pageList2(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); @@ -50,14 +53,27 @@ public interface DailyReportMapper extends BaseMapper { ReportVo getReport(@Param(Constants.WRAPPER) QueryWrapper qw); List selectReport2(String date); + List selectReport2New(@Param("startDate") String startDate,@Param("endDate") String endDate); List list2(String date); List list3(@Param("date") String date, @Param("busOrgSid") String busOrgSid); + List list3New(@Param("startDate") String startDate,@Param("endDate") String endDate, @Param("busOrgSid") String busOrgSid); List selectReport3(@Param("date") String date, @Param("busOrgSid") String busOrgSid); + List selectReport3New(@Param("startDate") String startDate,@Param("endDate") String endDate, @Param("busOrgSid") String busOrgSid); List selectByBrand2(@Param("useOrgSid") String useOrgSid, @Param("date") String date,@Param(Constants.WRAPPER) QueryWrapper qw); + List selectByBrand2New(@Param("useOrgSid") String useOrgSid,@Param("startDate") String startDate,@Param("endDate") String endDate,@Param(Constants.WRAPPER) QueryWrapper qw); List selectReport4(@Param("join") List brandList, @Param("useOrgSid") String useOrgSid, @Param("date") String date,@Param(Constants.WRAPPER) QueryWrapper qw); + List selectReport4New(@Param(Constants.WRAPPER) QueryWrapper qw); + + List selectRecordList(@Param("map") Map map, @Param(Constants.WRAPPER)QueryWrapper qw); + + int selectRecordCount(@Param(Constants.WRAPPER)QueryWrapper qw); + + List selectRecordList2(@Param("map") Map map, @Param(Constants.WRAPPER)QueryWrapper qw); + + List selectRecordList3(@Param("map") Map map, @Param(Constants.WRAPPER)QueryWrapper qw); } diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml index dabb7578be..a250aaf351 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml @@ -10,111 +10,111 @@ ${ew.sqlSegment} --> select ifnull(sum(dr.saleOfStockRatio), 0) - as saleOfStockRatio, - ifnull(sum(dr.stock_total), 0) as stock_total, - ifnull(sum(dr.stock_unreserve), 0) as stock_unreserve, - ifnull(sum(dr.stock_reserve), 0) as stock_reserve, - ifnull(sum(dr.stock_subtotal), 0) as stock_subtotal, - ifnull(sum(dr.stock_buyout_unreserve), 0) as stock_buyout_unreserve, - ifnull(sum(dr.stock_buyout_reserve), 0) as stock_buyout_reserve, - ifnull(sum(dr.stock_buyout_subtotal), 0) as stock_buyout_subtotal, - ifnull(sum(dr.pcOrder_unreserve), 0) as pcOrder_unreserve, - ifnull(sum(dr.pcOrder_reserve), 0) as pcOrder_reserve, - ifnull(sum(dr.pcOrder_subtotal), 0) as pcOrder_subtotal, - ifnull(sum(dr.simpleOrder_day), 0) as simpleOrder_day, - ifnull(sum(dr.simpleOrder_month), 0) as simpleOrder_month, - ifnull(sum(dr.saleOrder_full_day), 0) as saleOrder_full_day, - ifnull(sum(dr.saleOrder_loan_day), 0) as saleOrder_loan_day, - ifnull(sum(dr.saleOrder_subtotal_day), 0) as saleOrder_subtotal_day, - ifnull(sum(dr.saleOrder_full_month), 0) as saleOrder_full_month, - ifnull(sum(dr.saleOrder_loan_month), 0) as saleOrder_loan_month, - ifnull(sum(dr.saleOrder_subtotal_month), 0) as saleOrder_subtotal_month, - ifnull(sum(dr.saleOrder_waitVeh_total), 0) as saleOrder_waitVeh_total, - ifnull(sum(dr.sale_full_day), 0) as sale_full_day, - ifnull(sum(dr.sale_loan_day), 0) as sale_loan_day, - ifnull(sum(dr.sale_subtotal_day), 0) as sale_subtotal_day, - ifnull(sum(dr.sale_full_month), 0) as sale_full_month, - ifnull(sum(dr.sale_loan_month), 0) as sale_loan_month, - ifnull(sum(dr.sale_subtotal_month), 0) as sale_subtotal_month, - ifnull(sum(dr.sale_full_year), 0) as sale_full_year, - ifnull(sum(dr.sale_loan_year), 0) as sale_loan_year, - ifnull(sum(dr.sale_subtotal_year), 0) as sale_subtotal_year, - ifnull(sum(dr.manufacturer_invoicing_year), 0) as manufacturer_invoicing_year, - ifnull(sum(dr.buyout_day), 0) as buyout_day, - ifnull(sum(dr.buyout_month), 0) as buyout_month, - ifnull(sum(dr.buyout_year), 0) as buyout_year, - ifnull(sum(dr.arrears_carry_veh_count), 0) as arrears_carry_veh_count, - ifnull(sum(dr.arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, - ifnull(sum(dr.loan_not_count), 0) as loan_not_count, - ifnull(sum(dr.loan_not_amount), 0) as loan_not_amount, - ifnull(sum(dr.deliver_loan_day), 0) as deliver_loan_day, - ifnull(sum(dr.deliver_full_day), 0) as deliver_full_day, - ifnull(sum(dr.deliver_subtotal_day), 0) as deliver_subtotal_day, - ifnull(sum(dr.deliver_loan_month), 0) as deliver_loan_month, - ifnull(sum(dr.deliver_full_month), 0) as deliver_full_month, - ifnull(sum(dr.deliver_subtotal_month), 0) as deliver_subtotal_month, - ifnull(sum(dr.deliver_loan_year), 0) as deliver_loan_year, - ifnull(sum(dr.deliver_full_year), 0) as deliver_full_year, - ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year, - ifnull(sum(dr.saleAllToThree), 0) as saleAllToThree - , - ifnull(sum(dr.loan_not_counts), 0) as loan_not_counts, - ifnull(sum(dr.loan_not_amounts), 0) as loan_not_amounts, - dr.busOrgName, - dr.brandName, - dr.busOrgSid, - dr.useOrgSid, - dr.useOrgName, - dr.remarks, - bm.vehicleAlias vehModeName, - bmc.carColor, - bmc.specification, - bmc.fuelTank, - bmc.baffleModel, - bmc.independentSources, - bmc.tireCover, - bmc.saddle, - bmc.airConditioner, - bmc.rearAxleRatio, - bmc.rearAxleValue, - bmc.tireSize, - bmc.slowMachine, - bmc.rearViewMirror, - bmc.wheelbase, - bmc.suspension, - bmc.packingCase, - bmc.seat, - bmc.hubMaterial, - bmc.configuringBao, - bmc.multimedia, - bmc.bumper, - bmc.clutchValue, - bmc.dirMachineValue, - bmc.proponsValue, - bmc.doorAndWindowValue, - bmc.doorLockValue, - bmc.headlightValue, - bmc.boardPedalValue, - bmc.steerWheelValue, - bmc.storagBatteryValue, - bmc.comfortPackValue, - bmc.cheBasePackValue, - bmc.savingPackValue, - bmc.conPackValue, - bm.vehicleTypeValue, - bm.emissionStandardValue, - bm.productLineValue, - bm.driveFormValue, - bm.powerValue, - bm.tranCaseTypeValue, - bm.gearboxTypeValue, - bm.fuelTypeValue, - bm.vehicleVersionValue, - bm.engineTypeValue, - bm.specifications + as saleOfStockRatio, + ifnull(sum(dr.stock_total), 0) as stock_total, + ifnull(sum(dr.stock_unreserve), 0) as stock_unreserve, + ifnull(sum(dr.stock_reserve), 0) as stock_reserve, + ifnull(sum(dr.stock_subtotal), 0) as stock_subtotal, + ifnull(sum(dr.stock_buyout_unreserve), 0) as stock_buyout_unreserve, + ifnull(sum(dr.stock_buyout_reserve), 0) as stock_buyout_reserve, + ifnull(sum(dr.stock_buyout_subtotal), 0) as stock_buyout_subtotal, + ifnull(sum(dr.pcOrder_unreserve), 0) as pcOrder_unreserve, + ifnull(sum(dr.pcOrder_reserve), 0) as pcOrder_reserve, + ifnull(sum(dr.pcOrder_subtotal), 0) as pcOrder_subtotal, + ifnull(sum(dr.simpleOrder_day), 0) as simpleOrder_day, + ifnull(sum(dr.simpleOrder_month), 0) as simpleOrder_month, + ifnull(sum(dr.saleOrder_full_day), 0) as saleOrder_full_day, + ifnull(sum(dr.saleOrder_loan_day), 0) as saleOrder_loan_day, + ifnull(sum(dr.saleOrder_subtotal_day), 0) as saleOrder_subtotal_day, + ifnull(sum(dr.saleOrder_full_month), 0) as saleOrder_full_month, + ifnull(sum(dr.saleOrder_loan_month), 0) as saleOrder_loan_month, + ifnull(sum(dr.saleOrder_subtotal_month), 0) as saleOrder_subtotal_month, + ifnull(sum(dr.saleOrder_waitVeh_total), 0) as saleOrder_waitVeh_total, + ifnull(sum(dr.sale_full_day), 0) as sale_full_day, + ifnull(sum(dr.sale_loan_day), 0) as sale_loan_day, + ifnull(sum(dr.sale_subtotal_day), 0) as sale_subtotal_day, + ifnull(sum(dr.sale_full_month), 0) as sale_full_month, + ifnull(sum(dr.sale_loan_month), 0) as sale_loan_month, + ifnull(sum(dr.sale_subtotal_month), 0) as sale_subtotal_month, + ifnull(sum(dr.sale_full_year), 0) as sale_full_year, + ifnull(sum(dr.sale_loan_year), 0) as sale_loan_year, + ifnull(sum(dr.sale_subtotal_year), 0) as sale_subtotal_year, + ifnull(sum(dr.manufacturer_invoicing_year), 0) as manufacturer_invoicing_year, + ifnull(sum(dr.buyout_day), 0) as buyout_day, + ifnull(sum(dr.buyout_month), 0) as buyout_month, + ifnull(sum(dr.buyout_year), 0) as buyout_year, + ifnull(sum(dr.arrears_carry_veh_count), 0) as arrears_carry_veh_count, + ifnull(sum(dr.arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, + ifnull(sum(dr.loan_not_count), 0) as loan_not_count, + ifnull(sum(dr.loan_not_amount), 0) as loan_not_amount, + ifnull(sum(dr.deliver_loan_day), 0) as deliver_loan_day, + ifnull(sum(dr.deliver_full_day), 0) as deliver_full_day, + ifnull(sum(dr.deliver_subtotal_day), 0) as deliver_subtotal_day, + ifnull(sum(dr.deliver_loan_month), 0) as deliver_loan_month, + ifnull(sum(dr.deliver_full_month), 0) as deliver_full_month, + ifnull(sum(dr.deliver_subtotal_month), 0) as deliver_subtotal_month, + ifnull(sum(dr.deliver_loan_year), 0) as deliver_loan_year, + ifnull(sum(dr.deliver_full_year), 0) as deliver_full_year, + ifnull(sum(dr.deliver_subtotal_year), 0) as deliver_subtotal_year, + ifnull(sum(dr.saleAllToThree), 0) as saleAllToThree + , + ifnull(sum(dr.loan_not_counts), 0) as loan_not_counts, + ifnull(sum(dr.loan_not_amounts), 0) as loan_not_amounts, + dr.busOrgName, + dr.brandName, + dr.busOrgSid, + dr.useOrgSid, + dr.useOrgName, + dr.remarks, + bm.vehicleAlias vehModeName, + bmc.carColor, + bmc.specification, + bmc.fuelTank, + bmc.baffleModel, + bmc.independentSources, + bmc.tireCover, + bmc.saddle, + bmc.airConditioner, + bmc.rearAxleRatio, + bmc.rearAxleValue, + bmc.tireSize, + bmc.slowMachine, + bmc.rearViewMirror, + bmc.wheelbase, + bmc.suspension, + bmc.packingCase, + bmc.seat, + bmc.hubMaterial, + bmc.configuringBao, + bmc.multimedia, + bmc.bumper, + bmc.clutchValue, + bmc.dirMachineValue, + bmc.proponsValue, + bmc.doorAndWindowValue, + bmc.doorLockValue, + bmc.headlightValue, + bmc.boardPedalValue, + bmc.steerWheelValue, + bmc.storagBatteryValue, + bmc.comfortPackValue, + bmc.cheBasePackValue, + bmc.savingPackValue, + bmc.conPackValue, + bm.vehicleTypeValue, + bm.emissionStandardValue, + bm.productLineValue, + bm.driveFormValue, + bm.powerValue, + bm.tranCaseTypeValue, + bm.gearboxTypeValue, + bm.fuelTypeValue, + bm.vehicleVersionValue, + bm.engineTypeValue, + bm.specifications from daily_report dr - left join anrui_base.base_vehicle_model bm on bm.sid = dr.vehModelSid - left join anrui_base.base_model_config bmc on bmc.sid = dr.vehMConfigSid + left join anrui_base.base_vehicle_model bm on bm.sid = dr.vehModelSid + left join anrui_base.base_model_config bmc on bmc.sid = dr.vehMConfigSid ${ew.sqlSegment} @@ -122,67 +122,67 @@ select DATE_FORMAT(createTime, '%Y-%m-%d') as date, - sum(saleOfStockRatio) as saleOfStockRatio, - sum(stock_subtotal) as stock_subtotal, - sum(pcOrder_subtotal) as pcOrder_subtotal, - sum(saleOrder_subtotal_day) as saleOrder_subtotal_day, - sum(sale_subtotal_day) as sale_subtotal_day, - sum(arrears_carry_veh_amount) as arrears_carry_veh_amount, - sum(loan_not_amount) as loan_not_amount, - sum(loan_not_amounts) as loan_not_amounts, - sum(buyout_day) as buyout_day, - useOrgSid, - sum(saleAllToThree) as saleAllToThree, - SUM(stock_total) as stock_total + sum(saleOfStockRatio) as saleOfStockRatio, + sum(stock_subtotal) as stock_subtotal, + sum(pcOrder_subtotal) as pcOrder_subtotal, + sum(saleOrder_subtotal_day) as saleOrder_subtotal_day, + sum(sale_subtotal_day) as sale_subtotal_day, + sum(arrears_carry_veh_amount) as arrears_carry_veh_amount, + sum(loan_not_amount) as loan_not_amount, + sum(loan_not_amounts) as loan_not_amounts, + sum(buyout_day) as buyout_day, + useOrgSid, + sum(saleAllToThree) as saleAllToThree, + SUM(stock_total) as stock_total from daily_report ${ew.sqlSegment} @@ -301,69 +301,99 @@ GROUP BY dr.brandSid order by dr.brandSid desc + + + + + select DATE_FORMAT(createTime, '%Y-%m-%d') as date, - - ifnull(sum(saleOfStockRatio), 0) as saleOfStockRatio, - ifnull(sum(stock_total), 0) as stock_total, - ifnull(sum(stock_subtotal), 0) as stock_subtotal, - ifnull(sum(stock_unreserve), 0) as stock_unreserve, - ifnull(sum(stock_reserve), 0) as stock_reserve, - ifnull(sum(stock_buyout_unreserve), 0) as stock_buyout_unreserve, - ifnull(sum(stock_buyout_reserve), 0) as stock_buyout_reserve, - ifnull(sum(stock_buyout_subtotal), 0) as stock_buyout_subtotal, - ifnull(sum(pcOrder_unreserve), 0) as pcOrder_unreserve, - ifnull(sum(pcOrder_reserve), 0) as pcOrder_reserve, - ifnull(sum(pcOrder_subtotal), 0) as pcOrder_subtotal, - - ifnull(sum(simpleOrder_day), 0) as simpleOrder_day, - ifnull(sum(simpleOrder_month), 0) as simpleOrder_month, - ifnull(sum(saleOrder_full_day), 0) as saleOrder_full_day, - ifnull(sum(saleOrder_loan_day), 0) as saleOrder_loan_day, - ifnull(sum(saleOrder_subtotal_day), 0) as saleOrder_subtotal_day, - ifnull(sum(saleOrder_full_month), 0) as saleOrder_full_month, - ifnull(sum(saleOrder_loan_month), 0) as saleOrder_loan_month, - ifnull(sum(saleOrder_subtotal_month), 0) as saleOrder_subtotal_month, - ifnull(sum(saleOrder_waitVeh_total), 0) as saleOrder_waitVeh_total, - - ifnull(sum(sale_full_day), 0) as sale_full_day, - ifnull(sum(sale_loan_day), 0) as sale_loan_day, - ifnull(sum(sale_subtotal_day), 0) as sale_subtotal_day, - ifnull(sum(sale_full_month), 0) as sale_full_month, - ifnull(sum(sale_loan_month), 0) as sale_loan_month, - ifnull(sum(sale_subtotal_month), 0) as sale_subtotal_month, - ifnull(sum(sale_full_year), 0) as sale_full_year, - ifnull(sum(sale_loan_year), 0) as sale_loan_year, - ifnull(sum(sale_subtotal_year), 0) as sale_subtotal_year, - ifnull(sum(deliver_loan_day), 0) as deliver_loan_day, - ifnull(sum(deliver_full_day), 0) as deliver_full_day, - ifnull(sum(deliver_subtotal_day), 0) as deliver_subtotal_day, - ifnull(sum(deliver_loan_month), 0) as deliver_loan_month, - ifnull(sum(deliver_full_month), 0) as deliver_full_month, - ifnull(sum(deliver_subtotal_month), 0) as deliver_subtotal_month, - ifnull(sum(deliver_loan_year), 0) as deliver_loan_year, - ifnull(sum(deliver_full_year), 0) as deliver_full_year, - ifnull(sum(deliver_subtotal_year), 0) as deliver_subtotal_year, + ifnull(sum(saleOfStockRatio), 0) as saleOfStockRatio, + ifnull(sum(stock_total), 0) as stock_total, + ifnull(sum(stock_subtotal), 0) as stock_subtotal, + ifnull(sum(stock_unreserve), 0) as stock_unreserve, + ifnull(sum(stock_reserve), 0) as stock_reserve, + ifnull(sum(stock_buyout_unreserve), 0) as stock_buyout_unreserve, + ifnull(sum(stock_buyout_reserve), 0) as stock_buyout_reserve, + ifnull(sum(stock_buyout_subtotal), 0) as stock_buyout_subtotal, + ifnull(sum(pcOrder_unreserve), 0) as pcOrder_unreserve, + ifnull(sum(pcOrder_reserve), 0) as pcOrder_reserve, + ifnull(sum(pcOrder_subtotal), 0) as pcOrder_subtotal, + + ifnull(sum(simpleOrder_day), 0) as simpleOrder_day, + ifnull(sum(simpleOrder_month), 0) as simpleOrder_month, + ifnull(sum(saleOrder_full_day), 0) as saleOrder_full_day, + ifnull(sum(saleOrder_loan_day), 0) as saleOrder_loan_day, + ifnull(sum(saleOrder_subtotal_day), 0) as saleOrder_subtotal_day, + ifnull(sum(saleOrder_full_month), 0) as saleOrder_full_month, + ifnull(sum(saleOrder_loan_month), 0) as saleOrder_loan_month, + ifnull(sum(saleOrder_subtotal_month), 0) as saleOrder_subtotal_month, + ifnull(sum(saleOrder_waitVeh_total), 0) as saleOrder_waitVeh_total, + + ifnull(sum(sale_full_day), 0) as sale_full_day, + ifnull(sum(sale_loan_day), 0) as sale_loan_day, + ifnull(sum(sale_subtotal_day), 0) as sale_subtotal_day, + ifnull(sum(sale_full_month), 0) as sale_full_month, + ifnull(sum(sale_loan_month), 0) as sale_loan_month, + ifnull(sum(sale_subtotal_month), 0) as sale_subtotal_month, + ifnull(sum(sale_full_year), 0) as sale_full_year, + ifnull(sum(sale_loan_year), 0) as sale_loan_year, + ifnull(sum(sale_subtotal_year), 0) as sale_subtotal_year, + ifnull(sum(deliver_loan_day), 0) as deliver_loan_day, + ifnull(sum(deliver_full_day), 0) as deliver_full_day, + ifnull(sum(deliver_subtotal_day), 0) as deliver_subtotal_day, + ifnull(sum(deliver_loan_month), 0) as deliver_loan_month, + ifnull(sum(deliver_full_month), 0) as deliver_full_month, + ifnull(sum(deliver_subtotal_month), 0) as deliver_subtotal_month, + ifnull(sum(deliver_loan_year), 0) as deliver_loan_year, + ifnull(sum(deliver_full_year), 0) as deliver_full_year, + ifnull(sum(deliver_subtotal_year), 0) as deliver_subtotal_year, ifnull(sum(manufacturer_invoicing_year), 0) as manufacturer_invoicing_year, - ifnull(sum(buyout_day), 0) as buyout_day, - ifnull(sum(buyout_month), 0) as buyout_month, - ifnull(sum(buyout_year), 0) as buyout_year, - ifnull(sum(arrears_carry_veh_count), 0) as arrears_carry_veh_count, - ifnull(sum(arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, - ifnull(sum(loan_not_count), 0) as loan_not_count, - ifnull(sum(loan_not_amount), 0) as loan_not_amount, - ifnull(sum(saleAllToThree), 0) as saleAllToThree, - ifnull(sum(loan_not_counts), 0) as loan_not_counts, - ifnull(sum(loan_not_amounts), 0) as loan_not_amounts, + ifnull(sum(buyout_day), 0) as buyout_day, + ifnull(sum(buyout_month), 0) as buyout_month, + ifnull(sum(buyout_year), 0) as buyout_year, + ifnull(sum(arrears_carry_veh_count), 0) as arrears_carry_veh_count, + ifnull(sum(arrears_carry_veh_amount), 0) as arrears_carry_veh_amount, + ifnull(sum(loan_not_count), 0) as loan_not_count, + ifnull(sum(loan_not_amount), 0) as loan_not_amount, + ifnull(sum(saleAllToThree), 0) as saleAllToThree, + ifnull(sum(loan_not_counts), 0) as loan_not_counts, + ifnull(sum(loan_not_amounts), 0) as loan_not_amounts, busOrgSid, useOrgSid, busOrgName, @@ -487,63 +583,122 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java index 2bb1476f64..4564cf1b40 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportRest.java @@ -74,7 +74,7 @@ public class DailyReportRest implements DailyReportFeign { @Override public ResultBean list1Old(String date, String busOrgSid) { - return dailyReportService.list1(date, busOrgSid); + return dailyReportService.list1Old(date, busOrgSid); } @Override @@ -106,7 +106,7 @@ public class DailyReportRest implements DailyReportFeign { @Override public ResultBean list4Old(String date, String useOrgSid) { - return dailyReportService.list4(date, useOrgSid); + return dailyReportService.list4Old(date, useOrgSid); } @Override diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java index a3b58d131d..0b1b477f72 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfig; import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel; +import com.yxt.anrui.portal.api.flow.app.FlowTaskFinishVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.reportcenter.api.dailyreport.*; import com.yxt.anrui.reportcenter.api.reportset.ReportSetVo; @@ -15,6 +16,7 @@ import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import lombok.extern.slf4j.Slf4j; import net.sf.jsqlparser.expression.StringValue; import org.apache.commons.lang3.StringUtils; import org.apache.tomcat.util.threads.ThreadPoolExecutor; @@ -36,6 +38,7 @@ import java.util.stream.Collectors; * @date: 2023/9/28 **/ @Service +@Slf4j public class DailyReportService extends MybatisBaseService { @Autowired @@ -447,7 +450,7 @@ public class DailyReportService extends MybatisBaseService list1(String date, String busOrgSid) { + public ResultBean list1Old(String date, String busOrgSid) { ResultBean rb = ResultBean.fireFail(); DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); List rows1 = baseMapper.selectByBrand(busOrgSid, date); @@ -726,7 +729,7 @@ public class DailyReportService extends MybatisBaseService list1New(String date, String busOrgSid) { + public ResultBean list1New_old(String date, String busOrgSid) { ResultBean rb = ResultBean.fireFail(); DailyReportAppBrandVo dailyReportAppVo = new DailyReportAppBrandVo(); List rows1 = baseMapper.selectByBrand(busOrgSid, date); @@ -1316,451 +1319,773 @@ public class DailyReportService extends MybatisBaseService pageList1(PagerQuery pagerQuery) { - DailyReportAppPagerQuery query = pagerQuery.getParams(); - QueryWrapper qw = new QueryWrapper<>(); - if (query != null) { - + public ResultBean list1New(String date, String busOrgSid) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + ResultBean rb = ResultBean.fireFail(); + DailyReportAppBrandVo dailyReportAppVo = new DailyReportAppBrandVo(); + String startDate = date + " 00:00:00"; + String endDate = date + " 23:59:59"; + List rows1 = baseMapper.selectByBrandNew(busOrgSid, startDate, endDate); + rows1.removeAll(Collections.singleton(null)); + if (!rows1.isEmpty()) { + rows1.forEach(v -> { + v.setColspan(Integer.parseInt(v.getColspan()) > 0 ? String.valueOf(Integer.parseInt(v.getColspan()) + 1) : v.getColspan()); + }); } - IPage page = PagerUtil.queryToPage(pagerQuery); - IPage pagging = baseMapper.pageList1(page, qw); - List recordList = pagging.getRecords(); - recordList.removeAll(Collections.singleton(null)); - if (!recordList.isEmpty()) { - for (int i = 0; i < recordList.size(); i++) { - DailyReportListVo dailyReportListVo = recordList.get(i); - String ratio = ""; - if (StringUtils.isBlank(dailyReportListVo.getSaleAllToThree())) { - ratio = dailyReportListVo.getStock_subtotal() + ":1"; - } else { - if ("0".equals(dailyReportListVo.getSaleAllToThree())) { - ratio = dailyReportListVo.getStock_subtotal() + ":1"; + dailyReportAppVo.setRow1(rows1); + List brandList = rows1.stream().map(v -> v.getLinkSid()).collect(Collectors.toList()); + List dailyReportVoList = baseMapper.selectReportNew(brandList, busOrgSid, startDate, endDate); + //排放标准 + List row3 = dailyReportVoList.stream().map(v -> v.getEmissionStandardValue()).collect(Collectors.toList()); + dailyReportAppVo.setRow3(row3); + + //按品牌sid分组,为保证dailyReportVoList分组的顺序,使用LinkedHashMap + Map> groupedByBrandSid = dailyReportVoList.stream() + .collect(Collectors.groupingBy(DailyReportVo::getBrandSid, LinkedHashMap::new, Collectors.toList())); + //遍历分组并组装每组的数据 + List row2 = new ArrayList<>(); + List row4 = new ArrayList<>(); + List row5 = new ArrayList<>(); + List row6 = new ArrayList<>(); + List row7 = new ArrayList<>(); + List row8 = new ArrayList<>(); + List row9 = new ArrayList<>(); + List row10 = new ArrayList<>(); + List row11 = new ArrayList<>(); + List row12 = new ArrayList<>(); + List row13 = new ArrayList<>(); + List row14 = new ArrayList<>(); + List row15 = new ArrayList<>(); + List row16 = new ArrayList<>(); + List row17 = new ArrayList<>(); + List row18 = new ArrayList<>(); + List row19 = new ArrayList<>(); + List row20 = new ArrayList<>(); + List row21 = new ArrayList<>(); + List row22 = new ArrayList<>(); + List row23 = new ArrayList<>(); + List row24 = new ArrayList<>(); + List row25 = new ArrayList<>(); + List row26 = new ArrayList<>(); + List row27 = new ArrayList<>(); + List row28 = new ArrayList<>(); + List row29 = new ArrayList<>(); + List row30 = new ArrayList<>(); + List row31 = new ArrayList<>(); + List row32 = new ArrayList<>(); + List row33 = new ArrayList<>(); + List row34 = new ArrayList<>(); + List row35 = new ArrayList<>(); + List row36 = new ArrayList<>(); + List row37 = new ArrayList<>(); + List row38 = new ArrayList<>(); + List row39 = new ArrayList<>(); + List row40 = new ArrayList<>(); + List row41 = new ArrayList<>(); + List row42 = new ArrayList<>(); + List row43 = new ArrayList<>(); + List row44 = new ArrayList<>(); + List row45 = new ArrayList<>(); + List row46 = new ArrayList<>(); + List row47 = new ArrayList<>(); + List row48 = new ArrayList<>(); + List row49 = new ArrayList<>(); + List row50 = new ArrayList<>(); + List row51 = new ArrayList<>(); + groupedByBrandSid.forEach((brandSid, sameBrandSidList) -> { + for (int i = 0; i <= sameBrandSidList.size(); i++) { + if (i == sameBrandSidList.size()) { + FuelTypeVo fuelTypeVo = new FuelTypeVo(); + fuelTypeVo.setName("小计"); + fuelTypeVo.setRowspan(String.valueOf(2)); + row2.add(fuelTypeVo); + //小计 + int saleAllToThreeAll = sameBrandSidList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = sameBrandSidList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; } else { - ratio = new BigDecimal(dailyReportListVo.getStock_total()).divide((new BigDecimal(dailyReportListVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; } - } - dailyReportListVo.setSaleOfStockRatio(ratio); - } - } - PagerVo p = PagerUtil.pageToVo(pagging, null); - - return p; - } - - public ResultBean getReport(String date, String userSid, String orgPath, String type) { - ResultBean rb = ResultBean.fireFail(); - QueryWrapper qw = new QueryWrapper<>(); - if (StringUtils.isNotBlank(date)) { - qw.like("createTime", date); - } - if (StringUtils.isNotBlank(type)) {//事业部或分公司 - if ("syb".equals(type)) { - if (StringUtils.isNotBlank(orgPath)) { - List stringList = Arrays.asList(orgPath.split("/")); - String busOrgSid = orgPath.substring(37, 73); - qw.eq("busOrgSid", busOrgSid); - } - } else if ("fgs".equals(type)) { - if (StringUtils.isNotBlank(orgPath)) { - String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); - qw.eq("useOrgSid", useOrgSid); - } - } - } - ReportVo reportVo = baseMapper.getReport(qw); - String ratio = ""; - if (StringUtils.isBlank(reportVo.getSaleAllToThree())) { - ratio = reportVo.getStock_subtotal() + ":1"; - } else { - if ("0".equals(reportVo.getSaleAllToThree())) { - ratio = reportVo.getStock_subtotal() + ":1"; - } else { - ratio = new BigDecimal(reportVo.getStock_total()).divide((new BigDecimal(reportVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; - } - } - reportVo.setSaleOfStockRatio(ratio); - ResultBean> listResultBean = reportSetService.selectVoByUserSid(userSid); - if (listResultBean.getSuccess()) { - List list = listResultBean.getData(); - reportVo.setList(list); - } - return rb.success().setData(reportVo); - } + row4.add(saleOfStockRatioString); + List row5i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + List row6i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + List row7i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + List row8i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + List row9i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + List row10i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + List row11i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + List row12i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + List row13i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + List row14i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + List row15i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + List row16i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); - public ResultBean list2(String date) { - ResultBean rb = ResultBean.fireFail(); - DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); - dailyReportAppVo.setTitle("集团(事业部)" + date + "日报"); - List rows1 = baseMapper.list2(date); - rows1.removeAll(Collections.singleton(null)); - dailyReportAppVo.setRow1(rows1); - List dailyReportVoList = baseMapper.selectReport2(date); - /*//存销比 - List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio()).collect(Collectors.toList()); - //合计 - BigDecimal row4All = row4.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row4.add(row4All.toString()); - dailyReportAppVo.setRow4(row4);*/ - //存销比 - /*List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio().contains(".") ? dicimalToFraction(Double.valueOf(v.getSaleOfStockRatio())) : (v.getSaleOfStockRatio() + ":1") - ).collect(Collectors.toList()); - //合计 - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString().contains(".") ? dicimalToFraction(Double.valueOf(row4All.toString())) : (row4All.toString() + ":1"); - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ - /*List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() + ":1" - ).collect(Collectors.toList()); - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString() + ":1"; - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ - List row4 = dailyReportVoList.stream().map(v -> { - String saleOfStockRatio = ""; - String saleAllToThree = String.valueOf(v.getSaleAllToThree()); - String stock_total = String.valueOf(v.getStock_total()); - if (StringUtils.isBlank(saleAllToThree)) { - saleOfStockRatio = stock_total + ":1"; - } else { - if ("0".equals(saleAllToThree)) { - saleOfStockRatio = stock_total + ":1"; - } else { - saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; - } - } - return saleOfStockRatio; - }).collect(Collectors.toList()); - int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); - int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); - String saleOfStockRatioString = ""; - if (saleAllToThreeAll == 0) { - saleOfStockRatioString = stock_totalAll + ":1"; - } else { - saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; - } - row4.add(saleOfStockRatioString); - dailyReportAppVo.setRow4(row4); - //库存总计 - List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); - BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row5.add(row5All.toString()); - dailyReportAppVo.setRow5(row5); - //库存未定 - List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); - BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row6.add(row6All.toString()); - dailyReportAppVo.setRow6(row6); - //库存-已定 - List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); - BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //订车-本日销售订单-贷款 + List row17i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + //订车-本日销售订单-全款 + List row18i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + //订车-本日销售订单-小计 + List row19i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + //订车-本月销售订单-贷款 + List row20i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + //订车-本月销售订单-全款 + List row21i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + //订车-本月销售订单-小计 + List row22i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + //订车-待交车累计总订单 + List row23i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + //销售-本日销售-贷款 + List row24i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + //销售-本日销售-全款 + List row25i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + //销售-本日销售-小计 + List row26i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + //销售-本月销售-贷款 + List row27i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + //销售-本月销售-全款 + List row28i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + //销售-本月销售-小计 + List row29i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + //销售-全年销售-贷款 + List row30i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + //销售-全年销售-全款 + List row31i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + //销售-全年销售-小计 + List row32i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + //交付-本日交付-贷款 + List row33i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + //交付-本日交付-全款 + List row34i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + //交付-本日交付-小计 + List row35i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + //交付-本月交付-贷款 + List row36i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + //交付-本月交付-全款 + List row37i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + //交付-本月交付-小计 + List row38i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + //交付-全年交付-贷款 + List row39i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + //交付-全年交付-全款 + List row40i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + //交付-全年交付-小计 + List row41i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + //全年厂家开票数 + List row42i = sameBrandSidList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + //买断-本日 + List row43i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + //买断-本月 + List row44i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + //买断-本年 + List row45i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + //欠款出库数量 + List row46i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + //欠款出库金额 + List row47i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + //金融未放款-数量 + List row48i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + //金融未放款-金额 + List row49i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + + //金融未放款-数量-已信审终审 + List row50i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + //金融未放款-金额-已信审终审 + List row51i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + } else { + FuelTypeVo fuelTypeVo = new FuelTypeVo(); + DailyReportVo v = sameBrandSidList.get(i); + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + fuelTypeVo.setName(v.getFuelTypeValue()); + fuelTypeVo.setRowspan(String.valueOf(1)); + row2.add(fuelTypeVo); + row4.add(saleOfStockRatio); + row5.add(String.valueOf(v.getStock_total())); + row6.add(String.valueOf(v.getStock_unreserve())); + row7.add(String.valueOf(v.getStock_reserve())); + row8.add(String.valueOf(v.getStock_subtotal())); + row9.add(String.valueOf(v.getStock_buyout_unreserve())); + row10.add(String.valueOf(v.getStock_buyout_reserve())); + row11.add(String.valueOf(v.getStock_buyout_subtotal())); + row12.add(String.valueOf(v.getPcOrder_unreserve())); + row13.add(String.valueOf(v.getPcOrder_reserve())); + row14.add(String.valueOf(v.getPcOrder_subtotal())); + row15.add(String.valueOf(v.getSimpleOrder_day())); + row16.add(String.valueOf(v.getSimpleOrder_month())); + row17.add(String.valueOf(v.getSaleOrder_loan_day())); + row18.add(String.valueOf(v.getSaleOrder_full_day())); + row19.add(String.valueOf(v.getSaleOrder_subtotal_day())); + row20.add(String.valueOf(v.getSaleOrder_loan_month())); + row21.add(String.valueOf(v.getSaleOrder_full_month())); + row22.add(String.valueOf(v.getSaleOrder_subtotal_month())); + row23.add(String.valueOf(v.getSaleOrder_waitVeh_total())); + row24.add(String.valueOf(v.getSale_loan_day())); + row25.add(String.valueOf(v.getSale_full_day())); + row26.add(String.valueOf(v.getSale_subtotal_day())); + row27.add(String.valueOf(v.getSale_loan_month())); + row28.add(String.valueOf(v.getSale_full_month())); + row29.add(String.valueOf(v.getSale_subtotal_month())); + row30.add(String.valueOf(v.getSale_loan_year())); + row31.add(String.valueOf(v.getSale_full_year())); + row32.add(String.valueOf(v.getSale_subtotal_year())); + row33.add(String.valueOf(v.getDeliver_loan_day())); + row34.add(String.valueOf(v.getDeliver_full_day())); + row35.add(String.valueOf(v.getDeliver_subtotal_day())); + row36.add(String.valueOf(v.getDeliver_loan_month())); + row37.add(String.valueOf(v.getDeliver_full_month())); + row38.add(String.valueOf(v.getDeliver_subtotal_month())); + row39.add(String.valueOf(v.getDeliver_loan_year())); + row40.add(String.valueOf(v.getDeliver_full_year())); + row41.add(String.valueOf(v.getDeliver_subtotal_year())); + row42.add(String.valueOf(v.getManufacturer_invoicing_year())); + row43.add(String.valueOf(v.getBuyout_day())); + row44.add(String.valueOf(v.getBuyout_month())); + row45.add(String.valueOf(v.getBuyout_year())); + row46.add(String.valueOf(v.getArrears_carry_veh_count())); + row47.add(String.valueOf(v.getArrears_carry_veh_amount())); + row48.add(String.valueOf(v.getLoan_not_count())); + row49.add(String.valueOf(v.getLoan_not_amount())); + row50.add(String.valueOf(v.getLoan_not_counts())); + row51.add(String.valueOf(v.getLoan_not_amounts())); + } + + } + + }); + dailyReportAppVo.setRow2(row2); + //==================添加最后的合计 + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + //库存总计-合计 + List row5ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定-合计 + List row6ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定-合计 + List row7ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row7.add(row7All.toString()); dailyReportAppVo.setRow7(row7); - //库存-小计 - List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); - BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //库存-小计-合计 + List row8ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row8.add(row8All.toString()); dailyReportAppVo.setRow8(row8); //其中买断-未定 - List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); - BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row9ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row9.add(row9All.toString()); dailyReportAppVo.setRow9(row9); //其中买断-已定 - List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); - BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row10ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row10.add(row10All.toString()); dailyReportAppVo.setRow10(row10); //其中买断-小计 - List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); - BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row11.add(row11All.toString()); + List row11ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); dailyReportAppVo.setRow11(row11); //排产-未定 - List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); - BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row12ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row12.add(row12All.toString()); dailyReportAppVo.setRow12(row12); //排产-已定 - List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); - BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row13ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row13.add(row13All.toString()); dailyReportAppVo.setRow13(row13); //排产-小计 - List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); - BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row14ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row14.add(row14All.toString()); dailyReportAppVo.setRow14(row14); //订车-简易订单-本日 - List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); - BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row15ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row15.add(row15All.toString()); dailyReportAppVo.setRow15(row15); //订车-简易订单-本月 - List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); - BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row16ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row16.add(row16All.toString()); dailyReportAppVo.setRow16(row16); //订车-本日销售订单-贷款 - List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); - BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row17ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row17.add(row17All.toString()); dailyReportAppVo.setRow17(row17); //订车-本日销售订单-全款 - List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); - BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row18ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row18.add(row18All.toString()); dailyReportAppVo.setRow18(row18); //订车-本日销售订单-小计 - List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); - BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row19ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row19.add(row19All.toString()); dailyReportAppVo.setRow19(row19); //订车-本月销售订单-贷款 - List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); - BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row20ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row20.add(row20All.toString()); dailyReportAppVo.setRow20(row20); //订车-本月销售订单-全款 - List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); - BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row21ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row21.add(row21All.toString()); dailyReportAppVo.setRow21(row21); //订车-本月销售订单-小计 - List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); - BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row22ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row22.add(row22All.toString()); dailyReportAppVo.setRow22(row22); //订车-待交车累计总订单 - List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); - BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row23ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row23.add(row23All.toString()); dailyReportAppVo.setRow23(row23); //销售-本日销售-贷款 - List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); - BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row24ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row24.add(row24All.toString()); dailyReportAppVo.setRow24(row24); //销售-本日销售-全款 - List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); - BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row25ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row25.add(row25All.toString()); dailyReportAppVo.setRow25(row25); //销售-本日销售-小计 - List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); - BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row26ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row26.add(row26All.toString()); dailyReportAppVo.setRow26(row26); //销售-本月销售-贷款 - List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); - BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row27ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row27.add(row27All.toString()); dailyReportAppVo.setRow27(row27); //销售-本月销售-全款 - List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); - BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row28ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row28.add(row28All.toString()); dailyReportAppVo.setRow28(row28); //销售-本月销售-小计 - List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); - BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row29ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row29.add(row29All.toString()); dailyReportAppVo.setRow29(row29); //销售-全年销售-贷款 - List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); - BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row30ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row30.add(row30All.toString()); dailyReportAppVo.setRow30(row30); //销售-全年销售-全款 - List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); - BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row31ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row31.add(row31All.toString()); dailyReportAppVo.setRow31(row31); //销售-全年销售-小计 - List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); - BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row32ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row32.add(row32All.toString()); dailyReportAppVo.setRow32(row32); //交付-本日交付-贷款 - List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); - BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row33ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row33.add(row33All.toString()); dailyReportAppVo.setRow33(row33); //交付-本日交付-全款 - List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); - BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row34ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row34.add(row34All.toString()); dailyReportAppVo.setRow34(row34); //交付-本日交付-小计 - List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); - BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row35ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row35.add(row35All.toString()); dailyReportAppVo.setRow35(row35); //交付-本月交付-贷款 - List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); - BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row36ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row36.add(row36All.toString()); dailyReportAppVo.setRow36(row36); //交付-本月交付-全款 - List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); - BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row37ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row37.add(row37All.toString()); dailyReportAppVo.setRow37(row37); //交付-本月交付-小计 - List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); - BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row38ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row38.add(row38All.toString()); dailyReportAppVo.setRow38(row38); //交付-全年交付-贷款 - List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); - BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row39ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row39.add(row39All.toString()); dailyReportAppVo.setRow39(row39); //交付-全年交付-全款 - List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); - BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row40ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row40.add(row40All.toString()); dailyReportAppVo.setRow40(row40); //交付-全年交付-小计 - List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); - BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row41ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row41.add(row41All.toString()); dailyReportAppVo.setRow41(row41); //全年厂家开票数 - List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); - BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row42ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row42.add(row42All.toString()); dailyReportAppVo.setRow42(row42); //买断-本日 - List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); - BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row43ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row43.add(row43All.toString()); dailyReportAppVo.setRow43(row43); //买断-本月 - List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); - BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row44ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row44.add(row44All.toString()); dailyReportAppVo.setRow44(row44); //买断-本年 - List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); - BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row45ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row45.add(row45All.toString()); dailyReportAppVo.setRow45(row45); //欠款出库数量 - List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); - BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row46ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row46.add(row46All.toString()); dailyReportAppVo.setRow46(row46); //欠款出库金额 - List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); - BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row47ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row47.add(row47All.toString()); dailyReportAppVo.setRow47(row47); //金融未放款-数量 - List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); - BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row48ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row48.add(row48All.toString()); dailyReportAppVo.setRow48(row48); //金融未放款-金额 - List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); - BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row49ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row49.add(row49All.toString()); dailyReportAppVo.setRow49(row49); //金融未放款-数量-已信审终审 - List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); - BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row50ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row50.add(row50All.toString()); dailyReportAppVo.setRow50(row50); //金融未放款-金额-已信审终审 - List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); - BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row51ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row51.add(row51All.toString()); dailyReportAppVo.setRow51(row51); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("事业部品牌接口耗时 {} ms", duration); // 输出日志 return rb.success().setData(dailyReportAppVo); } - public ResultBean list3(String date, String busOrgSid) { - ResultBean rb = ResultBean.fireFail(); - DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); - List rows1 = baseMapper.list3(date, busOrgSid); - dailyReportAppVo.setTitle("事业部(分公司)" + date + "日报"); - rows1.removeAll(Collections.singleton(null)); - dailyReportAppVo.setRow1(rows1); - List dailyReportVoList = baseMapper.selectReport3(date, busOrgSid); - /*//存销比 - List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio()).collect(Collectors.toList()); - //合计 - BigDecimal row4All = row4.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row4.add(row4All.toString()); - dailyReportAppVo.setRow4(row4);*/ - //存销比 - /*List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio().contains(".") ? dicimalToFraction(Double.valueOf(v.getSaleOfStockRatio())) : (v.getSaleOfStockRatio() + ":1") - ).collect(Collectors.toList()); - //合计 - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString().contains(".") ? dicimalToFraction(Double.valueOf(row4All.toString())) : (row4All.toString() + ":1"); - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ - /*List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() + ":1" - ).collect(Collectors.toList()); - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString() + ":1"; - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ - List row4 = dailyReportVoList.stream().map(v -> { - String saleOfStockRatio = ""; - String saleAllToThree = String.valueOf(v.getSaleAllToThree()); - String stock_total = String.valueOf(v.getStock_total()); - if (StringUtils.isBlank(saleAllToThree)) { - saleOfStockRatio = stock_total + ":1"; - } else { - if ("0".equals(saleAllToThree)) { - saleOfStockRatio = stock_total + ":1"; + public PagerVo pageList1_old(PagerQuery pagerQuery) { + DailyReportAppPagerQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + + } + IPage page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.pageList1(page, qw); + List recordList = pagging.getRecords(); + recordList.removeAll(Collections.singleton(null)); + if (!recordList.isEmpty()) { + for (int i = 0; i < recordList.size(); i++) { + DailyReportListVo dailyReportListVo = recordList.get(i); + String ratio = ""; + if (StringUtils.isBlank(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; } else { - saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + if ("0".equals(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + ratio = new BigDecimal(dailyReportListVo.getStock_total()).divide((new BigDecimal(dailyReportListVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } } + dailyReportListVo.setSaleOfStockRatio(ratio); } - return saleOfStockRatio; - }).collect(Collectors.toList()); - int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); - int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); - String saleOfStockRatioString = ""; - if (saleAllToThreeAll == 0) { - saleOfStockRatioString = stock_totalAll + ":1"; - } else { - saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; } - row4.add(saleOfStockRatioString); - dailyReportAppVo.setRow4(row4); - //库存总计 - List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); - BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row5.add(row5All.toString()); - dailyReportAppVo.setRow5(row5); - //库存未定 - List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); - BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row6.add(row6All.toString()); - dailyReportAppVo.setRow6(row6); - //库存-已定 - List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); - BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - row7.add(row7All.toString()); - dailyReportAppVo.setRow7(row7); - //库存-小计 - List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + PagerVo p = PagerUtil.pageToVo(pagging, null); + + return p; + } + + public PagerVo pageList1(PagerQuery pagerQuery) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + PagerVo page = new PagerVo<>(); + long pageNum = pagerQuery.getCurrent(); + long pageSize = pagerQuery.getSize(); + DailyReportAppPagerQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + + } + + Map map = new HashMap<>(); + map.put("page", (pageNum - 1) * pageSize); + map.put("size", pageSize); + List recordList = baseMapper.selectRecordList(map, qw); + recordList.removeAll(Collections.singleton(null)); + if (!recordList.isEmpty()) { + for (int i = 0; i < recordList.size(); i++) { + DailyReportListVo dailyReportListVo = recordList.get(i); + String ratio = ""; + if (StringUtils.isBlank(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + if ("0".equals(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + ratio = new BigDecimal(dailyReportListVo.getStock_total()).divide((new BigDecimal(dailyReportListVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + dailyReportListVo.setSaleOfStockRatio(ratio); + } + } + int count = baseMapper.selectRecordCount(qw); + page.setRecords(recordList); + page.setCurrent(pageNum); + page.setSize(pageSize); + page.setTotal(count); + long pages = (count + pageSize - 1) / pageSize; + page.setPages(pages); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("集团日报列表接口耗时 {} ms", duration); // 输出日志 + return page; + } + + public ResultBean getReport(String date, String userSid, String orgPath, String type) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + ResultBean rb = ResultBean.fireFail(); + QueryWrapper qw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(date)) { + // 假设你传入的日期格式是 '2025-02-21' + String startDate = date + " 00:00:00"; + String endDate = date + " 23:59:59"; + qw.ge("createTime", startDate) // 大于等于 startDate + .lt("createTime", endDate); // 小于 endDate + } + if (StringUtils.isNotBlank(type)) {//事业部或分公司 + if ("syb".equals(type)) { + if (StringUtils.isNotBlank(orgPath)) { + List stringList = Arrays.asList(orgPath.split("/")); + String busOrgSid = orgPath.substring(37, 73); + qw.eq("busOrgSid", busOrgSid); + } + } else if ("fgs".equals(type)) { + if (StringUtils.isNotBlank(orgPath)) { + String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); + qw.eq("useOrgSid", useOrgSid); + } + } + } + ReportVo reportVo = baseMapper.getReport(qw); + String ratio = ""; + if (StringUtils.isBlank(reportVo.getSaleAllToThree())) { + ratio = reportVo.getStock_subtotal() + ":1"; + } else { + if ("0".equals(reportVo.getSaleAllToThree())) { + ratio = reportVo.getStock_subtotal() + ":1"; + } else { + ratio = new BigDecimal(reportVo.getStock_total()).divide((new BigDecimal(reportVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + reportVo.setSaleOfStockRatio(ratio); + ResultBean> listResultBean = reportSetService.selectVoByUserSid(userSid); + if (listResultBean.getSuccess()) { + List list = listResultBean.getData(); + reportVo.setList(list); + } + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("集团日期初始化接口耗时 {} ms", duration); // 输出日志 + return rb.success().setData(reportVo); + } + + public ResultBean list2_old(String date) { + ResultBean rb = ResultBean.fireFail(); + DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); + dailyReportAppVo.setTitle("集团(事业部)" + date + "日报"); + List rows1 = baseMapper.list2(date); + rows1.removeAll(Collections.singleton(null)); + dailyReportAppVo.setRow1(rows1); + List dailyReportVoList = baseMapper.selectReport2(date); + List row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + //库存总计 + List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定 + List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定 + List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + dailyReportAppVo.setRow7(row7); + //库存-小计 + List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row8.add(row8All.toString()); dailyReportAppVo.setRow8(row8); @@ -1969,6 +2294,7 @@ public class DailyReportService extends MybatisBaseService row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -1982,66 +2308,17 @@ public class DailyReportService extends MybatisBaseService list4(String date, String useOrgSid) { + public ResultBean list2(String date) { + long startTime = System.currentTimeMillis(); // 记录开始时间 ResultBean rb = ResultBean.fireFail(); - QueryWrapper qw = new QueryWrapper<>(); DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); - dailyReportAppVo.setTitle("分公司" + date + "日报"); - qw.like("ddr.createTime", date); - qw.eq("ddr.useOrgSid", useOrgSid); - qw.groupBy("ddr.brandSid"); - qw.groupBy("bm.fuelTypeValue"); - qw.groupBy("bm.emissionStandardValue"); - qw.orderByDesc("ddr.brandSid"); - List parameterVoList = baseMapper.selectByParameters(useOrgSid); - parameterVoList.removeAll(Collections.singleton(null)); - qw = getCommon(parameterVoList, qw); - List rows1 = baseMapper.selectByBrand2(useOrgSid, date, qw); + dailyReportAppVo.setTitle("集团(事业部)" + date + "日报"); + List rows1 = baseMapper.list2(date); rows1.removeAll(Collections.singleton(null)); dailyReportAppVo.setRow1(rows1); - List brandList = rows1.stream().map(v -> v.getLinkSid()).collect(Collectors.toList()); - brandList.removeAll(Collections.singleton(null)); - if (brandList.isEmpty()) { - return rb.success(); - } - qw = new QueryWrapper<>(); - qw.eq("dr.useOrgSid", useOrgSid); - qw.like("dr.createTime", date); - qw.in("dr.brandSid", brandList); - qw.orderByDesc("dr.brandSid"); - qw.groupBy("dr.brandSid"); - qw.groupBy("bm.fuelTypeValue"); - qw.groupBy("bm.emissionStandardValue"); - qw.orderByDesc("bm.fuelTypeValue"); - qw.orderByDesc("bm.emissionStandardValue"); - qw = getCommon(parameterVoList, qw); - List dailyReportVoList = baseMapper.selectReport4(brandList, useOrgSid, date, qw); - //燃料 - List row2 = dailyReportVoList.stream().map(v -> v.getFuelTypeValue()).collect(Collectors.toList()); - dailyReportAppVo.setRow2(row2); - //排放标准 - List row3 = dailyReportVoList.stream().map(v -> v.getEmissionStandardValue()).collect(Collectors.toList()); - dailyReportAppVo.setRow3(row3); - //存销比 - /*List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio().contains(".") ? dicimalToFraction(Double.valueOf(v.getSaleOfStockRatio())) : (v.getSaleOfStockRatio() + ":1") - ).collect(Collectors.toList()); - //合计 - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString().contains(".") ? dicimalToFraction(Double.valueOf(row4All.toString())) : (row4All.toString() + ":1"); - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ - /* List row4 = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() + ":1" - ).collect(Collectors.toList()); - BigDecimal row4All = dailyReportVoList.stream().map(v -> - v.getSaleOfStockRatio() - ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); - String row4alll = row4All.toString() + ":1"; - row4.add(row4alll); - dailyReportAppVo.setRow4(row4);*/ + String startDate = date + " 00:00:00"; + String endDate = date + " 23:59:59"; + List dailyReportVoList = baseMapper.selectReport2New(startDate, endDate); List row4 = dailyReportVoList.stream().map(v -> { String saleOfStockRatio = ""; String saleAllToThree = String.valueOf(v.getSaleAllToThree()); @@ -2055,8 +2332,1622 @@ public class DailyReportService extends MybatisBaseService v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + //库存总计 + List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定 + List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定 + List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + dailyReportAppVo.setRow7(row7); + //库存-小计 + List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + dailyReportAppVo.setRow8(row8); + //其中买断-未定 + List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + dailyReportAppVo.setRow9(row9); + //其中买断-已定 + List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + dailyReportAppVo.setRow10(row10); + //其中买断-小计 + List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + dailyReportAppVo.setRow11(row11); + //排产-未定 + List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + dailyReportAppVo.setRow12(row12); + //排产-已定 + List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + dailyReportAppVo.setRow13(row13); + //排产-小计 + List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + dailyReportAppVo.setRow14(row14); + //订车-简易订单-本日 + List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + dailyReportAppVo.setRow15(row15); + //订车-简易订单-本月 + List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); + dailyReportAppVo.setRow16(row16); + //订车-本日销售订单-贷款 + List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + dailyReportAppVo.setRow17(row17); + //订车-本日销售订单-全款 + List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + dailyReportAppVo.setRow18(row18); + //订车-本日销售订单-小计 + List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + dailyReportAppVo.setRow19(row19); + //订车-本月销售订单-贷款 + List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + dailyReportAppVo.setRow20(row20); + //订车-本月销售订单-全款 + List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + dailyReportAppVo.setRow21(row21); + //订车-本月销售订单-小计 + List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + dailyReportAppVo.setRow22(row22); + //订车-待交车累计总订单 + List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + dailyReportAppVo.setRow23(row23); + //销售-本日销售-贷款 + List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + dailyReportAppVo.setRow24(row24); + //销售-本日销售-全款 + List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + dailyReportAppVo.setRow25(row25); + //销售-本日销售-小计 + List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + dailyReportAppVo.setRow26(row26); + //销售-本月销售-贷款 + List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + dailyReportAppVo.setRow27(row27); + //销售-本月销售-全款 + List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + dailyReportAppVo.setRow28(row28); + //销售-本月销售-小计 + List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + dailyReportAppVo.setRow29(row29); + //销售-全年销售-贷款 + List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + dailyReportAppVo.setRow30(row30); + //销售-全年销售-全款 + List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + dailyReportAppVo.setRow31(row31); + //销售-全年销售-小计 + List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + dailyReportAppVo.setRow32(row32); + //交付-本日交付-贷款 + List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + dailyReportAppVo.setRow33(row33); + //交付-本日交付-全款 + List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + dailyReportAppVo.setRow34(row34); + //交付-本日交付-小计 + List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + dailyReportAppVo.setRow35(row35); + //交付-本月交付-贷款 + List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + dailyReportAppVo.setRow36(row36); + //交付-本月交付-全款 + List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + dailyReportAppVo.setRow37(row37); + //交付-本月交付-小计 + List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + dailyReportAppVo.setRow38(row38); + //交付-全年交付-贷款 + List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + dailyReportAppVo.setRow39(row39); + //交付-全年交付-全款 + List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + dailyReportAppVo.setRow40(row40); + //交付-全年交付-小计 + List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + dailyReportAppVo.setRow41(row41); + //全年厂家开票数 + List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + dailyReportAppVo.setRow42(row42); + //买断-本日 + List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + dailyReportAppVo.setRow43(row43); + //买断-本月 + List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + dailyReportAppVo.setRow44(row44); + //买断-本年 + List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + dailyReportAppVo.setRow45(row45); + //欠款出库数量 + List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + dailyReportAppVo.setRow46(row46); + //欠款出库金额 + List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + dailyReportAppVo.setRow47(row47); + //金融未放款-数量 + List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + dailyReportAppVo.setRow48(row48); + //金融未放款-金额 + List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + dailyReportAppVo.setRow49(row49); + + //金融未放款-数量-已信审终审 + List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + dailyReportAppVo.setRow50(row50); + //金融未放款-金额-已信审终审 + List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + dailyReportAppVo.setRow51(row51); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("集团事业部合集日报表接口耗时 {} ms", duration); // 输出日志 + return rb.success().setData(dailyReportAppVo); + } + + + public ResultBean list3_old(String date, String busOrgSid) { + ResultBean rb = ResultBean.fireFail(); + DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); + List rows1 = baseMapper.list3(date, busOrgSid); + dailyReportAppVo.setTitle("事业部(分公司)" + date + "日报"); + rows1.removeAll(Collections.singleton(null)); + dailyReportAppVo.setRow1(rows1); + List dailyReportVoList = baseMapper.selectReport3(date, busOrgSid); + /*//存销比 + List row4 = dailyReportVoList.stream().map(v -> v.getSaleOfStockRatio()).collect(Collectors.toList()); + //合计 + BigDecimal row4All = row4.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row4.add(row4All.toString()); + dailyReportAppVo.setRow4(row4);*/ + //存销比 + /*List row4 = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio().contains(".") ? dicimalToFraction(Double.valueOf(v.getSaleOfStockRatio())) : (v.getSaleOfStockRatio() + ":1") + ).collect(Collectors.toList()); + //合计 + BigDecimal row4All = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + String row4alll = row4All.toString().contains(".") ? dicimalToFraction(Double.valueOf(row4All.toString())) : (row4All.toString() + ":1"); + row4.add(row4alll); + dailyReportAppVo.setRow4(row4);*/ + /*List row4 = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ":1" + ).collect(Collectors.toList()); + BigDecimal row4All = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + String row4alll = row4All.toString() + ":1"; + row4.add(row4alll); + dailyReportAppVo.setRow4(row4);*/ + List row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + //库存总计 + List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定 + List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定 + List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + dailyReportAppVo.setRow7(row7); + //库存-小计 + List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + dailyReportAppVo.setRow8(row8); + //其中买断-未定 + List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + dailyReportAppVo.setRow9(row9); + //其中买断-已定 + List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + dailyReportAppVo.setRow10(row10); + //其中买断-小计 + List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + dailyReportAppVo.setRow11(row11); + //排产-未定 + List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + dailyReportAppVo.setRow12(row12); + //排产-已定 + List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + dailyReportAppVo.setRow13(row13); + //排产-小计 + List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + dailyReportAppVo.setRow14(row14); + //订车-简易订单-本日 + List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + dailyReportAppVo.setRow15(row15); + //订车-简易订单-本月 + List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); + dailyReportAppVo.setRow16(row16); + //订车-本日销售订单-贷款 + List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + dailyReportAppVo.setRow17(row17); + //订车-本日销售订单-全款 + List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + dailyReportAppVo.setRow18(row18); + //订车-本日销售订单-小计 + List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + dailyReportAppVo.setRow19(row19); + //订车-本月销售订单-贷款 + List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + dailyReportAppVo.setRow20(row20); + //订车-本月销售订单-全款 + List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + dailyReportAppVo.setRow21(row21); + //订车-本月销售订单-小计 + List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + dailyReportAppVo.setRow22(row22); + //订车-待交车累计总订单 + List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + dailyReportAppVo.setRow23(row23); + //销售-本日销售-贷款 + List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + dailyReportAppVo.setRow24(row24); + //销售-本日销售-全款 + List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + dailyReportAppVo.setRow25(row25); + //销售-本日销售-小计 + List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + dailyReportAppVo.setRow26(row26); + //销售-本月销售-贷款 + List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + dailyReportAppVo.setRow27(row27); + //销售-本月销售-全款 + List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + dailyReportAppVo.setRow28(row28); + //销售-本月销售-小计 + List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + dailyReportAppVo.setRow29(row29); + //销售-全年销售-贷款 + List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + dailyReportAppVo.setRow30(row30); + //销售-全年销售-全款 + List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + dailyReportAppVo.setRow31(row31); + //销售-全年销售-小计 + List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + dailyReportAppVo.setRow32(row32); + //交付-本日交付-贷款 + List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + dailyReportAppVo.setRow33(row33); + //交付-本日交付-全款 + List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + dailyReportAppVo.setRow34(row34); + //交付-本日交付-小计 + List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + dailyReportAppVo.setRow35(row35); + //交付-本月交付-贷款 + List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + dailyReportAppVo.setRow36(row36); + //交付-本月交付-全款 + List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + dailyReportAppVo.setRow37(row37); + //交付-本月交付-小计 + List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + dailyReportAppVo.setRow38(row38); + //交付-全年交付-贷款 + List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + dailyReportAppVo.setRow39(row39); + //交付-全年交付-全款 + List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + dailyReportAppVo.setRow40(row40); + //交付-全年交付-小计 + List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + dailyReportAppVo.setRow41(row41); + //全年厂家开票数 + List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + dailyReportAppVo.setRow42(row42); + //买断-本日 + List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + dailyReportAppVo.setRow43(row43); + //买断-本月 + List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + dailyReportAppVo.setRow44(row44); + //买断-本年 + List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + dailyReportAppVo.setRow45(row45); + //欠款出库数量 + List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + dailyReportAppVo.setRow46(row46); + //欠款出库金额 + List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + dailyReportAppVo.setRow47(row47); + //金融未放款-数量 + List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + dailyReportAppVo.setRow48(row48); + //金融未放款-金额 + List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + dailyReportAppVo.setRow49(row49); + //金融未放款-数量-已信审终审 + List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + dailyReportAppVo.setRow50(row50); + //金融未放款-金额-已信审终审 + List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + dailyReportAppVo.setRow51(row51); + return rb.success().setData(dailyReportAppVo); + } + + public ResultBean list3(String date, String busOrgSid) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + ResultBean rb = ResultBean.fireFail(); + DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); + String startDate = date + " 00:00:00"; + String endDate = date + " 23:59:59"; + List rows1 = baseMapper.list3New(startDate, endDate, busOrgSid); + dailyReportAppVo.setTitle("事业部(分公司)" + date + "日报"); + rows1.removeAll(Collections.singleton(null)); + dailyReportAppVo.setRow1(rows1); + List dailyReportVoList = baseMapper.selectReport3New(startDate, endDate, busOrgSid); + List row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + //库存总计 + List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定 + List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定 + List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + dailyReportAppVo.setRow7(row7); + //库存-小计 + List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + dailyReportAppVo.setRow8(row8); + //其中买断-未定 + List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + dailyReportAppVo.setRow9(row9); + //其中买断-已定 + List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + dailyReportAppVo.setRow10(row10); + //其中买断-小计 + List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + dailyReportAppVo.setRow11(row11); + //排产-未定 + List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + dailyReportAppVo.setRow12(row12); + //排产-已定 + List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + dailyReportAppVo.setRow13(row13); + //排产-小计 + List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + dailyReportAppVo.setRow14(row14); + //订车-简易订单-本日 + List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + dailyReportAppVo.setRow15(row15); + //订车-简易订单-本月 + List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); + dailyReportAppVo.setRow16(row16); + //订车-本日销售订单-贷款 + List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + dailyReportAppVo.setRow17(row17); + //订车-本日销售订单-全款 + List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + dailyReportAppVo.setRow18(row18); + //订车-本日销售订单-小计 + List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + dailyReportAppVo.setRow19(row19); + //订车-本月销售订单-贷款 + List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + dailyReportAppVo.setRow20(row20); + //订车-本月销售订单-全款 + List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + dailyReportAppVo.setRow21(row21); + //订车-本月销售订单-小计 + List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + dailyReportAppVo.setRow22(row22); + //订车-待交车累计总订单 + List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + dailyReportAppVo.setRow23(row23); + //销售-本日销售-贷款 + List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + dailyReportAppVo.setRow24(row24); + //销售-本日销售-全款 + List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + dailyReportAppVo.setRow25(row25); + //销售-本日销售-小计 + List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + dailyReportAppVo.setRow26(row26); + //销售-本月销售-贷款 + List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + dailyReportAppVo.setRow27(row27); + //销售-本月销售-全款 + List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + dailyReportAppVo.setRow28(row28); + //销售-本月销售-小计 + List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + dailyReportAppVo.setRow29(row29); + //销售-全年销售-贷款 + List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + dailyReportAppVo.setRow30(row30); + //销售-全年销售-全款 + List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + dailyReportAppVo.setRow31(row31); + //销售-全年销售-小计 + List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + dailyReportAppVo.setRow32(row32); + //交付-本日交付-贷款 + List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + dailyReportAppVo.setRow33(row33); + //交付-本日交付-全款 + List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + dailyReportAppVo.setRow34(row34); + //交付-本日交付-小计 + List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + dailyReportAppVo.setRow35(row35); + //交付-本月交付-贷款 + List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + dailyReportAppVo.setRow36(row36); + //交付-本月交付-全款 + List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + dailyReportAppVo.setRow37(row37); + //交付-本月交付-小计 + List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + dailyReportAppVo.setRow38(row38); + //交付-全年交付-贷款 + List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + dailyReportAppVo.setRow39(row39); + //交付-全年交付-全款 + List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + dailyReportAppVo.setRow40(row40); + //交付-全年交付-小计 + List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + dailyReportAppVo.setRow41(row41); + //全年厂家开票数 + List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + dailyReportAppVo.setRow42(row42); + //买断-本日 + List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + dailyReportAppVo.setRow43(row43); + //买断-本月 + List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + dailyReportAppVo.setRow44(row44); + //买断-本年 + List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + dailyReportAppVo.setRow45(row45); + //欠款出库数量 + List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + dailyReportAppVo.setRow46(row46); + //欠款出库金额 + List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + dailyReportAppVo.setRow47(row47); + //金融未放款-数量 + List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + dailyReportAppVo.setRow48(row48); + //金融未放款-金额 + List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + dailyReportAppVo.setRow49(row49); + //金融未放款-数量-已信审终审 + List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + dailyReportAppVo.setRow50(row50); + //金融未放款-金额-已信审终审 + List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + dailyReportAppVo.setRow51(row51); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("事业部分公司接口耗时 {} ms", duration); // 输出日志 + return rb.success().setData(dailyReportAppVo); + } + + public ResultBean list4Old(String date, String useOrgSid) { + ResultBean rb = ResultBean.fireFail(); + QueryWrapper qw = new QueryWrapper<>(); + DailyReportAppVo dailyReportAppVo = new DailyReportAppVo(); + dailyReportAppVo.setTitle("分公司" + date + "日报"); + qw.like("ddr.createTime", date); + qw.eq("ddr.useOrgSid", useOrgSid); + qw.groupBy("ddr.brandSid"); + qw.groupBy("bm.fuelTypeValue"); + qw.groupBy("bm.emissionStandardValue"); + qw.orderByDesc("ddr.brandSid"); + List parameterVoList = baseMapper.selectByParameters(useOrgSid); + parameterVoList.removeAll(Collections.singleton(null)); + qw = getCommon(parameterVoList, qw); + List rows1 = baseMapper.selectByBrand2(useOrgSid, date, qw); + rows1.removeAll(Collections.singleton(null)); + dailyReportAppVo.setRow1(rows1); + List brandList = rows1.stream().map(v -> v.getLinkSid()).collect(Collectors.toList()); + brandList.removeAll(Collections.singleton(null)); + if (brandList.isEmpty()) { + return rb.success(); + } + qw = new QueryWrapper<>(); + qw.eq("dr.useOrgSid", useOrgSid); + qw.like("dr.createTime", date); + qw.in("dr.brandSid", brandList); + qw.orderByDesc("dr.brandSid"); + qw.groupBy("dr.brandSid"); + qw.groupBy("bm.fuelTypeValue"); + qw.groupBy("bm.emissionStandardValue"); + qw.orderByDesc("bm.fuelTypeValue"); + qw.orderByDesc("bm.emissionStandardValue"); + qw = getCommon(parameterVoList, qw); + List dailyReportVoList = baseMapper.selectReport4(brandList, useOrgSid, date, qw); + //燃料 + List row2 = dailyReportVoList.stream().map(v -> v.getFuelTypeValue()).collect(Collectors.toList()); + dailyReportAppVo.setRow2(row2); + //排放标准 + List row3 = dailyReportVoList.stream().map(v -> v.getEmissionStandardValue()).collect(Collectors.toList()); + dailyReportAppVo.setRow3(row3); + //存销比 + /*List row4 = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio().contains(".") ? dicimalToFraction(Double.valueOf(v.getSaleOfStockRatio())) : (v.getSaleOfStockRatio() + ":1") + ).collect(Collectors.toList()); + //合计 + BigDecimal row4All = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + String row4alll = row4All.toString().contains(".") ? dicimalToFraction(Double.valueOf(row4All.toString())) : (row4All.toString() + ":1"); + row4.add(row4alll); + dailyReportAppVo.setRow4(row4);*/ + /* List row4 = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ":1" + ).collect(Collectors.toList()); + BigDecimal row4All = dailyReportVoList.stream().map(v -> + v.getSaleOfStockRatio() + ).collect(Collectors.toList()).stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + String row4alll = row4All.toString() + ":1"; + row4.add(row4alll); + dailyReportAppVo.setRow4(row4);*/ + List row4 = dailyReportVoList.stream().map(v -> { + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + return saleOfStockRatio; + }).collect(Collectors.toList()); + int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + dailyReportAppVo.setRow4(row4); + + //库存总计 + List row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + dailyReportAppVo.setRow5(row5); + //库存未定 + List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + dailyReportAppVo.setRow6(row6); + //库存-已定 + List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + dailyReportAppVo.setRow7(row7); + //库存-小计 + List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + dailyReportAppVo.setRow8(row8); + //其中买断-未定 + List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + dailyReportAppVo.setRow9(row9); + //其中买断-已定 + List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + dailyReportAppVo.setRow10(row10); + //其中买断-小计 + List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + dailyReportAppVo.setRow11(row11); + //排产-未定 + List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + dailyReportAppVo.setRow12(row12); + //排产-已定 + List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + dailyReportAppVo.setRow13(row13); + //排产-小计 + List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + dailyReportAppVo.setRow14(row14); + //订车-简易订单-本日 + List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + dailyReportAppVo.setRow15(row15); + //订车-简易订单-本月 + List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); + dailyReportAppVo.setRow16(row16); + //订车-本日销售订单-贷款 + List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + dailyReportAppVo.setRow17(row17); + //订车-本日销售订单-全款 + List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + dailyReportAppVo.setRow18(row18); + //订车-本日销售订单-小计 + List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + dailyReportAppVo.setRow19(row19); + //订车-本月销售订单-贷款 + List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + dailyReportAppVo.setRow20(row20); + //订车-本月销售订单-全款 + List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + dailyReportAppVo.setRow21(row21); + //订车-本月销售订单-小计 + List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + dailyReportAppVo.setRow22(row22); + //订车-待交车累计总订单 + List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + dailyReportAppVo.setRow23(row23); + //销售-本日销售-贷款 + List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + dailyReportAppVo.setRow24(row24); + //销售-本日销售-全款 + List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + dailyReportAppVo.setRow25(row25); + //销售-本日销售-小计 + List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + dailyReportAppVo.setRow26(row26); + //销售-本月销售-贷款 + List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + dailyReportAppVo.setRow27(row27); + //销售-本月销售-全款 + List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + dailyReportAppVo.setRow28(row28); + //销售-本月销售-小计 + List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + dailyReportAppVo.setRow29(row29); + //销售-全年销售-贷款 + List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + dailyReportAppVo.setRow30(row30); + //销售-全年销售-全款 + List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + dailyReportAppVo.setRow31(row31); + //销售-全年销售-小计 + List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + dailyReportAppVo.setRow32(row32); + //交付-本日交付-贷款 + List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + dailyReportAppVo.setRow33(row33); + //交付-本日交付-全款 + List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + dailyReportAppVo.setRow34(row34); + //交付-本日交付-小计 + List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + dailyReportAppVo.setRow35(row35); + //交付-本月交付-贷款 + List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + dailyReportAppVo.setRow36(row36); + //交付-本月交付-全款 + List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + dailyReportAppVo.setRow37(row37); + //交付-本月交付-小计 + List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + dailyReportAppVo.setRow38(row38); + //交付-全年交付-贷款 + List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + dailyReportAppVo.setRow39(row39); + //交付-全年交付-全款 + List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + dailyReportAppVo.setRow40(row40); + //交付-全年交付-小计 + List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + dailyReportAppVo.setRow41(row41); + //全年厂家开票数 + List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + dailyReportAppVo.setRow42(row42); + //买断-本日 + List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + dailyReportAppVo.setRow43(row43); + //买断-本月 + List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + dailyReportAppVo.setRow44(row44); + //买断-本年 + List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + dailyReportAppVo.setRow45(row45); + //欠款出库数量 + List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + dailyReportAppVo.setRow46(row46); + //欠款出库金额 + List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + dailyReportAppVo.setRow47(row47); + //金融未放款-数量 + List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + dailyReportAppVo.setRow48(row48); + //金融未放款-金额 + List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + dailyReportAppVo.setRow49(row49); + //金融未放款-数量-已信审终审 + List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + dailyReportAppVo.setRow50(row50); + //金融未放款-金额-已信审终审 + List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + dailyReportAppVo.setRow51(row51); + List dynamicRows = new ArrayList<>(); + + + /*List parameterVoList = baseMapper.selectByParameters(useOrgSid); + parameterVoList.removeAll(Collections.singleton(null));*/ + int totalRowspan = 3; + if (!parameterVoList.isEmpty()) { + for (int i = 0; i < parameterVoList.size(); i++) { + DailyParameterVo dailyParameterVo = parameterVoList.get(i); + String tableName = Arrays.asList(dailyParameterVo.getTableNameKey().split("\\.")).get(1); + ParameterVo parameterVo = new ParameterVo(); + parameterVo.setName(dailyParameterVo.getColText()); + + List columnNames = dailyReportVoList.stream().map(v -> { + String columnName = ""; + try { + Field field = v.getClass().getDeclaredField(dailyParameterVo.getColName()); + field.setAccessible(true); + columnName = (String) field.get(v); + } catch (NoSuchFieldException | IllegalAccessException e) { + e.printStackTrace(); + } + if (StringUtils.isBlank(columnName)) { + return "-"; + } else { + return columnName; + } + }).collect(Collectors.toList()); + parameterVo.setRow(columnNames); + dynamicRows.add(parameterVo); + } + dailyReportAppVo.setDynamicRows(dynamicRows); + if (!dynamicRows.isEmpty()) { + for (int i = 0; i < dynamicRows.size(); i++) { + if (i > 6) { + break; + } else { + ParameterVo parameterVo = dynamicRows.get(i); + switch (i) { + case 0: + if (parameterVo != null) { + dailyReportAppVo.setRow101(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 1: + if (parameterVo != null) { + dailyReportAppVo.setRow102(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 2: + if (parameterVo != null) { + dailyReportAppVo.setRow103(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 3: + if (parameterVo != null) { + dailyReportAppVo.setRow104(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 4: + if (parameterVo != null) { + dailyReportAppVo.setRow105(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 5: + if (parameterVo != null) { + dailyReportAppVo.setRow106(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + case 6: + if (parameterVo != null) { + dailyReportAppVo.setRow107(parameterVo); + totalRowspan = totalRowspan + 1; + } + break; + default: + break; + } + } + } + } + } + + dailyReportAppVo.setTotalRowspan(totalRowspan); + return rb.success().setData(dailyReportAppVo); + } + + public ResultBean list4New(String date, String useOrgSid) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + ResultBean rb = ResultBean.fireFail(); + QueryWrapper qw = new QueryWrapper<>(); + DailyReportAppBrandVo dailyReportAppVo = new DailyReportAppBrandVo(); + dailyReportAppVo.setTitle("分公司" + date + "日报"); + String startDate = date + " 00:00:00"; + String endDate = date + " 23:59:59"; + qw.between("ddr.createTime", startDate,endDate); + qw.eq("ddr.useOrgSid", useOrgSid); + qw.groupBy("ddr.brandSid"); + qw.groupBy("bm.fuelTypeValue"); + qw.groupBy("bm.emissionStandardValue"); + qw.orderByDesc("ddr.brandSid"); + List parameterVoList = baseMapper.selectByParameters(useOrgSid); + parameterVoList.removeAll(Collections.singleton(null)); + qw = getCommon(parameterVoList, qw); + List rows1 = baseMapper.selectByBrand2New(useOrgSid, startDate,endDate, qw); + rows1.removeAll(Collections.singleton(null)); + if (!rows1.isEmpty()) { + rows1.forEach(v -> { + v.setColspan(Integer.parseInt(v.getColspan()) > 0 ? String.valueOf(Integer.parseInt(v.getColspan()) + 1) : v.getColspan()); + }); + } + dailyReportAppVo.setRow1(rows1); + List brandList = rows1.stream().map(v -> v.getLinkSid()).collect(Collectors.toList()); + brandList.removeAll(Collections.singleton(null)); + if (brandList.isEmpty()) { + return rb.success(); + } + qw = new QueryWrapper<>(); + qw.eq("dr.useOrgSid", useOrgSid); + qw.between("dr.createTime", startDate,endDate); + qw.in("dr.brandSid", brandList); + qw.orderByDesc("dr.brandSid"); + qw.groupBy("dr.brandSid"); + qw.groupBy("bm.fuelTypeValue"); + qw.groupBy("bm.emissionStandardValue"); + qw.orderByDesc("bm.fuelTypeValue"); + qw.orderByDesc("bm.emissionStandardValue"); + qw = getCommon(parameterVoList, qw); + List dailyReportVoList = baseMapper.selectReport4New(qw); + //排放标准 + List row3 = dailyReportVoList.stream().map(v -> v.getEmissionStandardValue()).collect(Collectors.toList()); + dailyReportAppVo.setRow3(row3); + //按品牌sid分组 + Map> groupedByBrandSid = dailyReportVoList.stream() + .collect(Collectors.groupingBy(DailyReportVo::getBrandSid, LinkedHashMap::new, Collectors.toList())); + //遍历分组并组装每组的数据 + List row2 = new ArrayList<>(); + List row4 = new ArrayList<>(); + List row5 = new ArrayList<>(); + List row6 = new ArrayList<>(); + List row7 = new ArrayList<>(); + List row8 = new ArrayList<>(); + List row9 = new ArrayList<>(); + List row10 = new ArrayList<>(); + List row11 = new ArrayList<>(); + List row12 = new ArrayList<>(); + List row13 = new ArrayList<>(); + List row14 = new ArrayList<>(); + List row15 = new ArrayList<>(); + List row16 = new ArrayList<>(); + List row17 = new ArrayList<>(); + List row18 = new ArrayList<>(); + List row19 = new ArrayList<>(); + List row20 = new ArrayList<>(); + List row21 = new ArrayList<>(); + List row22 = new ArrayList<>(); + List row23 = new ArrayList<>(); + List row24 = new ArrayList<>(); + List row25 = new ArrayList<>(); + List row26 = new ArrayList<>(); + List row27 = new ArrayList<>(); + List row28 = new ArrayList<>(); + List row29 = new ArrayList<>(); + List row30 = new ArrayList<>(); + List row31 = new ArrayList<>(); + List row32 = new ArrayList<>(); + List row33 = new ArrayList<>(); + List row34 = new ArrayList<>(); + List row35 = new ArrayList<>(); + List row36 = new ArrayList<>(); + List row37 = new ArrayList<>(); + List row38 = new ArrayList<>(); + List row39 = new ArrayList<>(); + List row40 = new ArrayList<>(); + List row41 = new ArrayList<>(); + List row42 = new ArrayList<>(); + List row43 = new ArrayList<>(); + List row44 = new ArrayList<>(); + List row45 = new ArrayList<>(); + List row46 = new ArrayList<>(); + List row47 = new ArrayList<>(); + List row48 = new ArrayList<>(); + List row49 = new ArrayList<>(); + List row50 = new ArrayList<>(); + List row51 = new ArrayList<>(); + groupedByBrandSid.forEach((brandSid, sameBrandSidList) -> { + for (int i = 0; i <= sameBrandSidList.size(); i++) { + if (i == sameBrandSidList.size()) { + FuelTypeVo fuelTypeVo = new FuelTypeVo(); + fuelTypeVo.setName("小计"); + if (parameterVoList.isEmpty()) { + fuelTypeVo.setRowspan(String.valueOf(2)); + } else { + if (parameterVoList.size() > 7) { + fuelTypeVo.setRowspan(String.valueOf(9)); + } else { + fuelTypeVo.setRowspan(String.valueOf(2 + parameterVoList.size())); + } + } + row2.add(fuelTypeVo); + //小计 + int saleAllToThreeAll = sameBrandSidList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); + int stock_totalAll = sameBrandSidList.stream().mapToInt(v -> v.getStock_total()).sum(); + String saleOfStockRatioString = ""; + if (saleAllToThreeAll == 0) { + saleOfStockRatioString = stock_totalAll + ":1"; + } else { + saleOfStockRatioString = new BigDecimal(stock_totalAll).divide((new BigDecimal(saleAllToThreeAll).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + row4.add(saleOfStockRatioString); + List row5i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row5.add(row5All.toString()); + List row6i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row6.add(row6All.toString()); + List row7i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row7.add(row7All.toString()); + List row8i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row8.add(row8All.toString()); + List row9i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row9.add(row9All.toString()); + List row10i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row10.add(row10All.toString()); + List row11i = sameBrandSidList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row11.add(row11All.toString()); + List row12i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row12.add(row12All.toString()); + List row13i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row13.add(row13All.toString()); + List row14i = sameBrandSidList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row14.add(row14All.toString()); + List row15i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row15.add(row15All.toString()); + List row16i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row16.add(row16All.toString()); + + //订车-本日销售订单-贷款 + List row17i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row17.add(row17All.toString()); + //订车-本日销售订单-全款 + List row18i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row18.add(row18All.toString()); + //订车-本日销售订单-小计 + List row19i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row19.add(row19All.toString()); + //订车-本月销售订单-贷款 + List row20i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row20.add(row20All.toString()); + //订车-本月销售订单-全款 + List row21i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row21.add(row21All.toString()); + //订车-本月销售订单-小计 + List row22i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row22.add(row22All.toString()); + //订车-待交车累计总订单 + List row23i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row23.add(row23All.toString()); + //销售-本日销售-贷款 + List row24i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row24.add(row24All.toString()); + //销售-本日销售-全款 + List row25i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row25.add(row25All.toString()); + //销售-本日销售-小计 + List row26i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row26.add(row26All.toString()); + //销售-本月销售-贷款 + List row27i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row27.add(row27All.toString()); + //销售-本月销售-全款 + List row28i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row28.add(row28All.toString()); + //销售-本月销售-小计 + List row29i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row29.add(row29All.toString()); + //销售-全年销售-贷款 + List row30i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row30.add(row30All.toString()); + //销售-全年销售-全款 + List row31i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row31.add(row31All.toString()); + //销售-全年销售-小计 + List row32i = sameBrandSidList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row32.add(row32All.toString()); + //交付-本日交付-贷款 + List row33i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row33.add(row33All.toString()); + //交付-本日交付-全款 + List row34i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row34.add(row34All.toString()); + //交付-本日交付-小计 + List row35i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row35.add(row35All.toString()); + //交付-本月交付-贷款 + List row36i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row36.add(row36All.toString()); + //交付-本月交付-全款 + List row37i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row37.add(row37All.toString()); + //交付-本月交付-小计 + List row38i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row38.add(row38All.toString()); + //交付-全年交付-贷款 + List row39i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row39.add(row39All.toString()); + //交付-全年交付-全款 + List row40i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row40.add(row40All.toString()); + //交付-全年交付-小计 + List row41i = sameBrandSidList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row41.add(row41All.toString()); + //全年厂家开票数 + List row42i = sameBrandSidList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row42.add(row42All.toString()); + //买断-本日 + List row43i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row43.add(row43All.toString()); + //买断-本月 + List row44i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row44.add(row44All.toString()); + //买断-本年 + List row45i = sameBrandSidList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row45.add(row45All.toString()); + //欠款出库数量 + List row46i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row46.add(row46All.toString()); + //欠款出库金额 + List row47i = sameBrandSidList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row47.add(row47All.toString()); + //金融未放款-数量 + List row48i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row48.add(row48All.toString()); + //金融未放款-金额 + List row49i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row49.add(row49All.toString()); + + //金融未放款-数量-已信审终审 + List row50i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row50.add(row50All.toString()); + //金融未放款-金额-已信审终审 + List row51i = sameBrandSidList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51i.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + row51.add(row51All.toString()); + } else { + FuelTypeVo fuelTypeVo = new FuelTypeVo(); + DailyReportVo v = sameBrandSidList.get(i); + String saleOfStockRatio = ""; + String saleAllToThree = String.valueOf(v.getSaleAllToThree()); + String stock_total = String.valueOf(v.getStock_total()); + if (StringUtils.isBlank(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + if ("0".equals(saleAllToThree)) { + saleOfStockRatio = stock_total + ":1"; + } else { + saleOfStockRatio = new BigDecimal(stock_total).divide((new BigDecimal(saleAllToThree).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + fuelTypeVo.setName(v.getFuelTypeValue()); + fuelTypeVo.setRowspan(String.valueOf(1)); + row2.add(fuelTypeVo); + row4.add(saleOfStockRatio); + row5.add(String.valueOf(v.getStock_total())); + row6.add(String.valueOf(v.getStock_unreserve())); + row7.add(String.valueOf(v.getStock_reserve())); + row8.add(String.valueOf(v.getStock_subtotal())); + row9.add(String.valueOf(v.getStock_buyout_unreserve())); + row10.add(String.valueOf(v.getStock_buyout_reserve())); + row11.add(String.valueOf(v.getStock_buyout_subtotal())); + row12.add(String.valueOf(v.getPcOrder_unreserve())); + row13.add(String.valueOf(v.getPcOrder_reserve())); + row14.add(String.valueOf(v.getPcOrder_subtotal())); + row15.add(String.valueOf(v.getSimpleOrder_day())); + row16.add(String.valueOf(v.getSimpleOrder_month())); + row17.add(String.valueOf(v.getSaleOrder_loan_day())); + row18.add(String.valueOf(v.getSaleOrder_full_day())); + row19.add(String.valueOf(v.getSaleOrder_subtotal_day())); + row20.add(String.valueOf(v.getSaleOrder_loan_month())); + row21.add(String.valueOf(v.getSaleOrder_full_month())); + row22.add(String.valueOf(v.getSaleOrder_subtotal_month())); + row23.add(String.valueOf(v.getSaleOrder_waitVeh_total())); + row24.add(String.valueOf(v.getSale_loan_day())); + row25.add(String.valueOf(v.getSale_full_day())); + row26.add(String.valueOf(v.getSale_subtotal_day())); + row27.add(String.valueOf(v.getSale_loan_month())); + row28.add(String.valueOf(v.getSale_full_month())); + row29.add(String.valueOf(v.getSale_subtotal_month())); + row30.add(String.valueOf(v.getSale_loan_year())); + row31.add(String.valueOf(v.getSale_full_year())); + row32.add(String.valueOf(v.getSale_subtotal_year())); + row33.add(String.valueOf(v.getDeliver_loan_day())); + row34.add(String.valueOf(v.getDeliver_full_day())); + row35.add(String.valueOf(v.getDeliver_subtotal_day())); + row36.add(String.valueOf(v.getDeliver_loan_month())); + row37.add(String.valueOf(v.getDeliver_full_month())); + row38.add(String.valueOf(v.getDeliver_subtotal_month())); + row39.add(String.valueOf(v.getDeliver_loan_year())); + row40.add(String.valueOf(v.getDeliver_full_year())); + row41.add(String.valueOf(v.getDeliver_subtotal_year())); + row42.add(String.valueOf(v.getManufacturer_invoicing_year())); + row43.add(String.valueOf(v.getBuyout_day())); + row44.add(String.valueOf(v.getBuyout_month())); + row45.add(String.valueOf(v.getBuyout_year())); + row46.add(String.valueOf(v.getArrears_carry_veh_count())); + row47.add(String.valueOf(v.getArrears_carry_veh_amount())); + row48.add(String.valueOf(v.getLoan_not_count())); + row49.add(String.valueOf(v.getLoan_not_amount())); + row50.add(String.valueOf(v.getLoan_not_counts())); + row51.add(String.valueOf(v.getLoan_not_amounts())); + } + + } + + }); + dailyReportAppVo.setRow2(row2); int saleAllToThreeAll = dailyReportVoList.stream().mapToInt(v -> v.getSaleAllToThree()).sum(); int stock_totalAll = dailyReportVoList.stream().mapToInt(v -> v.getStock_total()).sum(); String saleOfStockRatioString = ""; @@ -2068,246 +3959,244 @@ public class DailyReportService extends MybatisBaseService row5 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); - BigDecimal row5All = row5.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //库存总计-合计 + List row5ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_total())).collect(Collectors.toList()); + BigDecimal row5All = row5ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row5.add(row5All.toString()); dailyReportAppVo.setRow5(row5); - //库存未定 - List row6 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); - BigDecimal row6All = row6.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //库存未定-合计 + List row6ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_unreserve())).collect(Collectors.toList()); + BigDecimal row6All = row6ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row6.add(row6All.toString()); dailyReportAppVo.setRow6(row6); - //库存-已定 - List row7 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); - BigDecimal row7All = row7.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //库存-已定-合计 + List row7ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_reserve())).collect(Collectors.toList()); + BigDecimal row7All = row7ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row7.add(row7All.toString()); dailyReportAppVo.setRow7(row7); - //库存-小计 - List row8 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); - BigDecimal row8All = row8.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + //库存-小计-合计 + List row8ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_subtotal())).collect(Collectors.toList()); + BigDecimal row8All = row8ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row8.add(row8All.toString()); dailyReportAppVo.setRow8(row8); //其中买断-未定 - List row9 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); - BigDecimal row9All = row9.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row9ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_unreserve())).collect(Collectors.toList()); + BigDecimal row9All = row9ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row9.add(row9All.toString()); dailyReportAppVo.setRow9(row9); //其中买断-已定 - List row10 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); - BigDecimal row10All = row10.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row10ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_reserve())).collect(Collectors.toList()); + BigDecimal row10All = row10ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row10.add(row10All.toString()); dailyReportAppVo.setRow10(row10); //其中买断-小计 - List row11 = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); - BigDecimal row11All = row11.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row11ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getStock_buyout_subtotal())).collect(Collectors.toList()); + BigDecimal row11All = row11ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row11.add(row11All.toString()); dailyReportAppVo.setRow11(row11); //排产-未定 - List row12 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); - BigDecimal row12All = row12.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row12ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_unreserve())).collect(Collectors.toList()); + BigDecimal row12All = row12ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row12.add(row12All.toString()); dailyReportAppVo.setRow12(row12); //排产-已定 - List row13 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); - BigDecimal row13All = row13.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row13ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_reserve())).collect(Collectors.toList()); + BigDecimal row13All = row13ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row13.add(row13All.toString()); dailyReportAppVo.setRow13(row13); //排产-小计 - List row14 = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); - BigDecimal row14All = row14.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row14ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getPcOrder_subtotal())).collect(Collectors.toList()); + BigDecimal row14All = row14ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row14.add(row14All.toString()); dailyReportAppVo.setRow14(row14); //订车-简易订单-本日 - List row15 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); - BigDecimal row15All = row15.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row15ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_day())).collect(Collectors.toList()); + BigDecimal row15All = row15ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row15.add(row15All.toString()); dailyReportAppVo.setRow15(row15); //订车-简易订单-本月 - List row16 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); - BigDecimal row16All = row16.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row16ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSimpleOrder_month())).collect(Collectors.toList()); + BigDecimal row16All = row16ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row16.add(row16All.toString()); dailyReportAppVo.setRow16(row16); //订车-本日销售订单-贷款 - List row17 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); - BigDecimal row17All = row17.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row17ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_day())).collect(Collectors.toList()); + BigDecimal row17All = row17ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row17.add(row17All.toString()); dailyReportAppVo.setRow17(row17); //订车-本日销售订单-全款 - List row18 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); - BigDecimal row18All = row18.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row18ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_day())).collect(Collectors.toList()); + BigDecimal row18All = row18ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row18.add(row18All.toString()); dailyReportAppVo.setRow18(row18); //订车-本日销售订单-小计 - List row19 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); - BigDecimal row19All = row19.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row19ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_day())).collect(Collectors.toList()); + BigDecimal row19All = row19ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row19.add(row19All.toString()); dailyReportAppVo.setRow19(row19); //订车-本月销售订单-贷款 - List row20 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); - BigDecimal row20All = row20.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row20ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_loan_month())).collect(Collectors.toList()); + BigDecimal row20All = row20ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row20.add(row20All.toString()); dailyReportAppVo.setRow20(row20); //订车-本月销售订单-全款 - List row21 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); - BigDecimal row21All = row21.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row21ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_full_month())).collect(Collectors.toList()); + BigDecimal row21All = row21ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row21.add(row21All.toString()); dailyReportAppVo.setRow21(row21); //订车-本月销售订单-小计 - List row22 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); - BigDecimal row22All = row22.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row22ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_subtotal_month())).collect(Collectors.toList()); + BigDecimal row22All = row22ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row22.add(row22All.toString()); dailyReportAppVo.setRow22(row22); //订车-待交车累计总订单 - List row23 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); - BigDecimal row23All = row23.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row23ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSaleOrder_waitVeh_total())).collect(Collectors.toList()); + BigDecimal row23All = row23ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row23.add(row23All.toString()); dailyReportAppVo.setRow23(row23); //销售-本日销售-贷款 - List row24 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); - BigDecimal row24All = row24.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row24ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_day())).collect(Collectors.toList()); + BigDecimal row24All = row24ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row24.add(row24All.toString()); dailyReportAppVo.setRow24(row24); //销售-本日销售-全款 - List row25 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); - BigDecimal row25All = row25.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row25ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_day())).collect(Collectors.toList()); + BigDecimal row25All = row25ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row25.add(row25All.toString()); dailyReportAppVo.setRow25(row25); //销售-本日销售-小计 - List row26 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); - BigDecimal row26All = row26.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row26ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_day())).collect(Collectors.toList()); + BigDecimal row26All = row26ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row26.add(row26All.toString()); dailyReportAppVo.setRow26(row26); //销售-本月销售-贷款 - List row27 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); - BigDecimal row27All = row27.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row27ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_month())).collect(Collectors.toList()); + BigDecimal row27All = row27ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row27.add(row27All.toString()); dailyReportAppVo.setRow27(row27); //销售-本月销售-全款 - List row28 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); - BigDecimal row28All = row28.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row28ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_month())).collect(Collectors.toList()); + BigDecimal row28All = row28ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row28.add(row28All.toString()); dailyReportAppVo.setRow28(row28); //销售-本月销售-小计 - List row29 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); - BigDecimal row29All = row29.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row29ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_month())).collect(Collectors.toList()); + BigDecimal row29All = row29ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row29.add(row29All.toString()); dailyReportAppVo.setRow29(row29); //销售-全年销售-贷款 - List row30 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); - BigDecimal row30All = row30.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row30ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_loan_year())).collect(Collectors.toList()); + BigDecimal row30All = row30ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row30.add(row30All.toString()); dailyReportAppVo.setRow30(row30); //销售-全年销售-全款 - List row31 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); - BigDecimal row31All = row31.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row31ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_full_year())).collect(Collectors.toList()); + BigDecimal row31All = row31ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row31.add(row31All.toString()); dailyReportAppVo.setRow31(row31); //销售-全年销售-小计 - List row32 = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); - BigDecimal row32All = row32.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row32ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getSale_subtotal_year())).collect(Collectors.toList()); + BigDecimal row32All = row32ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row32.add(row32All.toString()); dailyReportAppVo.setRow32(row32); //交付-本日交付-贷款 - List row33 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); - BigDecimal row33All = row33.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row33ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_day())).collect(Collectors.toList()); + BigDecimal row33All = row33ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row33.add(row33All.toString()); dailyReportAppVo.setRow33(row33); //交付-本日交付-全款 - List row34 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); - BigDecimal row34All = row34.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row34ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_day())).collect(Collectors.toList()); + BigDecimal row34All = row34ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row34.add(row34All.toString()); dailyReportAppVo.setRow34(row34); //交付-本日交付-小计 - List row35 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); - BigDecimal row35All = row35.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row35ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_day())).collect(Collectors.toList()); + BigDecimal row35All = row35ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row35.add(row35All.toString()); dailyReportAppVo.setRow35(row35); //交付-本月交付-贷款 - List row36 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); - BigDecimal row36All = row36.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row36ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_month())).collect(Collectors.toList()); + BigDecimal row36All = row36ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row36.add(row36All.toString()); dailyReportAppVo.setRow36(row36); //交付-本月交付-全款 - List row37 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); - BigDecimal row37All = row37.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row37ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_month())).collect(Collectors.toList()); + BigDecimal row37All = row37ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row37.add(row37All.toString()); dailyReportAppVo.setRow37(row37); //交付-本月交付-小计 - List row38 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); - BigDecimal row38All = row38.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row38ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_month())).collect(Collectors.toList()); + BigDecimal row38All = row38ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row38.add(row38All.toString()); dailyReportAppVo.setRow38(row38); //交付-全年交付-贷款 - List row39 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); - BigDecimal row39All = row39.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row39ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_loan_year())).collect(Collectors.toList()); + BigDecimal row39All = row39ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row39.add(row39All.toString()); dailyReportAppVo.setRow39(row39); //交付-全年交付-全款 - List row40 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); - BigDecimal row40All = row40.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row40ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_full_year())).collect(Collectors.toList()); + BigDecimal row40All = row40ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row40.add(row40All.toString()); dailyReportAppVo.setRow40(row40); //交付-全年交付-小计 - List row41 = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); - BigDecimal row41All = row41.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row41ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getDeliver_subtotal_year())).collect(Collectors.toList()); + BigDecimal row41All = row41ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row41.add(row41All.toString()); dailyReportAppVo.setRow41(row41); //全年厂家开票数 - List row42 = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); - BigDecimal row42All = row42.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row42ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getManufacturer_invoicing_year())).collect(Collectors.toList()); + BigDecimal row42All = row42ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row42.add(row42All.toString()); dailyReportAppVo.setRow42(row42); //买断-本日 - List row43 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); - BigDecimal row43All = row43.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row43ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_day())).collect(Collectors.toList()); + BigDecimal row43All = row43ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row43.add(row43All.toString()); dailyReportAppVo.setRow43(row43); //买断-本月 - List row44 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); - BigDecimal row44All = row44.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row44ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_month())).collect(Collectors.toList()); + BigDecimal row44All = row44ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row44.add(row44All.toString()); dailyReportAppVo.setRow44(row44); //买断-本年 - List row45 = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); - BigDecimal row45All = row45.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row45ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getBuyout_year())).collect(Collectors.toList()); + BigDecimal row45All = row45ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row45.add(row45All.toString()); dailyReportAppVo.setRow45(row45); //欠款出库数量 - List row46 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); - BigDecimal row46All = row46.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row46ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_count())).collect(Collectors.toList()); + BigDecimal row46All = row46ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row46.add(row46All.toString()); dailyReportAppVo.setRow46(row46); //欠款出库金额 - List row47 = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); - BigDecimal row47All = row47.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row47ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getArrears_carry_veh_amount())).collect(Collectors.toList()); + BigDecimal row47All = row47ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row47.add(row47All.toString()); dailyReportAppVo.setRow47(row47); //金融未放款-数量 - List row48 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); - BigDecimal row48All = row48.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row48ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_count())).collect(Collectors.toList()); + BigDecimal row48All = row48ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row48.add(row48All.toString()); dailyReportAppVo.setRow48(row48); //金融未放款-金额 - List row49 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); - BigDecimal row49All = row49.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row49ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amount())).collect(Collectors.toList()); + BigDecimal row49All = row49ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row49.add(row49All.toString()); dailyReportAppVo.setRow49(row49); + //金融未放款-数量-已信审终审 - List row50 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); - BigDecimal row50All = row50.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row50ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_counts())).collect(Collectors.toList()); + BigDecimal row50All = row50ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row50.add(row50All.toString()); dailyReportAppVo.setRow50(row50); //金融未放款-金额-已信审终审 - List row51 = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); - BigDecimal row51All = row51.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); + List row51ii = dailyReportVoList.stream().map(v -> String.valueOf(v.getLoan_not_amounts())).collect(Collectors.toList()); + BigDecimal row51All = row51ii.stream().map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add); row51.add(row51All.toString()); dailyReportAppVo.setRow51(row51); List dynamicRows = new ArrayList<>(); - - /*List parameterVoList = baseMapper.selectByParameters(useOrgSid); - parameterVoList.removeAll(Collections.singleton(null));*/ int totalRowspan = 3; if (!parameterVoList.isEmpty()) { for (int i = 0; i < parameterVoList.size(); i++) { @@ -2393,10 +4282,13 @@ public class DailyReportService extends MybatisBaseService list4New(String date, String useOrgSid) { + public ResultBean list4New_old(String date, String useOrgSid) { ResultBean rb = ResultBean.fireFail(); QueryWrapper qw = new QueryWrapper<>(); DailyReportAppBrandVo dailyReportAppVo = new DailyReportAppBrandVo(); @@ -2499,13 +4391,13 @@ public class DailyReportService extends MybatisBaseService7){ + } else { + if (parameterVoList.size() > 7) { fuelTypeVo.setRowspan(String.valueOf(9)); - }else{ - fuelTypeVo.setRowspan(String.valueOf(2+parameterVoList.size())); + } else { + fuelTypeVo.setRowspan(String.valueOf(2 + parameterVoList.size())); } } row2.add(fuelTypeVo); @@ -3107,6 +4999,7 @@ public class DailyReportService extends MybatisBaseService getCommon(List parameterVoList, QueryWrapper qw) { if (!parameterVoList.isEmpty()) { for (int i = 0; i < parameterVoList.size(); i++) { @@ -3228,7 +5121,46 @@ public class DailyReportService extends MybatisBaseService pageList2_old(PagerQuery pagerQuery) { + DailyReportAppPagerQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + //查询事业部 + if (StringUtils.isNotBlank(query.getOrgPath())) { + List stringList = Arrays.asList(query.getOrgPath().split("/")); + String busOrgSid = query.getOrgPath().substring(37, 73); + qw.eq("busOrgSid", busOrgSid); + } + } + IPage page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.pageList2(page, qw); + List recordList = pagging.getRecords(); + recordList.removeAll(Collections.singleton(null)); + if (!recordList.isEmpty()) { + for (int i = 0; i < recordList.size(); i++) { + DailyReportListVo dailyReportListVo = recordList.get(i); + String ratio = ""; + if (StringUtils.isBlank(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + if ("0".equals(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + ratio = new BigDecimal(dailyReportListVo.getStock_total()).divide((new BigDecimal(dailyReportListVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + dailyReportListVo.setSaleOfStockRatio(ratio); + } + } + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + */ public PagerVo pageList2(PagerQuery pagerQuery) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + PagerVo page = new PagerVo<>(); + long pageNum = pagerQuery.getCurrent(); + long pageSize = pagerQuery.getSize(); DailyReportAppPagerQuery query = pagerQuery.getParams(); QueryWrapper qw = new QueryWrapper<>(); if (query != null) { @@ -3239,9 +5171,10 @@ public class DailyReportService extends MybatisBaseService page = PagerUtil.queryToPage(pagerQuery); - IPage pagging = baseMapper.pageList2(page, qw); - List recordList = pagging.getRecords(); + Map map = new HashMap<>(); + map.put("page", (pageNum - 1) * pageSize); + map.put("size", pageSize); + List recordList = baseMapper.selectRecordList2(map, qw); recordList.removeAll(Collections.singleton(null)); if (!recordList.isEmpty()) { for (int i = 0; i < recordList.size(); i++) { @@ -3259,8 +5192,17 @@ public class DailyReportService extends MybatisBaseService p = PagerUtil.pageToVo(pagging, null); - return p; + int count = baseMapper.selectRecordCount(qw); + page.setRecords(recordList); + page.setCurrent(pageNum); + page.setSize(pageSize); + page.setTotal(count); + long pages = (count + pageSize - 1) / pageSize; + page.setPages(pages); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("事业部日报列表接口耗时 {} ms", duration); // 输出日志 + return page; } public ResultBean getReport2(String date, String orgPath, String userSid) { @@ -3294,7 +5236,7 @@ public class DailyReportService extends MybatisBaseService pageList3(PagerQuery pagerQuery) { + public PagerVo pageList3_old(PagerQuery pagerQuery) { DailyReportAppPagerQuery query = pagerQuery.getParams(); QueryWrapper qw = new QueryWrapper<>(); if (query != null) { @@ -3329,6 +5271,55 @@ public class DailyReportService extends MybatisBaseService pageList3(PagerQuery pagerQuery) { + long startTime = System.currentTimeMillis(); // 记录开始时间 + PagerVo page = new PagerVo<>(); + long pageNum = pagerQuery.getCurrent(); + long pageSize = pagerQuery.getSize(); + DailyReportAppPagerQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + //查询分公司 + if (StringUtils.isNotBlank(query.getOrgPath())) { + List stringList = Arrays.asList(query.getOrgPath().split("/")); + String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(query.getOrgPath()).getData(); + qw.eq("useOrgSid", useOrgSid); + } + } + Map map = new HashMap<>(); + map.put("page", (pageNum - 1) * pageSize); + map.put("size", pageSize); + List recordList = baseMapper.selectRecordList2(map, qw); + recordList.removeAll(Collections.singleton(null)); + if (!recordList.isEmpty()) { + for (int i = 0; i < recordList.size(); i++) { + DailyReportListVo dailyReportListVo = recordList.get(i); + String ratio = ""; + if (StringUtils.isBlank(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + if ("0".equals(dailyReportListVo.getSaleAllToThree())) { + ratio = dailyReportListVo.getStock_subtotal() + ":1"; + } else { + ratio = new BigDecimal(dailyReportListVo.getStock_total()).divide((new BigDecimal(dailyReportListVo.getSaleAllToThree()).divide(new BigDecimal(3), 4, BigDecimal.ROUND_HALF_UP)), 0, BigDecimal.ROUND_HALF_UP).toString() + ":1"; + } + } + dailyReportListVo.setSaleOfStockRatio(ratio); + } + } + int count = baseMapper.selectRecordCount(qw); + page.setRecords(recordList); + page.setCurrent(pageNum); + page.setSize(pageSize); + page.setTotal(count); + long pages = (count + pageSize - 1) / pageSize; + page.setPages(pages); + long endTime = System.currentTimeMillis(); // 记录结束时间 + long duration = endTime - startTime; // 计算耗时 + log.info("分公司日报列表接口耗时 {} ms", duration); // 输出日志 + return page; + } + public ResultBean getReport3(String date, String orgPath, String userSid) { ResultBean rb = ResultBean.fireFail(); QueryWrapper qw = new QueryWrapper<>(); From 524228b28756df0f06a63b05c3b086b6ed82d922 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Fri, 21 Feb 2025 23:08:26 +0800 Subject: [PATCH 23/90] 1 --- .../BusSalesOrderReturnVehApplyService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java index 2aa38b657b..463deec5bd 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java @@ -746,7 +746,7 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService Date: Mon, 24 Feb 2025 09:28:28 +0800 Subject: [PATCH 24/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=BA=93=E4=BD=8D=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/inventory/wmsinventory/WmsInventoryMapper.xml | 5 ++++- .../inventory/wmsinventory/appH5/GoodsListTagH5Vo.java | 9 +++++++++ .../biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java | 7 ++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml index 7029d9f35c..79c90ecc95 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml @@ -364,6 +364,7 @@ diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java index d6d08a12c7..e59bf4734d 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsListTagH5Vo.java @@ -23,4 +23,13 @@ public class GoodsListTagH5Vo { */ private String num; + + /** + * 仓库 + */ + private String store; + /** + * 格式例:区域-库区 库位编码 + */ + private String houseInfo; } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java index cc5d1c0d90..9514aa5685 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/GoodsTagH5Vo.java @@ -1,8 +1,8 @@ package com.yxt.wms.biz.inventory.wmsinventory.appH5; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import java.util.ArrayList; import java.util.List; /** @@ -13,6 +13,11 @@ import java.util.List; @Data public class GoodsTagH5Vo { + @ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)") + private String goodsID; + + @ApiModelProperty("厂家名称") + private String manufacturerName; /** * 商品名称 */ From 052b2ca7c925b8e1ff26a7f568196da538e1f4e8 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 24 Feb 2025 09:28:40 +0800 Subject: [PATCH 25/90] =?UTF-8?q?=E9=94=80=E5=94=AE=E6=97=A5=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E4=BA=8B=E4=B8=9A=E9=83=A8=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reportcenter/biz/dailyreport/DailyReportMapper.java | 1 + .../reportcenter/biz/dailyreport/DailyReportMapper.xml | 8 ++++++++ .../reportcenter/biz/dailyreport/DailyReportService.java | 6 +++--- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java index dfcedeb91c..5a12848c45 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.java @@ -56,6 +56,7 @@ public interface DailyReportMapper extends BaseMapper { List selectReport2New(@Param("startDate") String startDate,@Param("endDate") String endDate); List list2(String date); + List list2New(@Param("startDate") String startDate,@Param("endDate") String endDate); List list3(@Param("date") String date, @Param("busOrgSid") String busOrgSid); List list3New(@Param("startDate") String startDate,@Param("endDate") String endDate, @Param("busOrgSid") String busOrgSid); diff --git a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml index a250aaf351..e8d1d4abaa 100644 --- a/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml +++ b/anrui-reportcenter/anrui-reportcenter-biz/src/main/java/com/yxt/anrui/reportcenter/biz/dailyreport/DailyReportMapper.xml @@ -707,6 +707,14 @@ order by dr.busOrgSid desc + + SELECT wi.goodsID, + wi.manufacturerName, b.supplierName provider, wi.goodsSpuName goodsName, wi.goodsSkuCode numId, diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java index 8220876dbe..b672609251 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java @@ -698,7 +698,7 @@ public class WmsInventoryService extends MybatisBaseService list; diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java index 8a0f70adf1..dd0782dfb0 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appH5/HouseRackListVo.java @@ -1,5 +1,6 @@ package com.yxt.wms.biz.inventory.wmsinventory.appH5; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -10,6 +11,8 @@ import lombok.Data; @Data public class HouseRackListVo { + @ApiModelProperty("厂家名称") + private String manufacturerName; /** * 商品id */ From bd5370aa1d6b8ce830be6f84e5582d39404378a1 Mon Sep 17 00:00:00 2001 From: fanzongzhe0036 Date: Mon, 24 Feb 2025 13:49:24 +0800 Subject: [PATCH 29/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=BA=93=E4=BD=8D=E6=8E=A5=E5=8F=A33?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml | 3 +++ .../biz/inventory/wmsgoodstag/WmsGoodsTagService.java | 4 ++-- .../wms/biz/inventory/wmsgoodstag/app/HouseRackVo.java | 9 +++++++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml index 8a562cf11c..014ff3f8ff 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml @@ -45,6 +45,8 @@ FROM ( SELECT + CONCAT(z.zoneName, '-', ar.areaName,' ',r.rackCode) houseInfo, + i.warehouseName store, CONCAT( i.warehouseName, '-', ar.areaName ) AS houseName, r.sid AS houseSid, r.printCount AS printNum, @@ -54,6 +56,7 @@ wms_warehouse_rack AS r LEFT JOIN wms_warehouse_info AS i ON r.warehouseSid = i.sid LEFT JOIN wms_warehouse_area as ar ON r.locationSid = ar.sid + LEFT JOIN wms_warehouse_zone AS z ON r.zoneSid = z.sid ) AS a ${ew.sqlSegment} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java index f9380f3d79..fc3b48335a 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java @@ -203,8 +203,8 @@ public class WmsGoodsTagService extends MybatisBaseService wrapper.like("a.houseName", query.getName()) - .or().like("a.houseNum", query.getName()) + qw.and(wrapper -> wrapper.like("a.store", query.getName()) + .or().like("a.houseInfo", query.getName()) ); } //ToDo:添加查询条件 diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/app/HouseRackVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/app/HouseRackVo.java index 73fa5f40b7..e3acef9fff 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/app/HouseRackVo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/app/HouseRackVo.java @@ -26,4 +26,13 @@ public class HouseRackVo implements Vo { * 打印次数 */ private String printNum; + + /** + * 仓库 + */ + private String store; + /** + * 格式例:区域-库区 库位编码 + */ + private String houseInfo; } From c72b95d8317f5d5490d64a7d156c87936778f632 Mon Sep 17 00:00:00 2001 From: fanzongzhe0036 Date: Mon, 24 Feb 2025 14:16:34 +0800 Subject: [PATCH 30/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=AB=E7=A0=81?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=BA=93=E4=BD=8D=E6=8E=A5=E5=8F=A34?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java index 2eeb981d1c..7239e0e72d 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java @@ -713,7 +713,7 @@ public class WmsInventoryService extends MybatisBaseService Date: Mon, 24 Feb 2025 15:50:03 +0800 Subject: [PATCH 31/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E6=A0=B8=E5=AF=B9=E3=80=81=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bicyclerebatetobechecked.vue | 2 +- .../bicyclerebatemanagementAdd.vue | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue index 114de6b73a..d76a63314f 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue @@ -85,7 +85,7 @@ - + diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue index fdcb3f6cc6..fe608359d7 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue @@ -69,17 +69,17 @@ - - - - - - + + + + + + - + From b93ebc726bacc60b64bb6c2a55232dd0ae872752 Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Mon, 24 Feb 2025 16:01:22 +0800 Subject: [PATCH 32/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bikerebatemanagement/bicyclerebatemanagementAdd.vue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue index fe608359d7..49cfc7d983 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagementAdd.vue @@ -74,22 +74,22 @@ - + - + - + - + From 9567aa4419479bd384801a013464a48fee9997eb Mon Sep 17 00:00:00 2001 From: ligaode Date: Mon, 24 Feb 2025 16:14:31 +0800 Subject: [PATCH 33/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scm/api/scmspecialrebate/OneExcelVo.java | 78 +-- .../ScmSpecialRebateExcelVo.java | 93 ++- .../scm/api/scmspecialrebate/TwoExcelVo.java | 83 ++- .../scm/api/scmvehrebate/OneExcelVo.java | 92 +-- .../api/scmvehrebate/ScmVehRebateExcelVo.java | 110 ++-- .../scm/api/scmvehrebate/TwoExcelVo.java | 96 ++- .../ScmSpecialRebateMapper.java | 6 +- .../ScmSpecialRebateMapper.xml | 85 ++- .../ScmSpecialRebateRest.java | 521 +++++++++++++++- .../ScmSpecialRebateService.java | 39 +- .../biz/scmvehrebate/ScmVehRebateMapper.xml | 66 +- .../biz/scmvehrebate/ScmVehRebateRest.java | 563 +++++++++++++++++- .../biz/scmvehrebate/ScmVehRebateService.java | 7 - 13 files changed, 1424 insertions(+), 415 deletions(-) diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java index 561d7e786d..f1b8226075 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java @@ -11,51 +11,57 @@ import lombok.Data; @Data public class OneExcelVo { - @ExportEntityMap(CnName = "采购系统*", EnName = "purchaseSystemName") + @ExportEntityMap(CnName = "序号", EnName = "rankNo") + private Integer rankNo; + @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") private String purchaseSystemName; - - @ExportEntityMap(CnName = "品牌名称*", EnName = "brandName") - private String brandName; - - @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") - private String createTime; - - @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; - - @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") private String estimateRebate; - - @ExportEntityMap(CnName = "其中预提费用*", EnName = "expectCost") - private String expectCost; - - @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") - private String palceGenDate; - - @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") - private String uploadDate; - - @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") private String uploadMoney; - - @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; - @ExportEntityMap(CnName = "其中支出费用*", EnName = "onceItureCost") - private String onceItureCost; - - @ExportEntityMap(CnName = "其中待支付费用*", EnName = "onceTreatCost") - private String onceTreatCost; - - @ExportEntityMap(CnName = "其中抵顶费用*", EnName = "onceSuppCost") - private String onceSuppCost; - - @ExportEntityMap(CnName = "抵顶费用说明", EnName = "onceSuppRemark") - private String onceSuppRemark; + @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") + private String secondaryUploadDate; + + @ExportEntityMap(CnName = "上传", EnName = "uploadState") + private String uploadState; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; + + @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") + private String isAdjustment; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateExcelVo.java index 05891e42f3..37324c03eb 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateExcelVo.java @@ -36,68 +36,53 @@ public class ScmSpecialRebateExcelVo { @ExportEntityMap(CnName = "序号", EnName = "rankNo") private Integer rankNo; - @ExportEntityMap(CnName = "状态", EnName = "state") - private String state; - @ExportEntityMap(CnName = "一次核对状态", EnName = "onceCheckState") - private String onceCheckState; - @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") - private String createOrgName; @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") private String purchaseSystemName; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "创建日期", EnName = "createTime") - private String createTime; + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - @ExportEntityMap(CnName = "预提金额", EnName = "estimateRebate") - private BigDecimal estimateRebate; - @ExportEntityMap(CnName = "其中支出费用", EnName = "expectItureCost") - private BigDecimal expectItureCost; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "expectTreatCost") - private BigDecimal expectTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "expectSuppCost") - private BigDecimal expectSuppCost; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "上传日期", EnName = "uploadDate") + + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + private String estimateRebate; + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") + private String uploadMoney; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") + private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; + + @ExportEntityMap(CnName = "预计", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; + + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") private String uploadDate; - @ExportEntityMap(CnName = "上传金额", EnName = "uploadMoney") - private BigDecimal uploadMoney; - @ExportEntityMap(CnName = "其中待确定金额", EnName = "stayDetermineMoney") - private BigDecimal stayDetermineMoney; - @ExportEntityMap(CnName = "其中支出费用", EnName = "onceItureCost") - private BigDecimal onceItureCost; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "onceTreatCost") - private BigDecimal onceTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "onceSuppCost") - private BigDecimal onceSuppCost; - @ExportEntityMap(CnName = "二次上传日期", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") private String secondaryUploadDate; - @ExportEntityMap(CnName = "二次上传金额", EnName = "secondaryUploadMoney") - private BigDecimal secondaryUploadMoney; - @ExportEntityMap(CnName = "其中支出费用", EnName = "secondItureCost") - private BigDecimal secondItureCost; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "secondTreatCost") - private BigDecimal secondTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "secondSuppCost") - private BigDecimal secondSuppCost; - @ExportEntityMap(CnName = "差异金额", EnName = "diffAmount") - private BigDecimal diffAmount; - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; - @ExportEntityMap(CnName = "返利调整金额", EnName = "adjustmentMoney") - private BigDecimal adjustmentMoney; - @ExportEntityMap(CnName = "支出费用调整金额", EnName = "itureAdjustmentMoney") - private BigDecimal itureAdjustmentMoney; - @ExportEntityMap(CnName = "待支付费用调整金额", EnName = "treatAdjustmentMoney") - private BigDecimal treatAdjustmentMoney; - @ExportEntityMap(CnName = "抵顶费用调整金额", EnName = "suppAdjustmentMoney") - private BigDecimal suppAdjustmentMoney; - @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") - private String adjustmentRemarks; + + @ExportEntityMap(CnName = "流程", EnName = "state") + private String state; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; + @ExportEntityMap(CnName = "备注", EnName = "remarks") private String remarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java index 57c96860fa..22d41d5d7f 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java @@ -11,60 +11,57 @@ import lombok.Data; @Data public class TwoExcelVo { - @ExportEntityMap(CnName = "采购系统*", EnName = "purchaseSystemName") + @ExportEntityMap(CnName = "序号", EnName = "rankNo") + private Integer rankNo; + @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") private String purchaseSystemName; - - @ExportEntityMap(CnName = "品牌名称*", EnName = "brandName") - private String brandName; - - @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") - private String createTime; - - @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; - - @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") private String estimateRebate; - - @ExportEntityMap(CnName = "其中预提费用*", EnName = "expectCost") - private String expectCost; - - @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") - private String palceGenDate; - - @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") - private String uploadDate; - - @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") private String uploadMoney; - - @ExportEntityMap(CnName = "其中费用*", EnName = "money") - private String money; - - @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; + + @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; - @ExportEntityMap(CnName = "二次上传日期*", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") private String secondaryUploadDate; - @ExportEntityMap(CnName = "二次上传金额*", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - - @ExportEntityMap(CnName = "其中支出费用*", EnName = "secondItureCost") - private String secondItureCost; - - @ExportEntityMap(CnName = "其中待支付费用*", EnName = "secondTreatCost") - private String secondTreatCost; - - @ExportEntityMap(CnName = "其中抵顶费用*", EnName = "secondSuppCost") - private String secondSuppCost; - - @ExportEntityMap(CnName = "抵顶费用说明", EnName = "secondSuppRemark") - private String secondSuppRemark; + @ExportEntityMap(CnName = "上传", EnName = "uploadState") + private String uploadState; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; + @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") + private String isAdjustment; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java index b2a84473f8..02dd90c0ed 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java @@ -14,61 +14,61 @@ import java.util.Date; @Data public class OneExcelVo { - //车架号 - @ExportEntityMap(CnName = "车架号*", EnName = "vinNo") + @ExportEntityMap(CnName = "序号", EnName = "rankNo") + private Integer rankNo; + @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") + private String purchaseSystemName; + @ExportEntityMap(CnName = "车架号", EnName = "vinNo") private String vinNo; - - //厂家结算价 - @ExportEntityMap(CnName = "厂家结算价*", EnName = "manufactorSettlementPrice") - private String manufactorSettlementPrice; - - //其中运费金额 - @ExportEntityMap(CnName = "其中运费金额*", EnName = "freight") - private String freight; - - //创建日期 - @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") - private String createTime; - - @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "车型", EnName = "vehModelName") + private String vehModelName; + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; - - @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - //预提返利 - @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") private String estimateRebate; - - @ExportEntityMap(CnName = "其中预提费用*", EnName = "withholdCost") - private String withholdCost; - - //所属年月 - @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") - private String palceGenDate; - - //上传日期 - @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") - private String uploadDate; - - //上传金额 - @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") private String uploadMoney; - - //待确定金额 - @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; - @ExportEntityMap(CnName = "待支付费用*", EnName = "onceTreatCost") - private String onceTreatCost; - - @ExportEntityMap(CnName = "抵顶费用*", EnName = "onceSuppCost") - private String onceSuppCost; - - @ExportEntityMap(CnName = "抵顶费用说明", EnName = "onceSuppRemark") - private String onceSuppRemark; + @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; - //调整说明 + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") + private String secondaryUploadDate; + + @ExportEntityMap(CnName = "上传", EnName = "uploadState") + private String uploadState; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; + + @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") + private String isAdjustment; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateExcelVo.java index e36ae083e5..7e1c55135f 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateExcelVo.java @@ -28,73 +28,75 @@ package com.yxt.anrui.scm.api.scmvehrebate; import com.yxt.common.core.utils.ExportEntityMap; import lombok.Data; -import java.math.BigDecimal; - @Data public class ScmVehRebateExcelVo { @ExportEntityMap(CnName = "序号", EnName = "rankNo") private Integer rankNo; - @ExportEntityMap(CnName = "状态", EnName = "state") - private String state; - @ExportEntityMap(CnName = "一次核对状态", EnName = "onceCheckState") - private String onceCheckState; @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") private String purchaseSystemName; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "车型", EnName = "vehModelName") - private String vehModelName; @ExportEntityMap(CnName = "车架号", EnName = "vinNo") private String vinNo; - @ExportEntityMap(CnName = "车辆入库价", EnName = "manufactorSettlementPrice") - private BigDecimal manufactorSettlementPrice; - @ExportEntityMap(CnName = "其中运费", EnName = "freight") - private BigDecimal freight; - @ExportEntityMap(CnName = "其中上装金额", EnName = "topAmount") - private BigDecimal topAmount; - @ExportEntityMap(CnName = "创建日期", EnName = "createTime") - private String createTime; + @ExportEntityMap(CnName = "车型", EnName = "vehModelName") + private String vehModelName; + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - @ExportEntityMap(CnName = "预提金额", EnName = "estimateRebate") - private BigDecimal estimateRebate; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "expectTreatCost") - private BigDecimal expectTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "expectSuppCost") - private BigDecimal expectSuppCost; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "上传日期", EnName = "uploadDate") + + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + private String estimateRebate; + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") + private String uploadMoney; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") + private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; + + @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; + + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") private String uploadDate; - @ExportEntityMap(CnName = "上传金额", EnName = "uploadMoney") - private BigDecimal uploadMoney; - @ExportEntityMap(CnName = "其中待确定金额", EnName = "stayDetermineMoney") - private BigDecimal stayDetermineMoney; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "onceTreatCost") - private BigDecimal onceTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "onceSuppCost") - private BigDecimal onceSuppCost; - @ExportEntityMap(CnName = "二次上传日期", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") private String secondaryUploadDate; - @ExportEntityMap(CnName = "二次上传金额", EnName = "secondaryUploadMoney") - private BigDecimal secondaryUploadMoney; - @ExportEntityMap(CnName = "其中待支付费用", EnName = "secondTreatCost") - private BigDecimal secondTreatCost; - @ExportEntityMap(CnName = "其中抵顶费用", EnName = "secondSuppCost") - private BigDecimal secondSuppCost; - @ExportEntityMap(CnName = "差异金额", EnName = "diffAmount") - private BigDecimal diffAmount; - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; - @ExportEntityMap(CnName = "返利调整金额", EnName = "adjustmentMoney") - private BigDecimal adjustmentMoney; - @ExportEntityMap(CnName = "待支付费用调整金额", EnName = "treatAdjustmentMoney") - private BigDecimal treatAdjustmentMoney; - @ExportEntityMap(CnName = "抵顶费用调整金额", EnName = "suppAdjustmentMoney") - private BigDecimal suppAdjustmentMoney; - @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") - private String adjustmentRemarks; + + @ExportEntityMap(CnName = "流程", EnName = "state") + private String state; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; + + @ExportEntityMap(CnName = "车辆入库价", EnName = "manufactorSettlementPrice") + private String manufactorSettlementPrice; + + @ExportEntityMap(CnName = "运费", EnName = "freight") + private String freight; + @ExportEntityMap(CnName = "上装", EnName = "topAmount") + private String topAmount; + + @ExportEntityMap(CnName = "方式", EnName = "calculationModeValue") + private String calculationModeValue; + @ExportEntityMap(CnName = "标准", EnName = "calculationStandard") + private String calculationStandard; + + @ExportEntityMap(CnName = "备注", EnName = "remarks") + private String remarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java index 797b9ca24c..74f71f707e 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java @@ -14,71 +14,61 @@ import java.util.Date; @Data public class TwoExcelVo { - //车架号 - @ExportEntityMap(CnName = "车架号*", EnName = "vinNo") + @ExportEntityMap(CnName = "序号", EnName = "rankNo") + private Integer rankNo; + @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") + private String purchaseSystemName; + @ExportEntityMap(CnName = "车架号", EnName = "vinNo") private String vinNo; - - //厂家结算价 - @ExportEntityMap(CnName = "厂家结算价*", EnName = "manufactorSettlementPrice") - private String manufactorSettlementPrice; - - //其中运费金额 - @ExportEntityMap(CnName = "其中运费金额*", EnName = "freight") - private String freight; - - @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") - private String createTime; - - @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "车型", EnName = "vehModelName") + private String vehModelName; + @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") private String rebateTypeValue; - - @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") private String rebateName; - //预提返利 - @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") private String estimateRebate; - - @ExportEntityMap(CnName = "其中预提费用*", EnName = "withholdCost") - private String withholdCost; - - //所属年月 - @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") - private String palceGenDate; - - //上传日期 - @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") - private String uploadDate; - - //上传金额 - @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") private String uploadMoney; - - //待确定金额 - @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") private String stayDetermineMoney; + @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") + private String adjustmentMoney; + @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") + private String notUploadMoney; - @ExportEntityMap(CnName = "其中费用*", EnName = "qzMoney") - private String qzMoney; + @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + private String withholdCost; + @ExportEntityMap(CnName = "上传", EnName = "money") + private String money; - //二次上传日期 - @ExportEntityMap(CnName = "二次上传日期*", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "创建", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") + private String withholdingDate; + @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") private String secondaryUploadDate; - //二次上传金额 - @ExportEntityMap(CnName = "二次上传金额*", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - - @ExportEntityMap(CnName = "待支付费用*", EnName = "secondTreatCost") - private String secondTreatCost; - - @ExportEntityMap(CnName = "抵顶费费用*", EnName = "secondSuppCost") - private String secondSuppCost; - - @ExportEntityMap(CnName = "抵顶费用说明", EnName = "secondSuppRemark") - private String secondSuppRemark; + @ExportEntityMap(CnName = "上传", EnName = "uploadState") + private String uploadState; + @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") + private String onceCheckState; + @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") + private String secondCheckState; - //调整说明 + @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") + private String isAdjustment; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; + @ExportEntityMap(CnName = "品牌", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") + private String createOrgName; } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java index 3f5733da46..39a5a7bff0 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java @@ -56,7 +56,7 @@ public interface ScmSpecialRebateMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - IPage selectPageVoUpload(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + IPage selectPageVoUpload(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); @Update("update scm_special_rebate set state = #{state} where sid = #{specialRebateSid}") void updateState(@Param("specialRebateSid") String specialRebateSid, @Param("state") Integer state); @@ -68,9 +68,11 @@ public interface ScmSpecialRebateMapper extends BaseMapper { ScmSpecialRebateVo selectExcelInfo(@Param("createOrgSid") String createOrgSid, @Param("rebateTypeValue") String rebateTypeValue, @Param("rebateName") String rebateName, @Param("estimateRebate") String estimateRebate, @Param("palceGenDate") String palceGenDate, @Param("purchaseSystemName") String purchaseSystemName, @Param("brandName") String brandName); + ScmSpecialRebateVo selectExcel(@Param("createOrgSid") String createOrgSid, @Param("rebateTypeValue") String rebateTypeValue, @Param("rebateName") String rebateName, @Param("estimateRebate") String estimateRebate, @Param("palceGenDate") String palceGenDate, @Param("purchaseSystemName") String purchaseSystemName, @Param("brandName") String brandName, @Param("remarks") String remarks); + void updateOneExcelInfo(@Param("uploadDate") String uploadDate, @Param("uploadMoney") String uploadMoney, @Param("stayDetermineMoney") String stayDetermineMoney, @Param("onceItureCost") String onceItureCost, @Param("onceTreatCost") String onceTreatCost, @Param("onceSuppCost") String onceSuppCost, @Param("onceSuppRemark") String onceSuppRemark, @Param("adjustmentRemarks") String adjustmentRemarks, @Param("isAdjustment") String isAdjustment, @Param("adjustmentMoney") String adjustmentMoney, @Param("diffAmount") String diffAmount, @Param("sid") String sid); - void updateTwoExcelInfo(@Param("secondaryUploadDate") String secondaryUploadDate, @Param("secondaryUploadMoney") String secondaryUploadMoney,@Param("secondItureCost") String secondItureCost, @Param("secondTreatCost") String secondTreatCost, @Param("secondSuppCost") String secondSuppCost, @Param("secondSuppRemark") String secondSuppRemark, @Param("adjustmentRemarks") String adjustmentRemarks, @Param("isAdjustment") String isAdjustment, @Param("adjustmentMoney") String adjustmentMoney, @Param("diffAmount") String diffAmount, @Param("sid") String sid); + void updateTwoExcelInfo(@Param("secondaryUploadDate") String secondaryUploadDate, @Param("secondaryUploadMoney") String secondaryUploadMoney, @Param("secondItureCost") String secondItureCost, @Param("secondTreatCost") String secondTreatCost, @Param("secondSuppCost") String secondSuppCost, @Param("secondSuppRemark") String secondSuppRemark, @Param("adjustmentRemarks") String adjustmentRemarks, @Param("isAdjustment") String isAdjustment, @Param("adjustmentMoney") String adjustmentMoney, @Param("diffAmount") String diffAmount, @Param("sid") String sid); List excelListOne(@Param(Constants.WRAPPER) QueryWrapper qw); diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml index c3099044a7..e53101c5ad 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml @@ -52,7 +52,8 @@ ssr.purchaseSystemName, ssr.palceGenDate, ssr.withholdingDate, - ssr.uploadMoney + ssr.secondaryUploadMoney - ssr.onceItureCost - ssr.onceTreatCost - ssr.onceSuppCost - ssr.secondItureCost - ssr.secondTreatCost - ssr.secondSuppCost as uploadMoney, + ssr.uploadMoney + ssr.secondaryUploadMoney - ssr.onceItureCost - ssr.onceTreatCost - ssr.onceSuppCost - + ssr.secondItureCost - ssr.secondTreatCost - ssr.secondSuppCost as uploadMoney, sscad.mainSid as checkApplySid FROM scm_specialrebate_checkapplydetail sscad LEFT JOIN scm_special_rebate ssr @@ -76,9 +77,22 @@ AND brandName = #{brandName} + + UPDATE - scm_special_rebate + scm_special_rebate SET uploadDate = #{uploadDate}, uploadMoney = #{uploadMoney}, onceItureCost = #{onceItureCost}, @@ -96,7 +110,7 @@ UPDATE - scm_special_rebate + scm_special_rebate SET secondaryUploadDate = #{secondaryUploadDate}, secondaryUploadMoney = #{secondaryUploadMoney}, secondItureCost = #{secondItureCost}, @@ -110,44 +124,69 @@ WHERE sid = #{sid} - SELECT *, - expectItureCost + expectTreatCost + expectSuppCost AS expectCost - FROM - scm_special_rebate + expectItureCost + expectTreatCost + expectSuppCost AS withholdCost, + onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney, + IF(secondaryUploadMoney > 0 AND isAdjustment = '是','是','否') AS secondCheckState, + @row_number := @row_number + 1 AS rankNo + FROM scm_special_rebate,( + SELECT + @row_number := 0 + ) AS t ${ew.sqlSegment} - + SELECT *, + expectItureCost + expectTreatCost + expectSuppCost AS withholdCost, + onceItureCost + onceTreatCost + onceSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney, + IF(secondaryUploadMoney > 0 AND isAdjustment = '是','是','否') AS secondCheckState, + IF( + uploadDate IS NOT NULL + AND uploadDate != '', + '已上传', + '未上传' + ) AS uploadState, + @row_number := @row_number + 1 AS rankNo FROM - scm_special_rebate + scm_special_rebate, + (SELECT + @row_number := 0) AS t ${ew.sqlSegment} - + SELECT *, + expectItureCost + expectTreatCost + expectSuppCost AS withholdCost, + onceItureCost + onceTreatCost + onceSuppCost AS money, + estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney AS notUploadMoney, + IF(secondaryUploadMoney > 0 AND isAdjustment = '是','是','否') AS secondCheckState, + IF( + uploadDate IS NOT NULL + AND uploadDate != '', + '已上传', + '未上传' + ) AS uploadState, + @row_number := @row_number + 1 AS rankNo + FROM + scm_special_rebate, + (SELECT + @row_number := 0) AS t ${ew.sqlSegment} - + select count(*) from scm_special_rebate ${ew.sqlSegment} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java index 76b2194658..94857ed0e0 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java @@ -30,6 +30,7 @@ import cn.hutool.core.date.DateUtil; import com.yxt.anrui.scm.api.scmspecialrebate.*; import com.yxt.anrui.scm.api.scmspecialrebatecheckapply.SpecialRebateCheckExcelVo; import com.yxt.anrui.scm.api.scmspecialrebatewithapply.ScmSpecialRebateWithApply; +import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateExcelVo; import com.yxt.anrui.scm.biz.scmspecialrebatewith.ScmSpecialRebateWithService; import com.yxt.anrui.scm.biz.scmspecialrebatewithapply.ScmSpecialRebateWithApplyService; import com.yxt.common.base.utils.ExportExcelUtils; @@ -38,6 +39,10 @@ import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.compress.utils.IOUtils; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.xssf.usermodel.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -85,16 +90,135 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign { @PostMapping("/excelList") public void excelList(@RequestBody ScmSpecialRebateQuery query) { //得到所有要导出的数据 - List exportVoList = scmSpecialRebateService.excelList(query); - //定义导出的excel名字 - String excelName = "专项返利管理"; - String fileNameURL = ""; - try { - fileNameURL = URLEncoder.encode(excelName, "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); + List dataList = scmSpecialRebateService.excelList(query); + // 创建一个新的Excel文档 + XSSFWorkbook wb = new XSSFWorkbook(); + // 创建一个名为Sheet1的工作表 + XSSFSheet sheet = wb.createSheet("专项返利管理"); + //样式 + XSSFCellStyle titleStyle = createTitleCellStyle(wb); + XSSFCellStyle headerStyle = createHeadCellStyle(wb); + XSSFCellStyle contentStyle = createContentCellStyle(wb); + // 行号 + int rowNum = 0; + // 创建第一页的第一行,索引从0开始 + XSSFRow row0 = sheet.createRow(rowNum++); + // 设置行高 + row0.setHeight((short) 600); + String[] row_Text = {"序号", "采购系统", "所属年月", "返利类型", "返利名称", "返利金额", "", "", "", "", "", "其中费用", "", "日期", "", "", "", "状态", "", "", "备注", "品牌", "分公司"}; + for (int i = 0; i < row_Text.length; i++) { + XSSFCell c00 = row0.createCell(i); + c00.setCellValue(row_Text[i]); + c00.setCellStyle(headerStyle); } - ExportExcelUtils.export(fileNameURL, exportVoList, ScmSpecialRebateExcelVo.class, response); + // 合并单元格,参数依次为起始列,结束列,起始行,结束行 (索引0开始) + sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 1)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 2, 2)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 3, 3)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 4, 4)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 5, 10)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 11, 12)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 16)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 17, 19)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 20, 20)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 21, 21)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 22, 22)); + //第二行 + XSSFRow row2 = sheet.createRow(rowNum++); + row2.setHeight((short) 700); + String[] row_third = {"", "", "", "", "", "预提", "上传", "二次上传", "待确定", "调整", "未上传", "预提", "上传", "创建", "预提", "上传", "二次上传", "流程", "一次核对", "二次核对", "", "", ""}; + for (int i = 0; i < row_third.length; i++) { + XSSFCell tempCell = row2.createCell(i); + tempCell.setCellValue(row_third[i]); + tempCell.setCellStyle(headerStyle); + } + for (ScmSpecialRebateExcelVo value : dataList) { + XSSFRow tempRow = sheet.createRow(rowNum++); + tempRow.setHeight((short) 500); + // 循环单元格填入数据 + for (int j = 0; j < 23; j++) { + //列宽自适应,j为自适应的列,true就是自适应,false就是不自适应,默认不自适应 + sheet.autoSizeColumn(j, true); + XSSFCell tempCell = tempRow.createCell(j); + tempCell.setCellStyle(contentStyle); + String tempValue = ""; + switch (j) { + case 0: + tempValue = value.getRankNo().toString(); + break; + case 1: + tempValue = value.getPurchaseSystemName(); + break; + case 2: + tempValue = value.getPalceGenDate(); + break; + case 3: + tempValue = value.getRebateTypeValue(); + break; + case 4: + tempValue = value.getRebateName(); + break; + case 5: + tempValue = value.getEstimateRebate(); + break; + case 6: + tempValue = value.getUploadMoney(); + break; + case 7: + tempValue = value.getSecondaryUploadMoney(); + break; + case 8: + tempValue = value.getStayDetermineMoney(); + break; + case 9: + tempValue = value.getAdjustmentMoney(); + break; + case 10: + tempValue = value.getNotUploadMoney(); + break; + case 11: + tempValue = value.getWithholdCost(); + break; + case 12: + tempValue = value.getMoney(); + break; + case 13: + tempValue = value.getCreateTime(); + break; + case 14: + tempValue = value.getWithholdingDate(); + break; + case 15: + tempValue = value.getUploadDate(); + break; + case 16: + tempValue = value.getSecondaryUploadDate(); + break; + case 17: + tempValue = value.getState(); + break; + case 18: + tempValue = value.getOnceCheckState(); + break; + case 19: + tempValue = value.getSecondCheckState(); + break; + case 20: + tempValue = value.getRemarks(); + break; + case 21: + tempValue = value.getBrandName(); + break; + case 22: + tempValue = value.getCreateOrgName(); + break; + } + tempCell.setCellValue(tempValue); + } + } + //导出到浏览器下载 + buildExcelDocument("专项返利管理", wb, response); } @Override @@ -191,16 +315,139 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign { @Override public void excelListOne(ScmSpecialRebateQuery scmSpecialRebateQuery) { //得到所有要导出的数据 - List exportVoList = scmSpecialRebateService.excelListOne(scmSpecialRebateQuery); - //定义导出的excel名字 - String excelName = "一次导出"; - String fileNameURL = ""; - try { - fileNameURL = URLEncoder.encode(excelName, "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); + List dataList = scmSpecialRebateService.excelListOne(scmSpecialRebateQuery); + // 创建一个新的Excel文档 + XSSFWorkbook wb = new XSSFWorkbook(); + // 创建一个名为Sheet1的工作表 + XSSFSheet sheet = wb.createSheet("一次导出"); + //样式 + XSSFCellStyle titleStyle = createTitleCellStyle(wb); + XSSFCellStyle headerStyle = createHeadCellStyle(wb); + XSSFCellStyle contentStyle = createContentCellStyle(wb); + // 行号 + int rowNum = 0; + // 创建第一页的第一行,索引从0开始 + XSSFRow row0 = sheet.createRow(rowNum++); + // 设置行高 + row0.setHeight((short) 600); + String[] row_Text = {"序号", "采购系统", "所属年月", "返利类型", "返利名称", "金额", "", "", "", "", "", "其中费用", "", "日期", "", "", "", "状态", "", "", "是否调整", "调整状态", "品牌", "分公司"}; + for (int i = 0; i < row_Text.length; i++) { + XSSFCell c00 = row0.createCell(i); + c00.setCellValue(row_Text[i]); + c00.setCellStyle(headerStyle); + } + // 合并单元格,参数依次为起始列,结束列,起始行,结束行 (索引0开始) + sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 1)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 2, 2)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 3, 3)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 4, 4)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 5, 10)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 11, 12)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 16)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 17, 19)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 20, 20)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 21, 21)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 22, 22)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 23, 23)); + //第二行 + XSSFRow row2 = sheet.createRow(rowNum++); + row2.setHeight((short) 700); + String[] row_third = {"", "", "", "", "", "预提", "上传", "二次上传", "待确定", "调整", "未上传", "预提", "上传", "创建", "预提", "上传", "二次上传", "上传", "一次核对", "二次核对", "", "", "", ""}; + for (int i = 0; i < row_third.length; i++) { + XSSFCell tempCell = row2.createCell(i); + tempCell.setCellValue(row_third[i]); + tempCell.setCellStyle(headerStyle); } - ExportExcelUtils.export(fileNameURL, exportVoList, OneExcelVo.class, response); + for (OneExcelVo value : dataList) { + XSSFRow tempRow = sheet.createRow(rowNum++); + tempRow.setHeight((short) 500); + // 循环单元格填入数据 + for (int j = 0; j < 24; j++) { + //列宽自适应,j为自适应的列,true就是自适应,false就是不自适应,默认不自适应 + sheet.autoSizeColumn(j, true); + XSSFCell tempCell = tempRow.createCell(j); + tempCell.setCellStyle(contentStyle); + String tempValue = ""; + switch (j) { + case 0: + tempValue = value.getRankNo().toString(); + break; + case 1: + tempValue = value.getPurchaseSystemName(); + break; + case 2: + tempValue = value.getPalceGenDate(); + break; + case 3: + tempValue = value.getRebateTypeValue(); + break; + case 4: + tempValue = value.getRebateName(); + break; + case 5: + tempValue = value.getEstimateRebate(); + break; + case 6: + tempValue = value.getUploadMoney(); + break; + case 7: + tempValue = value.getSecondaryUploadMoney(); + break; + case 8: + tempValue = value.getStayDetermineMoney(); + break; + case 9: + tempValue = value.getAdjustmentMoney(); + break; + case 10: + tempValue = value.getNotUploadMoney(); + break; + case 11: + tempValue = value.getWithholdCost(); + break; + case 12: + tempValue = value.getMoney(); + break; + case 13: + tempValue = value.getCreateTime(); + break; + case 14: + tempValue = value.getWithholdingDate(); + break; + case 15: + tempValue = value.getUploadDate(); + break; + case 16: + tempValue = value.getSecondaryUploadDate(); + break; + case 17: + tempValue = value.getUploadState(); + break; + case 18: + tempValue = value.getOnceCheckState(); + break; + case 19: + tempValue = value.getSecondCheckState(); + break; + case 20: + tempValue = value.getIsAdjustment(); + break; + case 21: + tempValue = value.getAdjustmentRemarks(); + break; + case 22: + tempValue = value.getBrandName(); + break; + case 23: + tempValue = value.getCreateOrgName(); + break; + } + tempCell.setCellValue(tempValue); + } + } + //导出到浏览器下载 + buildExcelDocument("一次导出", wb, response); } @Override @@ -211,20 +458,240 @@ public class ScmSpecialRebateRest implements ScmSpecialRebateFeign { @Override public void excelListTwo(ScmSpecialRebateQuery scmSpecialRebateQuery) { //得到所有要导出的数据 - List exportVoList = scmSpecialRebateService.excelListTwo(scmSpecialRebateQuery); - //定义导出的excel名字 - String excelName = "二次导出"; - String fileNameURL = ""; - try { - fileNameURL = URLEncoder.encode(excelName, "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); + List dataList = scmSpecialRebateService.excelListTwo(scmSpecialRebateQuery); + // 创建一个新的Excel文档 + XSSFWorkbook wb = new XSSFWorkbook(); + // 创建一个名为Sheet1的工作表 + XSSFSheet sheet = wb.createSheet("二次导出"); + //样式 + XSSFCellStyle titleStyle = createTitleCellStyle(wb); + XSSFCellStyle headerStyle = createHeadCellStyle(wb); + XSSFCellStyle contentStyle = createContentCellStyle(wb); + // 行号 + int rowNum = 0; + // 创建第一页的第一行,索引从0开始 + XSSFRow row0 = sheet.createRow(rowNum++); + // 设置行高 + row0.setHeight((short) 600); + String[] row_Text = {"序号", "采购系统", "所属年月", "返利类型", "返利名称", "金额", "", "", "", "", "", "其中费用", "", "日期", "", "", "", "状态", "", "", "是否调整", "调整状态", "品牌", "分公司"}; + for (int i = 0; i < row_Text.length; i++) { + XSSFCell c00 = row0.createCell(i); + c00.setCellValue(row_Text[i]); + c00.setCellStyle(headerStyle); + } + // 合并单元格,参数依次为起始列,结束列,起始行,结束行 (索引0开始) + sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 1)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 2, 2)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 3, 3)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 4, 4)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 5, 10)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 11, 12)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 16)); + sheet.addMergedRegion(new CellRangeAddress(0, 0, 17, 19)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 20, 20)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 21, 21)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 22, 22)); + sheet.addMergedRegion(new CellRangeAddress(0, 1, 23, 23)); + //第二行 + XSSFRow row2 = sheet.createRow(rowNum++); + row2.setHeight((short) 700); + String[] row_third = {"", "", "", "", "", "预提", "上传", "二次上传", "待确定", "调整", "未上传", "预提", "上传", "创建", "预提", "上传", "二次上传", "上传", "一次核对", "二次核对", "", "", "", ""}; + for (int i = 0; i < row_third.length; i++) { + XSSFCell tempCell = row2.createCell(i); + tempCell.setCellValue(row_third[i]); + tempCell.setCellStyle(headerStyle); } - ExportExcelUtils.export(fileNameURL, exportVoList, TwoExcelVo.class, response); + for (TwoExcelVo value : dataList) { + XSSFRow tempRow = sheet.createRow(rowNum++); + tempRow.setHeight((short) 500); + // 循环单元格填入数据 + for (int j = 0; j < 24; j++) { + //列宽自适应,j为自适应的列,true就是自适应,false就是不自适应,默认不自适应 + sheet.autoSizeColumn(j, true); + XSSFCell tempCell = tempRow.createCell(j); + tempCell.setCellStyle(contentStyle); + String tempValue = ""; + switch (j) { + case 0: + tempValue = value.getRankNo().toString(); + break; + case 1: + tempValue = value.getPurchaseSystemName(); + break; + case 2: + tempValue = value.getPalceGenDate(); + break; + case 3: + tempValue = value.getRebateTypeValue(); + break; + case 4: + tempValue = value.getRebateName(); + break; + case 5: + tempValue = value.getEstimateRebate(); + break; + case 6: + tempValue = value.getUploadMoney(); + break; + case 7: + tempValue = value.getSecondaryUploadMoney(); + break; + case 8: + tempValue = value.getStayDetermineMoney(); + break; + case 9: + tempValue = value.getAdjustmentMoney(); + break; + case 10: + tempValue = value.getNotUploadMoney(); + break; + case 11: + tempValue = value.getWithholdCost(); + break; + case 12: + tempValue = value.getMoney(); + break; + case 13: + tempValue = value.getCreateTime(); + break; + case 14: + tempValue = value.getWithholdingDate(); + break; + case 15: + tempValue = value.getUploadDate(); + break; + case 16: + tempValue = value.getSecondaryUploadDate(); + break; + case 17: + tempValue = value.getUploadState(); + break; + case 18: + tempValue = value.getOnceCheckState(); + break; + case 19: + tempValue = value.getSecondCheckState(); + break; + case 20: + tempValue = value.getIsAdjustment(); + break; + case 21: + tempValue = value.getAdjustmentRemarks(); + break; + case 22: + tempValue = value.getBrandName(); + break; + case 23: + tempValue = value.getCreateOrgName(); + break; + } + tempCell.setCellValue(tempValue); + } + } + //导出到浏览器下载 + buildExcelDocument("二次导出", wb, response); } @Override public ResultBean getExcelTwoInfo(MultipartFile file, HttpServletRequest request, String userSid, String orgPath) throws IOException, ParseException { return scmSpecialRebateService.getExcelTwoInfo(file, request, userSid, orgPath); } + + /** + * @Description: [导出到浏览器] + * @Param: [fileName, wb, response] + * @return: void + * @Author: yangyongzhuo + * @Date: 2021/7/25 9:40 + */ + private static void buildExcelDocument(String fileName, Workbook wb, HttpServletResponse response) { + try { + response.setContentType("application/octet-stream"); + // 可自行定义编码格式 + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "utf-8")); + //清除jsp编译html文件的空白,防止excel出现空行 + response.flushBuffer(); + //写出 + wb.write(response.getOutputStream()); + } catch (IOException e) { + e.printStackTrace(); + } finally { + IOUtils.closeQuietly(wb); + } + } + + /** + * 创建标题样式 + * + * @param wb + * @return + */ + private static XSSFCellStyle createTitleCellStyle(XSSFWorkbook wb) { + XSSFCellStyle cellStyle = wb.createCellStyle(); + cellStyle.setAlignment(HorizontalAlignment.CENTER);//水平居中 + cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//垂直对齐 + cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); +// cellStyle.setFillForegroundColor(IndexedColors.GREY_40_PERCENT.getIndex());//背景颜色 + + XSSFFont headerFont1 = (XSSFFont) wb.createFont(); // 创建字体样式 + headerFont1.setBold(true); //字体加粗 + headerFont1.setFontName("黑体"); // 设置字体类型 + headerFont1.setFontHeightInPoints((short) 15); // 设置字体大小 + cellStyle.setFont(headerFont1); // 为标题样式设置字体样式 + return cellStyle; + } + + /** + * 创建表头样式 + * + * @param wb + * @return + */ + private static XSSFCellStyle createHeadCellStyle(XSSFWorkbook wb) { + XSSFCellStyle cellStyle = wb.createCellStyle(); + cellStyle.setWrapText(true);// 设置自动换行 + cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());//背景颜色 + cellStyle.setAlignment(HorizontalAlignment.CENTER); //水平居中 + cellStyle.setVerticalAlignment(VerticalAlignment.CENTER); //垂直对齐 + cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); +// cellStyle.setBottomBorderColor(IndexedColors.BLACK.index); + cellStyle.setBorderBottom(BorderStyle.THIN); //下边框 + cellStyle.setBorderLeft(BorderStyle.THIN); //左边框 + cellStyle.setBorderRight(BorderStyle.THIN); //右边框 + cellStyle.setBorderTop(BorderStyle.THIN); //上边框 + + XSSFFont headerFont = (XSSFFont) wb.createFont(); // 创建字体样式 + headerFont.setBold(true); //字体加粗 + headerFont.setFontName("黑体"); // 设置字体类型 + headerFont.setFontHeightInPoints((short) 12); // 设置字体大小 + cellStyle.setFont(headerFont); // 为标题样式设置字体样式 + + return cellStyle; + } + + /** + * 创建内容样式 + * + * @param wb + * @return + */ + private static XSSFCellStyle createContentCellStyle(XSSFWorkbook wb) { + XSSFCellStyle cellStyle = wb.createCellStyle(); + cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 垂直居中 + cellStyle.setAlignment(HorizontalAlignment.CENTER);// 水平居中 + cellStyle.setWrapText(false);// 设置自动换行 + cellStyle.setBorderBottom(BorderStyle.THIN); //下边框 + cellStyle.setBorderLeft(BorderStyle.THIN); //左边框 + cellStyle.setBorderRight(BorderStyle.THIN); //右边框 + cellStyle.setBorderTop(BorderStyle.THIN); //上边框 + + // 生成12号字体 + XSSFFont font = wb.createFont(); + font.setColor((short) 8); + font.setFontHeightInPoints((short) 12); + cellStyle.setFont(font); + + return cellStyle; + } } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index 746376cc3c..8f70009095 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -160,13 +160,13 @@ public class ScmSpecialRebateService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.selectPageVo(page, qw); for (ScmSpecialRebateVo record : pagging.getRecords()) { - if (StringUtils.isNotBlank(record.getSecondaryUploadMoney())){ - if (Integer.parseInt(record.getSecondaryUploadMoney()) > 0 && "是".equals(record.getIsAdjustment())){ + if (StringUtils.isNotBlank(record.getSecondaryUploadMoney())) { + if (Integer.parseInt(record.getSecondaryUploadMoney()) > 0 && "是".equals(record.getIsAdjustment())) { record.setSecondCheckState("是"); - }else { + } else { record.setSecondCheckState("否"); } - }else { + } else { record.setSecondCheckState("否"); } } @@ -255,7 +255,7 @@ public class ScmSpecialRebateService extends MybatisBaseService 0) { @@ -489,13 +489,13 @@ public class ScmSpecialRebateService extends MybatisBaseService 0 && "是".equals(record.getIsAdjustment())){ + if (StringUtils.isNotBlank(record.getSecondaryUploadMoney())) { + if (Integer.parseInt(record.getSecondaryUploadMoney()) > 0 && "是".equals(record.getIsAdjustment())) { record.setSecondCheckState("是"); - }else { + } else { record.setSecondCheckState("否"); } - }else { + } else { record.setSecondCheckState("否"); } } @@ -687,12 +687,12 @@ public class ScmSpecialRebateService extends MybatisBaseService infos = importReturn.getInfos(); for (ExcelInfo info : infos) { - ScmSpecialRebateDto scmSpecialRebate = new ScmSpecialRebateDto(); + ScmSpecialRebate scmSpecialRebate = new ScmSpecialRebate(); String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData(); String purchaseSystemSid = basePurchaseSystemFeign.selByPurchaseSystemName(info.getPurchaseSystemName(), useOrgSid).getData(); scmSpecialRebate.setPurchaseSystemSid(purchaseSystemSid); scmSpecialRebate.setPurchaseSystemName(info.getPurchaseSystemName()); - scmSpecialRebate.setState("0"); + scmSpecialRebate.setState(0); scmSpecialRebate.setCreateBySid(userSid); String brandSid = baseVehicleBrandFeign.selByBrandName(info.getBrandName()).getData(); scmSpecialRebate.setBrandSid(brandSid); @@ -713,7 +713,7 @@ public class ScmSpecialRebateService extends MybatisBaseService + + - SELECT - *, - @row_number := @row_number + 1 AS rankNo, - sid AS vehRebateSid - FROM - scm_veh_rebate,( - SELECT - @row_number := 0 - ) AS t - - ${ew.sqlSegment} - - - + select remarks, sid + from ad_fete_apply + where sid = #{sid} + + + + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyService.java new file mode 100644 index 0000000000..54eb7a8aa3 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyService.java @@ -0,0 +1,311 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfeteapply; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.oa.biz.adfetedetail.AdFeteDetailDto; +import com.yxt.anrui.oa.biz.adfetedetail.AdFeteDetailService; +import com.yxt.anrui.oa.biz.adfetedetail.AdFeteDetailVo; +import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; +import com.yxt.anrui.oa.biz.oaform.*; +import com.yxt.anrui.oa.biz.oaform.flowable.*; +import com.yxt.anrui.oa.feign.file.OaFileEnum; +import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; +import org.apache.commons.lang3.StringUtils; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +@Service +public class AdFeteApplyService extends MybatisBaseService { + + @Autowired + private OaAppendixService oaAppendixService; + @Autowired + private OaFormService oaFormService; + @Autowired + private AdFeteDetailService adFeteDetailService; + @Autowired + private SysOrganizationFeign sysOrganizationFeign; + + public ResultBean getSaveInit(String userSid, String orgPath) { + ResultBean rb = ResultBean.fireFail(); + AdFeteApplyVo adFeteApplyVo = new AdFeteApplyVo(); + adFeteApplyVo.setCreateBySid(userSid); + adFeteApplyVo.setOrgSidPath(orgPath); + return rb.success().setData(adFeteApplyVo); + } + + public ResultBean getUpdateInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AdFeteApplyVo adFeteApplyVo = new AdFeteApplyVo(); + AdFeteApply adFeteApply = fetchBySid(sid); + if (adFeteApplyVo == null) { + return rb.setMsg("该申请不存在"); + } +// adExpatriatesApplyVo.setTestPage(adExpatriatesApply.getTestPage()); + OaForm oaForm = oaFormService.fetchBySid(sid); + adFeteApplyVo.setTaskId(oaForm.getTaskId()); + adFeteApplyVo.setProcInsId(oaForm.getProcInstId()); + //根据部门sid获取orgPath并赋值 + SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData(); + String orgSidPath = organizationVo.getOrgSidPath(); + adFeteApplyVo.setOrgSidPath(orgSidPath); + adFeteApplyVo.setCreateBySid(oaForm.getCreateBySid()); + BeanUtil.copyProperties(adFeteApply, adFeteApplyVo); + List list = adFeteDetailService.getUpdateInit(sid); + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + FormCommon deptObj = FormCommon.of(details.getDeptSid(), details.getDeptName()); + details.setDeptObj(deptObj); + FormCommon isUseCanteenObj = FormCommon.of(details.getIsUseCanteenKey(), details.getIsUseCanteenValue()); + details.setIsUseCanteenObj(isUseCanteenObj); + FormCommon isGetADrinkObj = FormCommon.of(details.getIsGetADrinkKey(), details.getIsGetADrinkValue()); + details.setIsGetADrinkObj(isGetADrinkObj); + }); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + adFeteApplyVo.setFiles(files); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adFeteApplyVo.setAppes(appes); + adFeteApplyVo.setList(list); + adFeteApplyVo.setSid(sid); + return rb.success().setData(adFeteApplyVo); + } + + public ResultBean saveOrUpdateDto(AdFeteApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + List files = dto.getFiles(); + List appes = dto.getAppes(); + List list = dto.getList(); + if (StringUtils.isBlank(sid)) { + // 新建操作 + AdFeteApply entity = new AdFeteApply(); + BeanUtil.copyProperties(dto, entity, "sid"); + + dto.setBillNo("SWYQSQSQ"); + dto.setSid(entity.getSid()); + ResultBean resultBean = oaFormService.saveOaForm(dto); + + if (!resultBean.getSuccess()) { + return rb; + } + + entity.setFormSid(resultBean.getData()); + baseMapper.insert(entity); + sid = entity.getSid(); + } else { + // 更新操作 + AdFeteApply entity = fetchBySid(sid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + } + adFeteDetailService.saveDetails(list, sid); + // 处理附件 + saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片"); + saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件"); + return rb.success().setData(sid); + } + + // 保存文件 + private void saveFiles(String sid, List files, String attachType, String fileType) { + files.removeAll(Collections.singleton(null)); + oaAppendixService.saveFile(sid, files, attachType, fileType); + } + + public ResultBean details(String sid, String application) { + ResultBean rb = ResultBean.fireFail(); + AdFeteApplyDetailsVo adFeteApplyDetailsVo = baseMapper.details(sid); + if (adFeteApplyDetailsVo == null) { + return rb.setMsg("该申请不存在"); + } + List files = oaAppendixService.selectByLinkSid(sid, "图片"); + List appes = oaAppendixService.selectByLinkSid(sid, "文件"); + adFeteApplyDetailsVo.setFiles(files); + adFeteApplyDetailsVo.setAppes(appes); + //基础字段赋值 + BeanUtil.copyProperties(oaFormService.getDetails(sid), adFeteApplyDetailsVo); + return rb.success().setData(adFeteApplyDetailsVo); + } + + /** + * 提交 + * + * @param dto + * @return + */ + public ResultBean submit(AdFeteApplyDto dto) { + ResultBean rb = ResultBean.fireFail(); + ResultBean stringResultBean = saveOrUpdateDto(dto); + if (!stringResultBean.getSuccess()) { + return rb.setMsg(stringResultBean.getData()); + } + String businessSid = stringResultBean.getData(); + + SubmitDto submitDto = new SubmitDto(); + submitDto.setUserSid(dto.getCreateBySid()); + submitDto.setBusinessSid(businessSid); + + Map formVariables = new HashMap<>(); + formVariables = getMap(formVariables, businessSid); + submitDto.setFormVariables(formVariables); + submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId()); + submitDto.setNextTaskId(dto.getTaskId()); + submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule()); + return oaFormService.submit(submitDto); + } + + /** + * 办理(同意) + * + * @param dto + * @return + */ + public ResultBean complete(CompleteDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto(); + BeanUtil.copyProperties(dto, businessVariablesDto); + return oaFormService.complete(businessVariablesDto); + } + + /** + * 驳回 + * + * @param dto + * @return + */ + public ResultBean reject(TaskDto dto) { + Map formVariables = dto.getFormVariables(); + formVariables = getMap(formVariables, dto.getBusinessSid()); + dto.setFormVariables(formVariables); + return oaFormService.reject(dto); + } + + public ResultBean getFlowOperateTitle(NodeQuery query) { + // 默认失败返回 + ResultBean rb = ResultBean.fireFail(); + + // 获取next值和formVariables + int next = query.getNext(); + + // 获取并更新formVariables + Map formVariables = getMap(query.getFormVariables(), query.getBusinessSid()); + query.setFormVariables(formVariables); + + // 校验next参数是否有效(只允许0或1) + if (next != 0 && next != 1) { + return rb.setMsg("参数错误:next"); // 如果next不是0或1,返回错误信息 + } + + // 获取节点名称 + String data = getNodeName(query, next); + + // 如果data为null,表示未获取到有效的节点信息 + if (data == null) { + return rb.setMsg("没有获取到节点信息"); // 返回错误消息 + } + + // 返回成功的结果和获取到的节点名称 + return rb.success().setData(data); + } + + /** + * 网关参数组成 + * + * @param formVariables + * @param sid + * @return + */ + public Map getMap(Map formVariables, String sid) { + Map appMap = new HashMap<>(); + appMap.put("sid", sid); + /*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid); + appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid); + appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle"); + appMap.put("agreeUrl", "oa/v1/HrHireApply/complete"); + appMap.put("stopUrl", "oa/v1/oaform/breakProcess"); + appMap.put("rejectUrl", "oa/v1/HrHireApply/reject"); + appMap.put("recallUrl", "oa/v1/oaform/revokeProcess"); + appMap.put("signUrl", "oa/v1/oaform/delegate"); + appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/ + appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + "?sid=" + sid); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl()); + appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl()); + appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl()); + appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl()); + appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl()); + appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl()); + formVariables.put("app", appMap); + //根据组织查询是否是分公司 + OaForm oaForm = oaFormService.fetchBySid(sid); + AdFeteApply adFeteApply = fetchBySid(sid); + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData(); + //是否是分公司 + formVariables.put("isTrue", sysOrganization.getIsDept() == 0); + return formVariables; + } + + /** + * 根据next的值获取前一个节点或下一个节点的名称。 + * + * @param query 包含查询所需参数的NodeQuery对象 + * @param next 参数,0表示上一环节,1表示下一环节 + * @return 节点名称,如果失败则返回null + */ + private String getNodeName(NodeQuery query, int next) { + // 根据next值选择相应的服务方法获取节点信息 + ResultBean> resultBean = (next == 0) + ? oaFormService.getPreviousNodesForReject(query) // 获取上一环节的节点 + : oaFormService.getNextNodesForSubmit(query); // 获取下一环节的节点 + // 如果服务调用成功 + if (resultBean.getSuccess()) { + // 清除结果列表中的null值,避免空节点 + resultBean.getData().removeAll(Collections.singleton(null)); + // 如果结果列表非空,返回第一个节点的名称 + if (!resultBean.getData().isEmpty()) { + return resultBean.getData().get(0).getName(); + } + } else { + // 如果服务调用失败,返回null + return null; + } + // 如果结果为空,返回null + return null; + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyVo.java new file mode 100644 index 0000000000..7b57b8e496 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfeteapply/AdFeteApplyVo.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfeteapply; + +import com.yxt.anrui.oa.biz.adfetedetail.AdFeteDetailVo; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.util.ArrayList; +import java.util.List; + +@Data +@ApiModel(value = "商务宴请事前申请 视图数据对象", description = "商务宴请事前申请 视图数据对象") +public class AdFeteApplyVo implements Vo { + + private String sid; + /* private String userSid; + private String orgPath;*/ + private String orgSidPath; + private String createBySid; + + @ApiModelProperty("备注") + private String remarks; + @ApiModelProperty("图片") + private List files = new ArrayList<>(); + @ApiModelProperty("附件") + private List appes = new ArrayList<>(); + + private List list = new ArrayList<>(); + + private String taskId; + @ApiModelProperty("流程实例id") + private String procInsId; + +// private String testPage; +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetail.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetail.java new file mode 100644 index 0000000000..9e99383c4d --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetail.java @@ -0,0 +1,68 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.math.BigDecimal; + +@Data +@ApiModel(value = "商务宴请事前列表", description = "商务宴请事前列表") +@TableName("ad_fete_detail") +public class AdFeteDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("申请sid") + private String mainSid; // 申请sid + @ApiModelProperty("部门sid") + private String deptSid; // 部门sid + @ApiModelProperty("部门名称") + private String deptName; // 部门名称 + @ApiModelProperty("宴请时间") + private String banquetDate; // 宴请时间 + @ApiModelProperty("宴请人数") + private String banquetNum; // 宴请人数 + @ApiModelProperty("宴请对象") + private String banquetObject; // 宴请对象 + @ApiModelProperty("计划宴请标准") + private String banquetStandard; // 计划宴请标准 + @ApiModelProperty("是否使用食堂key") + private String isUseCanteenKey; // 是否使用食堂key + @ApiModelProperty("是否使用食堂value") + private String isUseCanteenValue; // 是否使用食堂value + @ApiModelProperty("是否领酒水key") + private String isGetADrinkKey; // 是否领酒水key + @ApiModelProperty("是否领酒水value") + private String isGetADrinkValue; // 是否领酒水value + @ApiModelProperty("预计费用") + private BigDecimal expectCost; // 预计费用 + @ApiModelProperty("费用明细") + private String costRemarks; // 费用明细 + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailDto.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailDto.java new file mode 100644 index 0000000000..e77b9b900e --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailDto.java @@ -0,0 +1,63 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.math.BigDecimal; + +@Data +@ApiModel(value = "商务宴请事前列表 数据传输对象", description = "商务宴请事前列表 数据传输对象") +public class AdFeteDetailDto implements Dto { + + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptSid; + private String deptName; + @ApiModelProperty("宴请时间") + private String banquetDate; + @ApiModelProperty("宴请人数") + private String banquetNum; + @ApiModelProperty("宴请对象") + private String banquetObject; + @ApiModelProperty("计划宴请标准") + private String banquetStandard; + @ApiModelProperty("是否使用食堂") + private FormCommon isUseCanteenObj; + private String isUseCanteenKey; + private String isUseCanteenValue; + @ApiModelProperty("是否领酒水") + private FormCommon isGetADrinkObj; + private String isGetADrinkKey; + private String isGetADrinkValue; + @ApiModelProperty("预计费用") + private BigDecimal expectCost; + @ApiModelProperty("费用明细") + private String costRemarks; +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.java new file mode 100644 index 0000000000..dada7f66e0 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.java @@ -0,0 +1,40 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; +import java.util.List; + +@Mapper +public interface AdFeteDetailMapper extends BaseMapper { + + List getUpdateInit(String sid); + + @Select("select * from ad_fete_detail where mainSid = #{mainSid}") + List selectByMainSid(String mainSid); +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.xml b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.xml new file mode 100644 index 0000000000..f32bac387a --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailMapper.xml @@ -0,0 +1,23 @@ + + + + + + + \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailService.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailService.java new file mode 100644 index 0000000000..58f20e1dd2 --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailService.java @@ -0,0 +1,60 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.List; + +@Service +public class AdFeteDetailService extends MybatisBaseService { + + public void saveDetails(List list, String sid) { + //根据sid查询明细并删除 + List list2 = baseMapper.selectByMainSid(sid); + list2.removeAll(Collections.singleton(null)); + if (!list2.isEmpty()) { + list2.stream().forEach(v -> { + deleteBySid(v.getSid()); + }); + } + list.removeAll(Collections.singleton(null)); + if (!list.isEmpty()) { + list.stream().forEach(details -> { + AdFeteDetail adFeteDetail = new AdFeteDetail(); + BeanUtil.copyProperties(details, adFeteDetail); + adFeteDetail.setMainSid(sid); + baseMapper.insert(adFeteDetail); + }); + } + } + + public List getUpdateInit(String sid) { + return baseMapper.getUpdateInit(sid); + } +} \ No newline at end of file diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailVo.java new file mode 100644 index 0000000000..2c133ab07d --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteDetailVo.java @@ -0,0 +1,66 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import com.yxt.anrui.oa.biz.oaform.FormCommon; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.math.BigDecimal; + +@Data +@ApiModel(value = "商务宴请事前列表 视图数据对象", description = "商务宴请事前列表 视图数据对象") +public class AdFeteDetailVo implements Vo { + + private String sid; + + @ApiModelProperty("部门") + private FormCommon deptObj; + private String deptSid; + private String deptName; + @ApiModelProperty("宴请时间") + private String banquetDate; + @ApiModelProperty("宴请人数") + private String banquetNum; + @ApiModelProperty("宴请对象") + private String banquetObject; + @ApiModelProperty("计划宴请标准") + private String banquetStandard; + @ApiModelProperty("是否使用食堂") + private FormCommon isUseCanteenObj; + private String isUseCanteenKey; + private String isUseCanteenValue; + @ApiModelProperty("是否领酒水") + private FormCommon isGetADrinkObj; + private String isGetADrinkKey; + private String isGetADrinkValue; + @ApiModelProperty("预计费用") + private BigDecimal expectCost; + @ApiModelProperty("费用明细") + private String costRemarks; + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteListDetailVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteListDetailVo.java new file mode 100644 index 0000000000..a738f1d8df --- /dev/null +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfetedetail/AdFeteListDetailVo.java @@ -0,0 +1,59 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.oa.biz.adfetedetail; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.math.BigDecimal; + +@Data +@ApiModel(value = "商务宴请事前列表 视图数据对象", description = "商务宴请事前列表 视图数据对象") +public class AdFeteListDetailVo implements Vo { + + private String sid; + + @ApiModelProperty("部门") + private String deptName; + @ApiModelProperty("宴请时间") + private String banquetDate; + @ApiModelProperty("宴请人数") + private String banquetNum; + @ApiModelProperty("宴请对象") + private String banquetObject; + @ApiModelProperty("计划宴请标准") + private String banquetStandard; + @ApiModelProperty("是否使用食堂") + private String isUseCanteenValue; + @ApiModelProperty("是否领酒水") + private String isGetADrinkValue; + @ApiModelProperty("预计费用") + private BigDecimal expectCost; + @ApiModelProperty("费用明细") + private String costRemarks; + +} diff --git a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyDetailsVo.java b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyDetailsVo.java index 42b111a5fc..e3ce6c1992 100644 --- a/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyDetailsVo.java +++ b/yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adfrockallotapply/AdFrockallotApplyDetailsVo.java @@ -25,7 +25,7 @@ *********************************************************/ package com.yxt.anrui.oa.biz.adfrockallotapply; -import com.yxt.anrui.oa.biz.adleasehostdetail.AdLeasehostListDetailVo; +import com.yxt.anrui.oa.biz.adfrockallotdetail.AdFrockallotListDetailVo; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -45,5 +45,5 @@ public class AdFrockallotApplyDetailsVo implements Vo { @ApiModelProperty("附件") private List appes = new ArrayList<>(); - private List list = new ArrayList<>(); + private List list = new ArrayList<>(); } \ No newline at end of file From 5c54d9f3b7874ab6f0b631c73946261eb327f0bd Mon Sep 17 00:00:00 2001 From: ligaode Date: Tue, 25 Feb 2025 09:53:00 +0800 Subject: [PATCH 39/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseShuntingInvoicingApplyFeign.java | 14 - .../scm/api/scmspecialrebate/OneExcelVo.java | 69 ++-- .../scm/api/scmspecialrebate/TwoExcelVo.java | 73 ++--- .../scm/api/scmvehrebate/OneExcelVo.java | 73 ++--- .../scm/api/scmvehrebate/TwoExcelVo.java | 77 ++--- .../ScmSpecialRebateMapper.xml | 40 +-- .../ScmSpecialRebateRest.java | 282 ++--------------- .../ScmSpecialRebateService.java | 10 - .../biz/scmvehrebate/ScmVehRebateMapper.xml | 33 +- .../biz/scmvehrebate/ScmVehRebateRest.java | 298 ++---------------- .../biz/scmvehrebate/ScmVehRebateService.java | 10 - 11 files changed, 156 insertions(+), 823 deletions(-) diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java index a7bd152e73..1d289557cc 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java @@ -43,23 +43,9 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; - import javax.validation.Valid; import java.util.List; -/** - * Project: anrui-base(调车开票)
- * File: BaseShuntingInvoicingApplyFeign.java
- * Class: com.yxt.anrui.base.api.baseshuntinginvoicingapply.BaseShuntingInvoicingApplyFeign
- * Description: 调车开票申请表.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2022-07-11 15:30:28
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Api(tags = "调车开票申请表") @FeignClient( contextId = "anrui-base-BaseShuntingInvoicingApply", diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java index f1b8226075..5eb4cd832f 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/OneExcelVo.java @@ -11,57 +11,36 @@ import lombok.Data; @Data public class OneExcelVo { - @ExportEntityMap(CnName = "序号", EnName = "rankNo") - private Integer rankNo; - @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") + @ExportEntityMap(CnName = "采购系统*", EnName = "purchaseSystemName") private String purchaseSystemName; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "品牌名称*", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") private String rebateTypeValue; - @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") private String rebateName; - - @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") private String estimateRebate; - @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") + @ExportEntityMap(CnName = "其中预提费用*", EnName = "expectCost") + private String expectCost; + @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") private String uploadMoney; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") + @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") private String stayDetermineMoney; - @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") - private String adjustmentMoney; - @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") - private String notUploadMoney; - - @ExportEntityMap(CnName = "预提", EnName = "withholdCost") - private String withholdCost; - @ExportEntityMap(CnName = "上传", EnName = "money") - private String money; - - @ExportEntityMap(CnName = "创建", EnName = "createTime") - private String createTime; - @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") - private String withholdingDate; - @ExportEntityMap(CnName = "上传", EnName = "uploadDate") - private String uploadDate; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") - private String secondaryUploadDate; - - @ExportEntityMap(CnName = "上传", EnName = "uploadState") - private String uploadState; - @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") - private String onceCheckState; - @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") - private String secondCheckState; - - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; + @ExportEntityMap(CnName = "其中支出费用*", EnName = "onceItureCost") + private String onceItureCost; + @ExportEntityMap(CnName = "其中待支付费用*", EnName = "onceTreatCost") + private String onceTreatCost; + @ExportEntityMap(CnName = "其中抵顶费用*", EnName = "onceSuppCost") + private String onceSuppCost; + @ExportEntityMap(CnName = "抵顶费用说明", EnName = "onceSuppRemark") + private String onceSuppRemark; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") - private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java index 22d41d5d7f..228fc62d0e 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/TwoExcelVo.java @@ -11,57 +11,42 @@ import lombok.Data; @Data public class TwoExcelVo { - @ExportEntityMap(CnName = "序号", EnName = "rankNo") - private Integer rankNo; - @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") + @ExportEntityMap(CnName = "采购系统*", EnName = "purchaseSystemName") private String purchaseSystemName; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "品牌名称*", EnName = "brandName") + private String brandName; + @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") private String rebateTypeValue; - @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") private String rebateName; - - @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") private String estimateRebate; - @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") + @ExportEntityMap(CnName = "其中预提费用*", EnName = "expectCost") + private String expectCost; + @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") + private String uploadDate; + @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") private String uploadMoney; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") - private String stayDetermineMoney; - @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") - private String adjustmentMoney; - @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") - private String notUploadMoney; - - @ExportEntityMap(CnName = "预提", EnName = "withholdCost") - private String withholdCost; - @ExportEntityMap(CnName = "上传", EnName = "money") + @ExportEntityMap(CnName = "其中费用*", EnName = "money") private String money; - - @ExportEntityMap(CnName = "创建", EnName = "createTime") - private String createTime; - @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") - private String withholdingDate; - @ExportEntityMap(CnName = "上传", EnName = "uploadDate") - private String uploadDate; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + private String stayDetermineMoney; + @ExportEntityMap(CnName = "二次上传日期*", EnName = "secondaryUploadDate") private String secondaryUploadDate; - - @ExportEntityMap(CnName = "上传", EnName = "uploadState") - private String uploadState; - @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") - private String onceCheckState; - @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") - private String secondCheckState; - - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; + @ExportEntityMap(CnName = "二次上传金额*", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "其中支出费用*", EnName = "secondItureCost") + private String secondItureCost; + @ExportEntityMap(CnName = "其中待支付费用*", EnName = "secondTreatCost") + private String secondTreatCost; + @ExportEntityMap(CnName = "其中抵顶费用*", EnName = "secondSuppCost") + private String secondSuppCost; + @ExportEntityMap(CnName = "抵顶费用说明", EnName = "secondSuppRemark") + private String secondSuppRemark; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") - private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java index 02dd90c0ed..4dcbda163d 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/OneExcelVo.java @@ -14,61 +14,36 @@ import java.util.Date; @Data public class OneExcelVo { - @ExportEntityMap(CnName = "序号", EnName = "rankNo") - private Integer rankNo; - @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") - private String purchaseSystemName; - @ExportEntityMap(CnName = "车架号", EnName = "vinNo") + @ExportEntityMap(CnName = "车架号*", EnName = "vinNo") private String vinNo; - @ExportEntityMap(CnName = "车型", EnName = "vehModelName") - private String vehModelName; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "厂家结算价*", EnName = "manufactorSettlementPrice") + private String manufactorSettlementPrice; + @ExportEntityMap(CnName = "其中运费金额*", EnName = "freight") + private String freight; + @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") private String rebateTypeValue; - @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") private String rebateName; - - @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") private String estimateRebate; - @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") - private String uploadMoney; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") - private String stayDetermineMoney; - @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") - private String adjustmentMoney; - @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") - private String notUploadMoney; - - @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + @ExportEntityMap(CnName = "其中预提费用*", EnName = "withholdCost") private String withholdCost; - @ExportEntityMap(CnName = "上传", EnName = "money") - private String money; - - @ExportEntityMap(CnName = "创建", EnName = "createTime") - private String createTime; - @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") - private String withholdingDate; - @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") private String uploadDate; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") - private String secondaryUploadDate; - - @ExportEntityMap(CnName = "上传", EnName = "uploadState") - private String uploadState; - @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") - private String onceCheckState; - @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") - private String secondCheckState; - - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; + @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + private String uploadMoney; + @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + private String stayDetermineMoney; + @ExportEntityMap(CnName = "待支付费用*", EnName = "onceTreatCost") + private String onceTreatCost; + @ExportEntityMap(CnName = "抵顶费用*", EnName = "onceSuppCost") + private String onceSuppCost; + @ExportEntityMap(CnName = "抵顶费用说明", EnName = "onceSuppRemark") + private String onceSuppRemark; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") - private String createOrgName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java index 74f71f707e..d020be2b6a 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/TwoExcelVo.java @@ -14,61 +14,42 @@ import java.util.Date; @Data public class TwoExcelVo { - @ExportEntityMap(CnName = "序号", EnName = "rankNo") - private Integer rankNo; - @ExportEntityMap(CnName = "采购系统", EnName = "purchaseSystemName") - private String purchaseSystemName; - @ExportEntityMap(CnName = "车架号", EnName = "vinNo") + @ExportEntityMap(CnName = "车架号*", EnName = "vinNo") private String vinNo; - @ExportEntityMap(CnName = "车型", EnName = "vehModelName") - private String vehModelName; - @ExportEntityMap(CnName = "所属年月", EnName = "palceGenDate") - private String palceGenDate; - @ExportEntityMap(CnName = "返利类型", EnName = "rebateTypeValue") + @ExportEntityMap(CnName = "厂家结算价*", EnName = "manufactorSettlementPrice") + private String manufactorSettlementPrice; + @ExportEntityMap(CnName = "其中运费金额*", EnName = "freight") + private String freight; + @ExportEntityMap(CnName = "创建日期*", EnName = "createTime") + private String createTime; + @ExportEntityMap(CnName = "返利类型*", EnName = "rebateTypeValue") private String rebateTypeValue; - @ExportEntityMap(CnName = "返利名称", EnName = "rebateName") + @ExportEntityMap(CnName = "返利名称*", EnName = "rebateName") private String rebateName; - - @ExportEntityMap(CnName = "预提", EnName = "estimateRebate") + @ExportEntityMap(CnName = "预提返利*", EnName = "estimateRebate") private String estimateRebate; - @ExportEntityMap(CnName = "上传", EnName = "uploadMoney") - private String uploadMoney; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadMoney") - private String secondaryUploadMoney; - @ExportEntityMap(CnName = "待确定", EnName = "stayDetermineMoney") - private String stayDetermineMoney; - @ExportEntityMap(CnName = "调整", EnName = "adjustmentMoney") - private String adjustmentMoney; - @ExportEntityMap(CnName = "未上传", EnName = "notUploadMoney") - private String notUploadMoney; - - @ExportEntityMap(CnName = "预提", EnName = "withholdCost") + @ExportEntityMap(CnName = "其中预提费用*", EnName = "withholdCost") private String withholdCost; - @ExportEntityMap(CnName = "上传", EnName = "money") - private String money; - - @ExportEntityMap(CnName = "创建", EnName = "createTime") - private String createTime; - @ExportEntityMap(CnName = "预提", EnName = "withholdingDate") - private String withholdingDate; - @ExportEntityMap(CnName = "上传", EnName = "uploadDate") + @ExportEntityMap(CnName = "所属年月*", EnName = "palceGenDate") + private String palceGenDate; + @ExportEntityMap(CnName = "上传日期*", EnName = "uploadDate") private String uploadDate; - @ExportEntityMap(CnName = "二次上传", EnName = "secondaryUploadDate") + @ExportEntityMap(CnName = "上传金额*", EnName = "uploadMoney") + private String uploadMoney; + @ExportEntityMap(CnName = "待确定金额*", EnName = "stayDetermineMoney") + private String stayDetermineMoney; + @ExportEntityMap(CnName = "其中费用*", EnName = "qzMoney") + private String qzMoney; + @ExportEntityMap(CnName = "二次上传日期*", EnName = "secondaryUploadDate") private String secondaryUploadDate; - - @ExportEntityMap(CnName = "上传", EnName = "uploadState") - private String uploadState; - @ExportEntityMap(CnName = "一次核对", EnName = "onceCheckState") - private String onceCheckState; - @ExportEntityMap(CnName = "二次核对", EnName = "secondCheckState") - private String secondCheckState; - - @ExportEntityMap(CnName = "是否调整", EnName = "isAdjustment") - private String isAdjustment; + @ExportEntityMap(CnName = "二次上传金额*", EnName = "secondaryUploadMoney") + private String secondaryUploadMoney; + @ExportEntityMap(CnName = "待支付费用*", EnName = "secondTreatCost") + private String secondTreatCost; + @ExportEntityMap(CnName = "抵顶费费用*", EnName = "secondSuppCost") + private String secondSuppCost; + @ExportEntityMap(CnName = "抵顶费用说明", EnName = "secondSuppRemark") + private String secondSuppRemark; @ExportEntityMap(CnName = "调整说明", EnName = "adjustmentRemarks") private String adjustmentRemarks; - @ExportEntityMap(CnName = "品牌", EnName = "brandName") - private String brandName; - @ExportEntityMap(CnName = "分公司", EnName = "createOrgName") - private String createOrgName; } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml index d4722b9c27..6a4084cedc 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml @@ -142,44 +142,24 @@ SELECT *, - expectTreatCost + expectSuppCost AS withholdCost, - onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money, - estimateRebate - IFNULL(uploadMoney,0) - IFNULL(secondaryUploadMoney,0) + IFNULL(adjustmentMoney,0) AS notUploadMoney, - IF(secondaryUploadMoney > 0 AND isAdjustment = '是','是','否') AS secondCheckState, - IF( - uploadDate IS NOT NULL - AND uploadDate != '', - '已上传', - '未上传' - ) AS uploadState, - @row_number := @row_number + 1 AS rankNo + expectTreatCost + expectSuppCost AS withholdCost FROM - scm_veh_rebate,( - SELECT - @row_number := 0 - ) AS t + scm_veh_rebate ${ew.sqlSegment} @@ -110,21 +97,9 @@ SELECT *, expectTreatCost + expectSuppCost AS withholdCost, - onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money, - estimateRebate - IFNULL(uploadMoney,0) - IFNULL(secondaryUploadMoney,0) + IFNULL(adjustmentMoney,0) AS notUploadMoney, - IF(secondaryUploadMoney > 0 AND isAdjustment = '是','是','否') AS secondCheckState, - IF( - uploadDate IS NOT NULL - AND uploadDate != '', - '已上传', - '未上传' - ) AS uploadState, - @row_number := @row_number + 1 AS rankNo + onceTreatCost + onceSuppCost AS qzMoney FROM - scm_veh_rebate,( - SELECT - @row_number := 0 - ) AS t + scm_veh_rebate ${ew.sqlSegment} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java index 3a49b4c8a4..929b4805ec 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java @@ -299,147 +299,16 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { @Override public void excelListOne(ScmVehRebateQuery scmVehRebateQuery) { //得到所有要导出的数据 - List dataList = scmVehRebateService.excelListOne(scmVehRebateQuery); - // 创建一个新的Excel文档 - XSSFWorkbook wb = new XSSFWorkbook(); - // 创建一个名为Sheet1的工作表 - XSSFSheet sheet = wb.createSheet("一次导出"); - //样式 - XSSFCellStyle titleStyle = createTitleCellStyle(wb); - XSSFCellStyle headerStyle = createHeadCellStyle(wb); - XSSFCellStyle contentStyle = createContentCellStyle(wb); - // 行号 - int rowNum = 0; - // 创建第一页的第一行,索引从0开始 - XSSFRow row0 = sheet.createRow(rowNum++); - // 设置行高 - row0.setHeight((short) 600); - String[] row_Text = {"序号", "采购系统", "车架号", "车型", "所属年月", "返利类型", "返利名称", "返利金额", "", "", "", "", "", "其中费用", "", "日期", "", "", "", "状态", "", "", "是否调整", "调整说明", "品牌", "分公司"}; - for (int i = 0; i < row_Text.length; i++) { - XSSFCell c00 = row0.createCell(i); - c00.setCellValue(row_Text[i]); - c00.setCellStyle(headerStyle); - } - // 合并单元格,参数依次为起始列,结束列,起始行,结束行 (索引0开始) - sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 1)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 2, 2)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 3, 3)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 4, 4)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 5, 5)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 6, 6)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 7, 12)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 14)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 15, 18)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 19, 21)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 22, 22)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 23, 23)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 24, 24)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 25, 25)); - //第二行 - XSSFRow row2 = sheet.createRow(rowNum++); - row2.setHeight((short) 700); - String[] row_third = {"", "", "", "", "", "", "", "预提", "上传", "二次上传", "待确定", "调整", "未上传", "预提", "上传", "创建", "预提", "上传", "二次上传", "上传", "一次核对", "二次核对", "", "", "", ""}; - for (int i = 0; i < row_third.length; i++) { - XSSFCell tempCell = row2.createCell(i); - tempCell.setCellValue(row_third[i]); - tempCell.setCellStyle(headerStyle); - } - for (OneExcelVo value : dataList) { - XSSFRow tempRow = sheet.createRow(rowNum++); - tempRow.setHeight((short) 500); - // 循环单元格填入数据 - for (int j = 0; j < 26; j++) { - XSSFCell tempCell = tempRow.createCell(j); - tempCell.setCellStyle(contentStyle); - String tempValue = ""; - switch (j) { - case 0: - tempValue = value.getRankNo().toString(); - break; - case 1: - tempValue = value.getPurchaseSystemName(); - break; - case 2: - tempValue = value.getVinNo(); - break; - case 3: - tempValue = value.getVehModelName(); - break; - case 4: - tempValue = value.getPalceGenDate(); - break; - case 5: - tempValue = value.getRebateTypeValue(); - break; - case 6: - tempValue = value.getRebateName(); - break; - case 7: - tempValue = value.getEstimateRebate(); - break; - case 8: - tempValue = value.getUploadMoney(); - break; - case 9: - tempValue = value.getSecondaryUploadMoney(); - break; - case 10: - tempValue = value.getStayDetermineMoney(); - break; - case 11: - tempValue = value.getAdjustmentMoney(); - break; - case 12: - tempValue = value.getNotUploadMoney(); - break; - case 13: - tempValue = value.getWithholdCost(); - break; - case 14: - tempValue = value.getMoney(); - break; - case 15: - tempValue = value.getCreateTime(); - break; - case 16: - tempValue = value.getWithholdingDate(); - break; - case 17: - tempValue = value.getUploadDate(); - break; - case 18: - tempValue = value.getSecondaryUploadDate(); - break; - case 19: - tempValue = value.getUploadState(); - break; - case 20: - tempValue = value.getOnceCheckState(); - break; - case 21: - tempValue = value.getSecondCheckState(); - break; - case 22: - tempValue = value.getIsAdjustment(); - break; - case 23: - tempValue = value.getAdjustmentRemarks(); - break; - case 24: - tempValue = value.getBrandName(); - break; - case 25: - tempValue = value.getCreateOrgName(); - break; - } - tempCell.setCellValue(tempValue); - //列宽自适应,j为自适应的列,true就是自适应,false就是不自适应,默认不自适应 - sheet.autoSizeColumn(j, true); - } + List exportVoList = scmVehRebateService.excelListOne(scmVehRebateQuery); + //定义导出的excel名字 + String excelName = "一次导出"; + String fileNameURL = ""; + try { + fileNameURL = URLEncoder.encode(excelName, "UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); } - //导出到浏览器下载 - buildExcelDocument("一次导出", wb, response); + ExportExcelUtils.export(fileNameURL, exportVoList, OneExcelVo.class, response); } @Override @@ -451,147 +320,16 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { @Override public void excelListTwo(ScmVehRebateQuery scmVehRebateQuery) { //得到所有要导出的数据 - List dataList = scmVehRebateService.excelListTwo(scmVehRebateQuery); - // 创建一个新的Excel文档 - XSSFWorkbook wb = new XSSFWorkbook(); - // 创建一个名为Sheet1的工作表 - XSSFSheet sheet = wb.createSheet("二次导出"); - //样式 - XSSFCellStyle titleStyle = createTitleCellStyle(wb); - XSSFCellStyle headerStyle = createHeadCellStyle(wb); - XSSFCellStyle contentStyle = createContentCellStyle(wb); - // 行号 - int rowNum = 0; - // 创建第一页的第一行,索引从0开始 - XSSFRow row0 = sheet.createRow(rowNum++); - // 设置行高 - row0.setHeight((short) 600); - String[] row_Text = {"序号", "采购系统", "车架号", "车型", "所属年月", "返利类型", "返利名称", "返利金额", "", "", "", "", "", "其中费用", "", "日期", "", "", "", "状态", "", "", "是否调整", "调整说明", "品牌", "分公司"}; - for (int i = 0; i < row_Text.length; i++) { - XSSFCell c00 = row0.createCell(i); - c00.setCellValue(row_Text[i]); - c00.setCellStyle(headerStyle); - } - // 合并单元格,参数依次为起始列,结束列,起始行,结束行 (索引0开始) - sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 1, 1)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 2, 2)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 3, 3)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 4, 4)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 5, 5)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 6, 6)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 7, 12)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 13, 14)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 15, 18)); - sheet.addMergedRegion(new CellRangeAddress(0, 0, 19, 21)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 22, 22)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 23, 23)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 24, 24)); - sheet.addMergedRegion(new CellRangeAddress(0, 1, 25, 25)); - //第二行 - XSSFRow row2 = sheet.createRow(rowNum++); - row2.setHeight((short) 700); - String[] row_third = {"", "", "", "", "", "", "", "预提", "上传", "二次上传", "待确定", "调整", "未上传", "预提", "上传", "创建", "预提", "上传", "二次上传", "上传", "一次核对", "二次核对", "", "", "", ""}; - for (int i = 0; i < row_third.length; i++) { - XSSFCell tempCell = row2.createCell(i); - tempCell.setCellValue(row_third[i]); - tempCell.setCellStyle(headerStyle); - } - for (TwoExcelVo value : dataList) { - XSSFRow tempRow = sheet.createRow(rowNum++); - tempRow.setHeight((short) 500); - // 循环单元格填入数据 - for (int j = 0; j < 26; j++) { - XSSFCell tempCell = tempRow.createCell(j); - tempCell.setCellStyle(contentStyle); - String tempValue = ""; - switch (j) { - case 0: - tempValue = value.getRankNo().toString(); - break; - case 1: - tempValue = value.getPurchaseSystemName(); - break; - case 2: - tempValue = value.getVinNo(); - break; - case 3: - tempValue = value.getVehModelName(); - break; - case 4: - tempValue = value.getPalceGenDate(); - break; - case 5: - tempValue = value.getRebateTypeValue(); - break; - case 6: - tempValue = value.getRebateName(); - break; - case 7: - tempValue = value.getEstimateRebate(); - break; - case 8: - tempValue = value.getUploadMoney(); - break; - case 9: - tempValue = value.getSecondaryUploadMoney(); - break; - case 10: - tempValue = value.getStayDetermineMoney(); - break; - case 11: - tempValue = value.getAdjustmentMoney(); - break; - case 12: - tempValue = value.getNotUploadMoney(); - break; - case 13: - tempValue = value.getWithholdCost(); - break; - case 14: - tempValue = value.getMoney(); - break; - case 15: - tempValue = value.getCreateTime(); - break; - case 16: - tempValue = value.getWithholdingDate(); - break; - case 17: - tempValue = value.getUploadDate(); - break; - case 18: - tempValue = value.getSecondaryUploadDate(); - break; - case 19: - tempValue = value.getUploadState(); - break; - case 20: - tempValue = value.getOnceCheckState(); - break; - case 21: - tempValue = value.getSecondCheckState(); - break; - case 22: - tempValue = value.getIsAdjustment(); - break; - case 23: - tempValue = value.getAdjustmentRemarks(); - break; - case 24: - tempValue = value.getBrandName(); - break; - case 25: - tempValue = value.getCreateOrgName(); - break; - } - tempCell.setCellValue(tempValue); - //列宽自适应,j为自适应的列,true就是自适应,false就是不自适应,默认不自适应 - sheet.autoSizeColumn(j, true); - } + List exportVoList = scmVehRebateService.excelListTwo(scmVehRebateQuery); + //定义导出的excel名字 + String excelName = "二次导出"; + String fileNameURL = ""; + try { + fileNameURL = URLEncoder.encode(excelName, "UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); } - //导出到浏览器下载 - buildExcelDocument("二次导出", wb, response); + ExportExcelUtils.export(fileNameURL, exportVoList, TwoExcelVo.class, response); } @Override diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index 032f3ac981..fa2337e54f 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -591,11 +591,6 @@ public class ScmVehRebateService extends MybatisBaseService oneExcelVos = baseMapper.excelListOne(qw); for (OneExcelVo oneExcelVo : oneExcelVos) { oneExcelVo.setCreateTime(DateUtil.formatDate(DateUtil.parseDate(oneExcelVo.getCreateTime()))); - if ("1".equals(oneExcelVo.getOnceCheckState())){ - oneExcelVo.setOnceCheckState("是"); - }else { - oneExcelVo.setOnceCheckState("否"); - } } return oneExcelVos; } @@ -676,11 +671,6 @@ public class ScmVehRebateService extends MybatisBaseService twoExcelVos = baseMapper.excelListTwo(qw); for (TwoExcelVo twoExcelVo : twoExcelVos) { twoExcelVo.setCreateTime(DateUtil.formatDate(DateUtil.parseDate(twoExcelVo.getCreateTime()))); - if ("1".equals(twoExcelVo.getOnceCheckState())){ - twoExcelVo.setOnceCheckState("是"); - }else { - twoExcelVo.setOnceCheckState("否"); - } } return twoExcelVos; } From b58c6b8d7352093f67067cbe0ed6a0bfce195d8d Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Tue, 25 Feb 2025 09:55:11 +0800 Subject: [PATCH 40/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/goods/goods/index.vue | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/yxt-as-ui/src/views/goods/goods/index.vue b/yxt-as-ui/src/views/goods/goods/index.vue index 9c9364e328..18b13005c2 100644 --- a/yxt-as-ui/src/views/goods/goods/index.vue +++ b/yxt-as-ui/src/views/goods/goods/index.vue @@ -367,15 +367,12 @@ toAdd() { this.viewState = 2 var orgSid = '' - getOrgSidByPath({ - orgPath: window.sessionStorage.getItem('defaultOrgPath') - }).then((res) => { + getOrgSidByPath({ orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => { if (res.success) { orgSid = res.data + this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1)) } }) - this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem( - 'defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1)) }, toEdit() { From 033e5c1cfb019251d17655a9aa0f65a89833fdfd Mon Sep 17 00:00:00 2001 From: fanzongzhe0036 Date: Tue, 25 Feb 2025 09:55:25 +0800 Subject: [PATCH 41/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=EF=BC=8C=E4=BF=9D=E5=AD=98=E8=A7=84=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java index 9b78d9bdc8..fa88df44f4 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java +++ b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java @@ -447,7 +447,7 @@ public class BaseGoodsSpuService extends MybatisBaseService Date: Tue, 25 Feb 2025 11:14:48 +0800 Subject: [PATCH 42/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ScmSpecialRebateService.java | 80 ++++++++++--------- .../biz/scmvehrebate/ScmVehRebateService.java | 80 ++++++++++--------- 2 files changed, 84 insertions(+), 76 deletions(-) diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index 8f70009095..a78532c70b 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -1299,29 +1299,31 @@ public class ScmSpecialRebateService extends MybatisBaseService 0) { - excelInfo.setIsAdjustment("否"); - excelInfo.setAdjustmentMoney("0"); - } else if (i == 0) { - if (scflje.compareTo(ytfy) > 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) == 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) < 0) { + if (StringUtils.isNotBlank(excelInfo.getUploadDate()) && StringUtils.isNotBlank(excelInfo.getUploadMoney())) { + int i = new BigDecimal(excelInfo.getStayDetermineMoney()).compareTo(BigDecimal.ZERO); + //上传返利金额 + BigDecimal scflje = new BigDecimal(excelInfo.getUploadMoney()).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getOnceItureCost())).subtract(new BigDecimal(excelInfo.getOnceTreatCost())).subtract(new BigDecimal(excelInfo.getOnceSuppCost())); + //预提返利-其中预提费用 + BigDecimal ytfy = new BigDecimal(excelInfo.getEstimateRebate()).subtract(new BigDecimal(excelInfo.getExpectCost())); + //调整金额 + BigDecimal tzje = new BigDecimal(excelInfo.getUploadMoney()).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getOnceItureCost())).subtract(new BigDecimal(excelInfo.getOnceTreatCost())).subtract(new BigDecimal(excelInfo.getOnceSuppCost())).subtract(new BigDecimal(excelInfo.getEstimateRebate())).add(new BigDecimal(excelInfo.getExpectCost())); + if (i > 0) { excelInfo.setIsAdjustment("否"); excelInfo.setAdjustmentMoney("0"); + } else if (i == 0) { + if (scflje.compareTo(ytfy) > 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) == 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) < 0) { + excelInfo.setIsAdjustment("否"); + excelInfo.setAdjustmentMoney("0"); + } } + excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } - excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } } StringBuffer sbcheck1 = new StringBuffer(); @@ -1826,29 +1828,31 @@ public class ScmSpecialRebateService extends MybatisBaseService 0) { - excelInfo.setIsAdjustment("否"); - excelInfo.setAdjustmentMoney("0"); - } else if (i == 0) { - if (scflje.compareTo(ytfy) > 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) == 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) < 0) { + if (StringUtils.isNotBlank(excelInfo.getSecondaryUploadDate()) && StringUtils.isNotBlank(excelInfo.getSecondaryUploadMoney())) { + int i = new BigDecimal(excelInfo.getStayDetermineMoney()).compareTo(BigDecimal.ZERO); + //上传返利金额 + BigDecimal scflje = new BigDecimal(excelInfo.getUploadMoney()).add(new BigDecimal(excelInfo.getSecondaryUploadMoney())).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getMoney())).subtract(new BigDecimal(excelInfo.getSecondItureCost())).subtract(new BigDecimal(excelInfo.getSecondTreatCost())).subtract(new BigDecimal(excelInfo.getSecondSuppCost())); + //预提返利-其中预提费用 + BigDecimal ytfy = new BigDecimal(excelInfo.getEstimateRebate()).subtract(new BigDecimal(excelInfo.getExpectCost())); + //调整金额 + BigDecimal tzje = new BigDecimal(excelInfo.getUploadMoney()).add(new BigDecimal(excelInfo.getSecondaryUploadMoney())).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getMoney())).subtract(new BigDecimal(excelInfo.getSecondItureCost())).subtract(new BigDecimal(excelInfo.getSecondTreatCost())).subtract(new BigDecimal(excelInfo.getSecondSuppCost())).subtract(new BigDecimal(excelInfo.getEstimateRebate())).add(new BigDecimal(excelInfo.getExpectCost())); + if (i > 0) { excelInfo.setIsAdjustment("否"); excelInfo.setAdjustmentMoney("0"); + } else if (i == 0) { + if (scflje.compareTo(ytfy) > 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) == 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) < 0) { + excelInfo.setIsAdjustment("否"); + excelInfo.setAdjustmentMoney("0"); + } } + excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } - excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } } StringBuffer sbcheck1 = new StringBuffer(); diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index fa2337e54f..2c4fc1208c 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -1606,29 +1606,31 @@ public class ScmVehRebateService extends MybatisBaseService 0) { - excelInfo.setIsAdjustment("否"); - excelInfo.setAdjustmentMoney("0"); - } else if (i == 0) { - if (scflje.compareTo(ytfy) > 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) == 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) < 0) { + if (StringUtils.isNotBlank(excelInfo.getUploadDate()) && StringUtils.isNotBlank(excelInfo.getUploadMoney())){ + int i = new BigDecimal(excelInfo.getStayDetermineMoney()).compareTo(BigDecimal.ZERO); + //上传返利金额 + BigDecimal scflje = new BigDecimal(excelInfo.getUploadMoney()).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getOnceTreatCost())).subtract(new BigDecimal(excelInfo.getOnceSuppCost())); + //预提返利-其中预提费用 + BigDecimal ytfy = new BigDecimal(excelInfo.getEstimateRebate()).subtract(new BigDecimal(excelInfo.getWithholdCost())); + //调整金额 + BigDecimal tzje = new BigDecimal(excelInfo.getUploadMoney()).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getOnceTreatCost())).subtract(new BigDecimal(excelInfo.getOnceSuppCost())).subtract(new BigDecimal(excelInfo.getEstimateRebate())).add(new BigDecimal(excelInfo.getWithholdCost())); + if (i > 0) { excelInfo.setIsAdjustment("否"); excelInfo.setAdjustmentMoney("0"); + } else if (i == 0) { + if (scflje.compareTo(ytfy) > 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) == 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) < 0) { + excelInfo.setIsAdjustment("否"); + excelInfo.setAdjustmentMoney("0"); + } } + excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } - excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } } StringBuffer sbcheck1 = new StringBuffer(); @@ -2097,29 +2099,31 @@ public class ScmVehRebateService extends MybatisBaseService 0) { - excelInfo.setIsAdjustment("否"); - excelInfo.setAdjustmentMoney("0"); - } else if (i == 0) { - if (scflje.compareTo(ytfy) > 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) == 0) { - excelInfo.setIsAdjustment("是"); - excelInfo.setAdjustmentMoney(tzje.toString()); - } else if (scflje.compareTo(ytfy) < 0) { + if (StringUtils.isNotBlank(excelInfo.getSecondaryUploadDate()) && StringUtils.isNotBlank(excelInfo.getSecondaryUploadMoney())){ + int i = new BigDecimal(excelInfo.getStayDetermineMoney()).compareTo(BigDecimal.ZERO); + //上传返利金额 + BigDecimal scflje = new BigDecimal(excelInfo.getUploadMoney()).add(new BigDecimal(excelInfo.getSecondaryUploadMoney())).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getQzMoney())).subtract(new BigDecimal(excelInfo.getSecondTreatCost())).subtract(new BigDecimal(excelInfo.getSecondSuppCost())); + //预提返利-其中预提费用 + BigDecimal ytfy = new BigDecimal(excelInfo.getEstimateRebate()).subtract(new BigDecimal(excelInfo.getWithholdCost())); + //调整金额 + BigDecimal tzje = new BigDecimal(excelInfo.getUploadMoney()).add(new BigDecimal(excelInfo.getSecondaryUploadMoney())).subtract(new BigDecimal(excelInfo.getStayDetermineMoney())).subtract(new BigDecimal(excelInfo.getQzMoney())).subtract(new BigDecimal(excelInfo.getSecondTreatCost())).subtract(new BigDecimal(excelInfo.getSecondSuppCost())).subtract(new BigDecimal(excelInfo.getEstimateRebate())).add(new BigDecimal(excelInfo.getWithholdCost())); + if (i > 0) { excelInfo.setIsAdjustment("否"); excelInfo.setAdjustmentMoney("0"); + } else if (i == 0) { + if (scflje.compareTo(ytfy) > 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) == 0) { + excelInfo.setIsAdjustment("是"); + excelInfo.setAdjustmentMoney(tzje.toString()); + } else if (scflje.compareTo(ytfy) < 0) { + excelInfo.setIsAdjustment("否"); + excelInfo.setAdjustmentMoney("0"); + } } + excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } - excelInfo.setDiffAmount(scflje.subtract(ytfy).toString()); } } StringBuffer sbcheck1 = new StringBuffer(); From 0d69782a74862592b6f034b2fa3549b6d28d787a Mon Sep 17 00:00:00 2001 From: fanzongzhe0036 Date: Tue, 25 Feb 2025 11:58:44 +0800 Subject: [PATCH 43/90] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B5=84=E6=96=B9?= =?UTF-8?q?=E7=BB=93=E6=B8=85=E4=BB=98=E6=AC=BE=E5=87=BA=E7=BA=B3=E4=BB=98?= =?UTF-8?q?=E6=AC=BE=E5=88=97=E8=A1=A8=E5=87=AD=E8=AF=81=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FinCollectionConfirmationFeign.java | 2 +- .../fin/biz/kingdee/FinKingDeeFeignRest.java | 107 ++++++++++-------- 2 files changed, 61 insertions(+), 48 deletions(-) diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java index 6a8b3b74fa..e7d30a0c86 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java @@ -118,7 +118,7 @@ public interface FinCollectionConfirmationFeign { @PostMapping("/selectSids") ResultBean> selectSids(@RequestParam("busVehSid") String busVehSid); - /*-------------------------------------------------------------------------*/ + /*-----------------------------售后认款申请--------------------------------------------*/ @ApiOperation("售后提交新增保存") @PostMapping("/asSave") diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java index 6e0ec95e01..f459056e4f 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java @@ -1656,21 +1656,23 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { bankCode = dictCommonVo.getDictValue(); } if (voucherDetail.getSceneCode().equals(SceneCodeEnum.settle_VOUCHER1.getCode())) { - Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方 - dto1.setSummary(voucherDetail.getBankName() + "结清"); - dto1.setSubjectNo(bankCode); - dto1.setDimensionDept(voucherDetail.getDeptCode()); - dto1.setDimensionCustom(voucherDetail.getCustomerCode()); - dto1.setDebit(String.valueOf(voucherDetail.getAmount())); - resultDetails.add(dto1); - if (voucherDetail.getPaymentCharges().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getAmount().compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方 + dto1.setSummary(voucherDetail.getBankName() + "结清"); + dto1.setSubjectNo(bankCode); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + if (voucherDetail.getPaymentCharges().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto0 = new Voucher.VoucherResultDetailDto(); //借方 dto0.setSummary("付款手续费"); dto0.setSubjectNo("6603.03.00"); dto0.setDebit(String.valueOf(voucherDetail.getPaymentCharges())); resultDetails.add(dto0); } - if (voucherDetail.getNoRelief().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getNoRelief().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //借方 dto2.setSummary(voucherDetail.getBankName() + "结清未到期利息不减免"); dto2.setSubjectNo("6002.01.17"); @@ -1678,49 +1680,58 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { dto2.setCredit(String.valueOf(voucherDetail.getNoRelief())); resultDetails.add(dto2); } - if (voucherDetail.getRelief().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getRelief().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto3 = new Voucher.VoucherResultDetailDto(); //借方 dto3.setSummary(voucherDetail.getBankName() + "结清未到期利息减免"); dto3.setSubjectNo("1201.01.00"); dto3.setDimensionDept(voucherDetail.getDeptCode()); - dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto3.setDimensionCustom(voucherDetail.getCustomerCode()); dto3.setCredit(String.valueOf(voucherDetail.getRelief())); resultDetails.add(dto3); } - Voucher.VoucherResultDetailDto dto4 = new Voucher.VoucherResultDetailDto(); //贷方 - dto4.setSummary(voucherDetail.getBankName() + "个贷保证金抵结清款"); - dto4.setSubjectNo("1009.01.00"); - dto4.setDimensionDept(voucherDetail.getDeptCode()); - dto4.setDimensionCustom(voucherDetail.getCustomerCode()); - dto4.setBank("342"); - dto4.setCredit(String.valueOf(voucherDetail.getSubtrahend())); - resultDetails.add(dto4); - Voucher.VoucherResultDetailDto dto5 = new Voucher.VoucherResultDetailDto(); //贷方 - dto5.setSummary(voucherDetail.getBankName() + "结清"); - if (voucher.getPayTypeCode().equals("02")) { - dto5.setSubjectNo("1002.01.00"); - } else if (voucher.getPayTypeCode().equals("01")) { - dto5.setSubjectNo("1002.02.01"); + if (voucherDetail.getSubtrahend().compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto dto4 = new Voucher.VoucherResultDetailDto(); //贷方 + dto4.setSummary(voucherDetail.getBankName() + "个贷保证金抵结清款"); + dto4.setSubjectNo("1009.01.00"); + dto4.setDimensionDept(voucherDetail.getDeptCode()); + dto4.setDimensionCustom(voucherDetail.getCustomerCode()); + dto4.setBank("342"); + dto4.setCredit(String.valueOf(voucherDetail.getSubtrahend())); + resultDetails.add(dto4); + } + + if (voucherDetail.getBalance().compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto dto5 = new Voucher.VoucherResultDetailDto(); //贷方 + dto5.setSummary(voucherDetail.getBankName() + "结清"); + if (voucher.getPayTypeCode().equals("02")) { + dto5.setSubjectNo("1002.01.00"); + } else if (voucher.getPayTypeCode().equals("01")) { + dto5.setSubjectNo("1002.02.01"); + } + dto5.setBankAccount(voucher.getBankAccount()); + dto5.setCredit(String.valueOf(voucherDetail.getBalance())); + resultDetails.add(dto5); } - dto5.setBankAccount(voucher.getBankAccount()); - dto5.setCredit(String.valueOf(voucherDetail.getBalance())); - resultDetails.add(dto5); + } else { - Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方 - dto1.setSummary(voucherDetail.getBankName() + "结清"); - dto1.setSubjectNo(bankCode); - dto1.setDimensionDept(voucherDetail.getDeptCode()); - dto1.setDimensionCustom(voucherDetail.getCustomerCode()); - dto1.setDebit(String.valueOf(voucherDetail.getAmount())); - resultDetails.add(dto1); - if (voucherDetail.getPaymentCharges().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getAmount().compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto dto1 = new Voucher.VoucherResultDetailDto(); //借方 + dto1.setSummary(voucherDetail.getBankName() + "结清"); + dto1.setSubjectNo(bankCode); + dto1.setDimensionDept(voucherDetail.getDeptCode()); + dto1.setDimensionCustom(voucherDetail.getCustomerCode()); + dto1.setDebit(String.valueOf(voucherDetail.getAmount())); + resultDetails.add(dto1); + } + + if (voucherDetail.getPaymentCharges().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto0 = new Voucher.VoucherResultDetailDto(); //借方 dto0.setSummary("付款手续费"); dto0.setSubjectNo("6603.03.00"); dto0.setDebit(String.valueOf(voucherDetail.getPaymentCharges())); resultDetails.add(dto0); } - if (voucherDetail.getNoRelief().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getNoRelief().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto2 = new Voucher.VoucherResultDetailDto(); //借方 dto2.setSummary(voucherDetail.getBankName() + "结清未到期利息不减免"); dto2.setSubjectNo("6002.01.17"); @@ -1728,7 +1739,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { dto2.setCredit(String.valueOf(voucherDetail.getNoRelief())); resultDetails.add(dto2); } - if (voucherDetail.getRelief().compareTo(BigDecimal.ZERO) > 0) { + if (voucherDetail.getRelief().compareTo(BigDecimal.ZERO) != 0) { Voucher.VoucherResultDetailDto dto3 = new Voucher.VoucherResultDetailDto(); //借方 dto3.setSummary(voucherDetail.getBankName() + "结清未到期利息减免"); dto3.setSubjectNo("1201.01.00"); @@ -1737,16 +1748,18 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { dto3.setCredit(String.valueOf(voucherDetail.getRelief())); resultDetails.add(dto3); } - Voucher.VoucherResultDetailDto dto4 = new Voucher.VoucherResultDetailDto(); //贷方 - dto4.setSummary(voucherDetail.getBankName() + "结清"); - if (voucher.getPayTypeCode().equals("02")) { - dto4.setSubjectNo("1002.01.00"); - } else if (voucher.getPayTypeCode().equals("01")) { - dto4.setSubjectNo("1002.02.01"); + if (voucherDetail.getBalance().compareTo(BigDecimal.ZERO) != 0) { + Voucher.VoucherResultDetailDto dto4 = new Voucher.VoucherResultDetailDto(); //贷方 + dto4.setSummary(voucherDetail.getBankName() + "结清"); + if (voucher.getPayTypeCode().equals("02")) { + dto4.setSubjectNo("1002.01.00"); + } else if (voucher.getPayTypeCode().equals("01")) { + dto4.setSubjectNo("1002.02.01"); + } + dto4.setBankAccount(voucher.getBankAccount()); + dto4.setCredit(String.valueOf(voucherDetail.getBalance())); + resultDetails.add(dto4); } - dto4.setBankAccount(voucher.getBankAccount()); - dto4.setCredit(String.valueOf(voucherDetail.getBalance())); - resultDetails.add(dto4); } } newVoucher.setResultDetails(resultDetails); From c02050eb36d1220e09b1e9ddd8b94a8fc691fd9f Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Tue, 25 Feb 2025 15:24:22 +0800 Subject: [PATCH 44/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E4=B8=93=E9=A1=B9?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9=E3=80=81=E4=B8=93?= =?UTF-8?q?=E9=A1=B9=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9--?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bicyclerebatetobechecked.vue | 72 ++++++++++++++++++ .../bicyclerebatemanagement.vue | 74 ++++++++++++++++++- .../specialrebatetobechecked.vue | 71 +++++++++++++++++- .../specialrebatemanagement.vue | 74 ++++++++++++++++++- 4 files changed, 287 insertions(+), 4 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue index d76a63314f..1ce250d3f7 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue @@ -29,6 +29,17 @@ + + + + + + + + + + + @@ -40,6 +51,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + +
查询 @@ -431,6 +467,26 @@ export default { dictValue: '是' } ], + uploadState_list: [ + { + dictKey: '1', + dictValue: '已上传' + }, + { + dictKey: '0', + dictValue: '未上传' + } + ], + whether_list: [ + { + dictKey: '1', + dictValue: '是' + }, + { + dictKey: '0', + dictValue: '否' + } + ], listLoading: false, listQuery: { params: { @@ -444,6 +500,14 @@ export default { state: '', createEndTime: '', createStartTime: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' @@ -584,6 +648,14 @@ export default { state: '', createEndTime: '', createStartTime: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue index 8ff6546308..db181fbc31 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue @@ -28,6 +28,17 @@ + + + + + + + + + + + @@ -36,11 +47,36 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + +
查询 @@ -238,6 +274,26 @@ export default { FormLoading: false, listLoading: false, rebateType_list: [], + uploadState_list: [ + { + dictKey: '1', + dictValue: '已上传' + }, + { + dictKey: '0', + dictValue: '未上传' + } + ], + whether_list: [ + { + dictKey: '1', + dictValue: '是' + }, + { + dictKey: '0', + dictValue: '否' + } + ], state_list: [ { dictKey: '0', @@ -272,6 +328,14 @@ export default { vinNo: '', vehModelName: '', brandName: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' @@ -399,6 +463,14 @@ export default { vinNo: '', vehModelName: '', brandName: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue index d5892e58d6..7e2dadb519 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue @@ -34,9 +34,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + @@ -83,7 +114,7 @@ - + @@ -410,6 +441,26 @@ export default { sids: [], FormLoading: false, rebateType_list: [], + uploadState_list: [ + { + dictKey: '1', + dictValue: '已上传' + }, + { + dictKey: '0', + dictValue: '未上传' + } + ], + whether_list: [ + { + dictKey: '1', + dictValue: '是' + }, + { + dictKey: '0', + dictValue: '否' + } + ], state_list: [ { dictKey: '0', @@ -436,6 +487,14 @@ export default { onceCheckState: '', createEndTime: '', createStartTime: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' @@ -583,6 +642,14 @@ export default { onceCheckState: '', createEndTime: '', createStartTime: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' diff --git a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue index 1df8cd08c9..d871a689c5 100644 --- a/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue +++ b/anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue @@ -22,6 +22,17 @@ + + + + + + + + + + + @@ -30,11 +41,36 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + +
查询 @@ -213,6 +249,26 @@ export default { FormLoading: false, listLoading: false, rebateType_list: [], + uploadState_list: [ + { + dictKey: '1', + dictValue: '已上传' + }, + { + dictKey: '0', + dictValue: '未上传' + } + ], + whether_list: [ + { + dictKey: '1', + dictValue: '是' + }, + { + dictKey: '0', + dictValue: '否' + } + ], state_list: [ { dictKey: '0', @@ -254,6 +310,14 @@ export default { createOrgName: '', purchaseSystemName: '', brandName: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' @@ -385,6 +449,14 @@ export default { createOrgName: '', purchaseSystemName: '', brandName: '', + palceGenDate: '', + withholdingDate: '', + uploadStartDate: '', + uploadEndDate: '', + uploadState: '', + isAdjustment: '', + isUploadFinish: '', + secondUploadState: '', orgPath: '', userSid: '', menuUrl: '' From 07c92aaa1bde92a0bfb5c3348183bfebd9581e8e Mon Sep 17 00:00:00 2001 From: ligaode Date: Tue, 25 Feb 2025 15:39:40 +0800 Subject: [PATCH 45/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseInternalPurchaseFeign.java | 23 +-- .../BaseAccadjApplyService.java | 38 +---- .../api/scmvehrebate/ScmVehRebateFeign.java | 16 -- .../ScmSpecialRebateService.java | 144 ++++++++++++++++++ .../biz/scmvehrebate/ScmVehRebateService.java | 127 +++++++++++++-- 5 files changed, 268 insertions(+), 80 deletions(-) diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java index 383ab4681d..a88b1278f5 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java @@ -38,23 +38,9 @@ import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; - import javax.validation.Valid; import java.util.List; -/** - * Project: anrui-base(内申请管理)
- * File: BaseInternalPurchaseFeign.java
- * Class: com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseFeign
- * Description: 内购表.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2022-06-16 13:46:25
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Api(tags = "内购表") @FeignClient( contextId = "anrui-base-BaseInternalPurchase", @@ -72,12 +58,12 @@ public interface BaseInternalPurchaseFeign { @PostMapping("/save") @ResponseBody public ResultBean save(@RequestBody BaseInternalPurchaseDto dto); - + @ApiOperation("根据sid删除记录") @DeleteMapping("/delBySids") @ResponseBody public ResultBean delBySids(@RequestBody String[] sids); - + @ApiOperation("根据SID获取一条记录") @GetMapping("/fetchDetailsBySid/{sid}") @ResponseBody @@ -91,6 +77,7 @@ public interface BaseInternalPurchaseFeign { /** * 申请方审批同意、应对方审批同意(除申请方最后一个环节) + * * @param bvd * @return */ @@ -100,6 +87,7 @@ public interface BaseInternalPurchaseFeign { /** * 申请方跳应对方的同意 + * * @param bvd * @return */ @@ -109,6 +97,7 @@ public interface BaseInternalPurchaseFeign { /** * 分公司到事业部同意 + * * @param bvd * @return */ @@ -138,6 +127,6 @@ public interface BaseInternalPurchaseFeign { @ApiOperation(value = "移动端调车详情") @PostMapping(value = "/getCompanyShunting/{sid}") - ResultBean getCompanyShunting(@PathVariable("sid")String sid); + ResultBean getCompanyShunting(@PathVariable("sid") String sid); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java index e36c63305a..018357a735 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseaccadjapply/BaseAccadjApplyService.java @@ -28,7 +28,6 @@ package com.yxt.anrui.base.biz.baseaccadjapply; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.TypeReference; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.baseaccadjapply.*; @@ -37,25 +36,13 @@ import com.yxt.anrui.base.api.baseaccadjapply.flow.GetNodeQuery; import com.yxt.anrui.base.api.baseaccadjapply.flow.GetNodeVo; import com.yxt.anrui.base.api.baseaccadjapply.flow.SubmitBaseAccAdjApplyDto; import com.yxt.anrui.base.api.baseaccadjapplyeveh.BaseAccadjApplyeVeh; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase; import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicle; import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleDetailsVo; -import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturer; -import com.yxt.anrui.base.api.basemanufacturer.BaseManufacturerDetailsVo; -import com.yxt.anrui.base.api.basemanufacturerbank.BaseManPayVo; -import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationDetailsVo; import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo; -import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign; import com.yxt.anrui.base.api.basevehicle.BaseVehicle; -import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; -import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo; import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand; -import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel; -import com.yxt.anrui.base.api.basevehinstall.BaseVehinstallDetailsVo; import com.yxt.anrui.base.biz.baseaccadjapplyeveh.BaseAccadjApplyeVehService; -import com.yxt.anrui.base.biz.baseinternalpurchase.BaseInternalPurchaseService; import com.yxt.anrui.base.biz.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleService; -import com.yxt.anrui.base.biz.basemanufacturer.BaseManufacturerService; import com.yxt.anrui.base.biz.basemanufacturerbank.BaseManufacturerBankService; import com.yxt.anrui.base.biz.basepurchasesystem.BasePurchaseSystemService; import com.yxt.anrui.base.biz.basevehicle.BaseVehicleService; @@ -80,7 +67,6 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; -import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList; import com.yxt.anrui.portal.api.sysorganization.SysOrganization; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; @@ -88,43 +74,24 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.portal.api.sysuser.SysUserVo; -import com.yxt.anrui.portal.api.sysuser.UserQuery; import com.yxt.anrui.portal.api.sysuser.UserRoleQuery; import com.yxt.anrui.scm.api.scmapplyinboundquery.ScmApplyInboundQueryDto; import com.yxt.anrui.scm.api.scmapplyinboundquery.ScmApplyInboundQueryFeign; -import com.yxt.anrui.scm.api.scmapplyinboundvehicle.ScmApplyInboundVehicleDto; import com.yxt.anrui.scm.api.scmapplyinboundvehquery.ScmApplyInboundVehQueryDto; import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseFeign; import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseVo; -import com.yxt.common.base.utils.HanZiConverterPinYin; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - import javax.annotation.Resource; -import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; -/** - * Project: anrui-base(调账管理)
- * File: BaseAccadjApplyService.java
- * Class: com.yxt.anrui.base.biz.baseaccadjapply.BaseAccadjApplyService
- * Description: 调账申请表 业务逻辑.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2022-07-07 16:57:24
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Service public class BaseAccadjApplyService extends MybatisBaseService { @@ -1083,6 +1050,7 @@ public class BaseAccadjApplyService extends MybatisBaseService purchaseSids = baseAccadjApplyeVehService.fetchByMainSid(baseAccadjApply.getSid()); if (query.getUserSid().equals(baseAccadjApply.getCreateBySid())) { FlowTaskVo flowTaskVo = new FlowTaskVo(); BeanUtil.copyProperties(query, flowTaskVo); @@ -1092,9 +1060,11 @@ public class BaseAccadjApplyService extends MybatisBaseService map = BeanUtil.beanToMap(resultBean.getData()); updateFlowFiled(map); + for (String purchaseSid : purchaseSids) { + baseInternalPurchaseVehicleService.updateIsAccadj(purchaseSid, "0"); + } return rb.success().setData(resultBean.getData()); } - List purchaseSids = baseAccadjApplyeVehService.fetchByMainSid(baseAccadjApply.getSid()); String businessTaskId = baseAccadjApply.getTaskId(); if (StringUtils.isNotBlank(businessTaskId)) { if (businessTaskId.equals(query.getTaskId())) { diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java index 55cf9d34c4..5fdc75f1ea 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java @@ -25,8 +25,6 @@ *********************************************************/ package com.yxt.anrui.scm.api.scmvehrebate; -import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithQuery; -import com.yxt.anrui.scm.api.scmvehrebatewith.ScmVehRebateWithVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import com.yxt.common.core.query.PagerQuery; @@ -35,25 +33,11 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; - import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.text.ParseException; import java.util.List; -/** - * Project: anrui-scm(单车返利)
- * File: ScmVehRebateFeign.java
- * Class: com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateFeign
- * Description: 单车返利表.
- * Copyright: Copyright (c) 2011
- * Company: https://gitee.com/liuzp315
- * Makedate: 2022-08-24 09:01:54
- * - * @author liupopo - * @version 1.0 - * @since 1.0 - */ @Api(tags = "单车返利表") @FeignClient( contextId = "anrui-scm-ScmVehRebate", diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index a78532c70b..2862ce2998 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -151,6 +151,54 @@ public class ScmSpecialRebateService extends MybatisBaseService wrapper.eq("uploadDate", "") + .or().isNull("uploadDate") + ); + } else { + qw.ne("uploadDate", ""); + qw.isNotNull("uploadDate"); + } + } + if (StringUtils.isNotBlank(query.getIsAdjustment())) { + qw.eq("isAdjustment", query.getIsAdjustment()); + } + if (StringUtils.isNotBlank(query.getIsUploadFinish())) { + if (query.getIsUploadFinish().equals("是")) { + qw.eq("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } else { + qw.ne("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } + } + if (StringUtils.isNotBlank(query.getOnceCheckState())) { + qw.eq("onceCheckState", query.getOnceCheckState()); + } + if (StringUtils.isNotBlank(query.getSecondUploadState())) { + if (query.getSecondUploadState().equals("是")) { + qw.isNotNull("secondaryUploadMoney"); + qw.ne("secondaryUploadMoney", ""); + qw.ne("secondaryUploadMoney", 0); + qw.eq("isAdjustment", "是"); + } else { + qw.and(wrapper -> wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); + } + } + String uploadStartDate = query.getUploadStartDate(); + String uploadEndDate = query.getUploadEndDate(); + qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"). + or(). + apply(StringUtils.isNotBlank(uploadStartDate), "date_format (secondaryUploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" + ); String createStartTime = query.getCreateStartTime(); String createEndTime = query.getCreateEndTime(); qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). @@ -391,6 +439,54 @@ public class ScmSpecialRebateService extends MybatisBaseService wrapper.eq("uploadDate", "") + .or().isNull("uploadDate") + ); + } else { + qw.ne("uploadDate", ""); + qw.isNotNull("uploadDate"); + } + } + if (StringUtils.isNotBlank(query.getIsAdjustment())) { + qw.eq("isAdjustment", query.getIsAdjustment()); + } + if (StringUtils.isNotBlank(query.getIsUploadFinish())) { + if (query.getIsUploadFinish().equals("是")) { + qw.eq("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } else { + qw.ne("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } + } + if (StringUtils.isNotBlank(query.getOnceCheckState())) { + qw.eq("onceCheckState", query.getOnceCheckState()); + } + if (StringUtils.isNotBlank(query.getSecondUploadState())) { + if (query.getSecondUploadState().equals("是")) { + qw.isNotNull("secondaryUploadMoney"); + qw.ne("secondaryUploadMoney", ""); + qw.ne("secondaryUploadMoney", 0); + qw.eq("isAdjustment", "是"); + } else { + qw.and(wrapper -> wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); + } + } + String uploadStartDate = query.getUploadStartDate(); + String uploadEndDate = query.getUploadEndDate(); + qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"). + or(). + apply(StringUtils.isNotBlank(uploadStartDate), "date_format (secondaryUploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" + ); String createStartTime = query.getCreateStartTime(); String createEndTime = query.getCreateEndTime(); qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). @@ -473,6 +569,54 @@ public class ScmSpecialRebateService extends MybatisBaseService wrapper.eq("uploadDate", "") + .or().isNull("uploadDate") + ); + } else { + qw.ne("uploadDate", ""); + qw.isNotNull("uploadDate"); + } + } + if (StringUtils.isNotBlank(query.getIsAdjustment())) { + qw.eq("isAdjustment", query.getIsAdjustment()); + } + if (StringUtils.isNotBlank(query.getIsUploadFinish())) { + if (query.getIsUploadFinish().equals("是")) { + qw.eq("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } else { + qw.ne("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } + } + if (StringUtils.isNotBlank(query.getOnceCheckState())) { + qw.eq("onceCheckState", query.getOnceCheckState()); + } + if (StringUtils.isNotBlank(query.getSecondUploadState())) { + if (query.getSecondUploadState().equals("是")) { + qw.isNotNull("secondaryUploadMoney"); + qw.ne("secondaryUploadMoney", ""); + qw.ne("secondaryUploadMoney", 0); + qw.eq("isAdjustment", "是"); + } else { + qw.and(wrapper -> wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); + } + } + String uploadStartDate = query.getUploadStartDate(); + String uploadEndDate = query.getUploadEndDate(); + qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"). + or(). + apply(StringUtils.isNotBlank(uploadStartDate), "date_format (secondaryUploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" + ); String createStartTime = query.getCreateStartTime(); String createEndTime = query.getCreateEndTime(); qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index 2c4fc1208c..7c74d53b98 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -54,7 +54,6 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; - import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; @@ -150,10 +149,11 @@ public class ScmVehRebateService extends MybatisBaseService wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); } } - String createStartTime = query.getCreateStartTime(); - String createEndTime = query.getCreateEndTime(); - qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). - apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" - ); String uploadStartDate = query.getUploadStartDate(); String uploadEndDate = query.getUploadEndDate(); qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). @@ -196,6 +196,11 @@ public class ScmVehRebateService extends MybatisBaseService= date_format('" + uploadStartDate + "','%Y-%m-%d')"). apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" ); + String createStartTime = query.getCreateStartTime(); + String createEndTime = query.getCreateEndTime(); + qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" + ); qw.orderByDesc("createTime"); IPage page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.selectPageVo(page, qw); @@ -399,6 +404,54 @@ public class ScmVehRebateService extends MybatisBaseService wrapper.eq("uploadDate", "") + .or().isNull("uploadDate") + ); + } else { + qw.ne("uploadDate", ""); + qw.isNotNull("uploadDate"); + } + } + if (StringUtils.isNotBlank(query.getIsAdjustment())) { + qw.eq("isAdjustment", query.getIsAdjustment()); + } + if (StringUtils.isNotBlank(query.getIsUploadFinish())) { + if (query.getIsUploadFinish().equals("是")) { + qw.eq("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } else { + qw.ne("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } + } + if (StringUtils.isNotBlank(query.getOnceCheckState())) { + qw.eq("onceCheckState", query.getOnceCheckState()); + } + if (StringUtils.isNotBlank(query.getSecondUploadState())) { + if (query.getSecondUploadState().equals("是")) { + qw.isNotNull("secondaryUploadMoney"); + qw.ne("secondaryUploadMoney", ""); + qw.ne("secondaryUploadMoney", 0); + qw.eq("isAdjustment", "是"); + } else { + qw.and(wrapper -> wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); + } + } + String uploadStartDate = query.getUploadStartDate(); + String uploadEndDate = query.getUploadEndDate(); + qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"). + or(). + apply(StringUtils.isNotBlank(uploadStartDate), "date_format (secondaryUploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" + ); String createStartTime = query.getCreateStartTime(); String createEndTime = query.getCreateEndTime(); qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). @@ -484,6 +537,54 @@ public class ScmVehRebateService extends MybatisBaseService wrapper.eq("uploadDate", "") + .or().isNull("uploadDate") + ); + } else { + qw.ne("uploadDate", ""); + qw.isNotNull("uploadDate"); + } + } + if (StringUtils.isNotBlank(query.getIsAdjustment())) { + qw.eq("isAdjustment", query.getIsAdjustment()); + } + if (StringUtils.isNotBlank(query.getIsUploadFinish())) { + if (query.getIsUploadFinish().equals("是")) { + qw.eq("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } else { + qw.ne("estimateRebate - uploadMoney - secondaryUploadMoney + adjustmentMoney", 0); + } + } + if (StringUtils.isNotBlank(query.getOnceCheckState())) { + qw.eq("onceCheckState", query.getOnceCheckState()); + } + if (StringUtils.isNotBlank(query.getSecondUploadState())) { + if (query.getSecondUploadState().equals("是")) { + qw.isNotNull("secondaryUploadMoney"); + qw.ne("secondaryUploadMoney", ""); + qw.ne("secondaryUploadMoney", 0); + qw.eq("isAdjustment", "是"); + } else { + qw.and(wrapper -> wrapper.eq("isAdjustment", '否').or().isNull("secondaryUploadMoney").or().eq("secondaryUploadMoney", "")); + } + } + String uploadStartDate = query.getUploadStartDate(); + String uploadEndDate = query.getUploadEndDate(); + qw.apply(StringUtils.isNotBlank(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"). + or(). + apply(StringUtils.isNotBlank(uploadStartDate), "date_format (secondaryUploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(uploadEndDate), "date_format (secondaryUploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')" + ); String createStartTime = query.getCreateStartTime(); String createEndTime = query.getCreateEndTime(); qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). @@ -1606,7 +1707,7 @@ public class ScmVehRebateService extends MybatisBaseService Date: Tue, 25 Feb 2025 15:55:24 +0800 Subject: [PATCH 46/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scm/biz/scmspecialrebate/ScmSpecialRebateService.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index 2862ce2998..a05c7cbede 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -975,10 +975,6 @@ public class ScmSpecialRebateService extends MybatisBaseService Date: Tue, 25 Feb 2025 16:03:27 +0800 Subject: [PATCH 47/90] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scm/biz/scmspecialrebate/ScmSpecialRebateService.java | 6 +++--- .../yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index a05c7cbede..b8a72ef646 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -155,7 +155,7 @@ public class ScmSpecialRebateService extends MybatisBaseService Date: Tue, 25 Feb 2025 16:03:58 +0800 Subject: [PATCH 48/90] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E4=B8=93=E9=A1=B9?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E7=AE=A1=E7=90=86=E3=80=81=E5=8D=95=E8=BD=A6?= =?UTF-8?q?=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9=E3=80=81=E4=B8=93?= =?UTF-8?q?=E9=A1=B9=E8=BF=94=E5=88=A9=E5=BE=85=E6=A0=B8=E5=AF=B9--?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue | 2 +- .../bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue | 2 +- .../specialrebatecheck/specialrebatetobechecked.vue | 2 +- .../specialrebatemanagement/specialrebatemanagement.vue | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue index 1ce250d3f7..e974332868 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue @@ -11,7 +11,7 @@
{{ searchxianshitit }}