计划工序管理-生成物料单、自动排位 1.30

zhc4dev
zhc077 2 years ago
parent 0871cca2ea
commit 9d92b39ff2
  1. 58
      ant-design-vue-jeecg/src/views/productplan/ProductplanManage.vue
  2. 2
      ant-design-vue-jeecg/src/views/productplan/modules/ZyProductPlanForm.vue
  3. 70
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/controller/ZyPlanProcessController.java
  4. 1
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/entity/ZyPlanProcess.java
  5. 2
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessAccessoriesMapper.java
  6. 2
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessFabricMapper.java
  7. 5
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/IZyPlanProcessService.java
  8. 177
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/impl/ZyPlanProcessServiceImpl.java
  9. 5
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/controller/StationMachineController.java
  10. 3
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationMachineService.java
  11. 3
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationToolService.java
  12. 28
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationMachineServiceImpl.java
  13. 26
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationToolServiceImpl.java

@ -48,10 +48,13 @@
>
<template v-slot:toolbarSuffix>
<a-button type="primary" icon="plus-circle" @click="syncProductProcess()">读取工序</a-button>
<a-button type="primary" icon="redo" @click="autoFilling()">自动排位</a-button>
<!-- <a-button type="primary" icon="plus-circle" @click="syncProductProcess()">生成物料单(计划面料&计划辅料)-->
<!-- </a-button>-->
<!-- <a-button type="primary" icon="plus-circle" @click="syncProductProcess()">自动排位(计划面料&计划辅料)</a-button>-->
<a-button type="primary" icon="plus-circle" @click="autoFilling()">自动排位</a-button>
<a-button type="primary" icon="plus-circle" @click="createMaterialBill()">生成物料单
</a-button>
<a-button type="primary" icon="unordered-list" @click="viewMaterialBill()">查看物料单(计划面料&计划辅料)
</a-button>
<a-button type="primary" icon="unordered-list" @click="viewMaterialBill()">发送到仓库
</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('计划工序')">导出</a-button>
<a-button type="primary" icon="rollback" @click="fanHui()">返回</a-button>
</template>
@ -200,6 +203,8 @@ export default {
list: "/org.jeecg.modules.productplan/zyPlanProcess/getProcessDatalist",
getPlanInfo: "/org.jeecg.modules.productplan/zyPlanProcess/getPlanInfo",
syncProductProcess: "/org.jeecg.modules.productplan/zyPlanProcess/syncProductProcess",
autoFilling: "/org.jeecg.modules.productplan/zyPlanProcess/autoFilling",
createMaterialBill: "/org.jeecg.modules.productplan/zyPlanProcess/createMaterialBill",
stationToolslist: "/stationTool/list2",
stationMachinelist: "/stationMachine/list2",
addProcessBatch: "/org.jeecg.modules.productplan/zyPlanProcess/addProcessBatch",
@ -293,9 +298,6 @@ export default {
path: '/productplan/ZyProductPlanList',
});
},
autoFilling() {
alert("请稍等,正在开发中。。。")
},
//
syncProductProcess() {
@ -312,6 +314,48 @@ export default {
})
},
//
/**
* 根据工序id查询工序设备表zy_process_machine用工序设备表数据与工位设备进行匹配(工位设备包含工序设备即是匹配成功则自动填充工位设备字段数据匹配不上则不自动填充由用户自己录入)
*/
autoFilling() {
this.loading = true;
getAction(this.url.autoFilling, {"planId": this.planId}).then((res) => {
if (res.success) {
this.$message.success("操作成功");
this.loadData();
} else {
this.$message.warning(res.message)
}
}).finally(() => {
this.loading = false
})
},
//
/**
* 根据该生产计划的工序面料工序辅料按类统计各种面料辅料的用量汇总到计划面料计划辅料表
*/
createMaterialBill() {
this.loading = true;
getAction(this.url.createMaterialBill, {"planId": this.planId}).then((res) => {
if (res.success) {
this.$message.success("操作成功");
this.loadData();
} else {
this.$message.warning(res.message)
}
}).finally(() => {
this.loading = false
})
},
//
viewMaterialBill(props) {
// alert("deatil row id:"+props.row.id);
this.$refs.zyPlanProcessDataDetail.showModal(props.row.id)
},
//
loadParameter() {
// debugger;

@ -126,7 +126,7 @@ export default {
workTime: '',
status: 0,
auditTimr: '',
speedUp: 0,
speedUp: 1,
auditBy: 'admin',
},
labelCol: {

@ -80,41 +80,6 @@ public class ZyPlanProcessController extends JeecgController<ZyPlanProcess, IZyP
return Result.OK(pageList);
}
// @AutoLog(value = "生产计划工序-分页列表查询")
// @ApiOperation(value = "生产计划工序-分页列表查询", notes = "生产计划工序-分页列表查询")
// @GetMapping(value = "/list2")
// public Result<?> queryPageList2(ZyPlanProcess zyPlanProcess,
// @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
// @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
// HttpServletRequest req) {
// QueryWrapper<ZyPlanProcess> queryWrapper = QueryGenerator.initQueryWrapper(zyPlanProcess, req.getParameterMap());
// Page<ZyPlanProcess> page = new Page<ZyPlanProcess>(pageNo, pageSize);
// IPage<ZyPlanProcess> pageList = zyPlanProcessService.page(page, queryWrapper);
// if (!ObjectUtils.isEmpty(pageList)) {
// String processIdList = "";
// String stationIdList = "";
// String machineIdList = "";
// String toolsIdList = "";
// String userIdList = "";
// List<ZyPlanProcess> records = pageList.getRecords();
// for (ZyPlanProcess e : records) {
// processIdList += e.getProcessId();
// stationIdList += e.getStationId();
// machineIdList += e.getMachineIds();
// toolsIdList += e.getToolsIds();
// userIdList += e.getUserIds();
// }
// for (ZyPlanProcess e : records) {
// e.setProcessId(processIdList);
// e.setStationId(stationIdList);
// e.setMachineIds(machineIdList);
// e.setToolsIds(toolsIdList);
// e.setUserIds(userIdList);
// }
// }
// return Result.OK(pageList);
// }
@ApiOperation(value = "生产计划工序-查询产品工序&计划", notes = "生产计划工序-查询产品工序&计划")
@GetMapping(value = "/getProcessDatalist")
public Result<?> getProcessDatalist(ZyPlanProcess zyPlanProcess,
@ -124,7 +89,6 @@ public class ZyPlanProcessController extends JeecgController<ZyPlanProcess, IZyP
// QueryWrapper<ZyPlanProcess> queryWrapper = QueryGenerator.initQueryWrapper(zyPlanProcess, req.getParameterMap());
// Page<ZyPlanProcess> page = new Page<ZyPlanProcess>(pageNo, pageSize);
List<ZyPlanProcess> processDatalist = zyPlanProcessService.getProcessDatalist(zyPlanProcess);
return Result.OK(processDatalist);
}
@ -144,6 +108,36 @@ public class ZyPlanProcessController extends JeecgController<ZyPlanProcess, IZyP
return Result.OK();
}
/**
* 自动排位(自动匹配工序设备与工位设备填充)未实现
* 根据工序查询工序设备表zy_process_machine
* 用工序设备表数据与工位设备进行匹配(工位设备包含工序设备即是匹配成功则自动填充工位设备字段数据匹配不上则不自动填充由用户自己录入)
* @param zyPlanProcess
* @param req
* @return
*/
@ApiOperation(value = "自动排位", notes = "自动排位")
@GetMapping(value = "/autoFilling")
public Result<?> autoFilling(ZyPlanProcess zyPlanProcess,
HttpServletRequest req) {
zyPlanProcessService.autoFilling(zyPlanProcess);
return Result.OK();
}
/**
*
* @param zyPlanProcess
* @param req
* @return
*/
@ApiOperation(value = "生成物料单", notes = "生成物料单")
@GetMapping(value = "/createMaterialBill")
public Result<?> createMaterialBill(ZyPlanProcess zyPlanProcess,
HttpServletRequest req) {
zyPlanProcessService.createMaterialBill(zyPlanProcess);
return Result.OK();
}
@ApiOperation(value = "计划班组管理-查询产品工序&班组", notes = "计划班组管理-查询产品工序&班组")
@GetMapping(value = "/getTeamDatalist")
public Result<?> getTeamDatalist(ZyPlanProcess zyPlanProcess,
@ -196,10 +190,10 @@ public class ZyPlanProcessController extends JeecgController<ZyPlanProcess, IZyP
e.setStationNum(!ObjectUtils.isEmpty(station.getStationNum()) ? station.getStationNum() : null);
if (StringUtils.isNotBlank(e.getMachineIds())) {
e.setMachineNames(iStationMachineService.convertByMachineId(e.getStationId()));
e.setMachineNames(iStationMachineService.convertByMachineIds(Arrays.asList(e.getMachineIds().split(","))));
}
if (StringUtils.isNotBlank(e.getToolsIds())) {
e.setToolsNames(iStationToolService.convertByToolId(e.getStationId()));
e.setToolsNames(iStationToolService.convertByToolIds(Arrays.asList(e.getToolsIds().split(","))));
}
} else {
e.setMachineIds("");

@ -161,5 +161,6 @@ public class ZyPlanProcess implements Serializable {
@ApiModelProperty(value = "机器时长")
private Integer totalMachine;
@ApiModelProperty(value = "工位序号")
private Integer stationNum;
}

@ -2,6 +2,7 @@ package org.jeecg.modules.productplan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.jeecg.modules.productplan.entity.ZyPlanProcessAccessories;
/**
@ -10,6 +11,7 @@ import org.jeecg.modules.productplan.entity.ZyPlanProcessAccessories;
* @Date: 2023-01-10
* @Version: V1.0
*/
@Mapper
public interface ZyPlanProcessAccessoriesMapper extends BaseMapper<ZyPlanProcessAccessories> {
}

@ -2,6 +2,7 @@ package org.jeecg.modules.productplan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric;
/**
@ -10,6 +11,7 @@ import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric;
* @Date: 2023-01-09
* @Version: V1.0
*/
@Mapper
public interface ZyPlanProcessFabricMapper extends BaseMapper<ZyPlanProcessFabric> {
}

@ -22,4 +22,9 @@ public interface IZyPlanProcessService extends IService<ZyPlanProcess> {
Map<String,Object> getPlanInfo(ZyPlanProcess zyPlanProcess);
List<ProcessDataVo> getTeamDatalist(ZyPlanProcess zyPlanProcess);
void autoFilling(ZyPlanProcess zyPlanProcess);
void createMaterialBill(ZyPlanProcess zyPlanProcess);
}

@ -1,7 +1,9 @@
package org.jeecg.modules.productplan.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.exception.JeecgBootException;
@ -15,28 +17,21 @@ import org.jeecg.modules.demo.ordergoods.entity.OrderGoods;
import org.jeecg.modules.demo.ordergoods.service.IOrderGoodsService;
import org.jeecg.modules.demo.pro.entity.ZyProcessAccessories;
import org.jeecg.modules.demo.pro.entity.ZyProcessFabric;
import org.jeecg.modules.demo.pro.entity.ZyProcessMachine;
import org.jeecg.modules.demo.pro.service.IZyProcessAccessoriesService;
import org.jeecg.modules.demo.pro.service.IZyProcessFabricService;
import org.jeecg.modules.demo.pro.service.IZyProcessMachineService;
import org.jeecg.modules.demo.zyorders.entity.ZyOrders;
import org.jeecg.modules.demo.zyorders.service.IZyOrdersService;
import org.jeecg.modules.product.pdaccessories.entity.ProductAccessories;
import org.jeecg.modules.product.pdaccessories.service.IProductAccessoriesService;
import org.jeecg.modules.product.pdfabric.entity.ProductFabric;
import org.jeecg.modules.product.pdfabric.service.IProductFabricService;
import org.jeecg.modules.product.zyproductprocess.entity.ZyProductProcess;
import org.jeecg.modules.product.zyproductprocess.service.IZyProductProcessService;
import org.jeecg.modules.productplan.entity.ZyPlanProcess;
import org.jeecg.modules.productplan.entity.ZyPlanProcessAccessories;
import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric;
import org.jeecg.modules.productplan.entity.ZyProductPlan;
import org.jeecg.modules.productplan.entity.vo.PaiWeiTuVo;
import org.jeecg.modules.productplan.entity.*;
import org.jeecg.modules.productplan.entity.vo.ProcessDataVo;
import org.jeecg.modules.productplan.enums.ProductPlanStatusEnum;
import org.jeecg.modules.productplan.mapper.ZyPlanProcessAccessoriesMapper;
import org.jeecg.modules.productplan.mapper.ZyPlanProcessFabricMapper;
import org.jeecg.modules.productplan.mapper.ZyPlanProcessMapper;
import org.jeecg.modules.productplan.service.IZyPlanProcessAccessoriesService;
import org.jeecg.modules.productplan.service.IZyPlanProcessFabricService;
import org.jeecg.modules.productplan.service.IZyPlanProcessService;
import org.jeecg.modules.productplan.service.IZyProductPlanService;
import org.jeecg.modules.productplan.service.*;
import org.jeecg.modules.system.entity.SysDepart;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.service.ISysDepartService;
@ -44,8 +39,10 @@ import org.jeecg.modules.system.service.ISysUserService;
import org.jeecg.modules.team.entity.Groupx;
import org.jeecg.modules.team.entity.GroupxMember;
import org.jeecg.modules.team.entity.Station;
import org.jeecg.modules.team.entity.StationMachine;
import org.jeecg.modules.team.service.IGroupxMemberService;
import org.jeecg.modules.team.service.IGroupxService;
import org.jeecg.modules.team.service.IStationMachineService;
import org.jeecg.modules.team.service.IStationService;
import org.jeecg.modules.team.vo.GroupxMemeberVo;
import org.jeecg.modules.team.vo.StationVo;
@ -60,6 +57,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@ -115,6 +113,12 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
@Autowired
private IZyPlanProcessFabricService iZyPlanProcessFabricService;
@Autowired
private ZyPlanProcessFabricMapper zyPlanProcessFabricMapper;
@Autowired
private ZyPlanProcessAccessoriesMapper zyPlanProcessAccessoriesMapper;
@Autowired
private IZyPlanProcessAccessoriesService iZyPlanProcessAccessoriesService;
@ -130,6 +134,18 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
@Autowired
private IZyAccessoriesService iZyAccessoriesService;
@Autowired
private IZyProcessMachineService iZyProcessMachineService;
@Autowired
private IStationMachineService iStationMachineService;
@Autowired
private IZyPlanFabricService iZyPlanFabricService;
@Autowired
private IZyPlanAccessoriesService iZyPlanAccessoriesService;
public List<ZyPlanProcess> getProcessDatalist(ZyPlanProcess zyPlanProcess) {
//生产计划id
String planId = zyPlanProcess.getPlanId();
@ -145,7 +161,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
if (ObjectUtils.isEmpty(zyProduct)) {
throw new JeecgBootException("产品不存在!");
}
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, planId));
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, planId).orderByAsc(ZyPlanProcess::getStationNum));
if (!ObjectUtils.isEmpty(planProcessList)) {
List<Station> stationList = iStationService.list(new LambdaQueryWrapper<Station>().eq(Station::getDepartId, departId));
List<StationVo> stationVoList = new LinkedList<>();
@ -159,7 +175,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
stationVoList.add(stationVo);
});
}
Groupx groupx = iGroupxService.getOne(new LambdaQueryWrapper<Groupx>().eq(Groupx::getDepartId, departId).eq(Groupx::getId,zyProductPlan.getTeamId()));
Groupx groupx = iGroupxService.getOne(new LambdaQueryWrapper<Groupx>().eq(Groupx::getDepartId, departId).eq(Groupx::getId, zyProductPlan.getTeamId()));
List<GroupxMember> groupMembers = iGroupxMemberService.list(new LambdaQueryWrapper<GroupxMember>().eq(GroupxMember::getGroupxId, groupx.getId()));
List<GroupxMemeberVo> groupxMemeberVoList = new LinkedList<>();
@ -184,6 +200,96 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
return planProcessList;
}
@Override
public void autoFilling(ZyPlanProcess zyPlanProcess) {
ZyProductPlan zyProductPlan = iZyProductPlanService.getById(zyPlanProcess.getPlanId());
if (ObjectUtils.isEmpty(zyProductPlan)) {
throw new JeecgBootException("生产计划不存在!");
}
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId()));
//是否有计划工序
if (ObjectUtils.isEmpty(planProcessList)) return;
//生产计划车间工位列表
List<Station> stationList = iStationService.list(new LambdaQueryWrapper<Station>().eq(Station::getDepartId, zyProductPlan.getWorkshopId()));
/**
* 遍历计划工序
* 用工序设备表数据与工位设备进行匹配
* 依次用该生产计划的车间工位设备循环与工序设备比对(工位设备包含工序设备即是匹配成功则自动填充工位设备字段数据匹配不上则不自动填充由用户自己录入)
* 根据工序查询工序设备表zy_process_machine
*/
Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).forEach(e -> {
List<ZyProcessMachine> machineList = iZyProcessMachineService.list(new LambdaQueryWrapper<ZyProcessMachine>().eq(ZyProcessMachine::getProcessId, e.getProcessId()));
this.diffMachine(e, stationList, machineList);
});
}
@Override
public void createMaterialBill(ZyPlanProcess zyPlanProcess) {
ZyProductPlan zyProductPlan = iZyProductPlanService.getById(zyPlanProcess.getPlanId());
if (ObjectUtils.isEmpty(zyProductPlan)) {
throw new JeecgBootException("生产计划不存在!");
}
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId()));
if(ObjectUtils.isEmpty(planProcessList)) return;
this.delBillData(zyPlanProcess);
List<String> idList = planProcessList.stream().map(ZyPlanProcess::getId).collect(Collectors.toList());
QueryWrapper qw = new QueryWrapper();
qw.select("fabric_id", "sum(amount) as count");
qw.in("plan_process_id", idList);
qw.groupBy("fabric_id");
List<Map<String, Object>> maplist = zyPlanProcessFabricMapper.selectMaps(qw);
List<ZyPlanFabric> zyPlanFabricList = new LinkedList<>();
for (Map<String, Object> mp : maplist) {
ZyPlanFabric zyPlanFabric = new ZyPlanFabric();
zyPlanFabric.setPlanId(zyPlanProcess.getPlanId());
zyPlanFabric.setFabricId(mp.get("fabric_id").toString());
zyPlanFabric.setAmount(new BigDecimal(mp.get("count").toString()));
zyPlanFabricList.add(zyPlanFabric);
}
iZyPlanFabricService.saveBatch(zyPlanFabricList);
QueryWrapper qw2 = new QueryWrapper();
qw2.select("accessories_id", "sum(amount) as count");
qw2.in("plan_process_id", idList);
qw2.groupBy("accessories_id");
List<Map<String, Object>> maplist2 = zyPlanProcessAccessoriesMapper.selectMaps(qw2);
List<ZyPlanAccessories> zyPlanAccessoriesList = new LinkedList<>();
for (Map<String, Object> mp : maplist2) {
ZyPlanAccessories zyPlanAccessories = new ZyPlanAccessories();
zyPlanAccessories.setPlanId(zyPlanProcess.getPlanId());
zyPlanAccessories.setAccessoriesId(mp.get("accessories_id").toString());
zyPlanAccessories.setAmount(new BigDecimal(mp.get("count").toString()));
zyPlanAccessoriesList.add(zyPlanAccessories);
}
iZyPlanAccessoriesService.saveBatch(zyPlanAccessoriesList);
}
void diffMachine(ZyPlanProcess zyPlanProcess, List<Station> stationList, List<ZyProcessMachine> machineList) {
if (!ObjectUtils.isEmpty(machineList)) {
List<String> machineList1 = machineList.stream().map(ZyProcessMachine::getMachineId).collect(Collectors.toList());
Optional.ofNullable(stationList).orElse(new ArrayList<>()).forEach(e -> {
List<StationMachine> stationMachineList = iStationMachineService.list(new LambdaQueryWrapper<StationMachine>().eq(StationMachine::getStationId, e.getId()));
List<String> machineList2 = Optional.ofNullable(stationMachineList).orElse(new ArrayList<>()).stream().map(StationMachine::getMachineId).collect(Collectors.toList());
if (machineList2.containsAll(machineList1)) {
String collect = machineList1.stream().collect(Collectors.joining(","));
zyPlanProcess.setMachineIds(collect);
zyPlanProcess.setMachineNames(iStationMachineService.convertByMachineIds(machineList1));
zyPlanProcess.setStationId(e.getId());
zyPlanProcess.setStationName(e.getStationName());
zyPlanProcess.setStationNum(e.getStationNum());
this.updateById(zyPlanProcess);
return;
}
});
}
}
@Override
@Transactional(readOnly = false, rollbackFor = Exception.class)
public List<ZyPlanProcess> syncProductBaseProcess(ZyPlanProcess zyPlanProcess) {
@ -267,17 +373,36 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
}
/**
* 删除工序面料&工序辅料表&生产计划工序表数据
*
* @param zyPlanProcess
*/
@Transactional(readOnly = false, rollbackFor = Exception.class)
public void delSyncData(ZyPlanProcess zyPlanProcess) {
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId()));
if (!ObjectUtils.isEmpty(planProcessList)) {
List<String> collect = Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).stream().map(ZyPlanProcess::getProcessId).collect(Collectors.toList());
List<String> collect = Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).stream().map(ZyPlanProcess::getId).collect(Collectors.toList());
iZyPlanProcessFabricService.remove(new LambdaQueryWrapper<ZyPlanProcessFabric>().in(ZyPlanProcessFabric::getPlanProcessId, collect));
iZyPlanProcessAccessoriesService.remove(new LambdaQueryWrapper<ZyPlanProcessAccessories>().in(ZyPlanProcessAccessories::getPlanProcessId, collect));
this.remove(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId()));
}
}
/**
* 删除物料单(生产计划面料&生产计划辅料)数据
*
* @param zyPlanProcess
*/
@Transactional(readOnly = false, rollbackFor = Exception.class)
public void delBillData(ZyPlanProcess zyPlanProcess) {
List<ZyPlanProcess> planProcessList = this.list(new LambdaQueryWrapper<ZyPlanProcess>().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId()));
if (!ObjectUtils.isEmpty(planProcessList)) {
iZyPlanFabricService.remove(new LambdaQueryWrapper<ZyPlanFabric>().eq(ZyPlanFabric::getPlanId, zyPlanProcess.getPlanId()));
iZyPlanAccessoriesService.remove(new LambdaQueryWrapper<ZyPlanAccessories>().eq(ZyPlanAccessories::getPlanId, zyPlanProcess.getPlanId()));
}
}
void saveBatchAccessoriesByProcessIdList(List<ZyPlanProcess> planProcessList) {
Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).forEach(e -> {
List<ZyProcessAccessories> accessoriesList = this.iZyProcessAccessoriesService.list(new LambdaQueryWrapper<ZyProcessAccessories>()
@ -285,7 +410,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
List<ZyPlanProcessAccessories> list = new LinkedList<>();
Optional.ofNullable(accessoriesList).orElse(new ArrayList<>()).forEach(obj -> {
ZyPlanProcessAccessories en = new ZyPlanProcessAccessories();
en.setPlanProcessId(e.getProcessId());
en.setPlanProcessId(e.getId());
en.setPlanId(e.getPlanId());
en.setAccessoriesId(obj.getAccessoriesId());
ZyAccessories zyAccessories = iZyAccessoriesService.getById(obj.getAccessoriesId());
@ -297,7 +422,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
}
void saveBatchFabricByProcessIdList(List<ZyPlanProcess> planProcessList) {
if (!org.springframework.util.StringUtils.isEmpty(planProcessList)) {
planProcessList.forEach(e -> {
List<ZyProcessFabric> fabricList = this.iZyProcessFabricService.list(new LambdaQueryWrapper<ZyProcessFabric>()
@ -306,7 +430,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
if (!org.springframework.util.StringUtils.isEmpty(fabricList)) {
fabricList.forEach(obj -> {
ZyPlanProcessFabric en = new ZyPlanProcessFabric();
en.setPlanProcessId(e.getProcessId());
en.setPlanProcessId(e.getId());
en.setPlanId(e.getPlanId());
en.setFabricId(obj.getFabricId());
ZyFabric zyFabric = iZyFabricService.getById(obj.getFabricId());
@ -317,19 +441,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
}
});
}
// Optional.ofNullable(planProcessList).orElse(null).forEach(e -> {
// Optional.ofNullable(fabricList).orElse(null).forEach(obj -> {
// ZyPlanProcessFabric en = new ZyPlanProcessFabric();
// en.setPlanProcessId(e.getProcessId());
// en.setPlanId(e.getPlanId());
// en.setFabricId(obj.getFabricId());
// ZyFabric zyFabric = iZyFabricService.getById(obj.getFabricId());
// en.setFabricName(StringUtils.isNotBlank(zyFabric.getName()) ? zyFabric.getName() : "");
// list.add(en);
// });
// iZyPlanProcessFabricService.saveBatch(list);
// });
}
@ -443,4 +554,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl<ZyPlanProcessMapper, Z
}
return result;
}
}

@ -70,7 +70,10 @@ public class StationMachineController extends JeecgController<StationMachine, IS
if (!ObjectUtils.isEmpty(records)) {
records.forEach(e -> {
ZyDevice zyDevice = iZyDeviceService.getById(e.getMachineId());
e.setCode(StringUtils.isNotBlank(zyDevice.getCode()) ? zyDevice.getCode() : "");
if (!ObjectUtils.isEmpty(zyDevice)) {
e.setCode(StringUtils.isNotBlank(zyDevice.getCode()) ? zyDevice.getCode() : "");
}
});
}
return Result.OK(pageList);

@ -14,6 +14,7 @@ import java.util.List;
*/
public interface IStationMachineService extends IService<StationMachine> {
String convertByMachineId(String stationId);
String convertByStationId(String stationId);
String convertByMachineIds(List<String> MachineIds);
}

@ -4,6 +4,8 @@ package org.jeecg.modules.team.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.team.entity.StationTool;
import java.util.List;
/**
* @Description: 工序工具管理
* @Author: jeecg-boot
@ -13,4 +15,5 @@ import org.jeecg.modules.team.entity.StationTool;
public interface IStationToolService extends IService<StationTool> {
String convertByToolId(String stationId);
String convertByToolIds(List<String> toolIdss);
}

@ -28,7 +28,27 @@ public class StationMachineServiceImpl extends ServiceImpl<StationMachineMapper,
private IZyDeviceService iZyDeviceService;
@Override
public String convertByMachineId(String stationId) {
public String convertByMachineIds(List<String> machineIds) {
// List<StationMachine> machineList = this.list(new LambdaQueryWrapper<StationMachine>().in(StationMachine::getMachineId, machineIds));
StringBuffer machineNames = new StringBuffer();
String machineNamesStr = "";
if (!ObjectUtils.isEmpty(machineIds)) {
machineIds.forEach(e -> {
ZyDevice zyDevice = iZyDeviceService.getById(e);
if (!ObjectUtils.isEmpty(zyDevice)) {
machineNames.append(zyDevice.getName()).append(",");
}
});
if (StringUtils.isNotBlank(machineNames.toString())) {
machineNamesStr = machineNames.toString();
machineNamesStr = machineNames.substring(0, machineNamesStr.length() - 1);
}
}
return machineNamesStr;
}
@Override
public String convertByStationId(String stationId) {
List<StationMachine> machineList = this.list(new LambdaQueryWrapper<StationMachine>().eq(StationMachine::getStationId, stationId));
StringBuffer machineNames = new StringBuffer();
String machineNamesStr = "";
@ -39,9 +59,11 @@ public class StationMachineServiceImpl extends ServiceImpl<StationMachineMapper,
machineNames.append(zyDevice.getName()).append(",");
}
});
if (StringUtils.isNotBlank(machineNames.toString())) {
machineNamesStr = machineNames.toString();
machineNamesStr = machineNames.substring(0, machineNamesStr.length() - 1);
}
}
machineNamesStr = machineNames.toString();
machineNamesStr = machineNames.substring(0, machineNamesStr.length() - 1);
return machineNamesStr;
}
}

@ -2,6 +2,7 @@ package org.jeecg.modules.team.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.modules.team.entity.StationTool;
import org.jeecg.modules.team.mapper.StationToolMapper;
import org.jeecg.modules.team.service.IStationToolService;
@ -37,9 +38,30 @@ public class StationToolServiceImpl extends ServiceImpl<StationToolMapper, Stati
toolNames.append(zyTool.getName()).append(",");
}
});
if (StringUtils.isNotBlank(toolNames.toString())) {
toolNamesStr = toolNames.toString();
toolNamesStr = toolNamesStr.substring(0, toolNamesStr.length() - 1);
}
}
return toolNamesStr;
}
@Override
public String convertByToolIds(List<String> toolList) {
StringBuffer toolNames = new StringBuffer();
String toolNamesStr = "";
if (!ObjectUtils.isEmpty(toolList)) {
toolList.forEach(e -> {
ZyTool zyTool = iZyToolService.getById(e);
if (!ObjectUtils.isEmpty(zyTool)) {
toolNames.append(zyTool.getName()).append(",");
}
});
if (StringUtils.isNotBlank(toolNames.toString())) {
toolNamesStr = toolNames.toString();
toolNamesStr = toolNamesStr.substring(0, toolNamesStr.length() - 1);
}
}
toolNamesStr = toolNames.toString();
toolNamesStr = toolNamesStr.substring(0, toolNamesStr.length() - 1);
return toolNamesStr;
}
}

Loading…
Cancel
Save