Browse Source

修改结算申请

master
fanzongzhe 6 months ago
parent
commit
8c84c7b050
  1. 7
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/AsBillSettelApplyDetailsVo.java
  2. 10
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/SettleGoodsDetailsVo.java
  3. 9
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/SettleSitemVo.java
  4. 3
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/flow/SubmitSettleDto.java
  5. 38
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplyaitem/AsBillSettelApplyAitem.java
  6. 33
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplyaitemspec/AsBillSettelApplyAitemspec.java
  7. 66
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplydetail/AsBillSettelApplyDetail.java
  8. 70
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplysitem/AsBillSettelApplySitem.java
  9. 2
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AitemVo.java
  10. 4
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java
  11. 2
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/GoodsDetailsVo.java
  12. 2
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/InvoiceVo.java
  13. 5
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/SitemVo.java
  14. 9
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillreversesettle/AsBusrepairBillReverseSettleDetailsVo.java
  15. 12
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyRest.java
  16. 423
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyService.java
  17. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemMapper.java
  18. 6
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemMapper.xml
  19. 45
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemRest.java
  20. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemService.java
  21. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecMapper.java
  22. 6
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecMapper.xml
  23. 45
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecRest.java
  24. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecService.java
  25. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailMapper.java
  26. 6
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailMapper.xml
  27. 45
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailRest.java
  28. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailService.java
  29. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemMapper.java
  30. 6
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemMapper.xml
  31. 45
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemRest.java
  32. 51
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemService.java
  33. 461
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

7
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/AsBillSettelApplyDetailsVo.java

@ -59,6 +59,7 @@ public class AsBillSettelApplyDetailsVo implements Vo {
* 附加费
*/
private String addAmount;
private String sid;
/**
* 附加项目
*/
@ -176,7 +177,7 @@ public class AsBillSettelApplyDetailsVo implements Vo {
* 结算金额
*/
private String settleAmount;
private String sid;
/**
* 维修项目
*/
@ -238,6 +239,7 @@ public class AsBillSettelApplyDetailsVo implements Vo {
* 服务顾问
*/
private String waitorName;
private String sourceBillType;
private String procInsId;
private String outCost; //外出成本
@ -246,4 +248,7 @@ public class AsBillSettelApplyDetailsVo implements Vo {
private String subsidyPrint; //厂家补助利润额
private String rescueCost; //施救费成本
private String rescuePrint; //施救费利润额
private String outSid; //外出费sid
private String subsidySid; //厂家补助SID
private String rescueSid; //施救费sid
}

10
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/SettleGoodsDetailsVo.java

@ -1,5 +1,6 @@
package com.yxt.anrui.as.api.asbillsettelapply;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@ -9,6 +10,12 @@ import lombok.Data;
*/
@Data
public class SettleGoodsDetailsVo {
@ApiModelProperty("出/退库数量")
private String count;
@ApiModelProperty("销售价(元)")
private String price;
//折扣(0-10,0免费,10不打折)
private String discount;
/**
* 优惠金额
*/
@ -44,4 +51,7 @@ public class SettleGoodsDetailsVo {
private String sid;
private String inventorySid;
private String goodsID;
private String goodsDetailsSid;
@ApiModelProperty("配件销售人")
private String partsSellers;
}

9
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/SettleSitemVo.java

@ -1,7 +1,11 @@
package com.yxt.anrui.as.api.asbillsettelapply;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Fan
* @description
@ -51,4 +55,9 @@ public class SettleSitemVo {
* 结算金额应收金额 - 优惠金额
*/
private String sitemSettleAmount;
private String price;
@ApiModelProperty("折扣(0-10,0免费,10不打折)")
private String discount;
private String repairerName;
}

3
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/flow/SubmitSettleDto.java

@ -1,5 +1,6 @@
package com.yxt.anrui.as.api.asbillsettelapply.flow;
import com.yxt.anrui.as.api.asbillsettelapply.AsBillSettelApplyDetailsVo;
import com.yxt.anrui.as.api.asbillsettelapply.AsBillSettelApplyDto;
import com.yxt.anrui.as.api.asbusrepairbillreversesettle.AsBusrepairBillReverseSettleDto;
import io.swagger.annotations.ApiModel;
@ -14,7 +15,7 @@ import lombok.Data;
*/
@ApiModel("提交")
@Data
public class SubmitSettleDto extends AsBillSettelApplyDto {
public class SubmitSettleDto extends AsBillSettelApplyDetailsVo {
@ApiModelProperty("意见")
private String comment;

38
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplyaitem/AsBillSettelApplyAitem.java

@ -0,0 +1,38 @@
package com.yxt.anrui.as.api.asbillsettelapplyaitem;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Fan
* @description
* @date 2024/4/17 14:56
*/
@Data
@ApiModel(value = "维修工单-附加项目", description = "维修工单-附加项目")
@TableName("as_bill_settel_apply_aitem")
public class AsBillSettelApplyAitem extends BaseEntity {
@ApiModelProperty("结算单sid")
private String mainSid;
@ApiModelProperty("附加项目sid")
private String attachItemSid;
@ApiModelProperty("附加项目名称")
private String attachItem;
@ApiModelProperty("销售价")
private BigDecimal price;
@ApiModelProperty("销售价常量")
private BigDecimal aitemPrice;
@ApiModelProperty("业务类型Key")
private String billBusTypeKey;
@ApiModelProperty("业务类型Value")
private String billBusTypeValue;
@ApiModelProperty("成本价")
private BigDecimal cost;
@ApiModelProperty("成本合计(成本价*数量)")
private BigDecimal costTotal;
}

33
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplyaitemspec/AsBillSettelApplyAitemspec.java

@ -0,0 +1,33 @@
package com.yxt.anrui.as.api.asbillsettelapplyaitemspec;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Fan
* @description
* @date 2024/4/17 14:56
*/
@Data
@ApiModel(value = "维修工单-固定附加项目", description = "维修工单-固定附加项目")
@TableName("as_bill_settel_apply_aitemspec")
public class AsBillSettelApplyAitemspec extends BaseEntity {
@ApiModelProperty("工单sid")
private String mainSid;
@ApiModelProperty("附加项目sid")
private String attachItemSid;
@ApiModelProperty("项目名称")
private String attachItem;
@ApiModelProperty("项目费用")
private BigDecimal price;
@ApiModelProperty("开票价")
private BigDecimal taxPrice;
@ApiModelProperty("成本合计(成本价*数量)")
private BigDecimal costTotal;
}

66
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplydetail/AsBillSettelApplyDetail.java

@ -0,0 +1,66 @@
package com.yxt.anrui.as.api.asbillsettelapplydetail;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* @description:
* @author: dimengzhe
* @date: 2024/3/7
**/
@Data
@TableName("as_bill_settel_apply_detail")
public class AsBillSettelApplyDetail extends BaseEntity {
private static final long serialVersionUID = 7134535185685249599L;
@ApiModelProperty("单据sid")
private String mainSid;
private String sid;
@ApiModelProperty("出/退库数量")
private String count;
@ApiModelProperty("销售价(元)")
private String price;
//折扣(0-10,0免费,10不打折)
private String discount;
/**
* 优惠金额
*/
private String discountAmount;
/**
* 成本
*/
private String goodsCost;
/**
* 利润额结算金额 - 成本
*/
private String goodsPrint;
/**
* 应收金额销售价 * 数量
*/
private String goodsReceivableAmount;
/**
* 结算金额应收金额 - 优惠金额
*/
private String goodsSettleAmount;
/**
* 图号
*/
private String goodsSkuCode;
/**
* 商品名称
*/
private String goodsSpuName;
/**
* 备注
*/
private String remarks;
private String inventorySid;
private String goodsID;
@ApiModelProperty("配件销售人")
private String partsSellers;
}

70
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapplysitem/AsBillSettelApplySitem.java

@ -0,0 +1,70 @@
package com.yxt.anrui.as.api.asbillsettelapplysitem;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Fan
* @description
* @date 2024/4/17 15:08
*/
@Data
@ApiModel(value = "维修工单-服务项目", description = "维修工单-服务项目")
@TableName("as_bill_settel_apply_sitem")
public class AsBillSettelApplySitem extends BaseEntity {
@ApiModelProperty("工单sid")
private String mainSid;
private String serviceItemSid;
/**
* 优惠金额
*/
private String discountAmount;
/**
* 工时单价
*/
private String hourPrice;
/**
* 工时数
*/
private String hours;
/**
* 备注
*/
private String remarks;
/**
* 维修项目名称
*/
private String serviceItem;
/**
* 工种
*/
private String serviceType;
private String serviceTypeSid;
/**
* 成本
*/
private String sitemCost;
/**
* 利润额结算金额 - 成本
*/
private String sitemPrint;
/**
* 应收合计销售价
*/
private String sitemReceivableAmount;
/**
* 结算金额应收金额 - 优惠金额
*/
private String sitemSettleAmount;
private String price;
@ApiModelProperty("折扣(0-10,0免费,10不打折)")
private String discount;
private String repairerName;
}

2
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AitemVo.java

@ -12,7 +12,7 @@ import java.math.BigDecimal;
*/
@Data
public class AitemVo {
private String sid;
@ApiModelProperty("附加项目sid")
private String aitemSid;
@ApiModelProperty("附加项目名称")

4
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java

@ -181,4 +181,8 @@ public class AsBusrepairBillDto implements Dto {
private String shClaimTypeKey;
@ApiModelProperty("索赔类型value")
private String shClaimTypeValue;
private String outSid; //外出费sid
private String subsidySid; //厂家补助SID
private String rescueSid; //施救费sid
}

2
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/GoodsDetailsVo.java

@ -73,5 +73,5 @@ public class GoodsDetailsVo implements Vo {
private String serviceItem;
@ApiModelProperty("配件销售人")
private String partsSellers2;
private String goodsDetailsSid;
}

2
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/InvoiceVo.java

@ -36,7 +36,7 @@ public class InvoiceVo {
@ApiModelProperty("开票单位")
private String invoiceCompany;
@ApiModelProperty("加税点项目“,”英文逗号拼接")
private List<String> taxItems = new ArrayList<>();
private List<String> taxItems;
@ApiModelProperty("加税点项目")
private String taxItems2;
}

5
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/SitemVo.java

@ -14,6 +14,7 @@ import java.util.List;
*/
@Data
public class SitemVo {
private String sid;
@ApiModelProperty("项目sid")
private String serviceItemSid;
@ApiModelProperty("项目名称")
@ -49,6 +50,10 @@ public class SitemVo {
private String staffNames;
@ApiModelProperty("单价-100,工时数-5小时,提成-100")
private String manHourInfo;
@ApiModelProperty("成本价")
private String cost;
@ApiModelProperty("成本合计(成本价*数量)")
private String costTotal;
//-------------维修人员---------------
// @ApiModelProperty("维修人员sid")
// private String repairerSid;

9
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbillreversesettle/AsBusrepairBillReverseSettleDetailsVo.java

@ -151,4 +151,13 @@ public class AsBusrepairBillReverseSettleDetailsVo implements Vo {
@ApiModelProperty("施救费开票金额")
private String rescueKPAmount;
private List<String> files = new ArrayList<>(); //文件名称
private String outPrint; //外出利润额
private String subsidyCost; //厂家补助成本
private String subsidyPrint; //厂家补助利润额
private String rescueCost; //施救费成本
private String rescuePrint; //施救费利润额
private String outSid; //外出费sid
private String subsidySid; //厂家补助SID
private String rescueSid; //施救费sid
}

12
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyRest.java

@ -84,7 +84,7 @@ public class AsBillSettelApplyRest {
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody AsBillSettelApplyDto dto){
public ResultBean save(@RequestBody AsBillSettelApplyDetailsVo dto){
ResultBean rb = ResultBean.fireFail();
asBillSettelApplyService.saveOrUpdateDto(dto);
return rb.success();
@ -99,6 +99,16 @@ public class AsBillSettelApplyRest {
return rb.success();
}
@ApiOperation("维修单初始化")
@GetMapping("/busrepairbillInit")
public ResultBean<AsBillSettelApplyDetailsVo> busrepairbillInit(@RequestParam("sid") String sid,
@RequestParam("userSid") String userSid,
@RequestParam("orgPath") String orgPath
){
ResultBean rb = ResultBean.fireFail();
AsBillSettelApplyDetailsVo vo = asBillSettelApplyService.busrepairbillInit(sid,userSid,orgPath);
return rb.success().setData(vo);
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")

423
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyService.java

@ -37,6 +37,10 @@ import com.yxt.anrui.as.api.asbillsettelapply.flow.app.AppSettleDelegateQuery;
import com.yxt.anrui.as.api.asbillsettelapply.flow.app.AppSettleTaskQuery;
import com.yxt.anrui.as.api.asbillsettelapply.flow.app.CompleteSettleDto;
import com.yxt.anrui.as.api.asbillsettelapply.flow.app.SettleFlowableQuery;
import com.yxt.anrui.as.api.asbillsettelapplyaitem.AsBillSettelApplyAitem;
import com.yxt.anrui.as.api.asbillsettelapplyaitemspec.AsBillSettelApplyAitemspec;
import com.yxt.anrui.as.api.asbillsettelapplydetail.AsBillSettelApplyDetail;
import com.yxt.anrui.as.api.asbillsettelapplysitem.AsBillSettelApplySitem;
import com.yxt.anrui.as.api.asbusrepairbill.*;
import com.yxt.anrui.as.api.asbusrepairbillnode.AsBusrepairBillNode;
import com.yxt.anrui.as.api.asbusrepairbillreversesettle.AsBusrepairBillReverseSettle;
@ -47,6 +51,10 @@ import com.yxt.anrui.as.api.enums.AsBillTypeEnum;
import com.yxt.anrui.as.api.utils.AsRule;
import com.yxt.anrui.as.api.utils.FileUrlQuery;
import com.yxt.anrui.as.api.utils.domain.AsBillNo;
import com.yxt.anrui.as.biz.asbillsettelapplyaitem.AsBillSettelApplyAitemService;
import com.yxt.anrui.as.biz.asbillsettelapplyaitemspec.AsBillSettelApplyAitemSpecService;
import com.yxt.anrui.as.biz.asbillsettelapplydetail.AsBillSettelApplyDetailService;
import com.yxt.anrui.as.biz.asbillsettelapplysitem.AsBillSettelApplySitemService;
import com.yxt.anrui.as.biz.asbusrepairbill.AsBusrepairBillService;
import com.yxt.anrui.as.biz.asserviceattachitem.AsServiceAttachItemService;
import com.yxt.anrui.as.biz.asserviceitem.AsServiceItemService;
@ -126,6 +134,15 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysUserRoleFeign sysUserRoleFeign;
@Autowired
private AsBillSettelApplyAitemService asBillSettelApplyAitemService;
@Autowired
private AsBillSettelApplyAitemSpecService asBillSettelApplyAitemSpecService;
@Autowired
private AsBillSettelApplySitemService asBillSettelApplySitemService;
@Autowired
private AsBillSettelApplyDetailService asBillSettelApplyDetailService;
private QueryWrapper<AsBillSettelApply> createQueryWrapper(AsBillSettelApplyQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -209,14 +226,115 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
return p;
}
public String saveOrUpdateDto(AsBillSettelApplyDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
String s = this.insertByDto(dto);
return s;
public String saveOrUpdateDto(AsBillSettelApplyDetailsVo dto) {
String sid = "";
if (StringUtils.isBlank(dto.getSid())) {
AsBillSettelApply entity = new AsBillSettelApply();
BeanUtil.copyProperties(dto, entity, "id", "sid");
String applyCode = getApplyCode(dto.getUseOrgSid());
entity.setBillNo(applyCode);
baseMapper.insert(entity);
sid = entity.getSid();
} else {
sid = dto.getSid();
AsBillSettelApply entity = fetchBySid(sid);
if (StringUtils.isNotBlank(dto.getRemarks())) {
entity.setRemarks(dto.getRemarks());
}
baseMapper.updateById(entity);
}
asBillSettelApplyAitemService.delByBillSid(sid);
asBillSettelApplyAitemSpecService.delByBillSid(sid);
asBillSettelApplySitemService.delByBillSid(sid);
asBillSettelApplyDetailService.delByBillSid(sid);
if (!dto.getAitemVos().isEmpty() && dto.getAitemVos().size() > 0) {
List<SettleAitemVo> aitemVos = dto.getAitemVos();
for (SettleAitemVo aitemVo : aitemVos) {
AsBillSettelApplyAitem a = new AsBillSettelApplyAitem();
BeanUtil.copyProperties(aitemVo,a,"sid");
a.setMainSid(sid);
asBillSettelApplyAitemService.insert(a);
}
}
if (!dto.getSitemVos().isEmpty() && dto.getSitemVos().size() > 0) {
List<SettleSitemVo> sitemVos = dto.getSitemVos();
for (SettleSitemVo sitemVo : sitemVos) {
AsBillSettelApplySitem a = new AsBillSettelApplySitem();
BeanUtil.copyProperties(sitemVo,a,"sid");
a.setMainSid(sid);
asBillSettelApplySitemService.insert(a);
}
}
if (!dto.getGoodsDetailsVos().isEmpty() && dto.getGoodsDetailsVos().size() > 0) {
List<SettleGoodsDetailsVo> goodsDetailsVos = dto.getGoodsDetailsVos();
for (SettleGoodsDetailsVo g : goodsDetailsVos) {
AsBillSettelApplyDetail d = new AsBillSettelApplyDetail();
BeanUtil.copyProperties(g,d,"sid");
d.setMainSid(sid);
asBillSettelApplyDetailService.insert(d);
}
}
if (StringUtils.isNotBlank(dto.getOutAmount())) {
BigDecimal outAmount = new BigDecimal(dto.getOutAmount());
if (outAmount.compareTo(BigDecimal.ZERO) > 0) {
AsBillSettelApplyAitemspec s = new AsBillSettelApplyAitemspec();
s.setMainSid(sid);
s.setAttachItem("外出费");
s.setPrice(outAmount);
if (StringUtils.isNotBlank(dto.getOutKPAmount())) {
s.setTaxPrice(new BigDecimal(dto.getOutKPAmount()));
}
if (StringUtils.isNotBlank(dto.getOutCost())) {
s.setCostTotal(new BigDecimal(dto.getOutCost()));
}
if (StringUtils.isNotBlank(dto.getOutRemarks())) {
s.setRemarks(dto.getOutRemarks());
}
asBillSettelApplyAitemSpecService.insert(s);
}
}
if (StringUtils.isNotBlank(dto.getSubsidyAmount())) {
BigDecimal amount = new BigDecimal(dto.getSubsidyAmount());
if (amount.compareTo(BigDecimal.ZERO) > 0) {
AsBillSettelApplyAitemspec s = new AsBillSettelApplyAitemspec();
s.setMainSid(sid);
s.setAttachItem("厂家补助");
s.setPrice(amount);
if (StringUtils.isNotBlank(dto.getSubsidyKPAmount())) {
s.setTaxPrice(new BigDecimal(dto.getSubsidyKPAmount()));
}
if (StringUtils.isNotBlank(dto.getSubsidyCost())) {
s.setCostTotal(new BigDecimal(dto.getSubsidyCost()));
}
if (StringUtils.isNotBlank(dto.getSubsidyRemarks())) {
s.setRemarks(dto.getSubsidyRemarks());
}
asBillSettelApplyAitemSpecService.insert(s);
}
}
if (StringUtils.isNotBlank(dto.getRescueAmount())) {
BigDecimal amount = new BigDecimal(dto.getRescueAmount());
if (amount.compareTo(BigDecimal.ZERO) > 0) {
AsBillSettelApplyAitemspec s = new AsBillSettelApplyAitemspec();
s.setMainSid(sid);
s.setAttachItem("施救费");
s.setPrice(amount);
if (StringUtils.isNotBlank(dto.getRescueKPAmount())) {
s.setTaxPrice(new BigDecimal(dto.getRescueKPAmount()));
}
if (StringUtils.isNotBlank(dto.getRescueCost())) {
s.setCostTotal(new BigDecimal(dto.getRescueCost()));
}
if (StringUtils.isNotBlank(dto.getRescueRemarks())) {
s.setRemarks(dto.getRescueRemarks());
}
asBillSettelApplyAitemSpecService.insert(s);
}
}
this.updateByDto(dto);
return dtoSid;
return sid;
}
/**
@ -238,7 +356,7 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
return billNo;
}
public String insertByDto(AsBillSettelApplyDto dto) {
public String insertByDto(AsBillSettelApplyDetailsVo dto) {
AsBillSettelApply entity = new AsBillSettelApply();
BeanUtil.copyProperties(dto, entity, "id", "sid");
String applyCode = getApplyCode(dto.getUseOrgSid());
@ -247,7 +365,7 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
return entity.getSid();
}
public void updateByDto(AsBillSettelApplyDto dto) {
public void updateByDto(AsBillSettelApplyDetailsVo dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
@ -1114,4 +1232,291 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
return rb.success();
}
public AsBillSettelApplyDetailsVo busrepairbillInit(String sid, String userSid, String orgPath) {
AsBillSettelApplyDetailsVo vo = new AsBillSettelApplyDetailsVo();
//新增初始化
//维修工单
AsBusrepairBillDetailsVo data = asBusrepairBillService.fetchDetailsBySid(sid).getData();
if (null != data) {
vo.setCustomerName(data.getCustomerName());
vo.setSourceBillNo(data.getBillNo());
vo.setSourceBillDate(data.getCreateDate());
if (StringUtils.isNotBlank(data.getWaitorName())) {
vo.setWaitorName(data.getWaitorName());
}
vo.setBillType(data.getBillType());
vo.setSubject(data.getSubject());
vo.setIsGoOut(data.getIsGoOut());
vo.setIsGoOut2(data.getIsGoOut2());
BigDecimal yingshouZ = BigDecimal.ZERO;
BigDecimal youhuiZ = BigDecimal.ZERO;
if (StringUtils.isNotBlank(data.getDiscountAmount())) {
vo.setDiscountAmount(data.getDiscountAmount());
youhuiZ = new BigDecimal(data.getDiscountAmount());
}
if (StringUtils.isNotBlank(data.getReceivableAmount())) {
vo.setReceivableAmount(data.getReceivableAmount());
yingshouZ = new BigDecimal(data.getReceivableAmount());
}
vo.setSettleAmount(yingshouZ.subtract(youhuiZ).toString());
if (StringUtils.isNotBlank(data.getMobile())) {
vo.setMobile(data.getMobile());
}
if (StringUtils.isNotBlank(data.getVinNo())) {
vo.setVinNo(data.getVinNo());
}
if (StringUtils.isNotBlank(data.getVehMark())) {
vo.setVehMark(data.getVehMark());
}
InvoiceVo invoiceVo = data.getInvoiceVo();
if (null != invoiceVo) {
if (StringUtils.isNotBlank(invoiceVo.getIsInvoicing())) {
vo.setIsInvoicing(invoiceVo.getIsInvoicing());
}
if (StringUtils.isNotBlank(invoiceVo.getIsInvoicing2())) {
vo.setIsInvoicing2(invoiceVo.getIsInvoicing2());
}
if (StringUtils.isNotBlank(invoiceVo.getTaxRate())) {
vo.setTaxRate(invoiceVo.getTaxRate());
}
if (StringUtils.isNotBlank(invoiceVo.getTaxItems2())) {
vo.setTaxItems(invoiceVo.getTaxItems2());
}
}
if (StringUtils.isNotBlank(data.getOutRemarks())) {
vo.setOutRemarks(data.getOutRemarks());
}
if (StringUtils.isNotBlank(data.getSubsidyRemarks())) {
vo.setSubsidyRemarks(data.getSubsidyRemarks());
}
if (StringUtils.isNotBlank(data.getRescueRemarks())) {
vo.setRescueRemarks(data.getRescueRemarks());
}
BigDecimal costAmount = BigDecimal.ZERO;//成本合计
BigDecimal profit = BigDecimal.ZERO;//总利润额
BigDecimal outAmount = BigDecimal.ZERO;//外出费
BigDecimal subsidyAmount = BigDecimal.ZERO;//厂家补助
BigDecimal rescueAmount = BigDecimal.ZERO;//施救费
BigDecimal outKPAmount = BigDecimal.ZERO;//外出费KP
BigDecimal subsidyKPAmount = BigDecimal.ZERO;//厂家补助KP
BigDecimal rescueKPAmount = BigDecimal.ZERO;//施救费KP
// BigDecimal sitemProfit = BigDecimal.ZERO;//维修项目利润
// BigDecimal goodsProfit = BigDecimal.ZERO;//维修用料利润
// BigDecimal otherProfit = BigDecimal.ZERO;//附件项目利润
// BigDecimal addProfit = BigDecimal.ZERO;//其他附加项目利润
if (StringUtils.isNotBlank(data.getHourAmount())) {
vo.setHourAmount(data.getHourAmount());
}
if (StringUtils.isNotBlank(data.getGoodsAmount())) {
vo.setGoodsAmount(data.getGoodsAmount());
}
if (StringUtils.isNotBlank(data.getAddAmount())) {
vo.setAddAmount(data.getAddAmount());
}
if (StringUtils.isNotBlank(data.getDiscountAmount())) {
vo.setDiscountAmount(data.getDiscountAmount());
}
if (StringUtils.isNotBlank(data.getOutAmount())) {
vo.setOutAmount(data.getOutAmount());
outAmount = new BigDecimal(data.getOutAmount());
}
if (StringUtils.isNotBlank(data.getOutKPAmount())) {
vo.setOutKPAmount(data.getOutKPAmount());
outKPAmount = new BigDecimal(data.getOutKPAmount());
}
if (StringUtils.isNotBlank(data.getSubsidyAmount())) {
vo.setSubsidyAmount(data.getSubsidyAmount());
subsidyAmount = new BigDecimal(data.getSubsidyAmount());
}
if (StringUtils.isNotBlank(data.getSubsidyKPAmount())) {
vo.setSubsidyKPAmount(data.getSubsidyKPAmount());
subsidyKPAmount = new BigDecimal(data.getSubsidyKPAmount());
}
if (StringUtils.isNotBlank(data.getRescueAmount())) {
vo.setRescueAmount(data.getRescueAmount());
rescueAmount = new BigDecimal(data.getRescueAmount());
}
if (StringUtils.isNotBlank(data.getRescueKPAmount())) {
vo.setRescueKPAmount(data.getRescueKPAmount());
rescueKPAmount = new BigDecimal(data.getRescueKPAmount());
}
List<SitemVo> sitemVos = data.getSitemVos();
if (!sitemVos.isEmpty()) {
List<SettleSitemVo> settleSitemVos = new ArrayList<>();
for (SitemVo s : sitemVos) {
SettleSitemVo v = new SettleSitemVo();
BeanUtil.copyProperties(s,v);
BigDecimal yingshou = BigDecimal.ZERO; //应收
BigDecimal youhui = BigDecimal.ZERO; //优惠
BigDecimal jiesuan = BigDecimal.ZERO; //结算
BigDecimal chengben = BigDecimal.ZERO; //成本
BigDecimal lirun = BigDecimal.ZERO; //利润
if (StringUtils.isNotBlank(s.getAmount())) {
yingshou = new BigDecimal(s.getAmount());
v.setSitemReceivableAmount(yingshou.toString());
}
if (StringUtils.isNotBlank(s.getDiscountAmount())) {
youhui = new BigDecimal(s.getDiscountAmount());
}
jiesuan = yingshou.subtract(youhui);
v.setSitemSettleAmount(jiesuan.toString());
if (StringUtils.isNotBlank(s.getCostTotal())) {
chengben = new BigDecimal(s.getCostTotal());
}
v.setSitemCost(chengben.toString());
lirun = jiesuan.subtract(chengben);
v.setSitemPrint(lirun.toString());
costAmount = costAmount.add(chengben);
profit = profit.add(lirun);
settleSitemVos.add(v);
}
vo.setSitemVos(settleSitemVos);
}
List<GoodsDetailsVo> goodsDetailsVos = data.getGoodsDetailsVos();
if (!goodsDetailsVos.isEmpty()) {
List<SettleGoodsDetailsVo> goodsList = new ArrayList<>();
for (GoodsDetailsVo g : goodsDetailsVos) {
SettleGoodsDetailsVo v = new SettleGoodsDetailsVo();
BeanUtil.copyProperties(g,v);
if (StringUtils.isNotBlank(g.getPartsSellers2())) {
v.setPartsSellers(g.getPartsSellers2());
}
BigDecimal yingshou = BigDecimal.ZERO; //应收
BigDecimal youhui = BigDecimal.ZERO; //优惠
BigDecimal jiesuan = BigDecimal.ZERO; //结算
BigDecimal chengben = BigDecimal.ZERO; //成本
BigDecimal chengbenPrice = BigDecimal.ZERO; //成本单价
BigDecimal lirun = BigDecimal.ZERO; //利润
BigDecimal count = BigDecimal.ZERO; //数量
if (StringUtils.isNotBlank(g.getCount())) {
count = new BigDecimal(g.getCount());
}
if (StringUtils.isNotBlank(g.getPrice())) {
BigDecimal price = new BigDecimal(g.getPrice());
yingshou = price.multiply(count);
v.setGoodsReceivableAmount(yingshou.toString());
}
if (StringUtils.isNotBlank(g.getDiscountAmount())) {
youhui = new BigDecimal(g.getDiscountAmount());
}
jiesuan = yingshou.subtract(youhui);
v.setGoodsSettleAmount(jiesuan.toString());
//求成本
if (StringUtils.isNotBlank(g.getInventorySid())) {
String inventorySid = g.getInventorySid();
WmsInventory inventory = wmsInventoryFeign.fetchEntityBySid(inventorySid).getData();
if (null != inventory) {
if (null != inventory.getCost()) {
chengbenPrice = inventory.getCost();
chengben = chengbenPrice.multiply(count);
}
}
}
v.setGoodsCost(chengben.toString());
lirun = jiesuan.subtract(chengben);
v.setGoodsPrint(lirun.toString());
costAmount = costAmount.add(chengben);
profit = profit.add(lirun);
goodsList.add(v);
}
vo.setGoodsDetailsVos(goodsList);
}
List<AitemVo> aitemVos = data.getAitemVos();
if (!aitemVos.isEmpty()) {
List<SettleAitemVo> aitemVoList = new ArrayList<>();
for (AitemVo a : aitemVos) {
SettleAitemVo v = new SettleAitemVo();
BeanUtil.copyProperties(a,v);
BigDecimal yingshou = BigDecimal.ZERO; //应收
BigDecimal chengben = BigDecimal.ZERO; //成本
BigDecimal lirun = BigDecimal.ZERO; //利润
if (StringUtils.isNotBlank(a.getPrice())) {
yingshou = new BigDecimal(a.getPrice());
v.setAitemReceivableAmount(yingshou.toString());
}
//求成本
if (StringUtils.isNotBlank(a.getAitemSid())) {
String aitemsid = a.getAitemSid();
AsServiceAttachItem attachItem = asServiceAttachItemService.fetchBySid(aitemsid);
if (null != attachItem) {
if (null != attachItem.getCost()) {
chengben = attachItem.getCost();
}
}
}
v.setAitemCost(chengben.toString());
lirun = yingshou.subtract(chengben);
v.setAitemPrint(lirun.toString());
costAmount = costAmount.add(chengben);
profit = profit.add(lirun);
aitemVoList.add(v);
}
vo.setAitemVos(aitemVoList);
}
// if (outKPAmount.compareTo(BigDecimal.ZERO) > 0) {
// profit = profit.add(outKPAmount);
// } else {
// profit = profit.add(outAmount);
// }
// if (subsidyKPAmount.compareTo(BigDecimal.ZERO) > 0) {
// profit = profit.add(subsidyKPAmount);
// } else {
// profit = profit.add(subsidyAmount);
// }
// if (rescueKPAmount.compareTo(BigDecimal.ZERO) > 0) {
// profit = profit.add(rescueKPAmount);
// } else {
// profit = profit.add(rescueAmount);
// }
vo.setProfit(profit.toString());
vo.setCostAmount(costAmount.toString());
List<FileUrlQuery> fileName = data.getFileName();
if (!fileName.isEmpty()) {
vo.setFileName(fileName);
List<String> files = new ArrayList<>();
for (FileUrlQuery fileUrlQuery : fileName) {
files.add(fileUrlQuery.getUrl());
}
vo.setFileName2(files);
}
}
//根据用户查询发起人、发起部门、发起日期为当前日期
String deptName = "";
String deptSid = "";
String useOrgSid = "";
if (StringUtils.isNotBlank(orgPath)) {
List<String> split = Arrays.asList(orgPath.split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(split.size() - 2)).getData();
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
deptName = sysOrganization.getName() + "/" + sysOrganization1.getName();
deptName = sysOrganization1.getName();
deptSid = sysOrganization1.getSid();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
deptName = sysOrganization.getName();
deptName = sysOrganization.getName();
deptSid = sysOrganization.getSid();
}
useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
}
//创建组织使用组织
ResultBean<SysOrganizationVo> organizationResultBean = sysOrganizationFeign.fetchBySid(useOrgSid);
if (organizationResultBean.getData() != null) {
vo.setUseOrgName(organizationResultBean.getData().getName());
}
//根据用户sid查询人员姓名
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(userSid);
vo.setDept(deptName);
vo.setDeptSid(deptSid);
vo.setCreateByName(userVoResultBean.getData().getName());
vo.setApplyDate(DateUtil.today());
vo.setOrgPath(orgPath);
vo.setCreateBySid(userSid);
vo.setUseOrgSid(useOrgSid);
vo.setSourceBillType("1");
return vo;
}
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemMapper.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitem;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.as.api.asbillsettelapplyaitem.AsBillSettelApplyAitem;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AsBillSettelApplyAitemMapper extends BaseMapper<AsBillSettelApplyAitem> {
@Select("select * from as_bill_settel_apply_aitem where mainSid = #{billSid}")
List<AsBillSettelApplyAitem> fetchByBillSid(@Param("billSid") String billSid);
@Delete("delete from as_bill_settel_apply_aitem where mainSid = #{billSid}")
void delByBillSid(String billSid);
}

6
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemMapper.xml

@ -0,0 +1,6 @@
<?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.as.biz.asbillsettelapplyaitem.AsBillSettelApplyAitemMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

45
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemRest.java

@ -0,0 +1,45 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitem;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "维修工单-保险信息")
@RestController
@RequestMapping("v1/AsBillSettelApplyAitem")
public class AsBillSettelApplyAitemRest {
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitem/AsBillSettelApplyAitemService.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitem;
import com.yxt.anrui.as.api.asbillsettelapplyaitem.AsBillSettelApplyAitem;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class AsBillSettelApplyAitemService extends MybatisBaseService<AsBillSettelApplyAitemMapper, AsBillSettelApplyAitem> {
public List<AsBillSettelApplyAitem> fetchByBillSid(String billSid) {
return baseMapper.fetchByBillSid(billSid);
}
public void delByBillSid(String billSid) {
baseMapper.delByBillSid(billSid);
}
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecMapper.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitemspec;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.as.api.asbillsettelapplyaitemspec.AsBillSettelApplyAitemspec;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AsBillSettelApplyAitemSpecMapper extends BaseMapper<AsBillSettelApplyAitemspec> {
@Select("select * from as_bill_settel_apply_aitemspec where mainSid = #{billSid}")
List<AsBillSettelApplyAitemspec> fetchByBillSid(@Param("billSid") String billSid);
@Delete("delete from as_bill_settel_apply_aitemspec where mainSid = #{billSid}")
void delByBillSid(String billSid);
}

6
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecMapper.xml

@ -0,0 +1,6 @@
<?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.as.biz.asbillsettelapplyaitemspec.AsBillSettelApplyAitemSpecMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

45
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecRest.java

@ -0,0 +1,45 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitemspec;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "维修工单-保险信息")
@RestController
@RequestMapping("v1/AsBillSettelApplyAitemspec")
public class AsBillSettelApplyAitemSpecRest {
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplyaitemspec/AsBillSettelApplyAitemSpecService.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplyaitemspec;
import com.yxt.anrui.as.api.asbillsettelapplyaitemspec.AsBillSettelApplyAitemspec;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class AsBillSettelApplyAitemSpecService extends MybatisBaseService<AsBillSettelApplyAitemSpecMapper, AsBillSettelApplyAitemspec> {
public List<AsBillSettelApplyAitemspec> fetchByBillSid(String billSid) {
return baseMapper.fetchByBillSid(billSid);
}
public void delByBillSid(String billSid) {
baseMapper.delByBillSid(billSid);
}
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailMapper.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplydetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.as.api.asbillsettelapplydetail.AsBillSettelApplyDetail;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AsBillSettelApplyDetailMapper extends BaseMapper<AsBillSettelApplyDetail> {
@Select("select * from as_bill_settel_apply_detail where mainSid = #{billSid}")
List<AsBillSettelApplyDetail> fetchByBillSid(@Param("billSid") String billSid);
@Delete("delete from as_bill_settel_apply_detail where mainSid = #{billSid}")
void delByBillSid(String billSid);
}

6
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailMapper.xml

@ -0,0 +1,6 @@
<?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.as.biz.asbillsettelapplydetail.AsBillSettelApplyDetailMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

45
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailRest.java

@ -0,0 +1,45 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplydetail;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "维修工单-保险信息")
@RestController
@RequestMapping("v1/AsBillSettelApplyDetail")
public class AsBillSettelApplyDetailRest {
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplydetail/AsBillSettelApplyDetailService.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplydetail;
import com.yxt.anrui.as.api.asbillsettelapplydetail.AsBillSettelApplyDetail;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class AsBillSettelApplyDetailService extends MybatisBaseService<AsBillSettelApplyDetailMapper, AsBillSettelApplyDetail> {
public List<AsBillSettelApplyDetail> fetchByBillSid(String billSid) {
return baseMapper.fetchByBillSid(billSid);
}
public void delByBillSid(String billSid) {
baseMapper.delByBillSid(billSid);
}
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemMapper.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplysitem;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.as.api.asbillsettelapplysitem.AsBillSettelApplySitem;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AsBillSettelApplySitemMapper extends BaseMapper<AsBillSettelApplySitem> {
@Select("select * from as_bill_settel_apply_sitem where mainSid = #{billSid}")
List<AsBillSettelApplySitem> fetchByBillSid(@Param("billSid") String billSid);
@Delete("delete from as_bill_settel_apply_sitem where mainSid = #{billSid}")
void delByBillSid(String billSid);
}

6
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemMapper.xml

@ -0,0 +1,6 @@
<?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.as.biz.asbillsettelapplysitem.AsBillSettelApplySitemMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

45
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemRest.java

@ -0,0 +1,45 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplysitem;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "维修工单-保险信息")
@RestController
@RequestMapping("v1/AsBillSettelApplySitem")
public class AsBillSettelApplySitemRest {
}

51
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapplysitem/AsBillSettelApplySitemService.java

@ -0,0 +1,51 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.as.biz.asbillsettelapplysitem;
import com.yxt.anrui.as.api.asbillsettelapplysitem.AsBillSettelApplySitem;
import com.yxt.anrui.as.api.asbusrepairbillaitem.AsBusrepairBillAitem;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class AsBillSettelApplySitemService extends MybatisBaseService<AsBillSettelApplySitemMapper, AsBillSettelApplySitem> {
public List<AsBillSettelApplySitem> fetchByBillSid(String billSid) {
return baseMapper.fetchByBillSid(billSid);
}
public void delByBillSid(String billSid) {
baseMapper.delByBillSid(billSid);
}
}

461
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

@ -727,6 +727,7 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
sitemVo.setStaffList(staffList);
sitemVo.setStaffNameList(staffNameList);
sitemVo.setStaffNames(String.join("、", staffNameList));
sitemVo.setRepairerName(String.join("、", staffNameList));
}
sitemVos.add(sitemVo);
}
@ -823,16 +824,16 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
}
vo.setGoodsDetailsVos(goodsDetailsVos);
}
FmsReceivesettle receivesettle = fmsReceivesettleFeign.fetchBySourceSid(sid).getData();
if (null != receivesettle) {
vo.setShowReSettleBtn(true);
SettleVo settleVo = new SettleVo(); //结算信息
BeanUtil.copyProperties(receivesettle, settleVo);
if (null != receivesettle.getSettleTime()) {
settleVo.setSettleTime(sdf.format(receivesettle.getSettleTime()));
}
vo.setSettleVo(settleVo);
}
// FmsReceivesettle receivesettle = fmsReceivesettleFeign.fetchBySourceSid(sid).getData();
// if (null != receivesettle) {
// vo.setShowReSettleBtn(true);
// SettleVo settleVo = new SettleVo(); //结算信息
// BeanUtil.copyProperties(receivesettle, settleVo);
// if (null != receivesettle.getSettleTime()) {
// settleVo.setSettleTime(sdf.format(receivesettle.getSettleTime()));
// }
// vo.setSettleVo(settleVo);
// }
List<FileUrlQuery> file = new ArrayList<>();
List<String> file2 = new ArrayList<>();
List<AsAppendix> asAppendices = asAppendixService.fetchByLinkSid(sid);
@ -1470,231 +1471,231 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
String sid = dto.getSid();
AsBusrepairBill asBusrepairBill = fetchBySid(sid);
if (asBusrepairBill.getNodeCode() == 5) {
//计算工时提成分配维修人员
List<AsBusrepairBillSitem> sitems = asBusrepairBillSitemService.fetchByBillSid(sid);
if (sitems != null) {
if (!sitems.isEmpty()) {
for (AsBusrepairBillSitem sitem : sitems) {
BigDecimal examineHourPrice = BigDecimal.ZERO;
if (null != sitem.getExamineHourPrice()) {
examineHourPrice = sitem.getExamineHourPrice();
}
if (examineHourPrice.compareTo(BigDecimal.ZERO) > 0) {
String billSid = sitem.getBillSid();
String serviceItemSid = sitem.getServiceItemSid();
List<AsBusrepairBillSitemRepairer> repairers = asBusrepairBillSitemRepairerService.fetchByBillSid(billSid, serviceItemSid);
if (null != repairers) {
if (!repairers.isEmpty()) {
//查询权重之和
BigDecimal sum = BigDecimal.ZERO;
Map<String, BigDecimal> map = new HashMap<>();
for (AsBusrepairBillSitemRepairer repairer : repairers) {
String rSid = repairer.getSid();
String pSid = repairer.getRepairerSid();
BigDecimal weight = BigDecimal.ZERO;
String w = asTechTitleDetailService.selWeightByUserSid(pSid);
if (StringUtils.isNotBlank(w)) {
weight = new BigDecimal(w);
}
sum = sum.add(weight);
map.put(rSid, weight);
}
if (sum.compareTo(BigDecimal.ZERO) > 0) {
if (map.size() > 0) {
for (Map.Entry<String, BigDecimal> entry : map.entrySet()) {
String mSid = entry.getKey();
BigDecimal mWeight = entry.getValue();
AsBusrepairBillSitemRepairer repairer = asBusrepairBillSitemRepairerService.fetchBySid(mSid);
BigDecimal finalWeight = mWeight.divide(sum, 2, BigDecimal.ROUND_HALF_UP).multiply(examineHourPrice);
repairer.setCommission(finalWeight);
asBusrepairBillSitemRepairerService.updateById(repairer);
}
}
}
}
}
}
}
}
}
// //计算工时提成分配维修人员
// List<AsBusrepairBillSitem> sitems = asBusrepairBillSitemService.fetchByBillSid(sid);
// if (sitems != null) {
// if (!sitems.isEmpty()) {
// for (AsBusrepairBillSitem sitem : sitems) {
// BigDecimal examineHourPrice = BigDecimal.ZERO;
// if (null != sitem.getExamineHourPrice()) {
// examineHourPrice = sitem.getExamineHourPrice();
// }
// if (examineHourPrice.compareTo(BigDecimal.ZERO) > 0) {
// String billSid = sitem.getBillSid();
// String serviceItemSid = sitem.getServiceItemSid();
// List<AsBusrepairBillSitemRepairer> repairers = asBusrepairBillSitemRepairerService.fetchByBillSid(billSid, serviceItemSid);
// if (null != repairers) {
// if (!repairers.isEmpty()) {
// //查询权重之和
// BigDecimal sum = BigDecimal.ZERO;
// Map<String, BigDecimal> map = new HashMap<>();
// for (AsBusrepairBillSitemRepairer repairer : repairers) {
// String rSid = repairer.getSid();
// String pSid = repairer.getRepairerSid();
// BigDecimal weight = BigDecimal.ZERO;
// String w = asTechTitleDetailService.selWeightByUserSid(pSid);
// if (StringUtils.isNotBlank(w)) {
// weight = new BigDecimal(w);
// }
// sum = sum.add(weight);
// map.put(rSid, weight);
// }
// if (sum.compareTo(BigDecimal.ZERO) > 0) {
// if (map.size() > 0) {
// for (Map.Entry<String, BigDecimal> entry : map.entrySet()) {
// String mSid = entry.getKey();
// BigDecimal mWeight = entry.getValue();
// AsBusrepairBillSitemRepairer repairer = asBusrepairBillSitemRepairerService.fetchBySid(mSid);
// BigDecimal finalWeight = mWeight.divide(sum, 2, BigDecimal.ROUND_HALF_UP).multiply(examineHourPrice);
// repairer.setCommission(finalWeight);
// asBusrepairBillSitemRepairerService.updateById(repairer);
// }
// }
// }
// }
// }
// }
// }
// }
// }
if (asBusrepairBill.getSubject().equals("保内")) {
if (asBusrepairBill.getOldIsReclaim() != 1) {
return rb.setMsg("请先完成旧件入库,再进行操作!");
}
asBusrepairBill.setNodeCode(6);
asBusrepairBill.setNodeName("已结算");
asBusrepairBill.setNodeTime(new DateTime());
asBusrepairBill.setSettleTime(DateUtil.formatDate(new Date()));
if (asBusrepairBill.getMaterialConfirm().intValue() == 0) {
asBusrepairBill.setMaterialConfirm(1);
asBusrepairBill.setOutDoorState("2");
}
baseMapper.updateById(asBusrepairBill);
//新增工单环节信息
AsBusrepairBillNode billNode = new AsBusrepairBillNode();
billNode.setBillSid(sid);
billNode.setCreateByName(dto.getOperator());
billNode.setNodeName("已结算");
billNode.setCreateBySid(dto.getOperatorSid());
billNode.setNodeCode("6");
asBusrepairBillNodeService.insert(billNode);
}
if (asBusrepairBill.getSubject().equals("保外")) {
SettleVo settleVo = dto.getSettleVo();
if (null != settleVo) {
FmsReceivesettleDto settleDto = new FmsReceivesettleDto();
BeanUtil.copyProperties(settleVo, settleDto, "id", "sid");
settleDto.setCreateBySid(dto.getOperatorSid());
settleDto.setCreateByName(dto.getOperator());
settleDto.setSourceBillSid(dto.getSid());
settleDto.setSourceBillNo(asBusrepairBill.getBillNo());
fmsReceivesettleFeign.save(settleDto);
if (null != asBusrepairBill.getHourAmount()) {
if (asBusrepairBill.getHourAmount().compareTo(BigDecimal.ZERO) > 0) {
FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
if (null != billVech) {
if (StringUtils.isNotBlank(billVech.getVinNo())) {
finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
}
}
finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
finUncollectedReceivablesDetailedDto.setReceivablesName("工时费");
finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney((asBusrepairBill.getHourAmount()).toString());
finUncollectedReceivablesDetailedDto.setReveivableMoney((asBusrepairBill.getHourAmount()).toString());
finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
finUncollectedReceivablesDetailedDto.setKxState("01");
finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
}
}
if (null != asBusrepairBill.getGoodsAmount()) {
if (asBusrepairBill.getGoodsAmount().compareTo(BigDecimal.ZERO) > 0) {
FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
if (null != billVech) {
if (StringUtils.isNotBlank(billVech.getVinNo())) {
finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
}
}
finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
finUncollectedReceivablesDetailedDto.setReceivablesName("材料费");
finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney((asBusrepairBill.getGoodsAmount()).toString());
finUncollectedReceivablesDetailedDto.setReveivableMoney((asBusrepairBill.getGoodsAmount()).toString());
finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
finUncollectedReceivablesDetailedDto.setKxState("01");
finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
}
}
BigDecimal addAmount = BigDecimal.ZERO;
BigDecimal outAmount = BigDecimal.ZERO;
BigDecimal subsidyAmount = BigDecimal.ZERO;
BigDecimal rescueAmount = BigDecimal.ZERO;
if (null != asBusrepairBill.getAddAmount()) {
addAmount = asBusrepairBill.getAddAmount();
}
if (null != asBusrepairBill.getOutAmount()) {
outAmount = asBusrepairBill.getOutAmount();
}
if (null != asBusrepairBill.getSubsidyAmount()) {
subsidyAmount = asBusrepairBill.getSubsidyAmount();
}
if (null != asBusrepairBill.getRescueAmount()) {
rescueAmount = asBusrepairBill.getRescueAmount();
}
BigDecimal otherAmountAll = addAmount.add(outAmount).add(subsidyAmount).add(rescueAmount);
if (otherAmountAll.compareTo(BigDecimal.ZERO) > 0) {
FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
if (null != billVech) {
if (StringUtils.isNotBlank(billVech.getVinNo())) {
finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
}
}
finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
finUncollectedReceivablesDetailedDto.setReceivablesName("其他费用");
finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney(otherAmountAll.toString());
finUncollectedReceivablesDetailedDto.setReveivableMoney(otherAmountAll.toString());
finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
finUncollectedReceivablesDetailedDto.setKxState("01");
finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
}
}
asBusrepairBill.setSettleTime(DateUtil.formatDate(new Date()));
asBusrepairBill.setNodeCode(6);
asBusrepairBill.setNodeName("已结算");
asBusrepairBill.setNodeTime(new DateTime());
asBusrepairBill.setOutDoorState("2");
baseMapper.updateById(asBusrepairBill);
//保外推送结算申请
AsBillSettelApplyDto settelApplyDto = new AsBillSettelApplyDto();
settelApplyDto.setNodeState("待提交");
settelApplyDto.setSourceBillType(0);
settelApplyDto.setCreateByName(dto.getCreateByName());
settelApplyDto.setCreateTime(new Date());
settelApplyDto.setCreateBySid(dto.getCreateBySid());
settelApplyDto.setUseOrgSid(dto.getUseOrgSid());
settelApplyDto.setDept(dto.getDeptName());
settelApplyDto.setDeptSid(dto.getDeptSid());
settelApplyDto.setSourceSid(dto.getSid());
settelApplyDto.setSourceBillNo(dto.getBillNo());
settelApplyDto.setCustomerSid(dto.getCustomerSid());
settelApplyDto.setCustomerName(dto.getCustomerName());
BigDecimal receivableAmount = BigDecimal.ZERO; // 应收金额
BigDecimal discountAmount = BigDecimal.ZERO; // 优惠金额
BigDecimal settleAmount = BigDecimal.ZERO; // 结算金额
if (StringUtils.isNotBlank(dto.getReceivableAmount())) {
receivableAmount = new BigDecimal(dto.getReceivableAmount());
}
if (StringUtils.isNotBlank(dto.getDiscountAmount())) {
discountAmount = new BigDecimal(dto.getDiscountAmount());
}
settleAmount = receivableAmount.subtract(discountAmount);
settelApplyDto.setReceivableAmount(receivableAmount.toString());
settelApplyDto.setSettleAmount(settleAmount.toString());
asBillSettelApplyService.saveOrUpdateDto(settelApplyDto);
//新增工单环节信息
AsBusrepairBillNode billNode = new AsBusrepairBillNode();
billNode.setBillSid(sid);
billNode.setCreateByName(dto.getOperator());
billNode.setNodeName("已结算");
billNode.setCreateBySid(dto.getOperatorSid());
billNode.setNodeCode("6");
asBusrepairBillNodeService.insert(billNode);
}
// asBusrepairBill.setNodeCode(6);
// asBusrepairBill.setNodeName("已结算");
// asBusrepairBill.setNodeTime(new DateTime());
// asBusrepairBill.setSettleTime(DateUtil.formatDate(new Date()));
// if (asBusrepairBill.getMaterialConfirm().intValue() == 0) {
// asBusrepairBill.setMaterialConfirm(1);
// asBusrepairBill.setOutDoorState("2");
// }
// baseMapper.updateById(asBusrepairBill);
// //新增工单环节信息
// AsBusrepairBillNode billNode = new AsBusrepairBillNode();
// billNode.setBillSid(sid);
// billNode.setCreateByName(dto.getOperator());
// billNode.setNodeName("已结算");
// billNode.setCreateBySid(dto.getOperatorSid());
// billNode.setNodeCode("6");
// asBusrepairBillNodeService.insert(billNode);
}
// if (asBusrepairBill.getSubject().equals("保外")) {
// SettleVo settleVo = dto.getSettleVo();
// if (null != settleVo) {
// FmsReceivesettleDto settleDto = new FmsReceivesettleDto();
// BeanUtil.copyProperties(settleVo, settleDto, "id", "sid");
// settleDto.setCreateBySid(dto.getOperatorSid());
// settleDto.setCreateByName(dto.getOperator());
// settleDto.setSourceBillSid(dto.getSid());
// settleDto.setSourceBillNo(asBusrepairBill.getBillNo());
// fmsReceivesettleFeign.save(settleDto);
// if (null != asBusrepairBill.getHourAmount()) {
// if (asBusrepairBill.getHourAmount().compareTo(BigDecimal.ZERO) > 0) {
// FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
// finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
// finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
// finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
// finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
// finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
// finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
// AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
// if (null != billVech) {
// if (StringUtils.isNotBlank(billVech.getVinNo())) {
// finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
// finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
// }
// }
// finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
// finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
// finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
// finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
// finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
// finUncollectedReceivablesDetailedDto.setReceivablesName("工时费");
// finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney((asBusrepairBill.getHourAmount()).toString());
// finUncollectedReceivablesDetailedDto.setReveivableMoney((asBusrepairBill.getHourAmount()).toString());
// finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
// finUncollectedReceivablesDetailedDto.setKxState("01");
// finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
// }
// }
// if (null != asBusrepairBill.getGoodsAmount()) {
// if (asBusrepairBill.getGoodsAmount().compareTo(BigDecimal.ZERO) > 0) {
// FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
// finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
// finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
// finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
// finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
// finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
// finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
// AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
// if (null != billVech) {
// if (StringUtils.isNotBlank(billVech.getVinNo())) {
// finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
// finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
// }
// }
// finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
// finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
// finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
// finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
// finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
// finUncollectedReceivablesDetailedDto.setReceivablesName("材料费");
// finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney((asBusrepairBill.getGoodsAmount()).toString());
// finUncollectedReceivablesDetailedDto.setReveivableMoney((asBusrepairBill.getGoodsAmount()).toString());
// finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
// finUncollectedReceivablesDetailedDto.setKxState("01");
// finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
// }
// }
// BigDecimal addAmount = BigDecimal.ZERO;
// BigDecimal outAmount = BigDecimal.ZERO;
// BigDecimal subsidyAmount = BigDecimal.ZERO;
// BigDecimal rescueAmount = BigDecimal.ZERO;
// if (null != asBusrepairBill.getAddAmount()) {
// addAmount = asBusrepairBill.getAddAmount();
// }
// if (null != asBusrepairBill.getOutAmount()) {
// outAmount = asBusrepairBill.getOutAmount();
// }
// if (null != asBusrepairBill.getSubsidyAmount()) {
// subsidyAmount = asBusrepairBill.getSubsidyAmount();
// }
// if (null != asBusrepairBill.getRescueAmount()) {
// rescueAmount = asBusrepairBill.getRescueAmount();
// }
// BigDecimal otherAmountAll = addAmount.add(outAmount).add(subsidyAmount).add(rescueAmount);
// if (otherAmountAll.compareTo(BigDecimal.ZERO) > 0) {
// FinUncollectedReceivablesDetailedDto finUncollectedReceivablesDetailedDto = new FinUncollectedReceivablesDetailedDto();
// finUncollectedReceivablesDetailedDto.setCreateByName(asBusrepairBill.getCreateByName());
// finUncollectedReceivablesDetailedDto.setCreateBySid(asBusrepairBill.getCreateBySid());
// finUncollectedReceivablesDetailedDto.setCustomerSid(asBusrepairBill.getCustomerSid());
// finUncollectedReceivablesDetailedDto.setCustomerName(asBusrepairBill.getCustomerName());
// finUncollectedReceivablesDetailedDto.setContractSid(asBusrepairBill.getSid());
// finUncollectedReceivablesDetailedDto.setContractNo(asBusrepairBill.getBillNo());
// AsBusrepairBillVech billVech = asBusrepairBillVechService.fetchByBillSid(asBusrepairBill.getSid());
// if (null != billVech) {
// if (StringUtils.isNotBlank(billVech.getVinNo())) {
// finUncollectedReceivablesDetailedDto.setVIN(billVech.getVinNo());
// finUncollectedReceivablesDetailedDto.setBusVinSid(billVech.getSid());
// }
// }
// finUncollectedReceivablesDetailedDto.setStaffDeptSid(asBusrepairBill.getDeptSid());
// finUncollectedReceivablesDetailedDto.setStaffDeptName(asBusrepairBill.getDeptName());
// finUncollectedReceivablesDetailedDto.setCustomerPhone(asBusrepairBill.getMobile());
// finUncollectedReceivablesDetailedDto.setUseOrgSid(asBusrepairBill.getUseOrgSid());
// finUncollectedReceivablesDetailedDto.setOrgSidPath(asBusrepairBill.getOrgSidPath());
// finUncollectedReceivablesDetailedDto.setReceivablesName("其他费用");
// finUncollectedReceivablesDetailedDto.setCurrentReceivableMoney(otherAmountAll.toString());
// finUncollectedReceivablesDetailedDto.setReveivableMoney(otherAmountAll.toString());
// finUncollectedReceivablesDetailedDto.setUseOrgName(asBusrepairBill.getUseOrgName());
// finUncollectedReceivablesDetailedDto.setKxState("01");
// finUncollectedReceivablesDetailedFeign.saveOrUpdate(finUncollectedReceivablesDetailedDto);
// }
// }
// asBusrepairBill.setSettleTime(DateUtil.formatDate(new Date()));
// asBusrepairBill.setNodeCode(6);
// asBusrepairBill.setNodeName("已结算");
// asBusrepairBill.setNodeTime(new DateTime());
// asBusrepairBill.setOutDoorState("2");
// baseMapper.updateById(asBusrepairBill);
// //保外推送结算申请
// AsBillSettelApplyDto settelApplyDto = new AsBillSettelApplyDto();
// settelApplyDto.setNodeState("待提交");
// settelApplyDto.setSourceBillType(0);
// settelApplyDto.setCreateByName(dto.getCreateByName());
// settelApplyDto.setCreateTime(new Date());
// settelApplyDto.setCreateBySid(dto.getCreateBySid());
// settelApplyDto.setUseOrgSid(dto.getUseOrgSid());
// settelApplyDto.setDept(dto.getDeptName());
// settelApplyDto.setDeptSid(dto.getDeptSid());
// settelApplyDto.setSourceSid(dto.getSid());
// settelApplyDto.setSourceBillNo(dto.getBillNo());
// settelApplyDto.setCustomerSid(dto.getCustomerSid());
// settelApplyDto.setCustomerName(dto.getCustomerName());
// BigDecimal receivableAmount = BigDecimal.ZERO; // 应收金额
// BigDecimal discountAmount = BigDecimal.ZERO; // 优惠金额
// BigDecimal settleAmount = BigDecimal.ZERO; // 结算金额
// if (StringUtils.isNotBlank(dto.getReceivableAmount())) {
// receivableAmount = new BigDecimal(dto.getReceivableAmount());
// }
// if (StringUtils.isNotBlank(dto.getDiscountAmount())) {
// discountAmount = new BigDecimal(dto.getDiscountAmount());
// }
// settleAmount = receivableAmount.subtract(discountAmount);
// settelApplyDto.setReceivableAmount(receivableAmount.toString());
// settelApplyDto.setSettleAmount(settleAmount.toString());
// asBillSettelApplyService.saveOrUpdateDto(settelApplyDto);
// //新增工单环节信息
// AsBusrepairBillNode billNode = new AsBusrepairBillNode();
// billNode.setBillSid(sid);
// billNode.setCreateByName(dto.getOperator());
// billNode.setNodeName("已结算");
// billNode.setCreateBySid(dto.getOperatorSid());
// billNode.setNodeCode("6");
// asBusrepairBillNodeService.insert(billNode);
// }
}
return rb.success();
}

Loading…
Cancel
Save