Browse Source

维修出入库记录导出

master
fanzongzhe 10 months ago
parent
commit
99de6da0ab
  1. 32
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairinventoryExportVo.java
  2. 5
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.java
  3. 25
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml
  4. 24
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java
  5. 73
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java
  6. 8
      yxt-sms-biz/src/main/java/com/yxt/sms/apiadmin/SmsSalesBillRest.java
  7. 2
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.java
  8. 15
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.xml
  9. 18
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java
  10. 2
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillVo.java

32
yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairinventoryExportVo.java

@ -0,0 +1,32 @@
package com.yxt.anrui.as.api.asbusrepairinventorybill;
import com.yxt.common.core.utils.ExportEntityMap;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/11/13 9:34
*/
@Data
public class AsBusrepairinventoryExportVo {
@ExportEntityMap(CnName = "序号", EnName = "rankNo")
private Integer rankNo;
@ExportEntityMap(CnName = "单据编号", EnName = "billNo")
private String billNo;
@ExportEntityMap(CnName = "单据时间", EnName = "createTime")
private String createTime;
@ExportEntityMap(CnName = "维修工单编号", EnName = "sourceBillNo")
private String sourceBillNo;
@ExportEntityMap(CnName = "业务类型", EnName = "busTypeValue")
private String busTypeValue;
@ExportEntityMap(CnName = "操作人", EnName = "createByName")
private String createByName;
@ExportEntityMap(CnName = " 经办人", EnName = "warehouseManager")
private String warehouseManager;
@ExportEntityMap(CnName = "备注", EnName = "remarks")
private String remarks;
}

5
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.java

@ -6,9 +6,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.as.api.asbusrepairinventorybill.AsBusrepairInventorybill;
import com.yxt.anrui.as.api.asbusrepairinventorybill.AsBusrepairInventorybillVo;
import com.yxt.anrui.as.api.asbusrepairinventorybill.AsBusrepairinventoryExportVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @description:
* @author: dimengzhe
@ -30,4 +33,6 @@ public interface AsBusrepairInventorybillMapper extends BaseMapper<AsBusrepairIn
int selectNum(String bill);
String selOutBoundCountBySitemSid(@Param("sourceBillSid")String sourceBillSid, @Param("busTypeKey")String busTypeKey, @Param("goodsID")String goodsID, @Param("sitemSid")String sitemSid);
List<AsBusrepairinventoryExportVo> exportExcel(@Param(Constants.WRAPPER)QueryWrapper<AsBusrepairInventorybill> qw);
}

25
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml

@ -41,4 +41,29 @@
AND b.busTypeKey = #{busTypeKey}
and d.sitemSid = #{sitemSid}
</select>
<select id="exportExcel"
resultType="com.yxt.anrui.as.api.asbusrepairinventorybill.AsBusrepairinventoryExportVo">
select
@row_number := @row_number + 1 AS rankNo,
a.sid,
a.billNo,
DATE_FORMAT(a.createTime, '%Y-%m-%d') as createTime,
a.sourceBillSid,
b.billNo as sourceBillNo,
a.createByName,
a.busTypeValue,
a.warehouseManager,
a.remarks
from as_busrepair_inventorybill as a
left join as_busrepair_bill as b on a.sourceBillSid = b.sid
left join anrui_portal.sys_organization as s on a.deptSid = s.sid,
(
SELECT
@row_number := 0
) AS t
<where>
${ew.sqlSegment}
</where>
order by a.id desc
</select>
</mapper>

24
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java

@ -1,6 +1,7 @@
package com.yxt.anrui.as.biz.asbusrepairinventorybill;
import com.yxt.anrui.as.api.asbusrepairinventorybill.*;
import com.yxt.common.base.utils.ExportExcelUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -8,6 +9,11 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.List;
/**
* @description: 维修出/退库单
* @author: dimengzhe
@ -19,6 +25,8 @@ public class AsBusrepairInventorybillRest {
@Autowired
private AsBusrepairInventorybillService asBusrepairInventorybillService;
@Autowired
private HttpServletResponse response;
@PostMapping("/pageList")
@ApiOperation("维修出库分页列表")
@ -67,6 +75,22 @@ public class AsBusrepairInventorybillRest {
return asBusrepairInventorybillService.selOutBoundCount(sourceBillSid,busTypeKey,goodsID);
}
@PostMapping("/exportExcel")
@ApiOperation(value = "分页列表导出")
public void exportExcel(@RequestBody AsBusrepairInventorybillQuery query) {
//得到所有要导出的数据
List<AsBusrepairinventoryExportVo> list = asBusrepairInventorybillService.exportExcel(query);
//定义导出的excel名字
String excelName = "维修出入库列表";
String fileNameURL = "";
try {
fileNameURL = URLEncoder.encode(excelName, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//导出维修出入库列表
ExportExcelUtils.export(fileNameURL, list, AsBusrepairinventoryExportVo.class, response);
}
}

73
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java

@ -115,10 +115,6 @@ public class AsBusrepairInventorybillService extends MybatisBaseService<AsBusrep
return p;
}
}
if (StringUtils.isNotBlank(query.getUserSid())) {
qw.eq("a.createBySid", query.getUserSid());
}
//单据编号
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("a.billNo", query.getBillNo());
@ -453,4 +449,73 @@ public class AsBusrepairInventorybillService extends MybatisBaseService<AsBusrep
String count = baseMapper.selOutBoundCountBySitemSid(sourceBillSid, busTypeKey, goodsID,sitemSid);
return rb.success().setData(count);
}
public List<AsBusrepairinventoryExportVo> exportExcel(AsBusrepairInventorybillQuery query) {
QueryWrapper<AsBusrepairInventorybill> qw = new QueryWrapper<>();
if (query != null) {
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
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("s.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("s.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("s.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("s.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("a.createBySid", query.getUserSid());
} else {
return new ArrayList<>();
}
} else {
return new ArrayList<>();
}
}
//单据编号
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.getSourceBillNo())) {
qw.like("b.billNo", query.getSourceBillNo());
}
//业务类型
if (StringUtils.isNotBlank(query.getBusTypeValue())) {
qw.like("a.busTypeValue", query.getBusTypeValue());
}
//操作人
if (StringUtils.isNotBlank(query.getCreateByName())) {
qw.like("a.createByName", query.getCreateByName());
}
//经办人
if (StringUtils.isNotBlank(query.getWarehouseManager())) {
qw.like("a.warehouseManager", query.getWarehouseManager());
}
}
List<AsBusrepairinventoryExportVo> list = baseMapper.exportExcel(qw);
return list;
}
}

8
yxt-sms-biz/src/main/java/com/yxt/sms/apiadmin/SmsSalesBillRest.java

@ -126,13 +126,7 @@ public class SmsSalesBillRest {
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail();
smsSalesBillService.delBySids(sids);
for (String sid : sids) {
smsSalesBillInvoiceService.delByMainSid(sid);
smsSalesBillDetailService.delByMainSid(sid);
}
return rb.success();
return smsSalesBillService.deleteBySids(sids);
}

2
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.java

@ -78,4 +78,6 @@ public interface SmsSalesBillMapper extends BaseMapper<SmsSalesBill> {
int selectNum(String bill);
IPage<SmsWmsInventorySalesVo> listPageSalesGoods(IPage<SmsSalesBill> page, @Param(Constants.WRAPPER)QueryWrapper<SmsGoods> qw);
int selectBySid(String join);
}

15
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.xml

@ -14,7 +14,14 @@
a.salesName,
a.customerName,
a.vehMark,
a.vinNo
a.vinNo,
CASE
a.`state`
WHEN '0' THEN
'已结算'
WHEN '1' THEN
'未结算'
END AS state
FROM sms_sales_bill as a
left join anrui_portal.sys_organization as s on a.deptSid = s.sid
left join anrui_portal.sys_organization as b on a.createOrgSid = b.sid
@ -118,4 +125,10 @@
) AS s
<where>${ew.sqlSegment}</where>
</select>
<select id="selectBySid" resultType="java.lang.Integer">
SELECT COUNT(*)
FROM sms_sales_bill
WHERE `state` != '1'
and find_in_set(sid, #{list})
</select>
</mapper>

18
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java

@ -398,6 +398,8 @@ public class SmsSalesBillService extends MybatisBaseService<SmsSalesBillMapper,
if (StringUtils.isNotBlank(dto.getBillNo())) {
settle.setSourceBillNo(dto.getBillNo());
}
settle.setCreateBySid(dto.getCreateBySid());
settle.setCreateByName(dto.getCreateByName());
settle.setBusTypeKey("001");
settle.setBusTypeValue("销售出库");
settle.setSourceBillSid(sid);
@ -520,4 +522,20 @@ public class SmsSalesBillService extends MybatisBaseService<SmsSalesBillMapper,
PagerVo<SmsSalesTrendVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public ResultBean deleteBySids(String[] sids) {
ResultBean rb = ResultBean.fireFail();
//查询该sid中是否有结算的
int count = baseMapper.selectBySid(StringUtils.join(sids, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已结算的数据,删除失败");
}
delBySids(sids);
for (String sid : sids) {
smsSalesBillInvoiceService.delByMainSid(sid);
smsSalesBillDetailService.delByMainSid(sid);
smsSalesBillAitemService.delByBillSid(sid);
}
return rb.success();
}
}

2
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillVo.java

@ -72,6 +72,6 @@ public class SmsSalesBillVo implements Vo {
private String vehMark; // 车辆牌照
@ApiModelProperty("车架号")
private String vinNo; // 车架号
private String state;
}

Loading…
Cancel
Save