Browse Source

[feat] 销售管理

按照万材要求,工程管理开发修改单新增导出功能,支持部分行和全部行导出,导出更多数据
新增 工程管理开发修改单导出明细实体类
新增导出所有和选择导出后端接口
新增 导出开发修改单明细方法
新增 根据开发修改单号数组查询开发修改单集合方法
新增 根据开发修改单号集合查询开发修改单详情数据方法
dev
liuxiaoxu 6 days ago
parent
commit
6f8b00b007
  1. 11
      ruoyi-admin/src/main/java/com/ruoyi/erp/controller/ErpDevelopModifyorderController.java
  2. 137
      ruoyi-admin/src/main/java/com/ruoyi/erp/domain/vo/ExportDevelopModifyorderVo.java
  3. 6
      ruoyi-admin/src/main/java/com/ruoyi/erp/mapper/ErpDevelopModifyorderDetailMapper.java
  4. 6
      ruoyi-admin/src/main/java/com/ruoyi/erp/service/IErpDevelopModifyorderService.java
  5. 67
      ruoyi-admin/src/main/java/com/ruoyi/erp/service/impl/ErpDevelopModifyorderServiceImpl.java
  6. 8
      ruoyi-admin/src/main/resources/mapper/erp/ErpDevelopModifyorderDetailMapper.xml
  7. 2
      ruoyi-admin/src/main/resources/templates/erp/developModifyOrder/developModifyOrder.html

11
ruoyi-admin/src/main/java/com/ruoyi/erp/controller/ErpDevelopModifyorderController.java

@ -9,6 +9,7 @@ import com.ruoyi.erp.domain.ErpMaterial;
import com.ruoyi.erp.domain.ErpMaterialVo; import com.ruoyi.erp.domain.ErpMaterialVo;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo;
import com.ruoyi.erp.domain.vo.ExportDevelopModifyorderVo;
import com.ruoyi.erp.service.IErpMaterialService; import com.ruoyi.erp.service.IErpMaterialService;
import com.ruoyi.process.general.service.IProcessService; import com.ruoyi.process.general.service.IProcessService;
import com.ruoyi.purchase.service.IPurchasePlanService; import com.ruoyi.purchase.service.IPurchasePlanService;
@ -119,8 +120,9 @@ public class ErpDevelopModifyorderController extends BaseController {
@ResponseBody @ResponseBody
public AjaxResult exportAll(ErpDevelopModifyorderVo erpDevelopModifyorderVo) { public AjaxResult exportAll(ErpDevelopModifyorderVo erpDevelopModifyorderVo) {
List<ErpDevelopModifyorderVo> list = erpDevelopModifyorderService.selectErpDevelopModifyorderList(erpDevelopModifyorderVo); List<ErpDevelopModifyorderVo> list = erpDevelopModifyorderService.selectErpDevelopModifyorderList(erpDevelopModifyorderVo);
ExcelUtil<ErpDevelopModifyorderVo> util = new ExcelUtil<ErpDevelopModifyorderVo>(ErpDevelopModifyorderVo.class); List<ExportDevelopModifyorderVo> exportDevelopModifyorderVos = erpDevelopModifyorderService.exportDevelopModifyorderList(list);
return util.exportExcel(list, "开发修改单数据"); ExcelUtil<ExportDevelopModifyorderVo> util = new ExcelUtil<ExportDevelopModifyorderVo>(ExportDevelopModifyorderVo.class);
return util.exportExcel(exportDevelopModifyorderVos, "开发修改单数据");
} }
@ -133,8 +135,9 @@ public class ErpDevelopModifyorderController extends BaseController {
@ResponseBody @ResponseBody
public AjaxResult export(@RequestBody String[] developOrderCodes) { public AjaxResult export(@RequestBody String[] developOrderCodes) {
List<ErpDevelopModifyorderVo> list = erpDevelopModifyorderService.selectErpDevelopModifyorderListByCodes(developOrderCodes); List<ErpDevelopModifyorderVo> list = erpDevelopModifyorderService.selectErpDevelopModifyorderListByCodes(developOrderCodes);
ExcelUtil<ErpDevelopModifyorderVo> util = new ExcelUtil<ErpDevelopModifyorderVo>(ErpDevelopModifyorderVo.class); List<ExportDevelopModifyorderVo> exportDevelopModifyorderVos = erpDevelopModifyorderService.exportDevelopModifyorderList(list);
return util.exportExcel(list, "开发修改单数据"); ExcelUtil<ExportDevelopModifyorderVo> util = new ExcelUtil<ExportDevelopModifyorderVo>(ExportDevelopModifyorderVo.class);
return util.exportExcel(exportDevelopModifyorderVos, "开发修改单数据");
} }

137
ruoyi-admin/src/main/java/com/ruoyi/erp/domain/vo/ExportDevelopModifyorderVo.java

@ -0,0 +1,137 @@
package com.ruoyi.erp.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 导出开发修改单明细
* */
@Data
public class ExportDevelopModifyorderVo {
/** 开发修改单号 */
@Excel(name = "开发修改单号")
private String developOrderCode;
/** 生产单号 */
@Excel(name = "生产单号")
private String makeNo;
/** 料号 */
@Excel(name = "料号")
private String materialNo;
/** 物料名称 */
@Excel(name = "物料名称")
private String materialName;
/** 品牌 */
@Excel(name = "品牌")
private String materialBrand;
/** 描述 */
@Excel(name = "描述")
private String materialDescribe;
/** 加工方式 */
@Excel(name = "加工方式",dictType = "processMethod")
private String materialProcessMethod;
/** 工程员 */
private Long userId;
/** 工程员姓名 */
@Excel(name = "工程员")
private String userName;
/** 采购入库状态(0待采购、1采购中、2待暂收、3部分暂收、4全部暂收、5已暂收、6待入库、7部分入库、8全部入库、9已入库) */
@Excel(name = "采购入库状态",dictType = "eceiptStatus")
private String purchaseStorageStatus;
/** 品质状态 (0待品质、1部分品质、2全部品质)*/
@Excel(name = "品质状态",dictType = "qualityStatus")
private String qualityStatus;
/** 审核状态 (0待审核、1审核通过、2审核拒绝)*/
@Excel(name = "审核状态",dictType = "auditStatus")
private String auditStatus;
/** 确认状态 (0待确认、1部分确认、2已确认)*/
@Excel(name = "确认状态",dictType = "completeStatus")
private String completeStatus;
/** 完成状态 (0待完成、1已完成)*/
@Excel(name = "完成状态",dictType = "finshStatus")
private String finshStatus;
/** 使用状态 (0否、1是、2已作废)*/
@Excel(name = "使用状态",dictType = "useStatus")
private String useStatus;
/** 订单类型(0客户订单、1研发订单、2其他订单)*/
@Excel(name = "订单类型",dictType = "sys_order_type")
private String orderType;
/** 修改完成时间 */
@Excel(name = "修改完成时间", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date updateFinishTime;
/** 修改前说明 */
@Excel(name = "修改前说明")
private String beforeUpdateRemark;
@Excel(name = "修改后说明")
/** 修改后说明 */
private String afterUpdateRemark;
/** 料号 */
@Excel(name = "采购料号")
private String cgMaterialNo;
/** 物料名称 */
@Excel(name = "采购物料名称")
private String cgMaterialName;
/** 物料单位 */
@Excel(name = "采购物料单位")
private String cgMaterialUnit;
/** 物料品牌 */
@Excel(name = "采购物料品牌")
private String cgMaterialBrand;
/** 物料描述 */
@Excel(name = "采购物料描述")
private String cgMaterialDescribe;
/** 加工方式 */
@Excel(name = "采购物料加工方式")
private String cgMaterialProcessMethod;
/** 订单数量 */
@Excel(name = "订单数量")
private Integer materialNum;
@Excel(name = "领料数量")
private Integer pickNum;
/** 已领料数量 */
@Excel(name = "已领料数量")
private Integer hasPickNum;
/** 可用库存数 */
@Excel(name = "可用库存数")
private Integer availableStockNum;
}

6
ruoyi-admin/src/main/java/com/ruoyi/erp/mapper/ErpDevelopModifyorderDetailMapper.java

@ -89,4 +89,10 @@ public interface ErpDevelopModifyorderDetailMapper
* 检查开发修改单子表是否引用了物料 * 检查开发修改单子表是否引用了物料
* */ * */
int checkMaterialIsReferencedByDevelopModifyorderDetail(String materialNo); int checkMaterialIsReferencedByDevelopModifyorderDetail(String materialNo);
/**
* 根据开发修改单号查询开发修改单详情物料信息
* */
List<ErpDevelopModifyorderDetail> selectDevelopModifyorderDetailListByCodes(List<String> collectDevelopOrderCodes);
} }

6
ruoyi-admin/src/main/java/com/ruoyi/erp/service/IErpDevelopModifyorderService.java

@ -5,6 +5,7 @@ import com.ruoyi.erp.domain.ErpDevelopModifyorder;
import com.ruoyi.erp.domain.ErpDevelopModifyorderDetail; import com.ruoyi.erp.domain.ErpDevelopModifyorderDetail;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo;
import com.ruoyi.erp.domain.vo.ExportDevelopModifyorderVo;
import com.ruoyi.system.domain.SysSalesOrder; import com.ruoyi.system.domain.SysSalesOrder;
import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.runtime.ProcessInstance;
@ -110,4 +111,9 @@ public interface IErpDevelopModifyorderService
* 根据开发修改单号查询提醒人员列表 * 根据开发修改单号查询提醒人员列表
* */ * */
List<ErpDevelopModifyorderRemindVo> getErpDevelopRemindPeopleList(String developOrderCode); List<ErpDevelopModifyorderRemindVo> getErpDevelopRemindPeopleList(String developOrderCode);
/**
* 导出开发修改单列表
* */
List<ExportDevelopModifyorderVo> exportDevelopModifyorderList(List<ErpDevelopModifyorderVo> list);
} }

67
ruoyi-admin/src/main/java/com/ruoyi/erp/service/impl/ErpDevelopModifyorderServiceImpl.java

@ -1,6 +1,8 @@
package com.ruoyi.erp.service.impl; package com.ruoyi.erp.service.impl;
import java.util.*; import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import com.github.pagehelper.Page; import com.github.pagehelper.Page;
import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.SysUser;
@ -14,6 +16,7 @@ import com.ruoyi.erp.domain.ErpDevelopModifyorderDetail;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderMaterialVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderMaterialVo;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderRemindVo;
import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo; import com.ruoyi.erp.domain.vo.ErpDevelopModifyorderVo;
import com.ruoyi.erp.domain.vo.ExportDevelopModifyorderVo;
import com.ruoyi.erp.mapper.ErpDevelopModifyorderDetailMapper; import com.ruoyi.erp.mapper.ErpDevelopModifyorderDetailMapper;
import com.ruoyi.process.general.service.IProcessService; import com.ruoyi.process.general.service.IProcessService;
import com.ruoyi.process.todoitem.mapper.BizTodoItemMapper; import com.ruoyi.process.todoitem.mapper.BizTodoItemMapper;
@ -388,6 +391,70 @@ public class ErpDevelopModifyorderServiceImpl implements IErpDevelopModifyorderS
} }
/**
* 导出开发修改单数据明细
* */
@Override
public List<ExportDevelopModifyorderVo> exportDevelopModifyorderList(List<ErpDevelopModifyorderVo> list) {
// 获取所有的开发修改单号
List<String> collectDevelopOrderCodes = list.stream().map(ErpDevelopModifyorderVo::getDevelopOrderCode).collect(Collectors.toList());
// 根据开发修改单号查询对应的详情列表
List<ErpDevelopModifyorderDetail> developModifyorderDetailList = developModifyorderDetailMapper.selectDevelopModifyorderDetailListByCodes(collectDevelopOrderCodes);
// 创建一个开发修改订单VO的Map,键为开发修改单号
Map<String, ErpDevelopModifyorderVo> erpDevelopModifyorderVoMap = list.stream()
.collect(Collectors.toMap(ErpDevelopModifyorderVo::getDevelopOrderCode, Function.identity()));
// 初始化导出列表
List<ExportDevelopModifyorderVo> exportDevelopModifyorderVos = new ArrayList<>();
for (ErpDevelopModifyorderDetail detail : developModifyorderDetailList) {
ExportDevelopModifyorderVo exportVo = new ExportDevelopModifyorderVo();
// 从ErpDevelopModifyorderDetail填充数据
exportVo.setCgMaterialNo(detail.getMaterialNo());
exportVo.setCgMaterialName(detail.getMaterialName());
exportVo.setCgMaterialUnit(detail.getMaterialUnit());
exportVo.setCgMaterialBrand(detail.getMaterialBrand());
exportVo.setCgMaterialDescribe(detail.getMaterialDescribe());
exportVo.setCgMaterialProcessMethod(detail.getMaterialProcessMethod());
exportVo.setMaterialNum(detail.getMaterialNum());
exportVo.setPickNum(detail.getPickNum());
exportVo.setHasPickNum(detail.getHasPickNum());
exportVo.setAvailableStockNum(detail.getAvailableStockNum());
// 从ErpDevelopModifyorder填充数据,通过开发修改单号进行关联
ErpDevelopModifyorderVo modifyorderVo = erpDevelopModifyorderVoMap.get(detail.getDevelopOrderCode());
if (modifyorderVo != null) {
exportVo.setDevelopOrderCode(modifyorderVo.getDevelopOrderCode());
exportVo.setMakeNo(modifyorderVo.getMakeNo());
exportVo.setMaterialNo(modifyorderVo.getMaterialNo());
exportVo.setMaterialName(modifyorderVo.getMaterialName());
exportVo.setMaterialBrand(modifyorderVo.getMaterialBrand());
exportVo.setMaterialDescribe(modifyorderVo.getMaterialDescribe());
exportVo.setMaterialProcessMethod(modifyorderVo.getMaterialProcessMethod());
exportVo.setUserId(modifyorderVo.getUserId());
exportVo.setUserName(modifyorderVo.getUserName());
exportVo.setPurchaseStorageStatus(modifyorderVo.getPurchaseStorageStatus());
exportVo.setQualityStatus(modifyorderVo.getQualityStatus());
exportVo.setAuditStatus(modifyorderVo.getAuditStatus());
exportVo.setCompleteStatus(modifyorderVo.getCompleteStatus());
exportVo.setFinshStatus(modifyorderVo.getFinshStatus());
exportVo.setUseStatus(modifyorderVo.getUseStatus());
exportVo.setOrderType(modifyorderVo.getOrderType());
exportVo.setUpdateFinishTime(modifyorderVo.getUpdateFinishTime());
exportVo.setBeforeUpdateRemark(modifyorderVo.getBeforeUpdateRemark());
exportVo.setAfterUpdateRemark(modifyorderVo.getAfterUpdateRemark());
}
// 添加到结果列表
exportDevelopModifyorderVos.add(exportVo);
}
return exportDevelopModifyorderVos;
}
/** /**
* 创建售后单审核流程 * 创建售后单审核流程
* @param applyTitle * @param applyTitle

8
ruoyi-admin/src/main/resources/mapper/erp/ErpDevelopModifyorderDetailMapper.xml

@ -57,6 +57,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select count(1) from erp_develop_modifyorder_detail where material_no = #{materialNo} select count(1) from erp_develop_modifyorder_detail where material_no = #{materialNo}
</select> </select>
<select id="selectDevelopModifyorderDetailListByCodes" parameterType="ErpDevelopModifyorderDetail" resultMap="ErpDevelopModifyorderDetailResult">
<include refid="selectErpDevelopModifyorderDetailVo"/>
where develop_order_code in
<foreach collection="list" item="developOrderCode" open="(" separator="," close=")">
#{developOrderCode}
</foreach>
</select>
<insert id="insertErpDevelopModifyorderDetail" parameterType="ErpDevelopModifyorderDetail" useGeneratedKeys="true" keyProperty="developOrderDetailId"> <insert id="insertErpDevelopModifyorderDetail" parameterType="ErpDevelopModifyorderDetail" useGeneratedKeys="true" keyProperty="developOrderDetailId">
insert into erp_develop_modifyorder_detail insert into erp_develop_modifyorder_detail
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">

2
ruoyi-admin/src/main/resources/templates/erp/developModifyOrder/developModifyOrder.html

@ -70,7 +70,7 @@
</a> </a>
</div> </div>
<div class="col-sm-12 select-table table-striped"> <div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" style="white-space:nowrap"></table> <table id="bootstrap-table"></table>
</div> </div>
</div> </div>
</div> </div>

Loading…
Cancel
Save