diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/controller/PdmBdMixtaskController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/controller/PdmBdMixtaskController.java new file mode 100644 index 0000000..961eaae --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/controller/PdmBdMixtaskController.java @@ -0,0 +1,59 @@ +package org.nl.wms.pdm.workorder.controller; + +import lombok.extern.slf4j.Slf4j; +import org.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.wms.pdm.workorder.service.IPdmBdMixtaskService; +import org.nl.wms.pdm.workorder.service.dao.PdmBdMixtask; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.Map; +import java.util.Set; +/** +* @author liyongde +* @date 2025-12-15 +**/ +@Slf4j +@RestController +@RequestMapping("/api/pdmBdMixtask") +public class PdmBdMixtaskController { + + @Autowired + private IPdmBdMixtaskService pdmBdMixtaskService; + + @GetMapping + @Log("查询混碾大任务") + //@SaCheckPermission("@el.check('pdmBdMixtask:list')") + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ + return new ResponseEntity<>(TableDataInfo.build(pdmBdMixtaskService.queryAll(whereJson,page)),HttpStatus.OK); + } + + @PostMapping + @Log("新增混碾大任务") + //@SaCheckPermission("@el.check('pdmBdMixtask:add')") + public ResponseEntity create(@Validated @RequestBody PdmBdMixtask entity){ + pdmBdMixtaskService.create(entity); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改混碾大任务") + //@SaCheckPermission("@el.check('pdmBdMixtask:edit')") + public ResponseEntity update(@Validated @RequestBody PdmBdMixtask entity){ + pdmBdMixtaskService.update(entity); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @Log("删除混碾大任务") + //@SaCheckPermission("@el.check('pdmBdMixtask:del')") + @DeleteMapping + public ResponseEntity delete(@RequestBody Set ids) { + pdmBdMixtaskService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/IPdmBdMixtaskService.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/IPdmBdMixtaskService.java new file mode 100644 index 0000000..8407bab --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/IPdmBdMixtaskService.java @@ -0,0 +1,43 @@ +package org.nl.wms.pdm.workorder.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import com.baomidou.mybatisplus.extension.service.IService; +import org.nl.wms.pdm.workorder.service.dao.PdmBdMixtask; + +import java.util.Map; +import java.util.Set; + +/** +* @description 服务接口 +* @author liyongde +* @date 2025-12-15 +**/ +public interface IPdmBdMixtaskService extends IService { + + /** + * 查询数据分页 + * @param whereJson 条件 + * @param pageable 分页参数 + * @return IPage + */ + IPage queryAll(Map whereJson, PageQuery pageable); + + /** + * 创建 + * @param entity / + */ + void create(PdmBdMixtask entity); + + /** + * 编辑 + * @param entity / + */ + void update(PdmBdMixtask entity); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(Set ids); +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/PdmBdMixtask.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/PdmBdMixtask.java new file mode 100644 index 0000000..559cfc1 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/PdmBdMixtask.java @@ -0,0 +1,61 @@ +package org.nl.wms.pdm.workorder.service.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** +* @description / +* @author liyongde +* @date 2025-12-15 +**/ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("pdm_bd_mixtask") +public class PdmBdMixtask implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "task_id", type = IdType.NONE) + /** 大任务id */ + private String task_id; + + /** 物料id */ + private String material_id; + + /** 泥料号(配方号) */ + private String raw_material_code; + + /** 混碾数量/重量 */ + private BigDecimal qty; + + /** 料盅类型 */ + private String vehicle_type; + + /** 状态(1:创建2:进行中3:已完成) */ + private String mix_status; + + /** 开工人 */ + private String operator; + + /** 创建时间 */ + private String create_time; + + /** 创建人 */ + private String create_name; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private Boolean id_delete; + private String material_name; + private String material_code; + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.java new file mode 100644 index 0000000..bafe42b --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.java @@ -0,0 +1,12 @@ +package org.nl.wms.pdm.workorder.service.dao.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.nl.wms.pdm.workorder.service.dao.PdmBdMixtask; + +/** +* @author liyongde +* @date 2025-12-15 +**/ +public interface PdmBdMixtaskMapper extends BaseMapper { + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.xml b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.xml new file mode 100644 index 0000000..fdc1a94 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dao/mapper/PdmBdMixtaskMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskDto.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskDto.java new file mode 100644 index 0000000..36c2b01 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskDto.java @@ -0,0 +1,47 @@ +package org.nl.wms.pdm.workorder.service.dto; + +import lombok.Data; +import java.io.Serializable; +import java.math.BigDecimal; + +/** +* @description / +* @author liyongde +* @date 2025-12-15 +**/ +@Data +public class PdmBdMixtaskDto implements Serializable { + + /** 大任务id */ + private String task_id; + + /** 物料id */ + private String material_id; + + /** 泥料号(配方号) */ + private String raw_material_code; + + /** 混碾数量/重量 */ + private BigDecimal qty; + + /** 料盅类型 */ + private String vehicle_type; + + /** 状态(1:创建2:进行中3:已完成) */ + private String mix_status; + + /** 开工人 */ + private String operator; + + /** 创建时间 */ + private String create_time; + + /** 创建人 */ + private String create_name; + + /** 修改时间 */ + private String update_time; + + /** 是否删除 */ + private Boolean id_delete; +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskQuery.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskQuery.java new file mode 100644 index 0000000..c7bbfc5 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/dto/PdmBdMixtaskQuery.java @@ -0,0 +1,12 @@ +package org.nl.wms.pdm.workorder.service.dto; + +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.pdm.workorder.service.dao.PdmBdMixtask; + +/** +* @author liyongde +* @date 2025-12-15 +**/ +public class PdmBdMixtaskQuery extends BaseQuery { + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/impl/PdmBdMixtaskServiceImpl.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/impl/PdmBdMixtaskServiceImpl.java new file mode 100644 index 0000000..cc4da33 --- /dev/null +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/workorder/service/impl/PdmBdMixtaskServiceImpl.java @@ -0,0 +1,86 @@ +package org.nl.wms.pdm.workorder.service.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.pdm.workorder.service.IPdmBdMixtaskService; +import org.nl.wms.pdm.workorder.service.dao.PdmBdMixtask; +import org.nl.wms.pdm.workorder.service.dao.mapper.PdmBdMixtaskMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.function.Consumer; +import java.util.stream.Collectors; + +/** +* @description 服务实现 +* @author liyongde +* @date 2025-12-15 +**/ +@Slf4j +@Service +public class PdmBdMixtaskServiceImpl extends ServiceImpl implements IPdmBdMixtaskService { + + @Autowired + private PdmBdMixtaskMapper pdmBdMixtaskMapper; + + @Override + public IPage queryAll(Map form, PageQuery page){ + String moreStatus = ObjectUtil.isNotEmpty(form.get("more_status")) ? form.get("more_status").toString() : null; + String beginTime = ObjectUtil.isNotEmpty(form.get("begin_time")) ? form.get("begin_time").toString() : null; + String endTime = ObjectUtil.isNotEmpty(form.get("end_time")) ? form.get("end_time").toString() : null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + List collect = new ArrayList<>(); + if (moreStatus != null) { + collect = Arrays.stream(moreStatus.split(",")).collect(Collectors.toList()); + } + lam.in(moreStatus != null, PdmBdMixtask::getMix_status, collect) + .and(beginTime != null, l2 -> l2.ge(PdmBdMixtask::getCreate_time, beginTime) + .le(PdmBdMixtask::getCreate_time, endTime)); + pdmBdMixtaskMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(PdmBdMixtask entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setTask_id(IdUtil.getSnowflake(1, 1).nextIdStr()); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_time(now); + pdmBdMixtaskMapper.insert(entity); + } + + @Override + public void update(PdmBdMixtask entity) { + PdmBdMixtask dto = pdmBdMixtaskMapper.selectById(entity.getTask_id()); + if (dto == null) throw new BadRequestException("被删除或无权限,操作失败!"); + + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + entity.setUpdate_time(now); + + pdmBdMixtaskMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + // 真删除 + pdmBdMixtaskMapper.deleteBatchIds(ids); + } + +} diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java index 7abd069..1366064 100644 --- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java +++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/wms/sch/task_manage/AutoCreateTask.java @@ -42,12 +42,8 @@ public class AutoCreateTask { subTypes.forEach(clz -> { // 调用AbstractAcsTask类的每个子类的schedule()方法 try { - Object obj = SpringContextHolder.getBean(clz); - Method m = obj.getClass().getMethod("schedule"); - m.invoke(obj); - } catch (InvocationTargetException e) { - e.printStackTrace(); - log.info("定时器执行失败:{}", e.getTargetException().getMessage()); + AbstractTask obj = SpringContextHolder.getBean(clz); + obj.schedule(); } catch (Exception e) { e.printStackTrace(); log.info("定时器执行失败:{}", e.getMessage()); diff --git a/lms/nladmin-ui/src/views/system/menu/index.vue b/lms/nladmin-ui/src/views/system/menu/index.vue index 3c30e46..184a3e4 100644 --- a/lms/nladmin-ui/src/views/system/menu/index.vue +++ b/lms/nladmin-ui/src/views/system/menu/index.vue @@ -152,7 +152,7 @@ @@ -241,7 +241,7 @@ export default { name: 'Menu', components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation, DateRangePicker }, cruds() { - return CRUD({ title: '菜单', idField: 'menu_id', crudMethod: { ...crudMenu }}) + return CRUD({ title: '菜单', idField: 'menu_id', url: 'api/sysMenu', crudMethod: { ...crudMenu }}) }, mixins: [presenter(), header(), form(defaultForm), crud()], dicts: ['system_type'], diff --git a/lms/nladmin-ui/src/views/wms/pdm/bigtask/index.vue b/lms/nladmin-ui/src/views/wms/pdm/bigtask/index.vue new file mode 100644 index 0000000..ba8bbee --- /dev/null +++ b/lms/nladmin-ui/src/views/wms/pdm/bigtask/index.vue @@ -0,0 +1,198 @@ + + + + + diff --git a/lms/nladmin-ui/src/views/wms/pdm/bigtask/pdmBdMixtask.js b/lms/nladmin-ui/src/views/wms/pdm/bigtask/pdmBdMixtask.js new file mode 100644 index 0000000..8a595af --- /dev/null +++ b/lms/nladmin-ui/src/views/wms/pdm/bigtask/pdmBdMixtask.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +export function add(data) { + return request({ + url: 'api/pdmBdMixtask', + method: 'post', + data + }) +} + +export function del(ids) { + return request({ + url: 'api/pdmBdMixtask/', + method: 'delete', + data: ids + }) +} + +export function edit(data) { + return request({ + url: 'api/pdmBdMixtask', + method: 'put', + data + }) +} + +export default { add, edit, del } diff --git a/lms/nladmin-ui/src/views/wms/pdm/workerorder/index.vue b/lms/nladmin-ui/src/views/wms/pdm/workerorder/index.vue index 666b803..bf99455 100644 --- a/lms/nladmin-ui/src/views/wms/pdm/workerorder/index.vue +++ b/lms/nladmin-ui/src/views/wms/pdm/workerorder/index.vue @@ -134,7 +134,7 @@ - + + + + @@ -228,27 +235,27 @@ - - - - - - - {{ item.custer_NO }} - {{ item.custer_NAME }} - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -483,7 +503,7 @@ import pagination from '@crud/Pagination' import crudMdBaseWorkShop from '@/views/wms/basedata/workshop/mdBaseWorkshop' import MaterialDialog from '@/views/wms/sch/group/MaterialDialog.vue' import item from '@/layout/components/Sidebar/Item.vue' -import ProductionOrder from '@/views/wms/pdm/workerorder/ProductionOrder.vue' +// import ProductionOrder from '@/views/wms/pdm/workerorder/ProductionOrder.vue' const defaultForm = { workorder_id: null, @@ -528,7 +548,7 @@ const defaultForm = { export default { name: 'PdmBdWorkorder', dicts: ['vehicle_type', 'pdm_workorder_status'], - components: { ProductionOrder, MaterialDialog, pagination, crudOperation, rrOperation, udOperation }, + components: { MaterialDialog, pagination, crudOperation, rrOperation, udOperation }, mixins: [presenter(), header(), form(defaultForm), crud()], cruds() { return CRUD({ @@ -591,7 +611,7 @@ export default { created() { this.getWorkShopList() this.getRegionList() - this.getCuster() + // this.getCuster() }, methods: { item() {