Browse Source

Merge remote-tracking branch 'origin/master'

master
God 12 months ago
parent
commit
c6034c8e19
  1. 39
      doc/databases/yxt-as.sql
  2. 71
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillPageListQuery.java
  3. 64
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillPageListVo.java
  4. 7
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillMapper.java
  5. 26
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillMapper.xml
  6. 14
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillRest.java
  7. 76
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

39
doc/databases/yxt-as.sql

@ -110,4 +110,41 @@ CREATE TABLE `as_busrepair_inventorybill_detail`
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='单据明细';
DEFAULT CHARSET = utf8 COMMENT ='单据明细';
DROP TABLE IF EXISTS `as_busclaim_bill`;
CREATE TABLE `as_busclaim_bill`
(
`id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(32) DEFAULT '0' COMMENT '版本锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用',
`state` int(32) DEFAULT '1' COMMENT '1正常、0作废,申请-审批中-完成-作废',
`isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`billNo` varchar(64) DEFAULT NULL COMMENT '索赔单号',
`reportDate` varchar(64) DEFAULT NULL COMMENT '上报日期',
`repairBillsid` varchar(64) DEFAULT NULL COMMENT '维修工单sid',
`repairBillNo` varchar(64) DEFAULT NULL COMMENT '维修工单号',
`hourAmount` decimal(10, 2) DEFAULT NULL COMMENT '工时费',
`goodsAmount` decimal(10, 2) DEFAULT NULL COMMENT '材料费',
`otherAmount` decimal(10, 2) DEFAULT NULL COMMENT '其他费用',
`claimHourAmount` decimal(10, 2) DEFAULT NULL COMMENT '索赔工时费',
`claimGoodsAmount` decimal(10, 2) DEFAULT NULL COMMENT '索赔材料费',
`claimOutAmount` decimal(10, 2) DEFAULT NULL COMMENT '索赔外出费',
`claimSubsidyAmount` decimal(10, 2) DEFAULT NULL COMMENT '索赔厂家补助',
`claimOtherAmount` decimal(10, 2) DEFAULT NULL COMMENT '索赔其他费用',
`invoiceState` int(32) DEFAULT '0' COMMENT '开票状态(未开票,开票中1,已开票2)',
`invoiceTime` timestamp null DEFAULT NULL COMMENT '开票时间',
`returnAmountTime` timestamp null DEFAULT NULL COMMENT '回款时间',
`adjustState` int(32) DEFAULT NULL COMMENT '调整状态(未调整0,已调整1)',
`createOrgSid` varchar(64) DEFAULT NULL COMMENT '创建组织sid',
`useOrgSid` varchar(64) DEFAULT NULL COMMENT '使用组织sid',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='厂家索赔单';

71
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillPageListQuery.java

@ -0,0 +1,71 @@
package com.yxt.anrui.as.api.asbusrepairbill;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/7
**/
@Data
public class AsBusrepairBillPageListQuery implements Query {
private static final long serialVersionUID = -4727573438243441267L;
private String orgPath;
private String createBySid;
@ApiModelProperty("分公司")
private String useOrgName;
@ApiModelProperty("制单部门")
private String deptName;
@ApiModelProperty("制单人")
private String createByName;
@ApiModelProperty("单据编号")
private String billNo;
//制单日期开始时间-制单日期结束时间
private String createTimeStart;
private String createTimeEnd;
@ApiModelProperty("工单类型")
private String billType;
@ApiModelProperty("科目")
private String subject;
//进场时间开始时间-进厂时间结束时间
private String entryTimeStart;
private String entryTimeEnd;
//预计完工开始时间-预计完工结束时间
private String estimatedFinishTimeStart;
private String estimatedFinishTimeEnd;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("联系电话")
private String mobile;
@ApiModelProperty("客户单位")
private String customerOrg;
@ApiModelProperty("车牌号")
private String vehMark;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("服务顾问")
private String waitorName;
@ApiModelProperty("班组名称")
private String groupName;
@ApiModelProperty("主修人(可多选)销售单")
private String mainRepairers;
//是否开票
}

64
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillPageListVo.java

@ -0,0 +1,64 @@
package com.yxt.anrui.as.api.asbusrepairbill;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description: 待索赔维修工单返回参数
* @author: dimengzhe
* @date: 2024/5/7
**/
@Data
public class AsBusrepairBillPageListVo {
@ApiModelProperty("索赔单数量")
private String num;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("环节")
private String nodeName;
@ApiModelProperty("分公司")
private String useOrgName;
@ApiModelProperty("制单部门")
private String deptName;
@ApiModelProperty("制单人")
private String createByName;
@ApiModelProperty("制单日期")
private String createTime;
@ApiModelProperty("工单类型")
private String billType;
@ApiModelProperty("科目")
private String subject;
@ApiModelProperty("进厂时间")
private String entryTime;
@ApiModelProperty("预计完工时间")
private String estimatedFinishTime;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("联系电话")
private String mobile;
@ApiModelProperty("客户单位")
private String customerOrg;
@ApiModelProperty("车牌号")
private String vehMark;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("车型")
private String vehModel;
@ApiModelProperty("服务顾问")
private String waitorName;
@ApiModelProperty("班组名称")
private String groupName;
@ApiModelProperty("主修人(可多选)销售单")
private String mainRepairers;
}

7
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillMapper.java

@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBill;
import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBillListVo;
import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBillVo;
import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairPageVo;
import com.yxt.anrui.as.api.asbusrepairbill.*;
import com.yxt.anrui.as.api.asbusrepairinventorybilldetail.SitemsVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -40,4 +37,6 @@ public interface AsBusrepairBillMapper extends BaseMapper<AsBusrepairBill> {
AsBusrepairPageVo selectByBillNo(String sid);
List<SitemsVo> selectSitemList(String sourceBillSid);
IPage<AsBusrepairBillPageListVo> billPageList(IPage<AsBusrepairBill> page, @Param(Constants.WRAPPER) QueryWrapper<AsBusrepairBill> qw);
}

26
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillMapper.xml

@ -109,4 +109,30 @@
from as_busrepair_bill_sitem a
where a.billSid = #{sourceBillSid}
</select>
<select id="billPageList" resultType="com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBillPageListVo">
select a.sid,
a.useOrgName,
a.deptName,
a.createByName,
a.subject,
DATE_FORMAT(a.entryTime, '%Y-%m-%d') as entryTime,
DATE_FORMAT(a.estimatedFinishTime, '%Y-%m-%d') as estimatedFinishTime,
a.customerName,
a.mobile,
a.customerOrg,
b.vinNo,
b.vehMark,
a.billNo,
a.billType,
DATE_FORMAT(a.createTime, '%Y-%m-%d') as createTime,
a.waitorName,
a.groupName,
a.mainRepairers
from as_busrepair_bill a
LEFT JOIN as_busrepair_bill_vech AS b on a.sid = b.billSid
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

14
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillRest.java

@ -42,13 +42,13 @@ public class AsBusrepairBillRest {
@PostMapping("/sureMaterialFee")
@ApiOperation("确认材料费")
ResultBean<String> sureMaterialFee(@RequestBody AsBusrepairBillDto dto){
ResultBean<String> sureMaterialFee(@RequestBody AsBusrepairBillDto dto) {
return asBusrepairBillService.sureMaterialFee(dto);
}
@PostMapping("/settle")
@ApiOperation("结算")
ResultBean<String> settle(@RequestBody AsBusrepairBillDto dto){
ResultBean<String> settle(@RequestBody AsBusrepairBillDto dto) {
return asBusrepairBillService.settle(dto);
}
@ -114,7 +114,15 @@ public class AsBusrepairBillRest {
@GetMapping("/detailsInit")
@ApiOperation("根据维修单sid获取维修单主信息及服务信息")
ResultBean<AsBusrepairBillOutDetailsVo> detailsInit(@RequestParam("sid")String sid){
ResultBean<AsBusrepairBillOutDetailsVo> detailsInit(@RequestParam("sid") String sid) {
return asBusrepairBillService.detailsInit(sid);
}
@PostMapping("/billPageList")
@ApiOperation("待索赔维修工单分页")
ResultBean<PagerVo<AsBusrepairBillPageListVo>> billPageList(@RequestBody PagerQuery<AsBusrepairBillPageListQuery> pagerQuery) {
ResultBean<PagerVo<AsBusrepairBillPageListVo>> rb = ResultBean.fireFail();
PagerVo<AsBusrepairBillPageListVo> pv = asBusrepairBillService.billPageList(pagerQuery);
return rb.success().setData(pv);
}
}

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

@ -729,4 +729,80 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
public List<SitemsVo> selectSitemList(String sourceBillSid) {
return baseMapper.selectSitemList(sourceBillSid);
}
public PagerVo<AsBusrepairBillPageListVo> billPageList(PagerQuery<AsBusrepairBillPageListQuery> pagerQuery) {
AsBusrepairBillPageListQuery query = pagerQuery.getParams();
QueryWrapper<AsBusrepairBill> qw = new QueryWrapper<>();
//ToDo:添加查询条件
//分公司
if (StringUtils.isNotBlank(query.getUseOrgName())) {
qw.like("a.useOrgName", query.getUseOrgName());
}
//制单部门
if (StringUtils.isNotBlank(query.getDeptName())) {
qw.like("a.deptName", query.getDeptName());
}
//制单人
if (StringUtils.isNotBlank(query.getCreateByName())) {
qw.like("a.createByName", query.getCreateByName());
}
//维修工单编号
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("a.billNo", query.getBillNo());
}
//单据日期开始时间-单据日期结束时间
qw.apply(StringUtils.isNotBlank(query.getCreateTimeStart()), "date_format (a.createTime,'%Y-%m-%d') >= date_format('" + query.getCreateTimeStart() + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(query.getCreateTimeEnd()), "date_format (a.createTime,'%Y-%m-%d') <= date_format('" + query.getCreateTimeEnd() + "','%Y-%m-%d')"
);
//工单类型
if (StringUtils.isNotBlank(query.getBillType())) {
qw.like("a.billType", query.getBillType());
}
//科目
if (StringUtils.isNotBlank(query.getSubject())) {
qw.like("a.subject", query.getSubject());
}
//进厂时间开始时间-进厂时间结束时间
qw.apply(StringUtils.isNotBlank(query.getEstimatedFinishTimeStart()), "date_format (a.estimatedFinishTime,'%Y-%m-%d') >= date_format('" + query.getEstimatedFinishTimeStart() + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(query.getEstimatedFinishTimeEnd()), "date_format (a.estimatedFinishTime,'%Y-%m-%d') <= date_format('" + query.getEstimatedFinishTimeEnd() + "','%Y-%m-%d')"
);
//客户名称
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("a.customerName", query.getCustomerName());
}
//联系电话
if (StringUtils.isNotBlank(query.getMobile())) {
qw.like("a.mobile", query.getMobile());
}
//客户单位
if (StringUtils.isNotBlank(query.getCustomerOrg())) {
qw.like("a.customerOrg", query.getCustomerOrg());
}
//车牌号
if (StringUtils.isNotBlank(query.getVehMark())) {
qw.like("b.vehMark", query.getVehMark());
}
//车架号
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("b.vinNo", query.getVinNo());
}
//服务顾问
if (StringUtils.isNotBlank(query.getWaitorName())) {
qw.like("a.waitorName", query.getWaitorName());
}
//班组名称
if (StringUtils.isNotBlank(query.getGroupName())) {
qw.like("a.groupName", query.getGroupName());
}
//主修人
if (StringUtils.isNotBlank(query.getMainRepairers())) {
qw.like("a.mainRepairers", query.getMainRepairers());
}
qw.like("a.subject", "保内");
qw.gt("a.nodeCode", 3);
IPage<AsBusrepairBill> page = PagerUtil.queryToPage(pagerQuery);
IPage<AsBusrepairBillPageListVo> pagging = baseMapper.billPageList(page, qw);
PagerVo<AsBusrepairBillPageListVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}

Loading…
Cancel
Save