Browse Source

Merge remote-tracking branch 'origin/master'

master
fanzongzhe 8 months ago
parent
commit
0d1925988d
  1. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busbillfile/BusAttachTypeEnum.java
  2. 82
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleet.java
  3. 94
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetDetailsVo.java
  4. 94
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetDto.java
  5. 82
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetFeign.java
  6. 66
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetNewDto.java
  7. 68
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetQuery.java
  8. 72
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetVo.java
  9. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileMapper.java
  10. 7
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileMapper.xml
  11. 8
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileService.java
  12. 61
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetMapper.java
  13. 11
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetMapper.xml
  14. 91
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetRest.java
  15. 230
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetService.java
  16. 4
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdantuicheFlow/salesorderbycarDaiBanInfo.vue
  17. 24
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java
  18. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplydetails/FinPaymentapplyDetailVo.java
  19. 37
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java
  20. 15
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplydetails/FinPaymentapplyDetailsMapper.xml
  21. 62
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java
  22. 76
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivity.java
  23. 87
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityDetailsVo.java
  24. 86
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityDto.java
  25. 77
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityFeign.java
  26. 67
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityQuery.java
  27. 68
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityVo.java
  28. 29
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebate.java
  29. 29
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateDetailsVo.java
  30. 53
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateDto.java
  31. 18
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateQuery.java
  32. 34
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateVo.java
  33. 73
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteract.java
  34. 83
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractDetailsVo.java
  35. 83
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractDto.java
  36. 77
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractFeign.java
  37. 66
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractQuery.java
  38. 67
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractVo.java
  39. 61
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityMapper.java
  40. 11
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityMapper.xml
  41. 92
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityRest.java
  42. 204
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityService.java
  43. 41
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmcollectionrebate/ScmCollectionRebateService.java
  44. 61
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractMapper.java
  45. 11
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractMapper.xml
  46. 92
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractRest.java
  47. 202
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractService.java
  48. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java
  49. 253
      anrui-scm/anrui-scm-ui/src/api/Common/dictcommons.js
  50. 62
      anrui-scm/anrui-scm-ui/src/api/manufactorInteract/manufactorInteract.js
  51. 62
      anrui-scm/anrui-scm-ui/src/api/marketingActivities/marketingActivities.js
  52. 423
      anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js
  53. 4
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheck.vue
  54. 2
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue
  55. 344
      anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteract.vue
  56. 249
      anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteractAdd.vue
  57. 112
      anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteractInfo.vue
  58. 346
      anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivities.vue
  59. 255
      anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivitiesAdd.vue
  60. 118
      anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivitiesInfo.vue
  61. 2
      anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue
  62. 2
      anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatedistribution/specialrebatetobeallocated.vue
  63. 1
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbwdiffapply/AsBwdiffapplyService.java
  64. 4
      yxt-as/src/main/java/com/yxt/anrui/as/biz/astechtitle/AsTechTitleRest.java
  65. 7
      yxt-as/src/main/java/com/yxt/anrui/as/biz/astechtitle/AsTechTitleService.java
  66. 2
      yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java
  67. 2
      yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busbillfile/BusAttachTypeEnum.java

@ -14,7 +14,10 @@ public enum BusAttachTypeEnum {
FJ("005", "附件"),
QKLPFJ("006", "欠款领票附件"),
CLMMHT("007", "车辆买卖合同"),
JZKHBA("008", "价值客户备案");
JZKHBA("008", "价值客户备案"),
GKXY("009", "车队管理-挂靠协议"),
XGYWBX("010", "车队管理-相关业务保险"),
;
/**
* 附件类型

82
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleet.java

@ -0,0 +1,82 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.baomidou.mybatisplus.annotation.TableName;
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;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleet.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleet <br/>
* Description: 车队管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理", description = "车队管理")
@TableName("bus_fleet")
public class BusFleet extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人sid")
private String createByName; // 创建人sid
@ApiModelProperty("车队名称")
private String fleetName; // 车队名称
@ApiModelProperty("联系人")
private String contacts; // 联系人
@ApiModelProperty("联系电话")
private String contactNumber; // 联系电话
@ApiModelProperty("车辆台数")
private Integer carNum; // 车辆台数
@ApiModelProperty("相关业务备注")
private String businessRemarks; // 相关业务备注
@ApiModelProperty("相关业务保险")
private String businessInsurance; // 相关业务保险
@ApiModelProperty("相关业务违章")
private String businessillegally; // 相关业务违章
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date attachmentStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date attachmentEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

94
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetDetailsVo.java

@ -0,0 +1,94 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetVo.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetVo <br/>
* Description: 车队管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:58 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理 视图数据详情", description = "车队管理 视图数据详情")
public class BusFleetDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName;
@ApiModelProperty("车队名称")
private String fleetName; // 车队名称
@ApiModelProperty("联系人")
private String contacts; // 联系人
@ApiModelProperty("联系电话")
private String contactNumber; // 联系电话
@ApiModelProperty("车辆台数")
private Integer carNum; // 车辆台数
@ApiModelProperty("相关业务备注")
private String businessRemarks; // 相关业务备注
@ApiModelProperty("相关业务保险")
private String businessInsurance; // 相关业务保险
@ApiModelProperty("相关业务违章")
private String businessillegally; // 相关业务违章
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date attachmentStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date attachmentEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("挂靠协议")
private List<String> urls = new ArrayList<>();
@ApiModelProperty("相关业务附件")
private List<String> businessUrls = new ArrayList<>();
}

94
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetDto.java

@ -0,0 +1,94 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.yxt.common.core.dto.Dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetDto.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetDto <br/>
* Description: 车队管理 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理 数据传输对象", description = "车队管理 数据传输对象")
public class BusFleetDto implements Dto {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName;
@ApiModelProperty("车队名称")
private String fleetName; // 车队名称
@ApiModelProperty("联系人")
private String contacts; // 联系人
@ApiModelProperty("联系电话")
private String contactNumber; // 联系电话
@ApiModelProperty("车辆台数")
private Integer carNum; // 车辆台数
@ApiModelProperty("相关业务备注")
private String businessRemarks; // 相关业务备注
@ApiModelProperty("相关业务保险")
private String businessInsurance; // 相关业务保险
@ApiModelProperty("相关业务违章")
private String businessillegally; // 相关业务违章
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date attachmentStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date attachmentEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("挂靠协议")
private List<String> urls = new ArrayList<>();
@ApiModelProperty("相关业务附件")
private List<String> businessUrls = new ArrayList<>();
}

82
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetFeign.java

@ -0,0 +1,82 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
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-buscenter(车队管理) <br/>
* File: BusFleetFeign.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetFeign <br/>
* Description: 车队管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:58 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "车队管理")
@FeignClient(
contextId = "anrui-buscenter-BusFleet",
name = "anrui-buscenter",
path = "v1/fleetManagement")
public interface BusFleetFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<BusFleetVo>> listPage(@RequestBody PagerQuery<BusFleetQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/saveOrUpdate")
@ResponseBody
public ResultBean save(@RequestBody BusFleetDto dto);
@ApiOperation("相关业务补充")
@PostMapping("/saveBusiness")
@ResponseBody
public ResultBean saveBusiness(@RequestBody BusFleetNewDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/gteInitBySid/{sid}")
@ResponseBody
public ResultBean<BusFleetDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

66
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetNewDto.java

@ -0,0 +1,66 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.fasterxml.jackson.annotation.JsonFormat;
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.Date;
import java.util.List;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetDto.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetDto <br/>
* Description: 车队管理 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理 数据传输对象", description = "车队管理 数据传输对象")
public class BusFleetNewDto implements Dto {
private String sid; // sid
@ApiModelProperty("相关业务备注")
private String remarks; // 相关业务备注
@ApiModelProperty("相关业务保险")
private String insurance; // 相关业务保险
@ApiModelProperty("相关业务违章")
private String illegally; // 相关业务违章
@ApiModelProperty("相关业务附件")
private List<String> urls = new ArrayList<>();
}

68
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetQuery.java

@ -0,0 +1,68 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.yxt.common.core.query.Query;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetQuery.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetQuery <br/>
* Description: 车队管理 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理 查询条件", description = "车队管理 查询条件")
public class BusFleetQuery implements Query {
@ApiModelProperty("创建组织名称")
private String orgName;
@ApiModelProperty("车队名称")
private String fleetName;
@ApiModelProperty("开始日期")
private String attachmentStartDate;
@ApiModelProperty("结束日期")
private String attachmentEndDate;
private String userSid;
private String orgPath;
private String menuUrl;
private String menuSid;
}

72
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busfleet/BusFleetVo.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.busfleet;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetVo.java <br/>
* Class: com.yxt.anrui.buscenter.api.busfleet.BusFleetVo <br/>
* Description: 车队管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:57 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "车队管理 视图数据对象", description = "车队管理 视图数据对象")
public class BusFleetVo implements Vo {
private String sid;
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("车队名称")
private String fleetName;
@ApiModelProperty("联系人")
private String contacts;
@ApiModelProperty("联系电话")
private String contactNumber;
@ApiModelProperty("车辆台数")
private Integer carNum;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date attachmentStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date attachmentEndDate; // 结束日期
}

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileMapper.java

@ -20,4 +20,9 @@ public interface BusFileMapper extends BaseMapper<BusFile> {
@Delete("delete from bus_file where linkSid = #{dtoSid}")
void delByLinkSid(String dtoSid);
List<BusFileDto> selByLinkSidAndType(@Param("sid") String sid,@Param("type") String type);
@Delete("delete from bus_file where linkSid = #{dtoSid} and attachType = #{attachType}")
void delByLinkSidAndType(@Param("dtoSid") String dtoSid,@Param("attachType") String attachType);
}

7
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileMapper.xml

@ -8,4 +8,11 @@
from bus_file
where linkSid = #{sid}
</select>
<select id="selByLinkSidAndType" resultType="com.yxt.anrui.buscenter.api.busfile.BusFileDto">
select *
from bus_file
where linkSid = #{sid}
and attachType = #{type}
</select>
</mapper>

8
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfile/BusFileService.java

@ -33,4 +33,12 @@ public class BusFileService extends MybatisBaseService<BusFileMapper, BusFile> {
public void delByLinkSid(String dtoSid) {
baseMapper.delByLinkSid(dtoSid);
}
public List<BusFileDto> selByLinkSidAndType(String sid, String type) {
return baseMapper.selByLinkSidAndType(sid,type);
}
public void delByLinkSidAndType(String dtoSid, String attachType) {
baseMapper.delByLinkSidAndType(dtoSid,attachType);
}
}

61
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetMapper.java

@ -0,0 +1,61 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.biz.busfleet;
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 org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.buscenter.api.busfleet.BusFleet;
import com.yxt.anrui.buscenter.api.busfleet.BusFleetVo;
import org.apache.ibatis.annotations.Update;
import java.util.List;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetMapper.java <br/>
* Class: com.yxt.anrui.buscenter.biz.busfleet.BusFleetMapper <br/>
* Description: 车队管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:58 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface BusFleetMapper extends BaseMapper<BusFleet> {
IPage<BusFleetVo> selectPageVo(IPage<BusFleet> page, @Param(Constants.WRAPPER) Wrapper<BusFleet> qw);
@Update("update bus_fleet set isDelete = 1 where sid = #{sid}")
void updateIsDel(String sid);
}

11
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetMapper.xml

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.buscenter.biz.busfleet.BusFleetMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.buscenter.api.busfleet.BusFleetVo">
SELECT * FROM bus_fleet bf
LEFT JOIN anrui_portal.sys_organization as u ON bf.createOrgSid = u.sid
<where> ${ew.sqlSegment} </where>
</select>
</mapper>

91
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetRest.java

@ -0,0 +1,91 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.biz.busfleet;
import com.yxt.anrui.buscenter.api.busfleet.*;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetFeignFallback.java <br/>
* Class: com.yxt.anrui.buscenter.biz.busfleet.BusFleetRest <br/>
* Description: 车队管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:58 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "车队管理")
@RestController("com.yxt.anrui.buscenter.biz.busfleet.BusFleetRest")
@RequestMapping("v1/fleetManagement")
public class BusFleetRest implements BusFleetFeign {
@Autowired
private BusFleetService busFleetService;
@Override
public ResultBean<PagerVo<BusFleetVo>> listPage(@RequestBody PagerQuery<BusFleetQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<BusFleetVo> pv = busFleetService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean save(@RequestBody BusFleetDto dto){
ResultBean rb = ResultBean.fireFail();
busFleetService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean saveBusiness(BusFleetNewDto dto) {
ResultBean rb = ResultBean.fireFail();
busFleetService.saveBusiness(dto);
return rb.success();
}
@Override
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
busFleetService.updateIsDel(sids);
return rb.success();
}
@Override
public ResultBean<BusFleetDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
BusFleetDetailsVo vo = busFleetService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

230
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busfleet/BusFleetService.java

@ -0,0 +1,230 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.biz.busfleet;
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.buscenter.api.busbillfile.BusAttachTypeEnum;
import com.yxt.anrui.buscenter.api.buscenterfile.BuscenterFileEnum;
import com.yxt.anrui.buscenter.api.busfile.BusFile;
import com.yxt.anrui.buscenter.api.busfile.BusFileDto;
import com.yxt.anrui.buscenter.api.busfleet.*;
import com.yxt.anrui.buscenter.biz.busfile.BusFileService;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.riskcenter.api.loanappendix.LoanAppendix;
import com.yxt.anrui.riskcenter.api.loanaudit.LoanAuditVo;
import com.yxt.anrui.riskcenter.api.loanfile.LoanFileEnum;
import com.yxt.common.base.config.component.FileUploadComponent;
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 java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-buscenter(车队管理) <br/>
* File: BusFleetService.java <br/>
* Class: com.yxt.anrui.buscenter.biz.busfleet.BusFleetService <br/>
* Description: 车队管理 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 13:41:58 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class BusFleetService extends MybatisBaseService<BusFleetMapper, BusFleet> {
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private BusFileService busFileService;
public PagerVo<BusFleetVo> listPageVo(PagerQuery<BusFleetQuery> pq) {
BusFleetQuery query = pq.getParams();
QueryWrapper<BusFleet> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("u.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("u.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("u.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("u.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("bf.createBySid", query.getUserSid());
} else {
PagerVo<BusFleetVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<BusFleetVo> p = new PagerVo<>();
return p;
}
}
qw.eq("bf.isDelete", 0);
if (StringUtils.isNotBlank(query.getOrgName())) {
qw.like("bf.createOrgName", query.getOrgName());
}
if (StringUtils.isNotBlank(query.getFleetName())) {
qw.like("bf.fleetName", query.getFleetName());
}
String attachmentStartDate = query.getAttachmentStartDate();
String attachmentEndDate = query.getAttachmentEndDate();
qw.apply(StringUtils.isNotEmpty(attachmentStartDate), "date_format (bf.attachmentStartDate,'%Y-%m-%d') >= date_format('" + attachmentStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(attachmentEndDate), "date_format (bf.attachmentEndDate,'%Y-%m-%d') <= date_format('" + attachmentEndDate + "','%Y-%m-%d')"
);
IPage<BusFleet> page = PagerUtil.queryToPage(pq);
IPage<BusFleetVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<BusFleetVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(BusFleetDto dto) {
String dtoSid = dto.getSid();
List<String> urls = dto.getUrls();
if (StringUtils.isBlank(dtoSid)) {
String sid = this.insertByDto(dto);
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
BusFile busFile = new BusFile();
busFile.setLinkSid(sid);
busFile.setAttachType(BusAttachTypeEnum.GKXY.getAttachType());
busFile.setFilePath(filePath);
busFileService.save(busFile);
}
return;
}
this.updateByDto(dto);
busFileService.delByLinkSidAndType(dtoSid,BusAttachTypeEnum.GKXY.getAttachType());
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
BusFile busFile = new BusFile();
busFile.setLinkSid(dtoSid);
busFile.setAttachType(BusAttachTypeEnum.GKXY.getAttachType());
busFile.setFilePath(filePath);
busFileService.save(busFile);
}
}
public String insertByDto(BusFleetDto dto) {
BusFleet entity = new BusFleet();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
return entity.getSid();
}
public void updateByDto(BusFleetDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
BusFleet entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public BusFleetDetailsVo fetchDetailsVoBySid(String sid) {
BusFleet entity = fetchBySid(sid);
BusFleetDetailsVo vo = new BusFleetDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<BusFileDto> gkxys = busFileService.selByLinkSidAndType(sid, BusAttachTypeEnum.GKXY.getAttachType());
ArrayList<String> gkxy = new ArrayList<>();
for (BusFileDto busFileDto : gkxys) {
String url = fileUploadComponent.getUrlPrefix() + busFileDto.getFilePath();
gkxy.add(url);
}
vo.setUrls(gkxy);
List<BusFileDto> xgywbxs = busFileService.selByLinkSidAndType(sid, BusAttachTypeEnum.XGYWBX.getAttachType());
ArrayList<String> xgywbx = new ArrayList<>();
for (BusFileDto busFileDto : xgywbxs) {
String url = fileUploadComponent.getUrlPrefix() + busFileDto.getFilePath();
xgywbx.add(url);
}
vo.setBusinessUrls(xgywbx);
return vo;
}
public void updateIsDel(String[] sids) {
for (String sid : sids) {
baseMapper.updateIsDel(sid);
}
}
public void saveBusiness(BusFleetNewDto dto) {
BusFleetDto busFleetDto = new BusFleetDto();
BusFleet busFleet = fetchBySid(dto.getSid());
BeanUtil.copyProperties(busFleet,busFleetDto);
busFleetDto.setBusinessInsurance(dto.getInsurance());
busFleetDto.setBusinessillegally(dto.getIllegally());
busFleetDto.setBusinessRemarks(dto.getRemarks());
List<String> urls = dto.getUrls();
busFileService.delByLinkSidAndType(dto.getSid(), BusAttachTypeEnum.XGYWBX.getAttachType());
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
BusFile busFile = new BusFile();
busFile.setLinkSid(dto.getSid());
busFile.setAttachType(BusAttachTypeEnum.XGYWBX.getAttachType());
busFile.setFilePath(filePath);
busFileService.save(busFile);
}
this.updateByDto(busFleetDto);
}
}

4
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdantuicheFlow/salesorderbycarDaiBanInfo.vue

@ -283,7 +283,7 @@ export default {
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey }).then((resp) => {
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
@ -297,7 +297,7 @@ export default {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
req.getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey }).then((resp) => {
req.getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]

24
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmmaintenanceenterpriserecord/CrmMaintenanceenterpriseRecordService.java

@ -65,6 +65,7 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuserrole.SysUserRoleFeign;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo;
@ -137,6 +138,9 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private CrmDockingPeopleService crmDockingPeopleService;
@Autowired
private SysUserRoleFeign sysUserRoleFeign;
private QueryWrapper<CrmMaintenanceenterpriseRecord> createQueryWrapper(CrmMaintenanceenterpriseRecordQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -626,6 +630,10 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
variables.put("businessSid", businessSid);
appMap.put("sid", businessSid);
variables.put("app", appMap);
//判断发起人是否为前台主管
String createBySid = entity.getCreateBySid();
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
// String orderNames = "<" + entity.getCustomer() + ">" + "欠款客户备案";
// variables.put("orderNames", orderNames);
CrmMaintenanceenterpriseRecord record = fetchBySid(businessSid);
@ -713,6 +721,10 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
bv.setOrgSidPath(orgSidPath);
//流程中的参数赋值
Map<String, Object> variables = new HashMap<>();
//判断发起人是否为前台主管
String createBySid = record.getCreateBySid();
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
Map<String, Object> appMap = new HashMap<>();
//若有网关,则赋值网关中判断的字段。
variables.put("businessSid", businessSid);
@ -839,6 +851,10 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
// }
// }
// variables.put("isTure", isTure);
//判断发起人是否为前台主管
String createBySid = paymentApply.getCreateBySid();
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
flowTaskVo.setValues(variables);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
@ -948,6 +964,10 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
// }
// }
// variables.put("isTure", isTure);
//判断发起人是否为前台主管
String createBySid = paymentApply.getCreateBySid();
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
bv.setFormVariables(variables);
bv.setModelId(paymentApply.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
@ -973,6 +993,10 @@ public class CrmMaintenanceenterpriseRecordService extends MybatisBaseService<Cr
// }
// }
// variables.put("isTure", isTure);
//判断发起人是否为前台主管
String createBySid = paymentApply.getCreateBySid();
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
bv.setFormVariables(variables);
bv.setModelId(paymentApply.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finpaymentapplydetails/FinPaymentapplyDetailVo.java

@ -13,6 +13,8 @@ import lombok.Data;
public class FinPaymentapplyDetailVo implements Vo {
private static final long serialVersionUID = 2763515857490645883L;
private String sid;
@ApiModelProperty("付款方式key")
private String paymentTypeKey;
@ApiModelProperty("付款方式")

37
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java

@ -507,6 +507,7 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
detailVoList.removeAll(Collections.singleton(null));
if (!detailVoList.isEmpty()) {
for (FinPaymentapplyDetailVo finPaymentapplyDetailVo : detailVoList) {
finPaymentrecordDto.setBusSid(finPaymentapplyDetailVo.getSid());
//收款银行账号
finPaymentrecordDto.setReceiveBankAccount(finPaymentapplyDetailVo.getReceivingAccount());
finPaymentrecordDto.setReceiveBank(finPaymentapplyDetailVo.getBank());
@ -518,42 +519,6 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
finPaymentrecordService.saveDto(finPaymentrecordDto);
}
}
//到回款返利申请
if (finPaymentapply.getCostTitleValue().equals("车款")) {
ScmCollectionRebateDto scmCollectionRebateDto = new ScmCollectionRebateDto();
List<ScmCollectionRebateVehDto> scmCollectionRebateVehDtos = new ArrayList<>();
List<FinPaymentapplyDetailVo> details = finPaymentapplyDetailsService.getDetails(finPaymentapply.getSid());
List<FinPaymentapplyVehicleVo> vehicleList = finPaymentapplyVehicleService.getVehicleList(finPaymentapply.getSid());
scmCollectionRebateDto.setBrandSid(finPaymentapply.getCarBrandSid());
scmCollectionRebateDto.setBrandName(finPaymentapply.getCarBrandName());
scmCollectionRebateDto.setCollectionTypeKey(details.get(0).getPaymentTypeKey());
scmCollectionRebateDto.setCollectionTypeValue(details.get(0).getPaymentType());
scmCollectionRebateDto.setManufaSaleChannelValue(details.get(0).getActualPay());
scmCollectionRebateDto.setCollectionMoney(details.get(0).getPayAccount());
scmCollectionRebateDto.setCollectionDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
scmCollectionRebateDto.setCreateOrgSid(finPaymentapply.getCreateOrgSid());
scmCollectionRebateDto.setUseOrgSid(finPaymentapply.getUseOrgSid());
scmCollectionRebateDto.setOrgPath(finPaymentapply.getOrgSidPath());
scmCollectionRebateDto.setCreateBySid(finPaymentapply.getCreateBySid());
if (!vehicleList.isEmpty()) {
for (FinPaymentapplyVehicleVo finPaymentapplyVehicleVo : vehicleList) {
ScmCollectionRebateVehDto scmCollectionRebateVehDto = new ScmCollectionRebateVehDto();
BaseVehicleSelectVo baseVehicleSelectVo = baseVehicleFeign.details(finPaymentapplyVehicleVo.getVehiSid()).getData();
scmCollectionRebateVehDto.setCarModelSid(finPaymentapplyVehicleVo.getModelSid());
scmCollectionRebateVehDto.setCarModelName(finPaymentapplyVehicleVo.getModelName());
scmCollectionRebateVehDto.setPriceDate(DateUtil.format(baseVehicleSelectVo.getPriceDate(), "yyyy-MM-dd"));
if (baseVehicleSelectVo.getSalesDate() != null) {
scmCollectionRebateVehDto.setSalesDate(DateUtil.format(baseVehicleSelectVo.getSalesDate(), "yyyy-MM-dd"));
}
scmCollectionRebateVehDto.setVehSid(finPaymentapplyVehicleVo.getVehiSid());
scmCollectionRebateVehDto.setVinNo(finPaymentapplyVehicleVo.getVinNo());
scmCollectionRebateVehDto.setCostPrice(finPaymentapplyVehicleVo.getMoney());
scmCollectionRebateVehDtos.add(scmCollectionRebateVehDto);
}
}
scmCollectionRebateDto.setScmCollectionRebateVehs(scmCollectionRebateVehDtos);
scmCollectionRebateFeign.save(scmCollectionRebateDto);
}
} else {
//极光推送
UpdateFlowFieldVo ufVo = resultBean.getData();

15
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapplydetails/FinPaymentapplyDetailsMapper.xml

@ -19,13 +19,14 @@
</delete>
<select id="getDetails" resultType="com.yxt.anrui.fin.api.finpaymentapplydetails.FinPaymentapplyDetailVo">
select fd.actualPay,
fd.paymentType,
fd.bank,
fd.receivingAccount,
fd.payAccount,
fd.remarks,
fd.paymentTypeKey
select fd.sid,
fd.actualPay,
fd.paymentType,
fd.bank,
fd.receivingAccount,
fd.payAccount,
fd.remarks,
fd.paymentTypeKey
from fin_paymentapply_details fd
where fd.applySid = #{sid}
</select>

62
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java

@ -36,27 +36,29 @@ import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicat
import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationFeign;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetails;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsFeign;
import com.yxt.anrui.base.api.basevehicleactualpay.BaseVehicleActualPay;
import com.yxt.anrui.base.api.basevehicleactualpay.BaseVehicleActualPayFeign;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesFeign;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateDto;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateEnum;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyDetailsVo;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.common.enums.DictCommonEnum;
import com.yxt.anrui.buscenter.api.busdeliveredapplydetails.BusDeliveredApplyDetails;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.fin.api.finmanufacturerbank.FinManufacturerBank;
import com.yxt.anrui.fin.api.finpaymentapply.FinPaymentapply;
import com.yxt.anrui.fin.api.finpaymentapplydetails.FinPaymentapplyDetails;
import com.yxt.anrui.fin.api.finpaymentapplyvehicle.FinPaymentapplyVehicleVo;
import com.yxt.anrui.fin.api.finpaymentrecord.*;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailedjr.FinUncollectedReceivablesDetailedJR;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.biz.finmanufacturerbank.FinManufacturerBankService;
import com.yxt.anrui.fin.biz.finpaymentapply.FinPaymentapplyService;
import com.yxt.anrui.fin.biz.finpaymentapplydetails.FinPaymentapplyDetailsService;
import com.yxt.anrui.fin.biz.finpaymentapplyvehicle.FinPaymentapplyVehicleService;
import com.yxt.anrui.fin.biz.finuncollectedreceivablesdetailedjr.FinUncollectedReceivablesDetailedJRService;
import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService;
import com.yxt.anrui.portal.api.flow.FlowableFeign;
@ -69,9 +71,6 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
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.riskcenter.api.loanbepadsincereapply.LoanBePadsincereApply;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.LoanBePadsincereApplyDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbepadsincereapply.LoanBePadsincereApplyFeign;
import com.yxt.anrui.riskcenter.api.loanbepadsincereveh.LoanBePadsincereVehDetailsVo;
import com.yxt.anrui.riskcenter.api.loanbepadsincereveh.LoanBePadsincereVehFeign;
@ -80,6 +79,9 @@ import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDe
import com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanMoneyVo;
import com.yxt.anrui.riskcenter.api.loansettleapply.LoanSettleApplyFeign;
import com.yxt.anrui.riskcenter.api.loantransferpaymentapply.LoanTransferPaymentApplyFeign;
import com.yxt.anrui.scm.api.scmcollectionrebate.ScmCollectionRebateDto;
import com.yxt.anrui.scm.api.scmcollectionrebate.ScmCollectionRebateFeign;
import com.yxt.anrui.scm.api.scmcollectionrebateveh.ScmCollectionRebateVehDto;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.ConstantUtils;
@ -88,7 +90,6 @@ import com.yxt.common.base.utils.WordUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.AppScmMessageFlowableQuery;
import com.yxt.messagecenter.api.message.Message;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.PushMessageQuery;
@ -128,9 +129,17 @@ import static java.util.Comparator.comparing;
@Service
public class FinPaymentrecordService extends MybatisBaseService<FinPaymentrecordMapper, FinPaymentrecord> {
@Autowired
private BaseVehicleFeign baseVehicleFeign;
@Autowired
private FinPaymentapplyService finPaymentapplyService;
@Autowired
private FinPaymentapplyDetailsService finPaymentapplyDetailsService;
@Autowired
private FinPaymentapplyVehicleService finPaymentapplyVehicleService;
@Autowired
private ScmCollectionRebateFeign scmCollectionRebateFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private BaseManufactorSubscriptionFeign baseManufactorSubscriptionFeign;
@ -375,6 +384,43 @@ public class FinPaymentrecordService extends MybatisBaseService<FinPaymentrecord
List<String> list = new ArrayList<>();
for (int i = 0; i < sids.size(); i++) {
FinPaymentrecord finPaymentrecord = fetchBySid(sids.get(i));
//到回款返利申请
if (finPaymentrecord.getCostTypeValue().equals("厂家车款") && !finPaymentrecord.getPayWayValue().equals("返利抵车款")) {
ScmCollectionRebateDto scmCollectionRebateDto = new ScmCollectionRebateDto();
List<ScmCollectionRebateVehDto> scmCollectionRebateVehDtos = new ArrayList<>();
FinPaymentapply finPaymentapply = finPaymentapplyService.fetchBySid(finPaymentrecord.getApplySid());
FinPaymentapplyDetails finPaymentapplyDetails = finPaymentapplyDetailsService.fetchBySid(finPaymentrecord.getBusSid());
List<FinPaymentapplyVehicleVo> vehicleList = finPaymentapplyVehicleService.getVehicleList(finPaymentapply.getSid());
scmCollectionRebateDto.setBrandSid(finPaymentapply.getCarBrandSid());
scmCollectionRebateDto.setBrandName(finPaymentapply.getCarBrandName());
scmCollectionRebateDto.setCollectionTypeKey(finPaymentrecord.getPayWayKey());
scmCollectionRebateDto.setCollectionTypeValue(finPaymentrecord.getPayWayValue());
scmCollectionRebateDto.setManufaSaleChannelValue(finPaymentapplyDetails.getActualPay());
scmCollectionRebateDto.setCollectionMoney(finPaymentrecord.getCost());
scmCollectionRebateDto.setCollectionDate(DateUtil.formatDate(finPaymentrecord.getPayDate()));
scmCollectionRebateDto.setCreateOrgSid(finPaymentrecord.getCreateOrgSid());
scmCollectionRebateDto.setUseOrgSid(finPaymentrecord.getUseOrgSid());
scmCollectionRebateDto.setOrgPath(finPaymentapply.getOrgSidPath());
scmCollectionRebateDto.setCreateBySid(finPaymentrecord.getCreateBySid());
if (!vehicleList.isEmpty()) {
for (FinPaymentapplyVehicleVo finPaymentapplyVehicleVo : vehicleList) {
ScmCollectionRebateVehDto scmCollectionRebateVehDto = new ScmCollectionRebateVehDto();
BaseVehicleSelectVo baseVehicleSelectVo = baseVehicleFeign.details(finPaymentapplyVehicleVo.getVehiSid()).getData();
scmCollectionRebateVehDto.setCarModelSid(finPaymentapplyVehicleVo.getModelSid());
scmCollectionRebateVehDto.setCarModelName(finPaymentapplyVehicleVo.getModelName());
scmCollectionRebateVehDto.setPriceDate(DateUtil.format(baseVehicleSelectVo.getPriceDate(), "yyyy-MM-dd"));
if (baseVehicleSelectVo.getSalesDate() != null) {
scmCollectionRebateVehDto.setSalesDate(DateUtil.format(baseVehicleSelectVo.getSalesDate(), "yyyy-MM-dd"));
}
scmCollectionRebateVehDto.setVehSid(finPaymentapplyVehicleVo.getVehiSid());
scmCollectionRebateVehDto.setVinNo(finPaymentapplyVehicleVo.getVinNo());
scmCollectionRebateVehDto.setCostPrice(finPaymentapplyVehicleVo.getMoney());
scmCollectionRebateVehDtos.add(scmCollectionRebateVehDto);
}
}
scmCollectionRebateDto.setScmCollectionRebateVehs(scmCollectionRebateVehDtos);
scmCollectionRebateFeign.save(scmCollectionRebateDto);
}
//更新还款计划表垫款金额和逾期利息
if ("007".equals(finPaymentrecord.getCostTypeKey())) {
List<LoanBePadsincereVehDetailsVo> loanBePadsincereVehDetailsVos = loanBePadsincereVehFeign.selByBankCont(finPaymentrecord.getApplySid(),finPaymentrecord.getBusSid()).getData();

76
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivity.java

@ -0,0 +1,76 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import com.baomidou.mybatisplus.annotation.TableName;
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;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivity.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivity <br/>
* Description: 营销活动管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:42 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "营销活动管理", description = "营销活动管理")
@TableName("scm_activity")
public class ScmActivity extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("活动名称")
private String activityName; // 活动名称
@ApiModelProperty("活动地点")
private String activityAddress; // 活动地点
@ApiModelProperty("活动内容")
private String activityContent; // 活动内容
@ApiModelProperty("活动总结")
private String activitySummary; // 活动总结
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date activityStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date activityEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

87
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityDetailsVo.java

@ -0,0 +1,87 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityVo.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivityVo <br/>
* Description: 营销活动管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "营销活动管理 视图数据详情", description = "营销活动管理 视图数据详情")
public class ScmActivityDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("活动名称")
private String activityName; // 活动名称
@ApiModelProperty("活动地点")
private String activityAddress; // 活动地点
@ApiModelProperty("活动内容")
private String activityContent; // 活动内容
@ApiModelProperty("活动总结")
private String activitySummary; // 活动总结
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date activityStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date activityEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty
private List<String> urls = new ArrayList<>();
}

86
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityDto.java

@ -0,0 +1,86 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import com.yxt.common.core.dto.Dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityDto.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivityDto <br/>
* Description: 营销活动管理 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "营销活动管理 数据传输对象", description = "营销活动管理 数据传输对象")
public class ScmActivityDto implements Dto {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("活动名称")
private String activityName; // 活动名称
@ApiModelProperty("活动地点")
private String activityAddress; // 活动地点
@ApiModelProperty("活动内容")
private String activityContent; // 活动内容
@ApiModelProperty("活动总结")
private String activitySummary; // 活动总结
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date activityStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date activityEndDate; // 结束日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty
private List<String> urls = new ArrayList<>();
}

77
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityFeign.java

@ -0,0 +1,77 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
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-scm(销售支持业务) <br/>
* File: ScmActivityFeign.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivityFeign <br/>
* Description: 营销活动管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "营销活动管理")
@FeignClient(
contextId = "anrui-scm-ScmActivity",
name = "anrui-scm",
path = "v1/marketingActivities")
public interface ScmActivityFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<ScmActivityVo>> listPage(@RequestBody PagerQuery<ScmActivityQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/saveOrUpdate")
@ResponseBody
public ResultBean save(@RequestBody ScmActivityDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/gteInitBySid/{sid}")
@ResponseBody
public ResultBean<ScmActivityDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

67
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityQuery.java

@ -0,0 +1,67 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import com.yxt.common.core.query.Query;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityQuery.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivityQuery <br/>
* Description: 营销活动管理 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:42 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "营销活动管理 查询条件", description = "营销活动管理 查询条件")
public class ScmActivityQuery implements Query {
@ApiModelProperty("创建组织名称")
private String orgName;
@ApiModelProperty("活动名称")
private String activityName; // 活动名称
@ApiModelProperty("开始日期")
private String activityStartDate; // 开始日期
@ApiModelProperty("结束日期")
private String activityEndDate; // 结束日期
private String userSid;
private String orgPath;
private String menuUrl;
private String menuSid;
}

68
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmactivity/ScmActivityVo.java

@ -0,0 +1,68 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmactivity;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityVo.java <br/>
* Class: com.yxt.anrui.scm.api.scmactivity.ScmActivityVo <br/>
* Description: 营销活动管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "营销活动管理 视图数据对象", description = "营销活动管理 视图数据对象")
public class ScmActivityVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("活动名称")
private String activityName; // 活动名称
@ApiModelProperty("活动地点")
private String activityAddress;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开始日期")
private Date activityStartDate; // 开始日期
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("结束日期")
private Date activityEndDate; // 结束日期
}

29
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebate.java

@ -31,6 +31,9 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: anrui-scm(回款返利) <br/>
* File: ScmCollectionRebate.java <br/>
@ -50,6 +53,10 @@ import lombok.Data;
public class ScmCollectionRebate extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid;
@ApiModelProperty("采购系统名称")
private String purchaseSystemName;
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
@ -63,23 +70,31 @@ public class ScmCollectionRebate extends BaseEntity {
@ApiModelProperty("厂家销售通路value")
private String manufaSaleChannelValue; // 厂家销售通路value
@ApiModelProperty("回款金额")
private String collectionMoney; // 回款金额
private BigDecimal collectionMoney; // 回款金额
@ApiModelProperty("运费")
private String freight; // 运费
private BigDecimal freight; // 运费
@ApiModelProperty("回款日期")
private String collectionDate; // 回款日期
private Date collectionDate; // 回款日期
@ApiModelProperty("上装金额")
private BigDecimal topAmount;
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName;
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
private BigDecimal estimateRebate; // 预计返利
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
private Date uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
private BigDecimal uploadMoney; // 上传金额
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
private BigDecimal adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("使用组织sid")

29
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateDetailsVo.java

@ -35,6 +35,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@ -66,6 +67,10 @@ public class ScmCollectionRebateDetailsVo implements Vo {
private Date createTime; // 创建日期
@ApiModelProperty("备注")
private String remarks; // 备注
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid;
@ApiModelProperty("采购系统名称")
private String purchaseSystemName;
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
@ -81,23 +86,33 @@ public class ScmCollectionRebateDetailsVo implements Vo {
@ApiModelProperty("厂家收款账号")
private String manufaBankAccount; // 厂家收款账号
@ApiModelProperty("回款金额")
private String collectionMoney; // 回款金额
private BigDecimal collectionMoney; // 回款金额
@ApiModelProperty("运费")
private String freight; // 运费
private BigDecimal freight; // 运费
@ApiModelProperty("回款日期")
private String collectionDate; // 回款日期
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date collectionDate; // 回款日期
@ApiModelProperty("上装金额")
private BigDecimal topAmount;
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName;
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
private BigDecimal estimateRebate; // 预计返利
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
private BigDecimal uploadMoney; // 上传金额
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
private BigDecimal adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("使用组织sid")

53
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateDto.java

@ -26,6 +26,7 @@
package com.yxt.anrui.scm.api.scmcollectionrebate;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.anrui.scm.api.scmcollectionrebateveh.ScmCollectionRebateVehDto;
import com.yxt.common.core.dto.Dto;
@ -33,6 +34,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
@ -60,6 +63,10 @@ public class ScmCollectionRebateDto implements Dto {
private String state; // 状态
@ApiModelProperty("备注")
private String remarks; // 备注
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid;
@ApiModelProperty("采购系统名称")
private String purchaseSystemName;
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
@ -72,33 +79,41 @@ public class ScmCollectionRebateDto implements Dto {
private String manufaSaleChannel; // 厂家销售通路key
@ApiModelProperty("厂家销售通路value")
private String manufaSaleChannelValue; // 厂家销售通路value
@ApiModelProperty("回款金额")
private String collectionMoney; // 回款金额
@ApiModelProperty("运费")
private String freight; // 运费
@ApiModelProperty("回款日期")
@ApiModelProperty("回款金额")
private BigDecimal collectionMoney; // 回款金额
@ApiModelProperty("运费")
private BigDecimal freight; // 运费
@ApiModelProperty("回款日期")
private String collectionDate; // 回款日期
@ApiModelProperty("计算标准")
@ApiModelProperty("上装金额")
private BigDecimal topAmount;
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName;
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
@ApiModelProperty("预提日期")
@ApiModelProperty("预计返利")
private BigDecimal estimateRebate; // 预计返利
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
@ApiModelProperty("上传金额")
private BigDecimal uploadMoney; // 上传金额
@ApiModelProperty("调整金额")
private BigDecimal adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("使用组织sid")
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("是否减运费")
private String isReduceFreight; // 是否减运费

18
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateQuery.java

@ -51,18 +51,34 @@ import java.util.List;
@ApiModel(value = "回款返利表 查询条件", description = "回款返利表 查询条件")
public class ScmCollectionRebateQuery implements Query {
@ApiModelProperty("分公司")
private String createOrgName;
@ApiModelProperty("采购系统名称")
private String purchaseSystemName;
@ApiModelProperty("品牌名称")
private String brandName;
@ApiModelProperty("回款方式key")
private String collectionTypeKey;
@ApiModelProperty("回款开始日期")
private String collectionStartDate;
@ApiModelProperty("回款结束日期")
private String collectionEndDate;
@ApiModelProperty("返利类型key")
private String rebateTypeKey;
@ApiModelProperty("返利名称")
private String rebateName;
@ApiModelProperty("状态")
private String state;
@ApiModelProperty("上传开始日期")
private String uploadStartDate;
@ApiModelProperty("上传结束日期")
private String uploadEndDate;
@ApiModelProperty("创建开始日期")
private String createStartTime;
@ApiModelProperty("创建结束日期")
private String createEndTime;
private String createOrgSid;
private String createOrgSid;
private String userSid;
private String orgPath;
private String menuUrl;

34
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmcollectionrebate/ScmCollectionRebateVo.java

@ -33,6 +33,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
@ -56,6 +57,10 @@ public class ScmCollectionRebateVo implements Vo {
@ApiModelProperty("状态")
private String state;
@ApiModelProperty("分公司")
private String createOrgName;
@ApiModelProperty("采购系统名称")
private String purchaseSystemName;
@ApiModelProperty("品牌名称")
private String brandName;
@ApiModelProperty("回款方式value")
@ -63,26 +68,33 @@ public class ScmCollectionRebateVo implements Vo {
@ApiModelProperty("厂家回款通路")
private String manufaSaleChannelValue;
@ApiModelProperty("回款金额")
private String collectionMoney;
private BigDecimal collectionMoney; // 回款金额
@ApiModelProperty("运费")
private String freight;
private BigDecimal freight; // 运费
@ApiModelProperty("回款日期")
private String collectionDate;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date collectionDate; // 回款日期
@ApiModelProperty("上装金额")
private BigDecimal topAmount;
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName;
@ApiModelProperty("计算标准")
private String calculationStandard;
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate;
private BigDecimal estimateRebate; // 预计返利
@ApiModelProperty("预提日期")
private String withholdingDate;
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney;
private BigDecimal uploadMoney; // 上传金额
@ApiModelProperty("调整金额")
private String adjustmentMoney;
private BigDecimal adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks;
private String adjustmentRemarks; // 调整说明
/*其他返回参数*/
@ApiModelProperty("品牌sid")
private String brandSid;

73
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteract.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import com.baomidou.mybatisplus.annotation.TableName;
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;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteract.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteract <br/>
* Description: 厂家沟通管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "厂家沟通管理", description = "厂家沟通管理")
@TableName("scm_interact")
public class ScmInteract extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("厂家名称")
private String manufactorName; // 厂家名称
@ApiModelProperty("对接人")
private String contacts; // 对接人
@ApiModelProperty("沟通事宜")
private String interactContent; // 沟通事宜
@ApiModelProperty("沟通结果")
private String interactResult; // 沟通结果
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("沟通日期")
private Date interactDate; // 沟通日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

83
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractDetailsVo.java

@ -0,0 +1,83 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractVo.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteractVo <br/>
* Description: 厂家沟通管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "厂家沟通管理 视图数据详情", description = "厂家沟通管理 视图数据详情")
public class ScmInteractDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("厂家名称")
private String manufactorName; // 厂家名称
@ApiModelProperty("对接人")
private String contacts; // 对接人
@ApiModelProperty("沟通事宜")
private String interactContent; // 沟通事宜
@ApiModelProperty("沟通结果")
private String interactResult; // 沟通结果
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("沟通日期")
private Date interactDate; // 沟通日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty
private List<String> urls = new ArrayList<>();
}

83
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractDto.java

@ -0,0 +1,83 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import com.yxt.common.core.dto.Dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractDto.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteractDto <br/>
* Description: 厂家沟通管理 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "厂家沟通管理 数据传输对象", description = "厂家沟通管理 数据传输对象")
public class ScmInteractDto implements Dto {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("创建人姓名")
private String createByName; // 创建人姓名
@ApiModelProperty("厂家名称")
private String manufactorName; // 厂家名称
@ApiModelProperty("对接人")
private String contacts; // 对接人
@ApiModelProperty("沟通事宜")
private String interactContent; // 沟通事宜
@ApiModelProperty("沟通结果")
private String interactResult; // 沟通结果
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("沟通日期")
private Date interactDate; // 沟通日期
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty
private List<String> urls = new ArrayList<>();
}

77
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractFeign.java

@ -0,0 +1,77 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
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-scm(销售支持业务) <br/>
* File: ScmInteractFeign.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteractFeign <br/>
* Description: 厂家沟通管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "厂家沟通管理")
@FeignClient(
contextId = "anrui-scm-ScmInteract",
name = "anrui-scm",
path = "v1/manufactorInteract")
public interface ScmInteractFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<ScmInteractVo>> listPage(@RequestBody PagerQuery<ScmInteractQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/saveOrUpdate")
@ResponseBody
public ResultBean save(@RequestBody ScmInteractDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/gteInitBySid/{sid}")
@ResponseBody
public ResultBean<ScmInteractDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

66
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractQuery.java

@ -0,0 +1,66 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import com.yxt.common.core.query.Query;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractQuery.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteractQuery <br/>
* Description: 厂家沟通管理 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "厂家沟通管理 查询条件", description = "厂家沟通管理 查询条件")
public class ScmInteractQuery implements Query {
@ApiModelProperty("厂家名称")
private String manufactorName; // 厂家名称
@ApiModelProperty("沟通日期")
private String interactDateStartDate; // 沟通日期
private String interactDateEndDate; // 沟通日期
@ApiModelProperty("创建组织名称")
private String orgName; // 创建组织名称
private String userSid;
private String orgPath;
private String menuUrl;
private String menuSid;
}

67
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scminteract/ScmInteractVo.java

@ -0,0 +1,67 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scminteract;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractVo.java <br/>
* Class: com.yxt.anrui.scm.api.scminteract.ScmInteractVo <br/>
* Description: 厂家沟通管理 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "厂家沟通管理 视图数据对象", description = "厂家沟通管理 视图数据对象")
public class ScmInteractVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建组织名称")
private String createOrgName;
@ApiModelProperty("厂家名称")
private String manufactorName; // 厂家名称
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("沟通日期")
private Date interactDate;
@ApiModelProperty("对接人")
private String contacts; // 对接人
@ApiModelProperty("沟通事宜")
private String interactContent; // 沟通事宜
}

61
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityMapper.java

@ -0,0 +1,61 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmactivity;
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 org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.scm.api.scmactivity.ScmActivity;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityVo;
import org.apache.ibatis.annotations.Update;
import java.util.List;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityMapper.java <br/>
* Class: com.yxt.anrui.scm.biz.scmactivity.ScmActivityMapper <br/>
* Description: 营销活动管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface ScmActivityMapper extends BaseMapper<ScmActivity> {
IPage<ScmActivityVo> selectPageVo(IPage<ScmActivity> page, @Param(Constants.WRAPPER) Wrapper<ScmActivity> qw);
@Update("update scm_activity set isDelete = 1 where sid = #{sid}")
void updateIsDel(String sid);
}

11
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityMapper.xml

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.scm.biz.scmactivity.ScmActivityMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmactivity.ScmActivityVo">
SELECT * FROM scm_activity sa
LEFT JOIN anrui_portal.sys_organization as u ON sa.createOrgSid = u.sid
<where> ${ew.sqlSegment} </where>
</select>
</mapper>

92
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityRest.java

@ -0,0 +1,92 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmactivity;
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.scm.api.scmactivity.ScmActivity;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityQuery;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityVo;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityDetailsVo;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityDto;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityFeign;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityFeignFallback.java <br/>
* Class: com.yxt.anrui.scm.biz.scmactivity.ScmActivityRest <br/>
* Description: 营销活动管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "营销活动管理")
@RestController
@RequestMapping("v1/marketingActivities")
public class ScmActivityRest implements ScmActivityFeign {
@Autowired
private ScmActivityService scmActivityService;
@Override
public ResultBean<PagerVo<ScmActivityVo>> listPage(@RequestBody PagerQuery<ScmActivityQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<ScmActivityVo> pv = scmActivityService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean save(@RequestBody ScmActivityDto dto){
ResultBean rb = ResultBean.fireFail();
scmActivityService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
scmActivityService.updateIsDel(sids);
return rb.success();
}
@Override
public ResultBean<ScmActivityDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
ScmActivityDetailsVo vo = scmActivityService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

204
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmactivity/ScmActivityService.java

@ -0,0 +1,204 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmactivity;
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.buscenter.api.busbillfile.BusAttachTypeEnum;
import com.yxt.anrui.buscenter.api.busfile.BusFile;
import com.yxt.anrui.buscenter.api.busfleet.BusFleetVo;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.scm.api.scmfile.ScmFile;
import com.yxt.anrui.scm.api.scmfile.ScmFileVo;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.common.base.config.component.FileUploadComponent;
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.scm.api.scmactivity.ScmActivity;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityQuery;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityVo;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityDetailsVo;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityDto;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmActivityService.java <br/>
* Class: com.yxt.anrui.scm.biz.scmactivity.ScmActivityService <br/>
* Description: 营销活动管理 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ScmActivityService extends MybatisBaseService<ScmActivityMapper, ScmActivity> {
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private ScmFileService scmFileService;
public PagerVo<ScmActivityVo> listPageVo(PagerQuery<ScmActivityQuery> pq) {
ScmActivityQuery query = pq.getParams();
QueryWrapper<ScmActivity> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("u.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("u.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("u.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("u.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("sa.createBySid", query.getUserSid());
} else {
PagerVo<ScmActivityVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<ScmActivityVo> p = new PagerVo<>();
return p;
}
}
qw.eq("sa.isDelete", 0);
if (StringUtils.isNotBlank(query.getOrgName())) {
qw.like("sa.createOrgName", query.getOrgName());
}
if (StringUtils.isNotBlank(query.getActivityName())) {
qw.like("sa.activityName", query.getActivityName());
}
String activityStartDate = query.getActivityStartDate();
String activityEndDate = query.getActivityEndDate();
qw.apply(StringUtils.isNotEmpty(activityStartDate), "date_format (sa.activityStartDate,'%Y-%m-%d') >= date_format('" + activityStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(activityEndDate), "date_format (sa.activityEndDate,'%Y-%m-%d') <= date_format('" + activityEndDate + "','%Y-%m-%d')"
);
IPage<ScmActivity> page = PagerUtil.queryToPage(pq);
IPage<ScmActivityVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmActivityVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(ScmActivityDto dto) {
String dtoSid = dto.getSid();
List<String> urls = dto.getUrls();
if (StringUtils.isBlank(dtoSid)) {
String sid = this.insertByDto(dto);
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
ScmFile scmFile = new ScmFile();
scmFile.setLinkSid(sid);
scmFile.setFilePath(filePath);
scmFileService.save(scmFile);
}
return;
}
this.updateByDto(dto);
scmFileService.delByMainSid(dtoSid);
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
ScmFile scmFile = new ScmFile();
scmFile.setLinkSid(dtoSid);
scmFile.setFilePath(filePath);
scmFileService.save(scmFile);
}
}
public String insertByDto(ScmActivityDto dto) {
ScmActivity entity = new ScmActivity();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
return entity.getSid();
}
public void updateByDto(ScmActivityDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
ScmActivity entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public ScmActivityDetailsVo fetchDetailsVoBySid(String sid) {
ScmActivity entity = fetchBySid(sid);
ScmActivityDetailsVo vo = new ScmActivityDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<ScmFileVo> scmFileVos = scmFileService.fetchByMainSid(sid);
List<String> urls = new ArrayList<>();
for (ScmFileVo scmFileVo : scmFileVos) {
String url = fileUploadComponent.getUrlPrefix() + scmFileVo.getFilePath();
urls.add(url);
}
vo.setUrls(urls);
return vo;
}
public void updateIsDel(String[] sids) {
for (String sid : sids) {
baseMapper.updateIsDel(sid);
}
}
}

41
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmcollectionrebate/ScmCollectionRebateService.java

@ -50,6 +50,7 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -125,15 +126,34 @@ public class ScmCollectionRebateService extends MybatisBaseService<ScmCollection
if (StringUtils.isNotBlank(query.getCollectionTypeKey())) {
qw.eq("collectionTypeKey", query.getCollectionTypeKey());
}
if (StringUtils.isNotBlank(query.getCreateOrgName())) {
qw.like("createOrgName", query.getCreateOrgName());
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("purchaseSystemName", query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("brandName", query.getBrandName());
}
if (StringUtils.isNotBlank(query.getRebateTypeKey())) {
qw.eq("rebateTypeKey", query.getRebateTypeKey());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
String withholdingStartDate = query.getWithholdingStartDate();
String withholdingEndDate = query.getWithholdingEndDate();
qw.apply(StringUtils.isNotBlank(withholdingStartDate), "withholdingDate >=" + "'" + withholdingStartDate + "'").
apply(StringUtils.isNotBlank(withholdingEndDate), "withholdingDate <=" + "'" + withholdingEndDate + "'");
String collectionStartDate = query.getCollectionStartDate();
String collectionEndDate = query.getCollectionEndDate();
qw.apply(StringUtils.isNotBlank(collectionStartDate), "date_format (collectionDate,'%Y-%m-%d') >= date_format('" + collectionStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(collectionEndDate), "date_format (collectionDate,'%Y-%m-%d') <= date_format('" + collectionEndDate + "','%Y-%m-%d')"
);
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
String uploadStartDate = query.getUploadStartDate();
String uploadEndDate = query.getUploadEndDate();
qw.apply(StringUtils.isNotEmpty(uploadStartDate), "date_format (uploadDate,'%Y-%m-%d') >= date_format('" + uploadStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(uploadEndDate), "date_format (uploadDate,'%Y-%m-%d') <= date_format('" + uploadEndDate + "','%Y-%m-%d')"
);
IPage<ScmCollectionRebate> page = PagerUtil.queryToPage(pq);
IPage<ScmCollectionRebateVo> pagging = baseMapper.selectPageVo(page, qw);
@ -159,7 +179,7 @@ public class ScmCollectionRebateService extends MybatisBaseService<ScmCollection
if (scmCollectionRebate == null) {
return rb.setMsg("该回款返利不存在");
}
if (StringUtils.isNotBlank(dto.getUploadMoney())) {
if (StringUtils.isNotBlank(dto.getUploadDate())) {
dto.setState("3");
}
this.updateByDto(dto);
@ -264,11 +284,10 @@ public class ScmCollectionRebateService extends MybatisBaseService<ScmCollection
List<ScmCollectionRebateVo> records = pagging.getRecords();
for (ScmCollectionRebateVo record : records) {
//上传状态:未上传
if (StringUtils.isBlank(record.getUploadDate()) && StringUtils.isBlank(record.getUploadMoney())) {
if (record.getUploadDate() == null) {
record.setUploadState("2");
}
//上传状态:已上传
if (StringUtils.isNotBlank(record.getUploadDate()) && StringUtils.isNotBlank(record.getUploadMoney())) {
}else {
//上传状态:已上传
record.setUploadState("3");
}
String withholdingDate = record.getWithholdingDate();
@ -338,8 +357,8 @@ public class ScmCollectionRebateService extends MybatisBaseService<ScmCollection
for (String sid : sids) {
ScmCollectionRebate scmCollectionRebate = fetchBySid(sid);
scmCollectionRebate.setUploadMoney(scmCollectionRebate.getEstimateRebate());
scmCollectionRebate.setUploadDate(stayCheckUpAgre.getUpDate());
scmCollectionRebate.setAdjustmentMoney("0");
scmCollectionRebate.setUploadDate(new Date(stayCheckUpAgre.getUpDate()));
scmCollectionRebate.setAdjustmentMoney(new BigDecimal("0"));
saveOrUpdate(scmCollectionRebate);
}
return rb.success().setMsg("上传成功");

61
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractMapper.java

@ -0,0 +1,61 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scminteract;
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 org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.scm.api.scminteract.ScmInteract;
import com.yxt.anrui.scm.api.scminteract.ScmInteractVo;
import org.apache.ibatis.annotations.Update;
import java.util.List;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractMapper.java <br/>
* Class: com.yxt.anrui.scm.biz.scminteract.ScmInteractMapper <br/>
* Description: 厂家沟通管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface ScmInteractMapper extends BaseMapper<ScmInteract> {
IPage<ScmInteractVo> selectPageVo(IPage<ScmInteract> page, @Param(Constants.WRAPPER) Wrapper<ScmInteract> qw);
@Update("update scm_interact set isDelete = 1 where sid = #{sid}")
void updateIsDel(String sid);
}

11
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractMapper.xml

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.scm.biz.scminteract.ScmInteractMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scminteract.ScmInteractVo">
SELECT * FROM scm_interact si
LEFT JOIN anrui_portal.sys_organization as u ON si.createOrgSid = u.sid
<where> ${ew.sqlSegment} </where>
</select>
</mapper>

92
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractRest.java

@ -0,0 +1,92 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scminteract;
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.scm.api.scminteract.ScmInteract;
import com.yxt.anrui.scm.api.scminteract.ScmInteractQuery;
import com.yxt.anrui.scm.api.scminteract.ScmInteractVo;
import com.yxt.anrui.scm.api.scminteract.ScmInteractDetailsVo;
import com.yxt.anrui.scm.api.scminteract.ScmInteractDto;
import com.yxt.anrui.scm.api.scminteract.ScmInteractFeign;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractFeignFallback.java <br/>
* Class: com.yxt.anrui.scm.biz.scminteract.ScmInteractRest <br/>
* Description: 厂家沟通管理. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "厂家沟通管理")
@RestController
@RequestMapping("v1/manufactorInteract")
public class ScmInteractRest implements ScmInteractFeign {
@Autowired
private ScmInteractService scmInteractService;
@Override
public ResultBean<PagerVo<ScmInteractVo>> listPage(@RequestBody PagerQuery<ScmInteractQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<ScmInteractVo> pv = scmInteractService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean save(@RequestBody ScmInteractDto dto){
ResultBean rb = ResultBean.fireFail();
scmInteractService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
scmInteractService.updateIsDel(sids);
return rb.success();
}
@Override
public ResultBean<ScmInteractDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
ScmInteractDetailsVo vo = scmInteractService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

202
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scminteract/ScmInteractService.java

@ -0,0 +1,202 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scminteract;
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.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.scm.api.scmactivity.ScmActivityVo;
import com.yxt.anrui.scm.api.scmfile.ScmFile;
import com.yxt.anrui.scm.api.scmfile.ScmFileVo;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.common.base.config.component.FileUploadComponent;
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.scm.api.scminteract.ScmInteract;
import com.yxt.anrui.scm.api.scminteract.ScmInteractQuery;
import com.yxt.anrui.scm.api.scminteract.ScmInteractVo;
import com.yxt.anrui.scm.api.scminteract.ScmInteractDetailsVo;
import com.yxt.anrui.scm.api.scminteract.ScmInteractDto;
import com.yxt.anrui.scm.api.scminteract.ScmInteractFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* Project: anrui-scm(销售支持业务) <br/>
* File: ScmInteractService.java <br/>
* Class: com.yxt.anrui.scm.biz.scminteract.ScmInteractService <br/>
* Description: 厂家沟通管理 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-10-14 17:20:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ScmInteractService extends MybatisBaseService<ScmInteractMapper, ScmInteract> {
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private ScmFileService scmFileService;
public PagerVo<ScmInteractVo> listPageVo(PagerQuery<ScmInteractQuery> pq) {
ScmInteractQuery query = pq.getParams();
QueryWrapper<ScmInteract> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("u.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("u.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("u.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("u.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("si.createBySid", query.getUserSid());
} else {
PagerVo<ScmInteractVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<ScmInteractVo> p = new PagerVo<>();
return p;
}
}
qw.eq("si.isDelete", 0);
if (StringUtils.isNotBlank(query.getOrgName())) {
qw.like("si.createOrgName", query.getOrgName());
}
if (StringUtils.isNotBlank(query.getManufactorName())) {
qw.like("si.manufactorName", query.getManufactorName());
}
String interactDateStart = query.getInteractDateStartDate();
String interactDateEnd = query.getInteractDateEndDate();
qw.apply(StringUtils.isNotEmpty(interactDateStart), "date_format (si.interactDate,'%Y-%m-%d') >= date_format('" + interactDateStart + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(interactDateEnd), "date_format (si.interactDate,'%Y-%m-%d') <= date_format('" + interactDateEnd + "','%Y-%m-%d')"
);
IPage<ScmInteract> page = PagerUtil.queryToPage(pq);
IPage<ScmInteractVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmInteractVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(ScmInteractDto dto){
String dtoSid = dto.getSid();
List<String> urls = dto.getUrls();
if (StringUtils.isBlank(dtoSid)) {
String sid = this.insertByDto(dto);
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
ScmFile scmFile = new ScmFile();
scmFile.setLinkSid(sid);
scmFile.setFilePath(filePath);
scmFileService.save(scmFile);
}
return;
}
this.updateByDto(dto);
scmFileService.delByMainSid(dtoSid);
for (String url : urls) {
String filePath = url.replace(fileUploadComponent.getUrlPrefix(), "");
ScmFile scmFile = new ScmFile();
scmFile.setLinkSid(dtoSid);
scmFile.setFilePath(filePath);
scmFileService.save(scmFile);
}
}
public String insertByDto(ScmInteractDto dto){
ScmInteract entity = new ScmInteract();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
return entity.getSid();
}
public void updateByDto(ScmInteractDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
ScmInteract entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public ScmInteractDetailsVo fetchDetailsVoBySid(String sid){
ScmInteract entity = fetchBySid(sid);
ScmInteractDetailsVo vo = new ScmInteractDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<ScmFileVo> scmFileVos = scmFileService.fetchByMainSid(sid);
List<String> urls = new ArrayList<>();
for (ScmFileVo scmFileVo : scmFileVos) {
String url = fileUploadComponent.getUrlPrefix() + scmFileVo.getFilePath();
urls.add(url);
}
vo.setUrls(urls);
return vo;
}
public void updateIsDel(String[] sids) {
for (String sid : sids) {
baseMapper.updateIsDel(sid);
}
}
}

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java

@ -81,7 +81,9 @@ public class ScmSpecialRebateService extends MybatisBaseService<ScmSpecialRebate
ScmSpecialRebateQuery query = pq.getParams();
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
if (StringUtils.isBlank(query.getOrgPath())){
qw.eq("createOrgSid", query.getCreateOrgSid());
}else if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());

253
anrui-scm/anrui-scm-ui/src/api/Common/dictcommons.js

@ -0,0 +1,253 @@
import request from '@/utils/request'
export function typeValues(data) {
return request({
url: '/portal/v1/dictcommons/typeValues',
method: 'get',
params: data
})
}
// 获取所有分公司
export function selectOrgSidList(data) {
return request({
url: '/portal/v1/sysorganization/selectOrgSidList',
method: 'get',
params: data
})
}
// 根据当前登录人orgSidPath(全路径sid)查询分公司
export function getOrgSidByPath(data) {
return request({
url: '/portal/v1/sysstafforg/getOrgSidByPath',
method: 'get',
params: data
})
}
// 根据分公司sid查询分公司名称
export function fetchBySid(sid) {
return request({
url: 'portal/v1/sysorganization/fetchBySid/' + sid,
method: 'get'
})
}
// 根据当前登录用户sid获取本分公司下的销售部门和销售专员
export function selectOrgList(data) {
return request({
url: '/portal/v1/sysorganization/selectOrgList',
method: 'get',
params: data
})
}
// 根据当前登录用户全路径sidPath获取本分公司下的资方信息
export function selectListByOrgPath(data) {
return request({
url: '/riskcenter/v1/loanfinbank/selectListByOrgPath',
method: 'get',
params: data
})
}
// 根据当前登录用户的分公司sid获取本分公司下的车型信息
export function selModelByUseOrgSid(data) {
return request({
url: '/base/basevehmodelconfig/selModelByUseOrgSid',
method: 'post',
params: data
})
}
// 根据当前登录用户的全路径sidPath、用户sid、客户类型(01个人、02企业)等获取当前登录用户下的客户信息
export function selectCustomerList(data) {
return request({
url: '/crm/v1/crmcustomertemp/selectCustomerList',
method: 'get',
params: data
})
}
// 根据当前登录用户的全路径sidPath获取分公司下的客户信息
export function pickCustomer(data) {
return request({
url: '/riskcenter/v1/loansubletapply/pickCustomer',
method: 'get',
params: data
})
}
// 当前用户创建申请时判断该用户是否有该菜单的操作权限
export function selectHaveMessage(data) {
return request({
url: '/portal/v1/sysuser/selectHaveMessage ',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 根据当前登录用户的角色获取菜单分页列表页面右上角按钮的隐藏
export function getButtonPermissions(data) {
return request({
url: '/portal/v1/sysfunction/getButtonPermissions',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 根据分公司sid获取该分公司下的所有供应商
export function getGysByOrgSid(data) {
return request({
url: '/base/v1/basemanufacturer/getGysByOrgSid',
method: 'post',
params: data
})
}
// 根据分公司sid获取该分公司下的所有供应商
export function getGysTypeByOrgSid(data) {
return request({
url: '/base/v1/basemanufacturer/getGysTypeByOrgSid',
method: 'post',
params: data
})
}
// 根据分公司全路径sid和车型sid获取合格证公告型号
export function getAnnounceList(data) {
return request({
url: '/base/v1/basevehmodelannouncementmodel/getAnnounceList',
method: 'get',
params: data
})
}
// 根据分公司全路径sid、当前登录用户sid、是否打包获取已备案(有效期内)的产品政策信息
export function selectList(data) {
return request({
url: '/riskcenter/v1/LoanFinPolicy/selectList',
method: 'get',
params: data
})
}
// 获取产品政策下的其它融信息,或分公司下备案通过的其它融
export function selectListByOther(data) {
return request({
url: '/riskcenter/v1/LoanFinOtherPolicy/selectList',
method: 'get',
params: data
})
}
// 销售订单--编辑、详情初始化
export function fetchDetails(data) {
return request({
url: '/buscenter/v1/bussalesorder/fetchDetailsBySid/' + data,
method: 'get'
})
}
// 根据部门sid获取该部门主管人员
export function selectMangerByDeptSid(data) {
return request({
url: '/base/v1/basedistributorapply/selectMangerByDeptSid',
method: 'get',
params: data
})
}
// 根据分公司全路径Sid获取
export function selectInvoingByOrgPath(data) {
return request({
url: '/riskcenter/v1/loancustomerrecord/selectInvoingByOrgPath',
method: 'get',
params: data
})
}
// 获取集团所有在职人员
export function selectStaffListss() {
return request({
url: '/portal/v1/sysstaffinfo/selectStaffListss',
method: 'get'
})
}
// 根据分公司orgPath和账号类型(对公或个人,必传)获取银行账号信息
export function listByPayment(data) {
return request({
url: '/fin/v1/finmanufacturerbank/listByPayment',
method: 'get',
params: data
})
}
// 根据用户sid、分公司orgPath、账号类型(可不传)获取本分公司下的银行账号
export function selAccountByOrgSid(data) {
return request({
url: '/fin/v1/finmanufacturerbank/selAccountByOrgSid',
method: 'get',
params: data
})
}
// 根据当前登录用户的全路径查询相应部门下的所有人
export function selAllByOrgSidPath(data) {
return request({
url: '/portal/v1/sysstafforg/selAllByOrgSidPath',
method: 'post',
params: data
})
}
// 根据当前登录用户分公司sid获取本分公司下所有用户(一个用户若兼职多个部门则会多次出现)
export function getGressionUserList(data) {
return request({
url: '/portal/v1/sysstaffinfo/getGressionUserList',
method: 'get',
params: data
})
}
// 车型配置详细信息
export function selectExiCarConfig(data) {
return request({
url: '/base/v1/basevehicle/selectExiCarConfig',
method: 'post',
params: {
modelSid: data.modelSid,
configSid: data.configSid,
vehModelConfigSid: data.vehModelConfigSid
}
})
}
// 获取集团法务部所有人员
export function getLegalStaffS(data) {
return request({
url: '/riskcenter/v1/LoanCaseProgress/getLegalStaffS',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 根据资方sid获取开户行信息
export function fetchListByBankSid(data) {
return request({
url: '/riskcenter/v1/loanfinopenbank/fetchListByBankSid',
method: 'get',
params: data
})
}

62
anrui-scm/anrui-scm-ui/src/api/manufactorInteract/manufactorInteract.js

@ -0,0 +1,62 @@
import request from '@/utils/request'
// 厂家沟通
export default {
// 查询分页列表
listPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/manufactorInteract/listPage',
method: 'post',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
},
saveOrUpdate: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/manufactorInteract/saveOrUpdate',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
saveResult: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/manufactorInteract/saveResult',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
init: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/manufactorInteract/gteInitBySid/' + data,
method: 'get',
})
},
deleteBySids: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/manufactorInteract/delBySids',
method: 'DELETE',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
}

62
anrui-scm/anrui-scm-ui/src/api/marketingActivities/marketingActivities.js

@ -0,0 +1,62 @@
import request from '@/utils/request'
// 营销活动
export default {
// 查询分页列表
listPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/marketingActivities/listPage',
method: 'post',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
},
saveOrUpdate: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/marketingActivities/saveOrUpdate',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
saveResult: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/marketingActivities/saveResult',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
init: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/marketingActivities/gteInitBySid/' + data,
method: 'get',
})
},
deleteBySids: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/scm/v1/marketingActivities/delBySids',
method: 'DELETE',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
},
}

423
anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js

@ -1,7 +1,6 @@
import Layout from '@/layout'
const codemenu = [
{
const codemenu = [{
path: '/scminbound',
component: Layout,
redirect: '/scminbound/index',
@ -12,7 +11,10 @@ const codemenu = [
path: '/scminbound/index',
component: () => import('@/views/anruiscm/scminbound/scminbound.vue'),
name: 'ScmInboundIndex',
meta: { title: '销售入库单', noCache: true }
meta: {
title: '销售入库单',
noCache: true
}
}]
},
{
@ -26,7 +28,10 @@ const codemenu = [
path: '/scmotherinbound/index',
component: () => import('@/views/anruiscm/scmotherinbound/scmotherinbound.vue'),
name: 'ScmOtherInboundIndex',
meta: { title: '其他入库单', noCache: true }
meta: {
title: '其他入库单',
noCache: true
}
}]
},
{
@ -40,7 +45,10 @@ const codemenu = [
path: '/scmotheroutbound/index',
component: () => import('@/views/anruiscm/scmotheroutbound/scmotheroutbound.vue'),
name: 'ScmOtherOutboundIndex',
meta: { title: '其他出库单', noCache: true }
meta: {
title: '其他出库单',
noCache: true
}
}]
},
{
@ -54,7 +62,10 @@ const codemenu = [
path: '/scmoutbound/index',
component: () => import('@/views/anruiscm/scmoutbound/scmoutbound.vue'),
name: 'ScmOutboundIndex',
meta: { title: '销售出库单', noCache: true }
meta: {
title: '销售出库单',
noCache: true
}
}]
},
{
@ -68,7 +79,10 @@ const codemenu = [
path: '/scmrealtimeinventory/index',
component: () => import('@/views/anruiscm/scmrealtimeinventory/scmrealtimeinventory.vue'),
name: 'ScmRealTimeInventoryIndex',
meta: { title: '即时库存表', noCache: true }
meta: {
title: '即时库存表',
noCache: true
}
}]
},
{
@ -82,7 +96,10 @@ const codemenu = [
path: '/scmrejected/index',
component: () => import('@/views/anruiscm/scmrejected/scmrejected.vue'),
name: 'ScmRejectedIndex',
meta: { title: '采购退料单', noCache: true }
meta: {
title: '采购退料单',
noCache: true
}
}]
},
{
@ -96,7 +113,10 @@ const codemenu = [
path: '/scmreturn/index',
component: () => import('@/views/anruiscm/scmreturn/scmreturn.vue'),
name: 'ScmReturnIndex',
meta: { title: '销售退货单', noCache: true }
meta: {
title: '销售退货单',
noCache: true
}
}]
},
@ -111,7 +131,10 @@ const codemenu = [
path: '/scmmaterial/index',
component: () => import('@/views/anruiscm/scmmaterial/scmmaterial.vue'),
name: 'ScmMaterialIndex',
meta: { title: '物料管理', noCache: true }
meta: {
title: '物料管理',
noCache: true
}
}]
},
// 存放地点
@ -126,7 +149,10 @@ const codemenu = [
path: '/scmwarehouse/index',
component: () => import('@/views/anruiscm/scmwarehouse/scmwarehouse.vue'),
name: 'ScmWarehouseIndex',
meta: { title: '存放地点', noCache: true }
meta: {
title: '存放地点',
noCache: true
}
}]
},
{
@ -140,7 +166,10 @@ const codemenu = [
path: '/shangzhuang/shangzhuangguanli',
component: () => import('@/views/shangzhuang/shangzhuangguanli/shangzhuangguanli.vue'),
name: 'ShangZhuangGuanLi',
meta: { title: '上装配置管理', noCache: true }
meta: {
title: '上装配置管理',
noCache: true
}
}]
},
{
@ -154,7 +183,10 @@ const codemenu = [
path: '/shangzhuang/shangzhuangtaizhangguanli',
component: () => import('@/views/shangzhuang/shangzhuangtaizhangguanli/shangzhuangtaizhangguanli.vue'),
name: 'shangzhuangtaizhangguanli',
meta: { title: '上装台账管理', noCache: true }
meta: {
title: '上装台账管理',
noCache: true
}
}]
},
// 合格证台账
@ -169,7 +201,10 @@ const codemenu = [
path: '/hegezheng/hegezhengtaizhang',
component: () => import('@/views/cheliang/hegezhengtaizhang/hegezhengtaizhang.vue'),
name: 'hegezhengtaizhang',
meta: { title: '合格证管理', noCache: true }
meta: {
title: '合格证管理',
noCache: true
}
}]
},
@ -185,7 +220,10 @@ const codemenu = [
path: '/caigoudingdan/index',
component: () => import('@/views/cheliang/cheliangcaigou/cheliangcaigou.vue'),
name: 'cheliangcaigou',
meta: { title: '采购订单管理', noCache: true }
meta: {
title: '采购订单管理',
noCache: true
}
}]
},
@ -196,36 +234,50 @@ const codemenu = [
meta: {
title: '挂车信息管理'
},
children: [
{
children: [{
path: '/guache/guacheguanli',
component: () => import('@/views/guache/guacheguanli/guacheguanli.vue'),
name: 'GuaCheJianSuoGuanLi',
meta: { title: '挂车管理', noCache: true }
meta: {
title: '挂车管理',
noCache: true
}
},
{
path: '/guache/guachejiansuo',
component: () => import('@/views/guache/guachejiansuo/guachejiansuoguanli.vue'),
name: 'guachejiansuoguanli',
meta: { title: '挂车管理', noCache: true }
meta: {
title: '挂车管理',
noCache: true
}
},
{
path: '/guache/guachechexing',
component: () => import('@/views/guache/guachechexing/guachechexingguanli'),
name: 'guachechexingguanli',
meta: { title: '挂车车型管理', noCache: true }
meta: {
title: '挂车车型管理',
noCache: true
}
},
{
path: '/guache/guachetaizhang',
component: () => import('@/views/guache/guachetaizhang/guachetaizhangguanli'),
name: 'GuaCheTaiZhangGuanLi',
meta: { title: '挂车台账管理', noCache: true }
meta: {
title: '挂车台账管理',
noCache: true
}
},
{
path: '/guache/guachechuku',
component: () => import('@/views/guache/guachechuku/trailerout'),
name: 'GuaCheChuKu',
meta: { title: '挂车出库管理', noCache: true }
meta: {
title: '挂车出库管理',
noCache: true
}
},
]
},
@ -238,20 +290,25 @@ const codemenu = [
meta: {
title: '车辆管理'
},
children: [
{
children: [{
path: '/cheliang/chexing',
component: () =>
import('@/views/cheliang/chexing/chexing.vue'),
name: 'chexing',
meta: { title: '车型管理', noCache: true }
meta: {
title: '车型管理',
noCache: true
}
},
{
path: '/cheliang/changyongpeizhi',
component: () =>
import('@/views/cheliang/chexingpeizhi/changyongpeizhi.vue'),
name: 'chexingpeizhi',
meta: { title: '常用配置管理', noCache: true }
meta: {
title: '常用配置管理',
noCache: true
}
},
// 车辆台账
{
@ -259,7 +316,10 @@ const codemenu = [
component: () =>
import('@/views/cheliang/cheliangtaizhang/cheliangtaizhang.vue'),
name: 'cheliangtaizhang',
meta: { title: '车辆台账', noCache: false }
meta: {
title: '车辆台账',
noCache: false
}
},
// 车辆台账查询
{
@ -267,14 +327,20 @@ const codemenu = [
component: () =>
import('@/views/cheliang/cheliangtaizhangchaxun/chaliangtaizhangselect.vue'),
name: 'chaliangtaizhangselect',
meta: { title: '车辆台账查询', noCache: true }
meta: {
title: '车辆台账查询',
noCache: true
}
},
{
path: '/cheliang/chexingbaojia',
component: () =>
import('@/views/cheliang/chexingbaojia/daibaojiaguanli/daibaojia.vue'),
name: 'daibaojia',
meta: { title: '车型报价', noCache: true }
meta: {
title: '车型报价',
noCache: true
}
},
// 车辆信息
@ -283,7 +349,10 @@ const codemenu = [
component: () =>
import('@/views/cheliang/cheliangtaizhang/cheliangtaizhangInfo.vue'),
name: 'CheliangtaizhangInfo',
meta: { title: '车辆信息', noCache: true }
meta: {
title: '车辆信息',
noCache: true
}
},
// 车辆销售(旧版)
{
@ -291,7 +360,10 @@ const codemenu = [
component: () =>
import('@/views/cheliang/cheliangxiaoshou/cheliangxiaoshouguanli.vue'),
name: 'cheliangxiaoshou',
meta: { title: '车辆销售台账', noCache: true }
meta: {
title: '车辆销售台账',
noCache: true
}
},
// 车辆销售(新版)
{
@ -299,7 +371,10 @@ const codemenu = [
component: () =>
import('@/views/cheliang/cheliangxiaoshou/cheliangxiaoshoutaizhang.vue'),
name: 'cheliangxiaoshoutaizhang',
meta: { title: '销售台账', noCache: true }
meta: {
title: '销售台账',
noCache: true
}
}
]
},
@ -315,7 +390,10 @@ const codemenu = [
path: '/supplychain/caigoutuiku',
component: () => import('@/views/supplychain/caigoutuiku/caigoutuiku.vue'),
name: 'caigoutuiku',
meta: { title: '采购退库', noCache: true }
meta: {
title: '采购退库',
noCache: true
}
}]
},
{
@ -325,18 +403,23 @@ const codemenu = [
meta: {
title: '车辆采购'
},
children: [
{
children: [{
path: '/vehicle/cheliangpaichan',
component: () => import('@/views/supplychain/cheliangpaichan/cheliangpaichan.vue'),
name: 'cheliangpaichan',
meta: { title: '厂家采购', noCache: false }
meta: {
title: '厂家采购',
noCache: false
}
},
{
path: '/vehicle/paichandingjintobeconfirmed',
component: () => import('@/views/supplychain/paichandingjin/paichandingjintobeconfirmed.vue'),
name: 'paichandingjindaiqueren',
meta: { title: '排产订金申请确认', noCache: false }
meta: {
title: '排产订金申请确认',
noCache: false
}
}
]
},
@ -347,14 +430,15 @@ const codemenu = [
meta: {
title: '车辆采购'
},
children: [
{
path: '/supplychain/changjiaxitong',
component: () => import('@/views/supplychain/changjiaxitong/manufacturers.vue'),
name: 'changjiaxitongrenkuan',
meta: { title: '厂家系统认款', noCache: false }
children: [{
path: '/supplychain/changjiaxitong',
component: () => import('@/views/supplychain/changjiaxitong/manufacturers.vue'),
name: 'changjiaxitongrenkuan',
meta: {
title: '厂家系统认款',
noCache: false
}
]
}]
},
{
path: '/supplychain',
@ -363,14 +447,15 @@ const codemenu = [
meta: {
title: '调车申请管理'
},
children: [
{
path: '/supplychain/cheliangneigou',
component: () => import('@/views/supplychain/cheliangneigou/cheliangneigouguanli.vue'),
name: 'cheliangneigouguanli',
meta: { title: '调车申请管理', noCache: true }
children: [{
path: '/supplychain/cheliangneigou',
component: () => import('@/views/supplychain/cheliangneigou/cheliangneigouguanli.vue'),
name: 'cheliangneigouguanli',
meta: {
title: '调车申请管理',
noCache: true
}
]
}]
},
{
path: '/baseoutsourcingapplication',
@ -379,14 +464,15 @@ const codemenu = [
meta: {
title: '车辆外采'
},
children: [
{
path: '/baseoutsourcingapplication/index',
component: () => import('@/views/baseoutsourcingapplication/baseoutsourcingapplication.vue'),
name: 'baseoutsourcingapplication',
meta: { title: '车辆外采', noCache: true }
children: [{
path: '/baseoutsourcingapplication/index',
component: () => import('@/views/baseoutsourcingapplication/baseoutsourcingapplication.vue'),
name: 'baseoutsourcingapplication',
meta: {
title: '车辆外采',
noCache: true
}
]
}]
},
{
path: '/examine',
@ -395,14 +481,15 @@ const codemenu = [
meta: {
title: '出库审核'
},
children: [
{
path: '/examine/chukushenhe',
component: () => import('@/views/examinePage/chukushenhe/chukushenhe.vue'),
name: 'chukushenhe',
meta: { title: '出库审核', noCache: true }
children: [{
path: '/examine/chukushenhe',
component: () => import('@/views/examinePage/chukushenhe/chukushenhe.vue'),
name: 'chukushenhe',
meta: {
title: '出库审核',
noCache: true
}
]
}]
},
{
path: '/kucunguanli',
@ -411,42 +498,59 @@ const codemenu = [
meta: {
title: '库存管理'
},
children: [
{
children: [{
path: '/kucunguanli/tiaojiaguanli',
component: () => import('@/views/kucunguanli/tiaojiaguanli/priceguanli.vue'),
name: 'priceguanli',
meta: { title: '调价申请管理', noCache: true }
meta: {
title: '调价申请管理',
noCache: true
}
},
{
path: '/kucunguanli/changjiatuiku',
component: () => import('@/views/kucunguanli/changjiatuiku/changjiatuikuguanli/changjiatuikuguanli.vue'),
name: 'changjiatuikuguanli',
meta: { title: '厂家退库办理', noCache: true }
meta: {
title: '厂家退库办理',
noCache: true
}
},
{
path: '/kucunguanli/panku',
component: () => import('@/views/kucunguanli/panku/pankuguanli.vue'),
name: 'pankuguanli',
meta: { title: '盘库管理', noCache: true }
meta: {
title: '盘库管理',
noCache: true
}
},
{
path: '/kucunguanli/cheliangweihu/richangxunjian',
component: () => import('@/views/kucunguanli/cheliangweihu/richangxunjian/cheliangxunjian.vue'),
name: 'cheliangxunjianjiluchaxun',
meta: { title: '日常巡检', noCache: true }
meta: {
title: '日常巡检',
noCache: true
}
},
{
path: '/kucunguanli/yancheguanli',
component: () => import('@/views/supplychain/yancheguanli/yancheguanli.vue'),
name: 'yancheguanli',
meta: { title: '验车管理', noCache: true }
meta: {
title: '验车管理',
noCache: true
}
},
{
path: '/kucunguanli/rukuguanli',
component: () => import('@/views/supplychain/rukuguanli/rukuguanliAwait.vue'),
name: 'rukuguanliawait',
meta: { title: '收车管理', noCache: true }
meta: {
title: '收车管理',
noCache: true
}
}
]
},
@ -457,24 +561,32 @@ const codemenu = [
meta: {
title: '其他菜单'
},
children: [
{
children: [{
path: '/othermenu/affichetype',
component: () => import('@/views/othermenu/affichetype/gonggaoguanli.vue'),
name: 'gonggaoxinghaoguanli',
meta: { title: '公告型号管理', noCache: true }
meta: {
title: '公告型号管理',
noCache: true
}
},
{
path: '/othermenu/cartags',
component: () => import('@/views/othermenu/cartags/chexingbiaoqianguanli.vue'),
name: 'chexingbiaoqianguanli',
meta: { title: '车型标签管理', noCache: true }
meta: {
title: '车型标签管理',
noCache: true
}
},
{
path: '/othermenu/shangzhuangtiaojia',
component: () => import('@/views/othermenu/shangzhuangtiaojia/shangzhuangtiaojiaguanli.vue'),
name: 'shangzhuangtiaojiaguanli',
meta: { title: '上装调价管理', noCache: true }
meta: {
title: '上装调价管理',
noCache: true
}
}
]
},
@ -485,24 +597,32 @@ const codemenu = [
meta: {
title: '单车返利'
},
children: [
{
children: [{
path: '/bikerebate/bikerebatemanagement',
component: () => import('@/views/bikerebate/bikerebatemanagement/bicyclerebatemanagement.vue'),
name: 'BicycleRebateManagement',
meta: { title: '单车返利管理', noCache: true }
meta: {
title: '单车返利管理',
noCache: true
}
},
{
path: '/bikerebate/bicyclerebatewithholding',
component: () => import('@/views/bikerebate/bicyclerebatewithholding/bicyclerebatewithholding.vue'),
name: 'BicycleRebateWithholding',
meta: { title: '单车返利预提', noCache: true }
meta: {
title: '单车返利预提',
noCache: true
}
},
{
path: '/bikerebate/bicyclerebatecheck',
component: () => import('@/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue'),
name: 'BicycleRebateToBeChecked',
meta: { title: '单车返利核对', noCache: true }
meta: {
title: '单车返利核对',
noCache: true
}
}
]
},
@ -513,30 +633,41 @@ const codemenu = [
meta: {
title: '专项返利'
},
children: [
{
children: [{
path: '/specialrebate/specialrebatemanagement',
component: () => import('@/views/specialrebate/specialrebatemanagement/specialrebatemanagement.vue'),
name: 'ZhuanXiangFanLiGuanLi',
meta: { title: '专项返利管理', noCache: true }
meta: {
title: '专项返利管理',
noCache: true
}
},
{
path: '/specialrebate/specialrebatewithholding',
component: () => import('@/views/specialrebate/specialrebatewithholding/specialrebatewithholding.vue'),
name: 'ZhuanXiangFanLiYuTi',
meta: { title: '专项返利预提', noCache: true }
meta: {
title: '专项返利预提',
noCache: true
}
},
{
path: '/specialrebate/specialrebatecheck',
component: () => import('@/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue'),
name: 'SpecialRebateToBeChecked',
meta: { title: '专项返利核对', noCache: true }
meta: {
title: '专项返利核对',
noCache: true
}
},
{
path: '/specialrebate/specialrebatedistribution',
component: () => import('@/views/specialrebate/specialrebatedistribution/specialrebatetobeallocated.vue'),
name: 'SpecialRebateToBeAllocated',
meta: { title: '专项返利分配', noCache: true }
meta: {
title: '专项返利分配',
noCache: true
}
}
]
},
@ -547,30 +678,41 @@ const codemenu = [
meta: {
title: '厂家回款返利'
},
children: [
{
children: [{
path: '/huikuanguanli/collectionrebatemanagement',
component: () => import('@/views/manufacturerrebates/huikuanguanli/collectionrebatemanagement.vue'),
name: 'HuiKuanFanLiGuanLi',
meta: { title: '厂家回款返利管理', noCache: true }
meta: {
title: '厂家回款返利管理',
noCache: true
}
},
{
path: '/huikuanyuti/collectionrebatewithholding',
component: () => import('@/views/manufacturerrebates/huikuanyuti/collectionrebatewithholding.vue'),
name: 'HuiKuanFanLiYuYiGuanLi',
meta: { title: '厂家回款返利预提', noCache: true }
meta: {
title: '厂家回款返利预提',
noCache: true
}
},
{
path: '/huikuanhedui/collectionrebatetobechecked',
component: () => import('@/views/manufacturerrebates/huikuanhedui/collectionrebatetobechecked.vue'),
name: 'HuiKuanFanLiDaiHeDui',
meta: { title: '厂家回款返利核对', noCache: true }
meta: {
title: '厂家回款返利核对',
noCache: true
}
},
{
path: '/huikuanfenpei/collectionrebateallot',
component: () => import('@/views/manufacturerrebates/huikuanfenpei/collectionrebateallot.vue'),
name: 'HuiKuanFanliFenPei',
meta: { title: '厂家回款返利分配', noCache: true }
meta: {
title: '厂家回款返利分配',
noCache: true
}
}
]
},
@ -586,7 +728,10 @@ const codemenu = [
path: '/ruzhang/ruzhangguanli',
component: () => import('@/views/ruzhang/ruzhangguanli/ruzhangguanli.vue'),
name: 'ruzhangguanli',
meta: { title: '入库管理', noCache: true }
meta: {
title: '入库管理',
noCache: true
}
}]
},
// 未售买断管理
@ -601,7 +746,10 @@ const codemenu = [
path: '/weishoumaiduan/weishoumaiduanguanli',
component: () => import('@/views/weishoumaiduan/weishoumaiduanguanli/unsoldguanli.vue'),
name: 'unsoldguanli',
meta: { title: '未售买断申请管理', noCache: true }
meta: {
title: '未售买断申请管理',
noCache: true
}
}]
},
// 出库管理
@ -616,7 +764,10 @@ const codemenu = [
path: '/chuku/chukuguanli',
component: () => import('@/views/chuku/chukuguanli/chukuguanli.vue'),
name: 'chukuguanli',
meta: { title: '出库管理', noCache: true }
meta: {
title: '出库管理',
noCache: true
}
}]
},
// 合格证盘点记录
@ -631,7 +782,10 @@ const codemenu = [
path: '/hegezhengpandian/pandianjilu',
component: () => import('@/views/supplychain/hegezhengpandianjilu/hegezhengpandianjilu.vue'),
name: 'hegezhengpandianjilu',
meta: { title: '合格证盘点', noCache: true }
meta: {
title: '合格证盘点',
noCache: true
}
}]
},
// 验车管理
@ -676,7 +830,10 @@ const codemenu = [
path: '/cunfangdidianbiangengguanli/cunfangdidianbiangeng',
component: () => import('@/views/supplychain/cunfangdidianbiangeng/cunfangdidianbiangeng.vue'),
name: 'cunfangdidianbiangeng',
meta: { title: '存放地点变更申请管理', noCache: true }
meta: {
title: '存放地点变更申请管理',
noCache: true
}
}]
},
// 调车开票申请管理
@ -691,7 +848,10 @@ const codemenu = [
path: '/diaochekaipiaoshenqingguanli/diaocheshenqing',
component: () => import('@/views/supplychain/diaochekaipiaoshenqingguanli/diaocheshenqing.vue'),
name: 'diaocheshenqing',
meta: { title: '调车开票申请管理', noCache: true }
meta: {
title: '调车开票申请管理',
noCache: true
}
}]
},
// 调账申请管理
@ -706,7 +866,10 @@ const codemenu = [
path: '/tiaozhangshenqingguanli/tiaozhangshenqing',
component: () => import('@/views/supplychain/tiaozhangshenqingguanli/tiaozhangshenqingguanli.vue'),
name: 'tiaozhangshenqingguanli',
meta: { title: '调账申请管理', noCache: true }
meta: {
title: '调账申请管理',
noCache: true
}
}]
},
// 车辆检查
@ -721,7 +884,10 @@ const codemenu = [
path: '/yanchejianchaxiangmu/yanchejiancha',
component: () => import('@/views/supplychain/yanchejianchaxiangmu/yanchejiancha.vue'),
name: 'yanchejianchaxiangmu',
meta: { title: '验车检查项目管理', noCache: true }
meta: {
title: '验车检查项目管理',
noCache: true
}
}]
},
// 供应商管理
@ -736,7 +902,10 @@ const codemenu = [
path: '/gongyingshang',
component: () => import('@/views/gongyingshang/gongyingshanggaunli.vue'),
name: 'gongyingshanggaunli',
meta: { title: '供应商管理', noCache: true }
meta: {
title: '供应商管理',
noCache: true
}
}]
},
// 采购渠道
@ -751,7 +920,10 @@ const codemenu = [
path: '/purchasingchannels/caigouqudaotobeselected',
component: () => import('@/views/purchasingchannels/caigouqudaotobeselected.vue'),
name: 'caigouqudaotobeselected',
meta: { title: '采购渠道', noCache: true }
meta: {
title: '采购渠道',
noCache: true
}
}]
},
// 采购入库单
@ -766,7 +938,46 @@ const codemenu = [
path: '/purchasereceipt',
component: () => import('@/views/purchasereceipt/purchasereceipt.vue'),
name: 'PurchaseReceipt',
meta: { title: '采购入库单', noCache: true }
meta: {
title: '采购入库单',
noCache: true
}
}]
},
{
path: '/marketingActivities',
component: Layout,
redirect: '/marketingActivities',
meta: {
title: '营销活动管理'
},
children: [{
path: '/marketingActivities/marketingActivities',
component: () => import('@/views/marketingActivities/marketingActivities.vue'),
name: 'MarketingActivities',
meta: {
title: '营销活动管理',
noCache: true
}
}]
},
{
path: '/manufactorInteract',
component: Layout,
redirect: '/manufactorInteract',
meta: {
title: '厂家沟通管理'
},
children: [{
path: '/manufactorInteract/manufactorInteract',
component: () => import('@/views/manufactorInteract/manufactorInteract.vue'),
name: 'ManufactorInteract',
meta: {
title: '厂家沟通管理',
noCache: true
}
}]
},

4
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheck.vue

@ -245,7 +245,7 @@ export default {
req.pagelist(this.listQuery).then((response) => {
console.log('列表查询结果:', response)
this.listLoading = false
if (response.success && response.data && response.data.total > 0) {
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
@ -275,7 +275,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
handleClick() {
this.$parent.resetState()

2
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue

@ -457,7 +457,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //

344
anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteract.vue

@ -0,0 +1,344 @@
<template>
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="厂家沟通管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="分公司">
<el-input v-model="listQuery.params.orgName" placeholder="" clearable />
</el-form-item>
<el-form-item label="厂家名称">
<el-input v-model="listQuery.params.manufactorName" placeholder="" clearable />
</el-form-item>
<el-form-item label="沟通日期">
<el-date-picker v-model="listQuery.params.interactDateStartDate" value-format="yyyy-MM-dd"
format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.interactDateEndDate" value-format="yyyy-MM-dd"
format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="small" @click="handleReset">重置</el-button>
</div>
</div>
</div>
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">厂家沟通列表</div>
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;"
@selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50" />
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column label="操作" width="80" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toInfo(scope.row)">详情</el-button>
</template>
</el-table-column>
<el-table-column prop="createOrgName" label="分公司" align="center" />
<el-table-column prop="manufactorName" label="厂家名称" align="center" />
<el-table-column prop="interactDate" label="沟通日期" align="center" />
<el-table-column prop="contacts" label="对接人" align="center" />
<el-table-column prop="interactContent" label="沟通事宜" align="center" />
</el-table>
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--End查询列表部分-->
</div>
</div>
<!--新增及修改 -->
<manufactorInteractAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState"
@reloadlist="getList" />
<!--详情-->
<manufactorInteractInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" />
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/manufactorInteract/manufactorInteract'
import manufactorInteractAdd from './manufactorInteractAdd'
import manufactorInteractInfo from './manufactorInteractInfo'
export default {
name: 'ManufactorInteract',
components: {
Pagination,
pageye,
ButtonBar,
manufactorInteractAdd,
manufactorInteractInfo
},
data() {
return {
btndisabled: false,
btnList: [{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toEdit',
btnLabel: '编辑'
},
{
type: 'danger',
size: 'small',
icon: 'del',
btnKey: 'doDel',
btnLabel: '删除'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
listLoading: false,
list: [],
//
listQuery: {
current: 1,
size: 10,
total: 0,
params: {
"userSid": "",
"menuUrl": "",
"orgPath": "",
"orgName": "",
"manufactorName": "",
"interactDateStartDate": "",
"interactDateEndDate": ""
}
},
sids: [],
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doDel':
this.doDel()
break
case 'doClose':
this.doClose()
break
default:
break
}
},
handleSelectionChange(row) {
const aa = []
row.forEach(element => {
aa.push(element.sid)
})
this.sids = aa
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.listPage(this.listQuery).then(response => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 10,
total: 0,
params: {
"userSid": "",
"menuUrl": "",
"orgPath": "",
"orgName": "",
"manufactorName": "",
"interactDateStartDate": "",
"interactDateEndDate": ""
}
}
this.getList()
},
toAdd() {
this.viewState = 2
this.$refs['divAdd'].showAdd()
},
toEdit() {
if (this.sids.length != 1) {
this.$message({
showClose: true,
type: 'error',
message: '请选择一条记录进行操作'
})
return
}
this.viewState = 3
this.$refs['divAdd'].showEdit(this.sids[0])
},
doDel() {
if (this.sids.length === 0) {
this.$message({
showClose: true,
type: 'error',
message: '请选择至少一条记录进行删除操作'
})
return
}
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.deleteBySids(this.sids).then(resp => {
if (resp.success) {
this.$message({
type: 'success',
message: resp.msg,
showClose: true
})
}
this.getList()
loading.close()
}).catch(e => {
loading.close()
})
}).catch(() => {})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
toInfo(row) {
this.viewState = 4
this.$refs['divInfo'].showDetail(row.sid)
},
resetState() {
this.viewState = 1
},
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
align-items: center;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;
vertical-align: middle;
}
</style>

249
anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteractAdd.vue

@ -0,0 +1,249 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 厂家名称</div>
<el-form-item prop="manufactorName"><el-input v-model="formobj.manufactorName" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">沟通日期</div>
<el-form-item> <el-date-picker v-model="formobj.interactDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" class="addinputInfo addinputw" placeholder="选择日期"></el-date-picker></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 对接人</div>
<el-form-item prop="contacts"><el-input v-model="formobj.contacts" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">沟通事宜</div>
<el-form-item><el-input v-model="formobj.interactContent" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">沟通结果</div>
<el-form-item><el-input v-model="formobj.interactResult" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item><el-input v-model="formobj.remarks" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="1" bucket="map"
:upload-data="{ type: '0001' }" @change="backData" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
import req from '@/api/manufactorInteract/manufactorInteract'
import uploadImg from '@/components/uploadFile/uploadImg'
import {
getOrgSidByPath,
fetchBySid
} from '@/api/Common/dictcommons'
export default {
name: 'ManufactorInteractAdd',
components: {
uploadImg
},
data() {
return {
viewTitle: '',
submitdisabled: false,
formobj: {
"sid": "",
"manufactorName": "",
"interactDate": "",
"contacts": "",
"interactContent": "",
"interactResult": "",
"remarks": "",
"urls": [],
"createBySid": window.sessionStorage.getItem('userSid'),
"createByName": window.sessionStorage.getItem('name'),
"createOrgSid": "",
"createOrgName": ""
},
rules: {
manufactorName: [{
required: true,
message: '厂家名称不能为空',
trigger: 'blur'
}],
contacts: [{
required: true,
message: '对接人不能为空',
trigger: 'blur'
}],
},
imgList: []
}
},
methods: {
init() {
getOrgSidByPath({
orgPath: window.sessionStorage.getItem('defaultOrgPath')
}).then((resp) => {
if (resp.success) {
this.formobj.createOrgSid = resp.data
fetchBySid(resp.data).then((respsone) => {
if (respsone.success) {
this.formobj.createOrgName = respsone.data.name
}
})
}
})
},
backData(value) {
console.log('backData》》》》', value)
this.formobj.urls = []
for (var i = 0; i < value.length; i++) {
this.formobj.urls.push(value[i].url)
}
},
showAdd() {
this.viewTitle = '【新增】厂家沟通'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.init()
},
showEdit(sid) {
this.viewTitle = '【编辑】厂家沟通'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.init()
req.init(sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.imgList = []
for (var i = 0; i < this.formobj.urls.length; i++) {
this.imgList.push({
url: this.formobj.urls[i]
})
}
}
})
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
this.$message({
showClose: true,
type: 'success',
message: '保存成功'
})
this.handleReturn('true')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
"sid": "",
"manufactorName": "",
"interactDate": "",
"contacts": "",
"interactContent": "",
"interactResult": "",
"remarks": "",
"urls": [],
"createBySid": window.sessionStorage.getItem('userSid'),
"createByName": window.sessionStorage.getItem('name'),
"createOrgSid": "",
"createOrgName": ""
}
this.submitdisabled = false
this.imgList = []
this.$emit('doback')
},
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
align-items: center;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;
vertical-align: middle;
}
</style>

112
anrui-scm/anrui-scm-ui/src/views/manufactorInteract/manufactorInteractInfo.vue

@ -0,0 +1,112 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">厂家名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.manufactorName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">沟通日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.interactDate }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">对接人</div>
<el-form-item><span class="addinputInfo">{{ formobj.contacts }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">沟通事宜</div>
<el-form-item><span class="addinputInfo">{{ formobj.interactContent }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">沟通结果</div>
<el-form-item><span class="addinputInfo">{{ formobj.interactResult }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.remarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.urls" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item" width="100%" />
<img slot="reference" :src="item" :alt="item"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
import req from '@/api/manufactorInteract/manufactorInteract'
export default {
name: 'ManufactorInteractInfo',
components: {},
data() {
return {
viewTitle: '',
submitdisabled: false,
formobj: {},
}
},
methods: {
showDetail(sid) {
this.viewTitle = '厂家沟通详情'
req.init(sid).then((res) => {
if (res.success) {
this.formobj = res.data
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
}
this.submitdisabled = false
this.$emit('doback')
},
}
}
</script>
<style scoped>
.span-sty {
width: 160px !important;
}
.addinputInfo {
margin-left: 150px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 150px !important;
width: calc(100% - 145px);
}
</style>

346
anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivities.vue

@ -0,0 +1,346 @@
<template>
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="营销活动管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="分公司">
<el-input v-model="listQuery.params.orgName" placeholder="" clearable />
</el-form-item>
<el-form-item label="活动名称">
<el-input v-model="listQuery.params.activityName" placeholder="" clearable />
</el-form-item>
<el-form-item label="活动日期">
<el-date-picker v-model="listQuery.params.activityStartDate" value-format="yyyy-MM-dd"
format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.activityEndDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="small" @click="handleReset">重置</el-button>
</div>
</div>
</div>
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">营销活动列表</div>
<!-- <pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" /> -->
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;"
@selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50" />
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column label="操作" width="80" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toInfo(scope.row)">详情</el-button>
</template>
</el-table-column>
<el-table-column prop="createOrgName" label="分公司" align="center" />
<el-table-column prop="activityName" label="活动名称" align="center" />
<el-table-column prop="activityStartDate" label="开始日期" align="center" />
<el-table-column prop="activityEndDate" label="结束日期" align="center" />
<el-table-column prop="activityAddress" label="地点" align="center" />
</el-table>
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--End查询列表部分-->
</div>
</div>
<!--新增及修改 -->
<marketingActivitiesAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState"
@reloadlist="getList" />
<!--详情-->
<marketingActivitiesInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" />
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/marketingActivities/marketingActivities'
import marketingActivitiesAdd from './marketingActivitiesAdd'
import marketingActivitiesInfo from './marketingActivitiesInfo'
export default {
name: 'MarketingActivities',
components: {
Pagination,
pageye,
ButtonBar,
marketingActivitiesAdd,
marketingActivitiesInfo
},
data() {
return {
btndisabled: false,
btnList: [{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toEdit',
btnLabel: '编辑'
},
{
type: 'danger',
size: 'small',
icon: 'del',
btnKey: 'doDel',
btnLabel: '删除'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
listLoading: false,
list: [],
//
listQuery: {
current: 1,
size: 10,
total: 0,
params: {
"userSid": "",
"menuUrl": "",
"orgPath": "",
"orgName": "",
"activityName": "",
"activityStartDate": "",
"activityEndDate": ""
}
},
sids: [],
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'toAdd':
this.toAdd()
break
case 'toEdit':
this.toEdit()
break
case 'doDel':
this.doDel()
break
case 'doClose':
this.doClose()
break
default:
break
}
},
handleSelectionChange(row) {
const aa = []
row.forEach(element => {
aa.push(element.sid)
})
this.sids = aa
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.listPage(this.listQuery).then(response => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 10,
total: 0,
params: {
"userSid": "",
"menuUrl": "",
"orgPath": "",
"orgName": "",
"activityName": "",
"activityStartDate": "",
"activityEndDate": ""
}
}
this.getList()
},
toAdd() {
this.viewState = 2
this.$refs['divAdd'].showAdd()
},
toEdit() {
if (this.sids.length != 1) {
this.$message({
showClose: true,
type: 'error',
message: '请选择一条记录进行操作'
})
return
}
this.viewState = 3
this.$refs['divAdd'].showEdit(this.sids[0])
},
doDel() {
if (this.sids.length === 0) {
this.$message({
showClose: true,
type: 'error',
message: '请选择至少一条记录进行删除操作'
})
return
}
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.deleteBySids(this.sids).then(resp => {
if (resp.success) {
this.$message({
type: 'success',
message: resp.msg,
showClose: true
})
}
this.getList()
loading.close()
}).catch(e => {
loading.close()
})
}).catch(() => {})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
toInfo(row) {
this.viewState = 4
this.$refs['divInfo'].showDetail(row.sid)
},
resetState() {
this.viewState = 1
},
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
align-items: center;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;
vertical-align: middle;
}
</style>

255
anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivitiesAdd.vue

@ -0,0 +1,255 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 活动名称</div>
<el-form-item prop="activityName"><el-input v-model="formobj.activityName" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">活动开始日期</div>
<el-form-item> <el-date-picker v-model="formobj.activityStartDate" value-format="yyyy-MM-dd"
format="yyyy-MM-dd" type="date" class="addinputInfo addinputw"
placeholder="选择日期"></el-date-picker></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">活动结束日期</div>
<el-form-item> <el-date-picker v-model="formobj.activityEndDate" value-format="yyyy-MM-dd"
format="yyyy-MM-dd" type="date" class="addinputInfo addinputw"
placeholder="选择日期"></el-date-picker></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动地点</div>
<el-form-item><el-input v-model="formobj.activityAddress" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动内容</div>
<el-form-item><el-input v-model="formobj.activityContent" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动总结</div>
<el-form-item><el-input v-model="formobj.activitySummary" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item><el-input v-model="formobj.remarks" clearable placeholder=""
class="addinputInfo addinputw" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="1" bucket="map"
:upload-data="{ type: '0001' }" @change="backData" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
import req from '@/api/marketingActivities/marketingActivities'
import uploadImg from '@/components/uploadFile/uploadImg'
import {
getOrgSidByPath,
fetchBySid
} from '@/api/Common/dictcommons'
export default {
name: 'MarketingActivitiesAdd',
components: {
uploadImg
},
data() {
return {
viewTitle: '',
submitdisabled: false,
formobj: {
"sid": "",
"activityName": "",
"activityStartDate": "",
"activityEndDate": "",
"activityAddress": "",
"activityContent": "",
"activitySummary": "",
"remarks": "",
"urls": [],
"createBySid": window.sessionStorage.getItem('userSid'),
"createByName": window.sessionStorage.getItem('name'),
"createOrgSid": "",
"createOrgName": ""
},
rules: {
activityName: [{
required: true,
message: '活动名称不能为空',
trigger: 'blur'
}],
},
imgList: []
}
},
methods: {
init() {
getOrgSidByPath({
orgPath: window.sessionStorage.getItem('defaultOrgPath')
}).then((resp) => {
if (resp.success) {
this.formobj.createOrgSid = resp.data
fetchBySid(resp.data).then((respsone) => {
if (respsone.success) {
this.formobj.createOrgName = respsone.data.name
}
})
}
})
},
backData(value) {
console.log('backData》》》》', value)
this.formobj.urls = []
for (var i = 0; i < value.length; i++) {
this.formobj.urls.push(value[i].url)
}
},
showAdd() {
this.viewTitle = '【新增】营销活动'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.init()
},
showEdit(sid) {
this.viewTitle = '【编辑】营销活动'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.init()
req.init(sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.imgList = []
for (var i = 0; i < this.formobj.urls.length; i++) {
this.imgList.push({
url: this.formobj.urls[i]
})
}
}
})
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
this.$message({
showClose: true,
type: 'success',
message: '保存成功'
})
this.handleReturn('true')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
"sid": "",
"activityName": "",
"activityStartDate": "",
"activityEndDate": "",
"activityAddress": "",
"activityContent": "",
"activitySummary": "",
"remarks": "",
"urls": [],
"createBySid": window.sessionStorage.getItem('userSid'),
"createByName": window.sessionStorage.getItem('name'),
"createOrgSid": "",
"createOrgName": ""
}
this.submitdisabled = false
this.imgList = []
this.$emit('doback')
},
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
align-items: center;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;
vertical-align: middle;
}
</style>

118
anrui-scm/anrui-scm-ui/src/views/marketingActivities/marketingActivitiesInfo.vue

@ -0,0 +1,118 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">活动名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.activityName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">活动开始日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.activityStartDate }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">活动结束日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.activityEndDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.activityAddress }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动内容</div>
<el-form-item><span class="addinputInfo">{{ formobj.activityContent }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">活动总结</div>
<el-form-item><span class="addinputInfo">{{ formobj.activitySummary }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.remarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.urls" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item" width="100%" />
<img slot="reference" :src="item" :alt="item"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
import req from '@/api/marketingActivities/marketingActivities'
export default {
name: 'MarketingActivitiesInfo',
components: {},
data() {
return {
viewTitle: '',
submitdisabled: false,
formobj: {},
}
},
methods: {
showDetail(sid) {
this.viewTitle = '营销活动详情'
req.init(sid).then((res) => {
if (res.success) {
this.formobj = res.data
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
}
this.submitdisabled = false
this.$emit('doback')
},
}
}
</script>
<style scoped>
.span-sty {
width: 160px !important;
}
.addinputInfo {
margin-left: 150px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 150px !important;
width: calc(100% - 145px);
}
</style>

2
anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatetobechecked.vue

@ -466,7 +466,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //

2
anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatedistribution/specialrebatetobeallocated.vue

@ -267,7 +267,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
handleClick() {
this.viewState = 2

1
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbwdiffapply/AsBwdiffapplyService.java

@ -513,6 +513,7 @@ public class AsBwdiffapplyService extends MybatisBaseService<AsBwdiffapplyMapper
List<String> list = sysUserRoleFeign.getUserRoleSidByUserSid(createBySid).getData();
variables.put("iszg", list.contains("f00a7338-a6a4-4712-ab85-ca211d56fb1f"));
bv.setModelId(asBwdiffapply.getProcDefId());
bv.setFormVariables(variables);
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
List<BwdiffApplyNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), BwdiffApplyNodeVo.class)).collect(Collectors.toList());

4
yxt-as/src/main/java/com/yxt/anrui/as/biz/astechtitle/AsTechTitleRest.java

@ -76,9 +76,7 @@ public class AsTechTitleRest {
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
asTechTitleService.delete(sids);
return rb.success();
return asTechTitleService.delete(sids);
}
@ApiOperation("根据SID获取一条记录")

7
yxt-as/src/main/java/com/yxt/anrui/as/biz/astechtitle/AsTechTitleService.java

@ -28,6 +28,7 @@ package com.yxt.anrui.as.biz.astechtitle;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.api.R;
import com.yxt.anrui.as.api.asservicegroup.AsServiceGroup;
import com.yxt.anrui.as.biz.astechtitleapply.AsTechTitleApplyService;
import com.yxt.anrui.as.feign.portal.privilege.PrivilegeQuery;
@ -211,13 +212,17 @@ public class AsTechTitleService extends MybatisBaseService<AsTechTitleMapper, As
return vo;
}
public void delete(String[] sids) {
public ResultBean delete(String[] sids) {
ResultBean rb = ResultBean.fireFail();
for (String sid : sids) {
AsTechTitle asTechTitle = fetchBySid(sid);
if (asTechTitle.getState() == 1){
baseMapper.updateIsDeleteBySid(sid);
}else {
return rb.setMsg("所选记录包含已备案或备案中的数据无法删除");
}
}
return rb.success();
}
public void updateState(String sid, String state) {

2
yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java

@ -501,7 +501,7 @@ public class PmsPurchaseBillService extends MybatisBaseService<PmsPurchaseBillMa
List<PmsPurchaseBillDetailDetailsVo> pmsPurchaseBillDetailDetailsVos = pmsPurchaseBillDetailService.selByMainSid(businessSid);
for (PmsPurchaseBillDetailDetailsVo pmsPurchaseBillDetailDetailsVo : pmsPurchaseBillDetailDetailsVos) {
WmsAnsBillDetailDto wmsAnsBillDetailDto = new WmsAnsBillDetailDto();
wmsAnsBillDetailDto.setGoodsSpuSid(pmsPurchaseBillDetailDetailsVo.getGoodSpuSid());
wmsAnsBillDetailDto.setGoodsSpuSid(pmsPurchaseBillDetailDetailsVo.getGoodsSpuSid());
wmsAnsBillDetailDto.setGoodsSpuName(pmsPurchaseBillDetailDetailsVo.getGoodsSpuName());
wmsAnsBillDetailDto.setGoodsSkuSid(pmsPurchaseBillDetailDetailsVo.getGoodsSkuSid());
wmsAnsBillDetailDto.setGoodsSkuTitle(pmsPurchaseBillDetailDetailsVo.getGoodsSkuTitle());

2
yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java

@ -58,7 +58,7 @@ public class PmsPurchaseBillDetailDetailsVo implements Vo {
@ApiModelProperty("单据sid")
private String billSid; // 单据sid
@ApiModelProperty("商品基础信息Sid")
private String goodSpuSid; // 商品基础信息Sid
private String goodsSpuSid; // 商品基础信息Sid
@ApiModelProperty("商品名称")
private String goodsSpuName; // 商品名称
@ApiModelProperty("商品Skusid")

Loading…
Cancel
Save