rev:变动库存支持单据跟任务

This commit is contained in:
zhangzq
2024-07-03 15:03:53 +08:00
parent 0a006bb546
commit d6bd4a360b
45 changed files with 307 additions and 213 deletions

View File

@@ -74,6 +74,7 @@ public class SpelUtil {
// String value = expression.getValue(context, String.class);
// System.out.println(value);
}
//如果表达式为null,空则返回''
public static Map<String,String> parse(JSONObject sourceData,Map<String,String> fieldSkip){
StandardEvaluationContext context = new StandardEvaluationContext();
context.setVariable("M",sourceData);

View File

@@ -78,7 +78,7 @@ public class StIvtBsrealstorattrController {
@PutMapping("/changeActive")
public ResponseEntity<Object> changeActive(@Validated @RequestBody StIvtBsrealstorattr dao) {
iStIvtBsrealstorattrService.changeActive(dao);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/batchSaveAttr")
@@ -117,7 +117,7 @@ public class StIvtBsrealstorattrController {
}
}
iStIvtStructattrService.saveBatch(list);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -51,7 +51,7 @@ public class BmClassStandardController {
@PutMapping
public ResponseEntity<Object> update(@Validated @RequestBody JSONObject form) {
classStandardService.updateForm(form);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@DeleteMapping

View File

@@ -56,7 +56,7 @@ public class BmCustomerController {
@Log("修改客户基础表")
public ResponseEntity<Object> update(@Validated @RequestBody JSONObject dto) {
customerService.update(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除客户基础表")

View File

@@ -62,7 +62,7 @@ public class StIvtSectattrController {
@PutMapping("/changeActive")
public ResponseEntity<Object> changeActive(@Validated @RequestBody StIvtSectattr dao) {
iStIvtSectattrService.changeActive(dao);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getSect")

View File

@@ -51,7 +51,7 @@ public class BmVehicleInfoController {
@Log("修改载具")
public ResponseEntity<Object> update(@Validated @RequestBody JSONObject dto) {
vehicleInfoService.update(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除载具")
@@ -65,7 +65,7 @@ public class BmVehicleInfoController {
@Log("修改点位启用状态")
public ResponseEntity<Object> changeActive(@RequestBody JSONObject json) {
vehicleInfoService.changeActive(json);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getVehicle/{code}")

View File

@@ -76,7 +76,7 @@ public class StStrategyConfigController {
@Log("修改启用状态")
public ResponseEntity<Object> changeActive(@Validated @RequestBody StStrategyConfig dao) {
iStStrategyConfigService.changeActive(dao);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -68,7 +68,7 @@ public class StartDecisionChainer extends DecisionerChain<List> {
}
boolean in_storage = StatusEnum.STRATEGY_TYPE.code("入库").equals(strategy_type);
if (in_storage){
return MapOf.of("struct_code",processResult.get(0));
return MapOf.of("form_data",MapOf.of("end_struct_code",processResult.get(0)));
}else {
return MapOf.of("vehicle_code",processResult.stream().collect(Collectors.joining(",")));
}

View File

@@ -53,7 +53,7 @@ public class SchBasePointController {
entity.setUpdate_name(SecurityUtils.getCurrentNickName());
entity.setUpdate_time(DateUtil.now());
pointService.updateById(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}

View File

@@ -51,7 +51,7 @@ public class SchBaseRegionController {
entity.setUpdate_name(SecurityUtils.getCurrentNickName());
entity.setUpdate_time(DateUtil.now());
regionService.updateById(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}

View File

@@ -4,6 +4,8 @@ import lombok.Builder;
import lombok.Data;
import org.nl.common.publish.event.PublishEvent;
import java.math.BigDecimal;
/*
* @author ZZQ
* @Date 2024/5/23 13:15
@@ -12,16 +14,16 @@ import org.nl.common.publish.event.PublishEvent;
@Builder
public class StructEvent extends PublishEvent {
/**
* 任务类型
* 变动任务类型
*/
private String task_type;
/**
* 载具编码
*/
private String vehicle_code;
//变动起点
private String point_code1;
//变动终点
private String point_code2;
//变动货位
private String struct_code;
//变动数量
private BigDecimal change_qty;
}

View File

@@ -95,20 +95,11 @@ public class ConveyorOutStorageTask extends AbstractTask {
@Override
public void updateStatus(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
}
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
}
@Override

View File

@@ -11,6 +11,7 @@ import org.nl.common.enums.StatusEnum;
import org.nl.common.publish.BussEventMulticaster;
import org.nl.common.utils.MapOf;
import org.nl.wms.dispatch_manage.task.handler.AbstractTask;
import org.nl.wms.dispatch_manage.task.service.ISchBaseTaskService;
import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionDto;
import org.nl.wms.flow_manage.flow.service.deployment.IActReProcdefService;
@@ -25,6 +26,7 @@ import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.md_manage.vehicleMater.service.dto.MdPbVehicleMaterVo;
import org.nl.wms.pm_manage.form_data.service.dao.PmFormData;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -45,12 +47,16 @@ import java.util.List;
@Service("groupInStorage")
public class GroupDickInStorageTask extends AbstractTask {
@Autowired
private ISchBaseTaskService iSchBaseTaskService;
@Autowired
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
@Autowired
private IMdGruopDickService iMdGruopDickService;
@Autowired
private IActRuExecutionService iActRuExecutionService;
@Autowired
private IStIvtStructattrService iStIvtStructattrService;
@Override
public JSONObject createTask(JSONObject data) {
@@ -103,6 +109,10 @@ public class GroupDickInStorageTask extends AbstractTask {
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = iSchBaseTaskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
//跟新库存
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code1(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.TRUE);
}

View File

@@ -5,28 +5,25 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.domain.exception.BadRequestException;
import org.nl.common.enums.StatusEnum;
import org.nl.common.publish.BussEventMulticaster;
import org.nl.common.utils.CodeUtil;
import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.dispatch_manage.task.handler.AbstractTask;
import org.nl.wms.dispatch_manage.task.handler.StructEvent;
import org.nl.wms.dispatch_manage.task.service.ISchBaseTaskService;
import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.excess.impl.process.classprocess.ClassProcess;
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/*
@@ -38,21 +35,23 @@ import java.util.stream.Collectors;
public class InStorageTask extends AbstractTask {
@Autowired
ISchBaseTaskService taskService;
private ISchBaseTaskService iSchBaseTaskService;
@Autowired
IMdPbVehicleMaterService iMdPbVehicleMaterService;
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
@Autowired
private IStIvtStructattrService iStIvtStructattrService;
@Override
public JSONObject createTask(JSONObject from) {
String vehicle_code = from.getString("vehicle_code");
String struct_code = from.getString("struct_code");
String struct_code = from.getJSONObject("form_data").getString("end_struct_code");
String start_point = from.getString("start_point");
String task_type = from.getString("task_type");
if (StringUtils.isEmpty(vehicle_code) ||StringUtils.isEmpty(start_point)||StringUtils.isEmpty(struct_code)){
throw new BadRequestException("创建任务失败:方法请求参数不能为空");
}
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>().eq("vehicle_code", vehicle_code)
List<SchBaseTask> list = iSchBaseTaskService.list(new QueryWrapper<SchBaseTask>().eq("vehicle_code", vehicle_code)
.ne("status", StatusEnum.FORM_STATUS.code("完成")));
if (!CollectionUtils.isEmpty(list)){
throw new BadRequestException("当前载具存在任务:"+list.stream().map(SchBaseTask::getTask_code).collect(Collectors.joining(",")));
@@ -70,7 +69,7 @@ public class InStorageTask extends AbstractTask {
task.setVehicle_code(vehicle_code);
task.setPoint_code1(start_point);
task.setPoint_code2(struct_code);
taskService.create(task);
iSchBaseTaskService.create(task);
iMdPbVehicleMaterService.update(new LambdaUpdateWrapper<MdPbVehicleMater>()
.set(MdPbVehicleMater::getTask_code,task.getTask_code())
.eq(MdPbVehicleMater::getVehicle_code,task.getVehicle_code()));
@@ -82,14 +81,10 @@ public class InStorageTask extends AbstractTask {
@Transactional
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
SchBaseTask schBaseTask = iSchBaseTaskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
//跟新库存
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code2(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.TRUE);
}
@Override

View File

@@ -102,25 +102,13 @@ public class OutStorageTask extends AbstractTask {
@Transactional
public void updateStatus(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
}
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code1(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.FALSE);
}
@Override

View File

@@ -23,6 +23,7 @@ import org.nl.wms.md_manage.group_dick.service.dao.MdGruopDick;
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.md_manage.vehicleMater.service.dto.MdPbVehicleMaterVo;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
@@ -43,6 +44,8 @@ import java.util.List;
@Service("palletInStorageTask")
public class PalletInStorageTask extends AbstractTask {
@Autowired
private IStIvtStructattrService iStIvtStructattrService;
@Autowired
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
@Autowired
@@ -79,11 +82,15 @@ public class PalletInStorageTask extends AbstractTask {
@Override
public void updateStatus(JSONObject data) {
this.updateTask(data);
}
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = iSchBaseTaskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
//跟新库存
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code2(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.TRUE);
}

View File

@@ -17,7 +17,6 @@ import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.nl.wms.system_manage.service.param.ISysParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -36,7 +35,9 @@ import java.util.stream.Collectors;
public class PickStorageTask extends AbstractTask {
@Autowired
private ISchBaseTaskService taskService;
private ISchBaseTaskService iSchBaseTaskService;
@Autowired
private IStIvtStructattrService iStIvtStructattrService;
@Autowired
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
@@ -51,7 +52,7 @@ public class PickStorageTask extends AbstractTask {
throw new BadRequestException("创建任务失败:方法请求参数不能为空");
}
List<SchBaseTask> list = taskService.list(new QueryWrapper<SchBaseTask>()
List<SchBaseTask> list = iSchBaseTaskService.list(new QueryWrapper<SchBaseTask>()
.eq("task_type", from.getString("task_type"))
.ne("status", StatusEnum.FORM_STATUS.code("完成")));
if (!CollectionUtils.isEmpty(list)){
@@ -69,7 +70,7 @@ public class PickStorageTask extends AbstractTask {
task.setVehicle_code(vehicle_code);
task.setPoint_code1(struct_code);
task.setPoint_code2(target_point);
taskService.save(task);
iSchBaseTaskService.save(task);
iMdPbVehicleMaterService.update(new LambdaUpdateWrapper<MdPbVehicleMater>()
.set(MdPbVehicleMater::getTask_code,task.getTask_code())
.eq(MdPbVehicleMater::getVehicle_code,task.getVehicle_code()));
@@ -83,11 +84,15 @@ public class PickStorageTask extends AbstractTask {
@Override
public void updateStatus(JSONObject data) {
this.updateTask(data);
}
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = iSchBaseTaskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
//跟新库存
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code2(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.TRUE);
}

View File

@@ -97,25 +97,15 @@ public class moveStorageTask extends AbstractTask {
@Transactional
public void updateStatus(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
}
@Override
public void finish(JSONObject data) {
this.updateTask(data);
SchBaseTask schBaseTask = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code1(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.FALSE);
iStIvtStructattrService.changeStruct(schBaseTask.getPoint_code2(),schBaseTask.getVehicle_code(),schBaseTask.getTask_type(), null,Boolean.TRUE);
}
@Override

View File

@@ -96,8 +96,8 @@ public class SubProcessActivityBehavior extends FlowNodeActivityBehavior<JSONObj
subList.stream().map((Function<Object, CompletableFuture>) o -> CompletableFuture.runAsync(() -> {
ExecutionEntity subEntity = new ExecutionEntity();
subEntity.setParent_id(entity.getProc_inst_id());
subEntity.setForm_id(entity.getForm_id());
subEntity.setForm_type(entity.getForm_type());
subEntity.setForm_id(((JSONObject) o).getString("form_id"));
subEntity.setForm_type(((JSONObject) o).getString("form_type"));
subEntity.setDeploymentId(entity.getDeploymentId());
JSONObject subAuxParam = new JSONObject();
subAuxParam.putAll(entity.getAuxParam());

View File

@@ -50,11 +50,11 @@ public class ExecutionEntity<T> implements Cloneable{
*/
protected String deploymentId;
/**
* 单类型
* 单类型
*/
protected String form_type;
/**
* 单id
* 单id
*/
protected String form_id;

View File

@@ -33,7 +33,9 @@ public class ClassHandler extends TypeHandler<JSONObject,ExecutionEntity<JSONOb
if (process==null){
throw new BadRequestException("当前serverTask配置的类信息不存在");
}
String form_type = flowNode.getForm_type();
JSONObject auxParam = new JSONObject();
auxParam.put("form_type",form_type);
auxParam.putAll(flowNode.getAuxParam());
if (!CollectionUtils.isEmpty(entity.getAuxParam())){
auxParam.putAll(entity.getAuxParam());
@@ -45,14 +47,14 @@ public class ClassHandler extends TypeHandler<JSONObject,ExecutionEntity<JSONOb
//后续:涉及框架的参数提到框架中处理
String source_form_type = dto.getForm_type();
String source_form_id = dto.getForm_id();
if (dto.getForm_type().equals(flowNode.getForm_type())){
if (dto.getForm_type().equals(form_type)){
source_form_type = dto.getSource_form_type();
source_form_id = dto.getSource_form_id();
}
result.put("source_form_id",source_form_id);
result.put("source_form_type",source_form_type);
result.put("form_id",form.getString("id"));
result.put("form_type",flowNode.getForm_type());
result.put("form_type", form_type);
return result;
}

View File

@@ -1,60 +1,93 @@
package org.nl.wms.flow_manage.flow.service.classprocessimpl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.SneakyThrows;
import org.apache.commons.lang3.ClassUtils;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.domain.exception.BadRequestException;
import org.nl.common.enums.StatusEnum;
import org.nl.common.publish.BussEventMulticaster;
import org.nl.common.utils.SecurityUtils;
import org.nl.common.utils.ListOf;
import org.nl.common.utils.MapOf;
import org.nl.common.utils.SpelUtil;
import org.nl.common.utils.SpringContextHolder;
import org.nl.wms.dispatch_manage.task.handler.AbstractTask;
import org.nl.wms.dispatch_manage.task.handler.StructEvent;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.excess.impl.process.classprocess.ClassProcess;
import org.nl.wms.dispatch_manage.task.service.ISchBaseTaskService;
import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.nl.wms.stor_manage.struct.service.dao.StIvtStructattr;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/*
* @author ZZQ
* @Date 2024/5/6 14:34
* 有任务的根据任务变动;没任务的直接变动库存
* 单据统一
* start_struct_code起始仓位end_struct_code目标仓位
* 如果有change_qty库存变动必须有变动数量则指定change_qty
* 如果没change_qty则取载具当前qtystart:为负end为正
*/
@Service
public class StorageChangesProcessHandler implements ClassProcess {
private static List<String> Base_Fields = ListOf.of("start_struct_code","end_struct_code","change_qty");
@Autowired
private ISchBaseTaskService schBaseTaskService;
private IStIvtStructattrService iStIvtStructattrService;
@Override
@SneakyThrows
public JSONObject process(JSONObject from, JSONObject param) {
//暂时出入入库的问题:库存变动中任务变动由任务变动接口处理
from.put("status",param.getString("status"));
from.put("update_time",DateUtil.now());
from.put("update_name",SecurityUtils.getCurrentNickName());
//基于任务变动
String vehicle_code = from.getString("vehicle_code");
String form_type = param.getString("form_type");
if (StringUtils.isEmpty(vehicle_code)){
throw new BadRequestException("库存变动失败:请求参数载具编码不能为空");
}
SchBaseTask schBaseTask = from.toJavaObject(SchBaseTask.class);
schBaseTaskService.updateById(schBaseTask);
StatusEnum.FORM_STATUS.code("生成");
StatusEnum.FORM_STATUS.code("执行中");
StatusEnum.FORM_STATUS.code("完成");
StatusEnum.FORM_STATUS.code("取消");
//TODO:后续在流程节点中配置监听时间触发
BussEventMulticaster.Publish(StructEvent.builder()
.task_type(schBaseTask.getTask_type())
.vehicle_code(schBaseTask.getVehicle_code())
.point_code1(schBaseTask.getPoint_code1())
.point_code2(schBaseTask.getPoint_code2())
.build());
if (form_type.equals("sch_base_task")){
String handleClass = from.getString("handle_class");
AbstractTask bean = (AbstractTask)SpringContextHolder.getBean(Class.forName(handleClass));
bean.finish(from);
}else {
if (StringUtils.isEmpty(param.getString("task_type"))){
throw new BadRequestException("库存变动失败单据变动库存时需要配置task_type");
}
//基于单据变动
Map<String, String> spelMap = new HashMap<>();
Map<String, String> valueMap = new HashMap<>();
for (String base_field : Base_Fields) {
String skip = param.getString("base_field");
if (skip.contains("#M")){
spelMap.put(base_field,skip);
}else {
valueMap.put(base_field,skip);
}
}
if (!CollectionUtils.isEmpty(spelMap)){
Map<String, String> parse = SpelUtil.parse(from, spelMap);
valueMap.putAll(parse);
}
String start_struct_code = valueMap.get("start_struct_code");
String end_struct_code = valueMap.get("end_struct_code");
String change_qty = StringUtils.isEmpty(valueMap.get("change_qty"))?null:valueMap.get("change_qty");
if (StringUtils.isNotEmpty(start_struct_code)){
iStIvtStructattrService.changeStruct(start_struct_code,vehicle_code,param.getString("task_type"), new BigDecimal(change_qty),Boolean.FALSE);
}
if (StringUtils.isNotEmpty(end_struct_code)){
iStIvtStructattrService.changeStruct(end_struct_code,vehicle_code,param.getString("task_type"), new BigDecimal(change_qty),Boolean.TRUE);
}
}
return from;
}
}

View File

@@ -2,11 +2,14 @@ package org.nl.wms.stor_manage.checkStorage.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import org.nl.common.TableDataInfo;
import org.nl.common.anno.Log;
import org.nl.common.domain.entity.PageQuery;
import org.nl.common.enums.StatusEnum;
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
import org.nl.wms.pm_manage.form_data.service.IPmFormDataService;
import org.nl.wms.pm_manage.form_data.service.dao.PmFormData;
import org.nl.wms.pm_manage.form_data.service.dto.FormDataQuery;
@@ -35,6 +38,8 @@ public class CheckController {
private IPmFormDataService iPmFormDataService;
@Autowired
private CheckStorageService checkStorageService;
@Autowired
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
@GetMapping()
@@ -68,17 +73,6 @@ public class CheckController {
}
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/saveCheckTask")
@Log("盘点确认")
public ResponseEntity<Object> saveCheckTask(@RequestBody JSONObject param) {
//TODO:明细校验
param.getJSONObject("form_data");
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("已分配"))
.set("form_data",param.getJSONObject("form_data").toJSONString())
.eq("id",param.getString("id")));
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/taskOpen")
@Log("盘点单下发")
public ResponseEntity<Object> taskOpen(@RequestBody JSONObject param) {
@@ -86,6 +80,30 @@ public class CheckController {
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/saveCheckTask")
@Log("盘点确认")
public ResponseEntity<Object> saveCheckTask(@RequestBody JSONObject param) {
//TODO:明细校验
PmFormData pmFormData = param.toJavaObject(PmFormData.class);
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("已分配"))
.set("form_data",param.getJSONObject("form_data").toJSONString())
.eq("id",param.getString("id")));
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/checkFinish")
@Log("盘点完成")
public ResponseEntity<Object> checkFinish(@RequestBody JSONObject param) {
//TODO:明细校验
PmFormData pmFormData = param.toJavaObject(PmFormData.class);
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("已分配"))
.set("form_data",param.getJSONObject("form_data").toJSONString())
.eq("id",param.getString("id")));
return new ResponseEntity<>(HttpStatus.OK);
}
@DeleteMapping()
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
checkStorageService.delete(ids);

View File

@@ -1,14 +1,11 @@
package org.nl.wms.stor_manage.monitor.listener;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.enums.StatusEnum;
import org.nl.common.publish.AbstraceListener;
import org.nl.wms.dispatch_manage.task.handler.StructEvent;
import org.nl.wms.stor_manage.io.service.iostor_dtl.IStIvtIostorinvdtlService;
import org.nl.wms.stor_manage.io.service.iostor_dtl.dao.StIvtIostorinvdtl;
import org.nl.wms.stor_manage.struct.service.IStIvtStructattrService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -30,17 +27,7 @@ public class StructEventListener extends AbstraceListener<StructEvent> {
protected String doEvent(StructEvent event) {
//根据不同的task_type获取对应出入库类型
String task_type = event.getTask_type();
if (StatusEnum.IOBILL_TYPE_IN.check(task_type)){
structattrService.changeStruct(event.getPoint_code2(),event.getVehicle_code(),task_type,true);
}
if (StatusEnum.IOBILL_TYPE_OUT.check(task_type)){
structattrService.changeStruct(event.getPoint_code1(),null,task_type,false);
}
if (StatusEnum.IOBILL_TYPE_MOVE.check(task_type)){
structattrService.changeStruct(event.getPoint_code1(),null,task_type,false);
structattrService.changeStruct(event.getPoint_code2(),event.getVehicle_code(),task_type,true);
}
// structattrService.changeStruct(event.getStruct_code(),event.getVehicle_code(),task_type, event.getChange_qty());
return null;
}
}

View File

@@ -13,6 +13,7 @@ import org.nl.common.publish.BussEventMulticaster;
import org.nl.common.utils.CodeUtil;
import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.common.utils.SpringContextHolder;
import org.nl.wms.base_manage.vehicle.service.IBmVehicleInfoService;
import org.nl.wms.base_manage.vehicle.service.dao.BmVehicleInfo;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionDto;
@@ -27,6 +28,7 @@ import org.nl.wms.pm_manage.form_data.service.dao.PmFormData;
import org.nl.wms.stor_manage.io.service.iostor.dao.StIvtIostorinv;
import org.nl.wms.stor_manage.io.service.iostor_dtl.dto.StIvtIostorinvdtlVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
@@ -59,8 +61,6 @@ public class PickingService {
*/
@Transactional
public void savePickTask(JSONArray params){
String now = DateUtil.now();
String user = SecurityUtils.getCurrentNickName();
PmFormData dtl = iFormDataService.getById((String)((Map) params.get(0)).get("parent_id"));
MdPbVehicleMater one = iMdPbVehicleMaterService.getOne(new QueryWrapper<MdPbVehicleMater>()
.eq("vehicle_code", dtl.getVehicle_code()).eq("material_id", dtl.getMaterial_id()));
@@ -77,6 +77,8 @@ public class PickingService {
if (mCode>0){
throw new BadRequestException("当前载具以存在载具物料信息");
}
String now = DateUtil.now();
String user = SecurityUtils.getCurrentNickName();
for (Object param : params) {
JSONObject task = new JSONObject((Map) param);
PmFormData data = task.toJavaObject(PmFormData.class);
@@ -91,46 +93,23 @@ public class PickingService {
data.setCreate_name(user);
data.setId(IdUtil.getStringId());
iFormDataService.save(data);
String vehicle_code = data.getVehicle_code();
if (dtl.getVehicle_code().equals(vehicle_code)){
iMdPbVehicleMaterService.update(new UpdateWrapper<MdPbVehicleMater>()
.set("frozen_qty",0).set("update_time",now)
.set("update_name", user)
.set("qty",data.getQty())
.eq("vehicle_code",vehicle_code));
}else {
MdGruopDick dick = new MdGruopDick();
dick.setVehicle_code(vehicle_code);
dick.setSource_form_type("Picking_Task");
dick.setSource_form_id(data.getId());
dick.setCreate_name(user);
dick.setCreate_time(now);
dick.setStatus(StatusEnum.FORM_STATUS.code("完成"));
dick.setCode(CodeUtil.getNewCode("md_group_dick"));
dick.setId(IdUtil.getStringId());
MdPbVehicleMater mater = new MdPbVehicleMater();
mater.setMaterial_id(one.getMaterial_id());
mater.setPcsn(one.getPcsn());
mater.setQty(data.getQty());
mater.setUnit_id(data.getUnit_id());
mater.setVehicle_code(vehicle_code);
//设置目标仓库
mater.setStor_code(data.getForm_data().getString("stor_code"));
mater.setHas_child(false);
mater.setId(IdUtil.getStringId());
mater.setGroup_id(dick.getId());
mater.setCreate_name(user);
mater.setCreate_time(now);
mater.setSource_form_type("Picking_Task");
mater.setSource_form_id(data.getId());
mater.setForm_data(one.getForm_data());
mater.setStor_code(one.getStor_code());
iMdPbVehicleMaterService.save(mater);
iMdGruopDickService.save(dick);
}
单据状态变动:{
iFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("已分配")).eq("id", dtl.getId()));
int count = iFormDataService.count(new QueryWrapper<PmFormData>()
.eq("parent_id", dtl.getParent_id())
.eq("status", StatusEnum.FORM_STATUS.code("生成")));
if (count == 0) {
iFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("已分配"))
.eq("id", dtl.getParent_id()));
} else {
iFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status", StatusEnum.FORM_STATUS.code("生成"))
.eq("id", dtl.getParent_id()));
}
}
iFormDataService.update(new UpdateWrapper<PmFormData>()
.set("status",StatusEnum.FORM_STATUS.code("已分配")));
}
@@ -139,6 +118,8 @@ public class PickingService {
if (StringUtils.isEmpty(mst.getProc_inst_id())){
throw new BadRequestException("当前单据不存在流程实例id");
}
PickingService pickingService = SpringContextHolder.getBean(this.getClass());
pickingService.disGroup(mst);
JSONObject mstJ = (JSONObject) JSON.toJSON(mst);
ExecutionDto dto = new ExecutionDto();
dto.setForm_id(mst.getId());
@@ -158,6 +139,60 @@ public class PickingService {
BussEventMulticaster.Publish(continueEvent);
}
@Transactional
public void disGroup(PmFormData mst) {
List<PmFormData> dtls = iFormDataService.getByParentId(mst.getId());
for (PmFormData dtl : dtls) {
//载具物料信息
MdPbVehicleMater one = iMdPbVehicleMaterService.getOne(new QueryWrapper<MdPbVehicleMater>()
.eq("vehicle_code", dtl.getVehicle_code()).eq("material_id", dtl.getMaterial_id()));
List<PmFormData> dis = iFormDataService.getByParentId(dtl.getId());
for (PmFormData data : dis) {
String vehicle_code = data.getVehicle_code();
if (dtl.getVehicle_code().equals(vehicle_code)){
iMdPbVehicleMaterService.update(new UpdateWrapper<MdPbVehicleMater>()
.set("frozen_qty",0)
.set("update_time",DateUtil.now())
.set("update_name", SecurityUtils.getCurrentNickName())
.set("qty",data.getQty())
.eq("vehicle_code",vehicle_code));
}else {
组盘:{
MdGruopDick dick = new MdGruopDick();
dick.setVehicle_code(vehicle_code);
dick.setSource_form_type("Picking_Task");
dick.setSource_form_id(data.getId());
dick.setCreate_name(SecurityUtils.getCurrentNickName());
dick.setCreate_time(DateUtil.now());
dick.setStatus(StatusEnum.FORM_STATUS.code("完成"));
dick.setCode(CodeUtil.getNewCode("md_group_dick"));
dick.setId(IdUtil.getStringId());
MdPbVehicleMater mater = new MdPbVehicleMater();
mater.setMaterial_id(one.getMaterial_id());
mater.setPcsn(one.getPcsn());
mater.setQty(data.getQty());
mater.setUnit_id(data.getUnit_id());
mater.setVehicle_code(vehicle_code);
//设置目标仓库
mater.setStor_code(data.getForm_data().getString("stor_code"));
mater.setHas_child(false);
mater.setId(IdUtil.getStringId());
mater.setGroup_id(dick.getId());
mater.setCreate_name(SecurityUtils.getCurrentNickName());
mater.setCreate_time(DateUtil.now());
mater.setSource_form_type("Picking_Task");
mater.setSource_form_id(data.getId());
mater.setForm_data(one.getForm_data());
mater.setStor_code(one.getStor_code());
iMdPbVehicleMaterService.save(mater);
iMdGruopDickService.save(dick);
}
}
}
}
}
private List<ExecutionDto> packageT(JSONObject current,String itemField){
String id = current.getString(itemField);
List<PmFormData> items = iFormDataService.getByParentId(id);

View File

@@ -60,6 +60,10 @@ public class StIvtStructivtflow implements Serializable {
* 总库存
*/
private BigDecimal qty;
/**
* 变动库存
*/
private BigDecimal change_qty;
/**
* 冻结库存

View File

@@ -2,6 +2,8 @@ package org.nl.wms.stor_manage.struct.controller;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.domain.entity.PageQuery;
import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
@@ -49,8 +51,12 @@ public class StIvtStructattrController {
@PutMapping
public ResponseEntity<Object> update(@Validated @RequestBody StIvtStructattr dto) {
String vehicle_code = dto.getVehicle_code();
if (StringUtils.isEmpty(vehicle_code)){
dto.setVehicle_code(null);
}
structattrService.updateById(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@DeleteMapping
@@ -62,7 +68,7 @@ public class StIvtStructattrController {
@PutMapping("/changeActive")
public ResponseEntity<Object> changeActive(@RequestBody StIvtStructattr dto) {
structattrService.changeActive(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getStructIvt")

View File

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.wms.stor_manage.struct.service.dto.StructattrQuery;
import org.nl.wms.stor_manage.struct.service.dto.StructattrVechielDto;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
@@ -27,7 +28,7 @@ public interface IStIvtStructattrService extends IService<StIvtStructattr> {
*/
List<Map<String, Object>> getByQuery(StructattrQuery query);
void changeStruct(String struct_code,String vehicle_code,String task_type,Boolean in_storage);
void changeStruct(String struct_code, String vehicle_code, String task_type, BigDecimal change_qty,Boolean growth);
void deleteAll(Long[] ids);
Object pageQuery(StructattrQuery query, PageQuery page);

View File

@@ -2,6 +2,7 @@ package org.nl.wms.stor_manage.struct.service.dao;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
@@ -160,6 +161,7 @@ public class StIvtStructattr implements Serializable {
/**
* 存储载具号
*/
@TableField(updateStrategy = FieldStrategy.IGNORED)
private String vehicle_code;
/**

View File

@@ -32,6 +32,7 @@ import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -64,25 +65,23 @@ public class StIvtStructattrServiceImpl extends ServiceImpl<StIvtStructattrMappe
System.out.println(in);
}
@Override
public void changeStruct(String struct_code, String vehicle_code, String task_type,Boolean in_storage) {
String now = DateUtil.now();
public void changeStruct(String struct_code, String vehicle_code, String task_type, BigDecimal change_qty,Boolean growth) {
this.update(new UpdateWrapper<StIvtStructattr>()
.set("vehicle_code",vehicle_code)
.set("update_time",now)
.set("lock_type", StatusEnum.LOCK.code("无锁"))
.eq("struct_code",struct_code));
//变动结存记录"如果没有载具物料信息则不考虑结存TODO:多级载具处理
.set("update_time",DateUtil.now())
.set("lock_type", StatusEnum.LOCK.code("无锁"))
.eq("struct_code",struct_code));
List<MdPbVehicleMater> vehicleMaters = vehicleMaterService.list(new QueryWrapper<MdPbVehicleMater>().eq("vehicle_code", vehicle_code));
List<StIvtStructivtflow> records = new ArrayList<>();
StIvtStructattr attr = this.getOne(new QueryWrapper<StIvtStructattr>().eq("struct_code", struct_code).select("stor_code"));
for (MdPbVehicleMater vehicleMater : vehicleMaters) {
StIvtStructivtflow record = new StIvtStructivtflow();
record.setId(IdUtil.getStringId());
record.setUpdate_time(now);
record.setUpdate_time(DateUtil.now());
record.setVehicle_code(vehicleMater.getVehicle_code());
record.setMaterial_id(vehicleMater.getMaterial_id());
record.setPcsn(vehicleMater.getPcsn());
record.setQty(vehicleMater.getQty());
record.setChange_qty(change_qty==null?vehicleMater.getQty():change_qty);
record.setTask_type(task_type);
record.setFrozen_qty(vehicleMater.getFrozen_qty());
record.setSource_form_type(vehicleMater.getSource_form_type());
@@ -91,7 +90,7 @@ public class StIvtStructattrServiceImpl extends ServiceImpl<StIvtStructattrMappe
record.setStruct_code(struct_code);
record.setStor_code(attr.getStor_code());
record.setVehicle_form_data(vehicleMater.getForm_data());
record.setGrowth(in_storage);
record.setGrowth(growth);
records.add(record);
}
if (!CollectionUtils.isEmpty(records)){

View File

@@ -65,7 +65,7 @@ public class SysCodeRuleController {
// //SaCheckPermission("genCode:edit")
public ResponseEntity<Object> update(@RequestBody SysCodeRule codeRule) {
codeRuleService.updateCodeRule(codeRule);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
//("导出任务数据")

View File

@@ -60,7 +60,7 @@ public class SysCodeRuleDetailController {
// //SaCheckPermission("genCode:edit")
public ResponseEntity<Object> update(@RequestBody SysCodeRuleDetail json){
codeDetailService.update(json);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -101,7 +101,7 @@ public class DeptController {
throw new BadRequestException("上级不能为自己");
}
deptService.updateDept(dept);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
//
@Log("删除部门")

View File

@@ -64,7 +64,7 @@ public class SysDictController {
@Log("修改字典")
public ResponseEntity<Object> updateDict(@Validated @RequestBody Dict dto){
dictService.updateDict(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除字典")

View File

@@ -108,7 +108,7 @@ public class SysMenuController {
//SaCheckPermission("menu:edit")
public ResponseEntity<Object> update( @RequestBody SysMenu form) {
iSysMenuService.update(form);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除菜单")

View File

@@ -59,7 +59,7 @@ class SysParamController {
////SaCheckPermission("param:edit")
public ResponseEntity<Object> update(@Validated @RequestBody Param param) {
paramService.update(param);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除系统参数")

View File

@@ -59,7 +59,7 @@ public class SysDataPermissionController {
////SaCheckPermission("@el.check('dataPermission:edit')")
public ResponseEntity<Object> update(@Validated @RequestBody SysDataPermission permission) {
dataPermissionService.update(permission);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除数据权限")

View File

@@ -68,7 +68,7 @@ public class SysQuartzJobController {
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> update(@Validated @RequestBody SysQuartzJob resources) {
quartzJobService.updateJob(resources);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("更改定时任务状态")
@@ -76,7 +76,7 @@ public class SysQuartzJobController {
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> update(@PathVariable String id) {
quartzJobService.updateIsPause(quartzJobService.getById(id));
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("执行定时任务")
@@ -84,7 +84,7 @@ public class SysQuartzJobController {
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> execution(@PathVariable String id) {
quartzJobService.execution(quartzJobService.getById(id));
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除定时任务")

View File

@@ -59,7 +59,7 @@ public class SysRoleController {
//SaCheckPermission("roles:edit")
public ResponseEntity<Object> update(@RequestBody JSONObject param) {
roleService.update(param);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除角色")
@@ -77,7 +77,7 @@ public class SysRoleController {
//SaCheckPermission("roles:edit")
public ResponseEntity<Object> updateMenu(@RequestBody JSONObject form) {
roleService.updateMenu(form);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -70,7 +70,7 @@ public class UserController {
@PutMapping
public ResponseEntity<Object> update( @RequestBody JSONObject resources) throws Exception {
userService.update(resources);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("修改用户:个人中心")
@@ -81,7 +81,7 @@ public class UserController {
throw new BadRequestException("不能修改他人资料");
}
userService.update(JSON.parseObject(JSON.toJSONString(resources)));
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除用户")

View File

@@ -51,7 +51,7 @@ public class ${className}Controller {
//@PreAuthorize("@el.check('${changeClassName}:edit')")
public ResponseEntity<Object> update(@Validated @RequestBody ${className}Dto dto){
${changeClassName}Service.update(dto);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
return new ResponseEntity<>(HttpStatus.OK);
}
@Log("删除${apiAlias}")

View File

@@ -205,6 +205,9 @@ export default {
})
formstruc.getHeader('st_ivt_checkdtl').then(res => {
this.dtlCols = res
res.forEach(a => {
this.dtlCols.form_data[a.value,'']
})
})
},
close() {

View File

@@ -47,5 +47,12 @@ export function taskopen(data) {
data
})
}
export function checkFinish(data) {
return request({
url: '/api/check/checkFinish',
method: 'post',
data
})
}
export default {add, edit, del, updateStatus, taskopen, saveCheckTask}
export default {add, edit, del, updateStatus, taskopen, saveCheckTask, checkFinish}

View File

@@ -39,6 +39,17 @@
</div>
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission">
<el-button
slot="right"
class="filter-item"
type="warning"
icon="el-icon-position"
size="mini"
:disabled="task_flag"
@click="taskOpen"
>
作业下发
</el-button>
<el-button
slot="right"
class="filter-item"
@@ -53,13 +64,13 @@
<el-button
slot="right"
class="filter-item"
type="success"
type="primary"
icon="el-icon-position"
size="mini"
:disabled="task_flag"
@click="taskOpen"
:disabled="finish_flag"
@click="checkFinish"
>
作业下发
盘点完成
</el-button>
</crudOperation>
@@ -197,6 +208,7 @@ export default {
currentRow: null,
uploadShow: false,
dis_flag: true,
finish_flag: true,
fromTypes: [],
permission: {},
rules: {},
@@ -253,11 +265,17 @@ export default {
}else {
this.task_flag = true
}
if (row.status == '13'){
this.finish_flag = false
}else {
this.finish_flag = false
}
this.dis_flag = false
this.currentRow = row
} else {
this.task_flag = true
this.dis_flag = true
this.finish_flag = true
this.currentRow = null
}
},

View File

@@ -15,7 +15,7 @@
</el-col>
<el-col :span="4">
<span>
<el-button icon="el-icon-check" size="mini" type="primary" @click="savePickMst">保存</el-button>
<el-button icon="el-icon-check" size="mini" type="primary" @click="savePickTask">保存</el-button>
<el-button icon="el-icon-close" size="mini" type="info" @click="closeDialog">关闭</el-button>
</span>
</el-col>
@@ -148,16 +148,6 @@
>
新增一行
</el-button>
<el-button
slot="left"
class="filter-item"
type="primary"
icon="el-icon-plus"
size="mini"
@click="savePickTask()"
>
保存
</el-button>
</span>
</div>
<el-card class="box-card" shadow="never" :body-style="{padding:'0'}">