add:移库,拣选
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
package org.nl.common.domain.constant;
|
||||
|
||||
import org.nl.common.utils.MapOf;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/*
|
||||
* @author ZZQ
|
||||
* @Date 2022/12/26 9:29 上午
|
||||
@@ -8,4 +12,5 @@ public class DictConstantPool {
|
||||
|
||||
public static final String DICT_SYS_CODE = "system_type";
|
||||
public static final String DICT_SYS_NAME = "所属系统";
|
||||
public static final Map<String,String> PRODUCT_OUT_POINT = MapOf.of("A1","1101","A2","2114","A3","3204");
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package org.nl.common.domain.exception.handler;
|
||||
|
||||
import cn.hutool.http.HttpStatus;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -30,10 +29,10 @@ import java.time.LocalDateTime;
|
||||
@Data
|
||||
class ApiError {
|
||||
|
||||
private String status = "400";
|
||||
private String code = "400";
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime timestamp;
|
||||
private String message;
|
||||
private String msg;
|
||||
|
||||
private ApiError() {
|
||||
timestamp = LocalDateTime.now();
|
||||
@@ -41,14 +40,14 @@ class ApiError {
|
||||
|
||||
public static ApiError error(String message){
|
||||
ApiError apiError = new ApiError();
|
||||
apiError.setMessage(message);
|
||||
apiError.setMsg(message);
|
||||
return apiError;
|
||||
}
|
||||
|
||||
public static ApiError error(Integer status, String message){
|
||||
ApiError apiError = new ApiError();
|
||||
apiError.setStatus(String.valueOf(status));
|
||||
apiError.setMessage(message);
|
||||
apiError.setCode(String.valueOf(status));
|
||||
apiError.setMsg(message);
|
||||
return apiError;
|
||||
}
|
||||
|
||||
|
||||
@@ -85,6 +85,6 @@ public class GlobalExceptionHandler {
|
||||
* 统一返回
|
||||
*/
|
||||
private ResponseEntity<ApiError> buildResponseEntity(ApiError apiError) {
|
||||
return new ResponseEntity<>(apiError, HttpStatus.valueOf(Integer.valueOf(apiError.getStatus())));
|
||||
return new ResponseEntity<>(apiError, HttpStatus.valueOf(Integer.valueOf(apiError.getCode())));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,13 +31,15 @@ public enum StatusEnum {
|
||||
/**
|
||||
* 出入库单据类型
|
||||
*/
|
||||
IOBILL_TYPE_IN(ForkMap.of("生产入库", "10","inStorageTask", "调拨入库", "11","inStorageTask", "退货入库", "12","inStorageTask","拣选回库", "13","inStorageTask","托盘入库", "30","inStorageTask")),
|
||||
IOBILL_TYPE_OUT(ForkMap.of("销售出库", "20","outStorageTask","生产出库", "21","outStorageTask", "调拨出库", "22","outStorageTask", "拣选出库", "23","conveyorOutStorageTask","托盘出库", "40","outStorageTask")),
|
||||
IOBILL_TYPE_IN(ForkMap.of("生产入库", "10","inStorageTask", "调拨入库", "11","inStorageTask", "退货入库", "12","inStorageTask","拣选回库", "13","inStorageTask","盘点入库", "14","inStorageTask","托盘入库", "30","inStorageTask")),
|
||||
IOBILL_TYPE_OUT(ForkMap.of("销售出库", "20","outStorageTask","生产出库", "21","outStorageTask", "调拨出库", "22","outStorageTask","拣选出库", "23","conveyorOutStorageTask","盘点出库", "24","outStorageTask", "托盘出库", "40","outStorageTask")),
|
||||
IOBILL_TYPE_MOVE(ForkMap.of("移库", "50","moveStorageTask")),
|
||||
profit_loss(ForkMap.of("盘亏", "0",null,"盘盈", "1",null,"实盘", "2",null)),
|
||||
|
||||
/**
|
||||
* 任务类型
|
||||
*/
|
||||
TASK_TYPE(ForkMap.pushAll(IOBILL_TYPE_IN.code,IOBILL_TYPE_OUT.code)),
|
||||
TASK_TYPE(ForkMap.pushAll(IOBILL_TYPE_IN.code,IOBILL_TYPE_OUT.code,IOBILL_TYPE_MOVE.code)),
|
||||
|
||||
ACS_TYPE(ForkMap.of("立库", "10",null
|
||||
,"海柔", "20",null
|
||||
@@ -47,7 +49,7 @@ public enum StatusEnum {
|
||||
/**
|
||||
* 点位锁类型
|
||||
*/
|
||||
LOCK(ForkMap.of("无","00",null,"入","10",null,"出","20",null)),
|
||||
LOCK(ForkMap.of("无锁","00",null,"入库锁","10",null,"入库盘点锁","16",null,"出库锁","20",null,"盘点出库锁","26",null,"移库锁","50",null)),
|
||||
STRATEGY_TYPE(ForkMap.of("入库", "1",null, "出库", "2", null,"出入库", "3",null)),
|
||||
;
|
||||
|
||||
|
||||
@@ -105,35 +105,10 @@ public class SpelUtil {
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
TypeReference<Class<JSONArray>> typeRef = new TypeReference<Class<JSONArray>>() {};
|
||||
ParameterizedType type = (ParameterizedType) typeRef.getType();
|
||||
Type type1 = type.getActualTypeArguments()[0];
|
||||
Class aClass = (Class) type1;
|
||||
String a="{\n" +
|
||||
"\t\"code\": \"REC10022\",\n" +
|
||||
"\t\"t\": {\n" +
|
||||
"\t\t\"form_data\": {\n" +
|
||||
"\t\t\t\"stor_code\": \"\",\n" +
|
||||
"\t\t\t\"struct_code\": \"\",\n" +
|
||||
"\t\t\t\"order\": \"\"\n" +
|
||||
"\t\t},\n" +
|
||||
"\t\t\"stor_code\": \"FStockId\",\n" +
|
||||
"\t\t\"pcsn\": \"werwe\",\n" +
|
||||
"\t\t\"material_id\": \"FMaterialId\",\n" +
|
||||
"\t\t\"biz_id\": \"1793594766324273152\",\n" +
|
||||
"\t\t\"order\": \"FMoBillNo\"\n" +
|
||||
"\t},\n" +
|
||||
"\t\"create_time\": \"2024-05-23 18:48:31\",\n" +
|
||||
"\t\"form_id\": \"\",\n" +
|
||||
"\t\"id\": \"1793594856053018624\",\n" +
|
||||
"\t\"form_type\": \"PRD_FeedMtrl\",\n" +
|
||||
"\t\"source_form_id\": \"1793594766324273152\",\n" +
|
||||
"\t\"source_form_type\": \"st_ivt_iostorinvdtl_in\",\n" +
|
||||
"\t\"status\": \"10\",\n" +
|
||||
"\t\"create_name\": \"管理员\"\n" +
|
||||
"}";
|
||||
Object o = JSONObject.parseObject(a, aClass);
|
||||
System.out.println(o.toString());
|
||||
String a= "{\"item\":[{\"t\":{\"stor_code\":\"FStockId\",\"create_time\":\"2024-06-19 11:13:06\",\"task_code\":\"28510\",\"material_spec\":\"45CCL1 1/8\",\"form_data\":{},\"group_id\":\"1803264719126138880\",\"qty\":120,\"proc_inst_id\":\"1803320414961799168\",\"is_lock\":false,\"pcsn\":\"11\",\"material_id\":\"FMaterialId\",\"id\":\"1803264718849314816\",\"has_child\":false,\"frozen_qty\":0,\"vehicle_code\":\"D00012\",\"source_form_id\":\"1803264490947612672\",\"unit_id\":\"16\",\"material_name\":\"A345度等径承插口弯头45CCL1 1/8USNA0131010\",\"source_form_type\":\"st_ivt_iostorinvdtl\",\"create_name\":\"管理员\",\"material_code\":\"24001097S\"},\"form_id\":\"1803264718849314816\",\"form_type\":\"md_pb_vehicleMater\",\"source_form_id\":\"1803264490947612672\",\"source_form_type\":\"st_ivt_iostorinvdtl\"}],\"t\":{\"code\":\"ZP20240619023\",\"stor_code\":\"FStockId\",\"create_time\":\"2024-06-19 11:13:06\",\"update_name\":\"管理员\",\"update_time\":\"2024-06-19 11:15:31\",\"form_data\":{},\"id\":\"1803264719126138880\",\"vehicle_code\":\"D00012\",\"source_form_id\":\"1803264490947612672\",\"struct_code\":\"L03-03-01\",\"source_form_type\":\"st_ivt_iostorinvdtl\",\"status\":\"10\",\"create_name\":\"管理员\"},\"form_id\":\"1803264719126138880\",\"form_type\":\"md_group_dick\",\"source_form_id\":\"1803264490947612672\",\"source_form_type\":\"st_ivt_iostorinvdtl\"}";
|
||||
JSONObject jsonObject = JSONObject.parseObject(a);
|
||||
String parse = SpelUtil.parse(jsonObject.getJSONObject("t"),"#M['stor_code'] == 'FStockId'", String.class);
|
||||
System.out.println(parse);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,13 +1,19 @@
|
||||
package org.nl.config.mybatis;
|
||||
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.annotation.DbType;
|
||||
import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
|
||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.InnerInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
|
||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||
import com.github.pagehelper.PageInterceptor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.ibatis.executor.Executor;
|
||||
import org.apache.ibatis.mapping.MappedStatement;
|
||||
import org.apache.ibatis.mapping.SqlCommandType;
|
||||
import org.apache.ibatis.plugin.Interceptor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
@@ -16,6 +22,8 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Map;
|
||||
|
||||
@EnableTransactionManagement
|
||||
@Configuration
|
||||
|
||||
@@ -45,7 +45,7 @@ public class BmClassStandardController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody JSONObject form) {
|
||||
classStandardService.create(form);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -49,7 +49,7 @@ public class BmCustomerController {
|
||||
@Log("新增客户基础表")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody JSONObject dto) {
|
||||
customerService.create(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -41,7 +41,7 @@ public class BmMaterialController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody MdMeMaterialbase dto) {
|
||||
materialService.save(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -109,16 +109,26 @@ public class MdMeMaterialbase implements Serializable {
|
||||
*/
|
||||
private String weight_unit_id;
|
||||
|
||||
/**
|
||||
* 物料毛重
|
||||
*/
|
||||
private BigDecimal gross_weight;
|
||||
|
||||
/**
|
||||
* 物料净重
|
||||
*/
|
||||
private BigDecimal net_weight;
|
||||
|
||||
|
||||
/**
|
||||
* 最近称重重量
|
||||
*/
|
||||
private BigDecimal nearby_weight;
|
||||
/**
|
||||
* 单重
|
||||
*/
|
||||
private BigDecimal single_weight;
|
||||
|
||||
/**
|
||||
* 物料毛重
|
||||
*/
|
||||
private BigDecimal gross_weight;
|
||||
/**
|
||||
* 体积单位
|
||||
*/
|
||||
|
||||
@@ -40,7 +40,7 @@ public class BmSupplierController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody BmSupplier dto) {
|
||||
supplierService.save(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ public class BmVehicleInfoController {
|
||||
@PostMapping
|
||||
@Log("新增载具")
|
||||
public ResponseEntity<Object> create(@RequestBody JSONObject map) {
|
||||
return new ResponseEntity<>(vehicleInfoService.create(map), HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(vehicleInfoService.create(map), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -53,7 +53,7 @@ public class EndDecisionChainer extends DecisionerChain<List> {
|
||||
StIvtStructattr structattr = (StIvtStructattr)transfers.get(0);
|
||||
iStIvtStructattrService.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("vehicle_code", startParam.getString("vehicle_code"))
|
||||
.set("lock_type", StatusEnum.LOCK.code("入"))
|
||||
.set("lock_type", StatusEnum.LOCK.code("入库锁"))
|
||||
.eq("struct_code", structattr.getStruct_code()));
|
||||
System.out.println("货位绑定成功"+structattr.getStruct_code());
|
||||
structs.add(structattr.getStruct_code());
|
||||
|
||||
@@ -51,7 +51,7 @@ public class StartDecisionChainer extends DecisionerChain<List> {
|
||||
if (in_storage){
|
||||
QueryWrapper<StIvtStructattr> query = new QueryWrapper<StIvtStructattr>()
|
||||
.eq("is_used", true)
|
||||
.eq("lock_type", StatusEnum.LOCK.code("无"))
|
||||
.eq("lock_type", StatusEnum.LOCK.code("无锁"))
|
||||
.eq("stor_code", startParam.getString("stor_code"));
|
||||
query.isNull("vehicle_code");
|
||||
list = iStIvtStructattrService.list(query);
|
||||
|
||||
@@ -45,7 +45,7 @@ public class SchBasePointController {
|
||||
entity.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
entity.setCreate_time(DateUtil.now());
|
||||
pointService.save(entity);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -43,7 +43,7 @@ public class SchBaseRegionController {
|
||||
entity.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
entity.setCreate_time(DateUtil.now());
|
||||
regionService.save(entity);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -52,13 +52,13 @@ public class SchBaseTaskController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody SchBaseTask entity){
|
||||
schBaseTaskService.create(entity);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
public ResponseEntity<Object> update(@Validated @RequestBody SchBaseTask entity){
|
||||
schBaseTaskService.update(entity);
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ public class SchBaseTaskController {
|
||||
@PutMapping("/operation")
|
||||
public ResponseEntity<Object> update(@RequestBody JSONObject map) {
|
||||
schBaseTaskService.operation(map);
|
||||
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
package org.nl.wms.dispatch_manage.task.handler;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
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.utils.SpringContextHolder;
|
||||
import org.nl.wms.dispatch_manage.task.service.ISchBaseTaskService;
|
||||
import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
|
||||
|
||||
|
||||
@@ -23,8 +27,18 @@ public abstract class AbstractTask {
|
||||
public abstract JSONObject createTask(JSONObject data);
|
||||
|
||||
|
||||
public void updateTask(JSONObject data){
|
||||
ISchBaseTaskService taskService = SpringContextHolder.getBean(ISchBaseTaskService.class);
|
||||
String status = data.getString("status");
|
||||
SchBaseTask task = taskService.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", data.getString("task_code")));
|
||||
if (!task.getStatus().equals(status) && !task.getStatus().equals(StatusEnum.FORM_STATUS.code("完成"))){
|
||||
taskService.update(new UpdateWrapper<SchBaseTask>().set("status",status).eq("task_code",data.getString("task_code")));
|
||||
}
|
||||
}
|
||||
|
||||
public abstract void updateStatus(JSONObject data);
|
||||
|
||||
public abstract void finish(JSONObject data);
|
||||
|
||||
public abstract void cancel(JSONObject data);
|
||||
|
||||
|
||||
@@ -11,22 +11,17 @@ import org.nl.common.publish.event.PublishEvent;
|
||||
@Data
|
||||
@Builder
|
||||
public class StructEvent extends PublishEvent {
|
||||
|
||||
/**
|
||||
* @see org.nl.common.enums.StatusEnum.TASK_TYPE_IN
|
||||
* 任务类型
|
||||
*/
|
||||
private String task_type;
|
||||
|
||||
/**
|
||||
* 载具编码
|
||||
*/
|
||||
private String vehicle_code;
|
||||
|
||||
private String status;
|
||||
|
||||
//变动起点
|
||||
private String point_code1;
|
||||
//变动终点
|
||||
private String point_code2;
|
||||
|
||||
private String source_form_id;
|
||||
|
||||
private String source_form_type;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -6,12 +6,15 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.nl.common.domain.constant.DictConstantPool;
|
||||
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.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
|
||||
@@ -49,9 +52,18 @@ public class ConveyorOutStorageTask extends AbstractTask {
|
||||
@Transactional
|
||||
public JSONObject createTask(JSONObject from) {
|
||||
String vehicle_code = from.getString("vehicle_code");
|
||||
String outbound = from.getJSONObject("form_data").getString("outbound");
|
||||
String outbound = from.getJSONObject("form_data").getString("outbound");//出库口根据单据车间来确认
|
||||
String start_point = from.getString("start_point");
|
||||
String task_type = from.getString("task_type");
|
||||
String product_area = from.getString("product_area");
|
||||
if (StringUtils.isNotEmpty(product_area)){
|
||||
String configTarget = DictConstantPool.PRODUCT_OUT_POINT.get(product_area);
|
||||
if (StringUtils.isEmpty(configTarget)){
|
||||
throw new BadRequestException("创建任务失败:出库点车间点位对应关系配置异常");
|
||||
}
|
||||
outbound = configTarget;
|
||||
}
|
||||
System.out.println("输送线出库:拣选分配点/车间"+outbound+"_"+product_area);
|
||||
if (StringUtils.isEmpty(vehicle_code) ||StringUtils.isEmpty(start_point)||StringUtils.isEmpty(outbound)){
|
||||
throw new BadRequestException("创建任务失败:方法请求参数不能为空");
|
||||
}
|
||||
@@ -82,6 +94,20 @@ 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")));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -101,6 +101,11 @@ public class GroupDickInStorageTask extends AbstractTask {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void finish(JSONObject data) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
|
||||
|
||||
@@ -5,13 +5,16 @@ 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;
|
||||
@@ -76,12 +79,26 @@ public class InStorageTask extends AbstractTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateStatus(JSONObject data) {
|
||||
@Transactional
|
||||
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());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateStatus(JSONObject data) {
|
||||
this.updateTask(data);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
|
||||
this.updateTask(data);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,12 +6,15 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.nl.common.domain.constant.DictConstantPool;
|
||||
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;
|
||||
@@ -52,7 +55,15 @@ public class OutStorageTask extends AbstractTask {
|
||||
public JSONObject createTask(JSONObject from) {
|
||||
String vehicle_code = from.getString("vehicle_code");
|
||||
String target_point = from.getString("target_point");
|
||||
|
||||
//通过全局变量获取目标位置
|
||||
String product_area = from.getString("product_area");
|
||||
if (StringUtils.isNotEmpty(product_area)){
|
||||
String configTarget = DictConstantPool.PRODUCT_OUT_POINT.get(product_area);
|
||||
if (StringUtils.isEmpty(configTarget)){
|
||||
throw new BadRequestException("创建任务失败:出库点车间点位对应关系配置异常");
|
||||
}
|
||||
target_point = configTarget;
|
||||
}
|
||||
if (StringUtils.isEmpty(vehicle_code) ||StringUtils.isEmpty(target_point)){
|
||||
throw new BadRequestException("创建任务失败:方法请求参数不能为空");
|
||||
}
|
||||
@@ -88,12 +99,32 @@ public class OutStorageTask extends AbstractTask {
|
||||
}
|
||||
|
||||
@Override
|
||||
@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());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
|
||||
this.updateTask(data);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,9 @@ 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.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.service.execution.IActRuExecutionService;
|
||||
import org.nl.wms.flow_manage.flow.service.execution.dao.ActRuExecution;
|
||||
import org.nl.wms.flow_manage.monitor.event.FlowContinueEvent;
|
||||
@@ -44,6 +47,8 @@ public class PalletInStorageTask extends AbstractTask {
|
||||
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
|
||||
@Autowired
|
||||
private IActRuExecutionService iActRuExecutionService;
|
||||
@Autowired
|
||||
private ISchBaseTaskService iSchBaseTaskService;
|
||||
|
||||
@Override
|
||||
public JSONObject createTask(JSONObject data) {
|
||||
@@ -77,6 +82,11 @@ public class PalletInStorageTask extends AbstractTask {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void finish(JSONObject data) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
|
||||
|
||||
@@ -86,6 +86,11 @@ public class PickStorageTask extends AbstractTask {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void finish(JSONObject data) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
package org.nl.wms.dispatch_manage.task.handler.impl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
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 org.apache.commons.lang3.StringUtils;
|
||||
import org.nl.common.domain.constant.DictConstantPool;
|
||||
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.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.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;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/*
|
||||
* @author ZZQ
|
||||
* @Date 2024/5/6 14:34
|
||||
* 出库任务入库任务
|
||||
*/
|
||||
@Service
|
||||
public class moveStorageTask extends AbstractTask {
|
||||
|
||||
@Autowired
|
||||
private ISchBaseTaskService taskService;
|
||||
@Autowired
|
||||
private ISysParamService iSysParamService;
|
||||
|
||||
@Autowired
|
||||
private IStIvtStructattrService iStIvtStructattrService;
|
||||
@Autowired
|
||||
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public JSONObject createTask(JSONObject from) {
|
||||
String vehicle_code = from.getString("vehicle_code");
|
||||
JSONObject form_data = from.getJSONObject("form_data");
|
||||
String start_struct_code = form_data.getString("start_struct_code");
|
||||
String end_struct_code = form_data.getString("end_struct_code");
|
||||
|
||||
List<SchBaseTask> list = taskService.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(",")));
|
||||
}
|
||||
StIvtStructattr source = iStIvtStructattrService.getOne(new QueryWrapper<StIvtStructattr>().eq("vehicle_code", vehicle_code));
|
||||
if (!source.getStruct_code().equals(start_struct_code)){
|
||||
throw new BadRequestException("载具库位变动:当前货位"+source.getStruct_code()+",移库前货位"+start_struct_code);
|
||||
}
|
||||
StIvtStructattr target = iStIvtStructattrService.getOne(new QueryWrapper<StIvtStructattr>().eq("struct_code", end_struct_code));
|
||||
if (StringUtils.isNotEmpty(target.getVehicle_code())){
|
||||
throw new BadRequestException("目标货位存在载具:"+target.getVehicle_code());
|
||||
}
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
task.setId(IdUtil.getStringId());
|
||||
task.setTask_code(CodeUtil.getNewCode("TASK_CODE"));
|
||||
task.setStatus(StatusEnum.FORM_STATUS.code("生成"));
|
||||
task.setHandle_class(this.getClass().getName());
|
||||
task.setAcs_type(StatusEnum.ACS_TYPE.code("立库"));
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setTask_type(from.getString("task_type"));
|
||||
task.setVehicle_code(vehicle_code);
|
||||
task.setPoint_code1(source.getStruct_code());
|
||||
task.setPoint_code2(end_struct_code);
|
||||
taskService.save(task);
|
||||
iMdPbVehicleMaterService.update(new LambdaUpdateWrapper<MdPbVehicleMater>()
|
||||
.set(MdPbVehicleMater::getTask_code,task.getTask_code())
|
||||
.eq(MdPbVehicleMater::getVehicle_code,task.getVehicle_code()));
|
||||
//TODO:是否下发
|
||||
Boolean isSend = from.getBoolean("is_send");
|
||||
if (isSend){
|
||||
//参数封装,调acs接口
|
||||
}
|
||||
return (JSONObject)JSON.toJSON(task);
|
||||
}
|
||||
|
||||
@Override
|
||||
@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());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(JSONObject data) {
|
||||
this.updateTask(data);
|
||||
}
|
||||
}
|
||||
@@ -13,14 +13,19 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.nl.common.domain.entity.PageQuery;
|
||||
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.ListOf;
|
||||
import org.nl.common.utils.MapOf;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.dispatch_manage.task.service.dao.SchBaseTask;
|
||||
import org.nl.wms.dispatch_manage.task.service.dao.mapper.SchBaseTaskMapper;
|
||||
import org.nl.wms.dispatch_manage.task.service.ISchBaseTaskService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.nl.wms.dispatch_manage.task.service.dto.SchBaseTaskQuery;
|
||||
import org.nl.wms.flow_manage.monitor.event.FlowContinueEvent;
|
||||
import org.nl.wms.md_manage.vehicleMater.service.IMdPbVehicleMaterService;
|
||||
import org.nl.wms.md_manage.vehicleMater.service.dao.MdPbVehicleMater;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -39,8 +44,7 @@ import java.util.stream.Collectors;
|
||||
public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBaseTask> implements ISchBaseTaskService {
|
||||
|
||||
@Autowired
|
||||
private SchBaseTaskMapper schBaseTaskMapper;
|
||||
|
||||
IMdPbVehicleMaterService iMdPbVehicleMaterService;
|
||||
|
||||
@Override
|
||||
public IPage<SchBaseTask> queryAll(SchBaseTaskQuery whereJson, PageQuery page) {
|
||||
@@ -53,7 +57,7 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
}
|
||||
}
|
||||
IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
pages = schBaseTaskMapper.selectPageLeftJoin(pages, whereJson, collect);
|
||||
pages = this.baseMapper.selectPageLeftJoin(pages, whereJson, collect);
|
||||
return pages;
|
||||
}
|
||||
|
||||
@@ -70,20 +74,19 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
|
||||
@Override
|
||||
public void update(SchBaseTask entity) {
|
||||
SchBaseTask dto = schBaseTaskMapper.selectById(entity.getTask_code());
|
||||
SchBaseTask dto = this.baseMapper.selectById(entity.getTask_code());
|
||||
if (dto == null) throw new BadRequestException("任务信息不存在");
|
||||
|
||||
String nickName = SecurityUtils.getCurrentNickName();
|
||||
String now = DateUtil.now();
|
||||
entity.setUpdate_name(nickName);
|
||||
entity.setUpdate_time(now);
|
||||
schBaseTaskMapper.updateById(entity);
|
||||
this.baseMapper.updateById(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteAll(Set<String> ids) {
|
||||
// 真删除
|
||||
schBaseTaskMapper.deleteBatchIds(ids);
|
||||
this.removeByIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -98,15 +101,27 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
entity.setCreate_time(now);
|
||||
entity.setUpdate_name(nickName);
|
||||
entity.setUpdate_time(now);
|
||||
schBaseTaskMapper.insert(entity);
|
||||
this.baseMapper.insert(entity);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void operation(JSONObject param) {
|
||||
String taskStatus = param.getString("method_name");
|
||||
String task_code = param.getString("task_code");
|
||||
SchBaseTask task = this.getOne(new QueryWrapper<SchBaseTask>().eq("task_code", task_code));
|
||||
if (task.getStatus().equals(StatusEnum.FORM_STATUS.code("完成"))){
|
||||
throw new BadRequestException("当前任务已完成");
|
||||
}
|
||||
this.update(new UpdateWrapper<SchBaseTask>()
|
||||
.set("status",taskStatus)
|
||||
.eq("task_code",param.getString("task_code")));
|
||||
.set("status",param.getString("method_name"))
|
||||
.eq("task_code", task_code));
|
||||
if (param.getString("method_name").equals(StatusEnum.FORM_STATUS.code("完成"))){
|
||||
MdPbVehicleMater vehicleMater = iMdPbVehicleMaterService.getOne(new QueryWrapper<MdPbVehicleMater>()
|
||||
.eq("vehicle_code", task.getVehicle_code()));
|
||||
if (!StringUtils.isEmpty(vehicleMater.getProc_inst_id())){
|
||||
FlowContinueEvent continueEvent = new FlowContinueEvent(vehicleMater.getProc_inst_id(), null, null);
|
||||
BussEventMulticaster.Publish(continueEvent);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,7 +84,7 @@ public class AlmEarlyDeferralController {
|
||||
almEarlyDeferralDetail.setMaterial_id(material_id);
|
||||
almEarlyDeferralDetailService.save(almEarlyDeferralDetail);
|
||||
}
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@@ -102,7 +102,7 @@ public class AlmEarlyDeferralController {
|
||||
almEarlyDeferral.setId(IdUtil.getStringId());
|
||||
almEarlyDeferral.setCreate_time(DateUtil.now());
|
||||
almEarlyDeferralService.save(almEarlyDeferral);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/update")
|
||||
@@ -110,7 +110,7 @@ public class AlmEarlyDeferralController {
|
||||
AlmEarlyDeferral almEarlyDeferral = dto.toJavaObject(AlmEarlyDeferral.class);
|
||||
almEarlyDeferral.setCreate_time(DateUtil.now());
|
||||
almEarlyDeferralService.updateById(almEarlyDeferral);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ public class AlmEarlyInvController {
|
||||
inv.setId(IdUtil.getStringId());
|
||||
inv.setCreate_time(DateUtil.now());
|
||||
iAlmEarlyInvService.save(inv);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/update")
|
||||
@@ -103,7 +103,7 @@ public class AlmEarlyInvController {
|
||||
AlmEarlyInv inv = dto.toJavaObject(AlmEarlyInv.class);
|
||||
inv.setCreate_time(DateUtil.now());
|
||||
iAlmEarlyInvService.updateById(inv);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/saveDtl")
|
||||
@@ -121,7 +121,7 @@ public class AlmEarlyInvController {
|
||||
almEarlyDtl.setMaterial_id(material_id);
|
||||
iAlmEarlyDtlService.save(almEarlyDtl);
|
||||
}
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
|
||||
@@ -72,7 +72,6 @@ public class ActDeModelController {
|
||||
actDeModel.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
actDeModel.setCreate_time(DateUtil.now());
|
||||
actDeModel.setId(IdUtil.getStringId());
|
||||
actDeModel.setModel_key(IdUtil.getStringId());
|
||||
if (!StringUtils.isEmpty(actDeModel.getModel_editor_json())){
|
||||
try {
|
||||
JSONObject modelJson = JSONObject.parseObject(actDeModel.getModel_editor_json());
|
||||
@@ -106,10 +105,11 @@ public class ActDeModelController {
|
||||
|
||||
@DeleteMapping
|
||||
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
|
||||
if (ids.length > 0) {
|
||||
modelService.removeByIds(Arrays.asList(ids));
|
||||
}
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
throw new BadRequestException("模型配置无法直接删除");
|
||||
// if (ids.length > 0) {
|
||||
// modelService.removeByIds(Arrays.asList(ids));
|
||||
// }
|
||||
// return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/select/{modelId}", produces = "application/json")
|
||||
|
||||
@@ -83,7 +83,7 @@ public abstract class FlowNodeActivityBehavior<T> {
|
||||
.eq("proc_inst_id", proc_inst_id)
|
||||
.set("status", StatusEnum.FLOW_STATUS.code("暂停"))
|
||||
.set("remark","节点:"+entity.getActivityName()+":异常:"+ex.getMessage()));
|
||||
throw new BadRequestException(ex.getMessage());
|
||||
// throw new BadRequestException(ex.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -39,8 +39,8 @@ public class ClassHandler extends TypeHandler<JSONObject,ExecutionEntity<JSONOb
|
||||
auxParam.putAll(entity.getAuxParam());
|
||||
}
|
||||
JSONObject form = process.process(dto.getT(), auxParam);
|
||||
//清空全局配置的数据
|
||||
entity.setAuxParam(new JSONObject());
|
||||
//清空全局配置的数据:暂时不清空只做覆盖
|
||||
// entity.setAuxParam(new JSONObject());
|
||||
result.put("t",form);
|
||||
//后续:涉及框架的参数提到框架中处理
|
||||
String source_form_type = dto.getForm_type();
|
||||
|
||||
@@ -51,7 +51,6 @@ public class StorageChangesProcessHandler implements ClassProcess {
|
||||
//TODO:后续在流程节点中配置监听时间触发
|
||||
BussEventMulticaster.Publish(StructEvent.builder()
|
||||
.task_type(schBaseTask.getTask_type())
|
||||
.status(schBaseTask.getStatus())
|
||||
.vehicle_code(schBaseTask.getVehicle_code())
|
||||
.point_code1(schBaseTask.getPoint_code1())
|
||||
.point_code2(schBaseTask.getPoint_code2())
|
||||
|
||||
@@ -78,7 +78,7 @@ public class FlowOperationServiceImpl implements IFlowOperationService {
|
||||
entity.setStartActivityId(entity.getActivityId());
|
||||
entity.setDeploymentId(deployment.getDeployment_id());
|
||||
commandExecutor.execute(new StartInstanceCmd(),entity);
|
||||
return null;
|
||||
return entity.getProc_inst_id();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -80,4 +80,8 @@ public class FlowStartEvent extends PublishEvent {
|
||||
public ExecutionDto getDto() {
|
||||
return dto;
|
||||
}
|
||||
|
||||
public void setDto(ExecutionDto dto) {
|
||||
this.dto = dto;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package org.nl.wms.pda_manage.palletio.service;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.lang.Assert;
|
||||
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.domain.exception.BadRequestException;
|
||||
import org.nl.common.publish.BussEventMulticaster;
|
||||
@@ -31,8 +32,11 @@ public class PalletIostorinvService {
|
||||
Assert.notNull(form, "参数不能为空");
|
||||
String vehicle_code = form.getString("vehicle_code");
|
||||
String material_id = form.getString("material_id");
|
||||
int count = iMdPbVehicleMaterService.count(new QueryWrapper<MdPbVehicleMater>().eq("vehicle_code", vehicle_code));
|
||||
if (count>0){
|
||||
throw new BadRequestException("入库失败:当前载具信息已经存在");
|
||||
}
|
||||
MdPbVehicleMater vehicleMater = new MdPbVehicleMater();
|
||||
vehicleMater.setGroup_id(IdUtil.getStringId());
|
||||
vehicleMater.setId(IdUtil.getStringId());
|
||||
vehicleMater.setCreate_time(DateUtil.now());
|
||||
vehicleMater.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
|
||||
@@ -1,23 +1,19 @@
|
||||
package org.nl.wms.pm_manage.form_data.controller;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.nl.common.TableDataInfo;
|
||||
import org.nl.common.domain.entity.PageQuery;
|
||||
import org.nl.common.domain.exception.BadRequestException;
|
||||
import org.nl.wms.config_manage.form_struc.service.IBmFormStrucService;
|
||||
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;
|
||||
import org.nl.wms.sync_manage.service.form_mapping.dao.SyncFormMapping;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -32,18 +28,20 @@ import java.util.List;
|
||||
public class PmFormDataController {
|
||||
|
||||
@Autowired
|
||||
private IPmFormDataService formDataService;
|
||||
private IPmFormDataService iPmFormDataService;
|
||||
|
||||
|
||||
@GetMapping()
|
||||
public ResponseEntity<Object> queryAll(FormDataQuery query, PageQuery page) {
|
||||
return new ResponseEntity<>(TableDataInfo.build(formDataService.queryTree(query,page)), HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(TableDataInfo.build(iPmFormDataService.queryTree(query,page)), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@DeleteMapping
|
||||
@Transactional
|
||||
public ResponseEntity<Object> delete(@RequestBody Long[] ids) {
|
||||
if (ids.length > 0) {
|
||||
formDataService.removeByIds(Arrays.asList(ids));
|
||||
iPmFormDataService.removeByIds(Arrays.asList(ids));
|
||||
iPmFormDataService.remove(new QueryWrapper<PmFormData>().in("parent_id",ids));
|
||||
}
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@@ -52,15 +50,15 @@ public class PmFormDataController {
|
||||
public ResponseEntity<Object> getSonDtlFormData(@PathVariable String id){
|
||||
//参数判读,参数解析,调用参数入库
|
||||
//Page<BmFormStruc> page = iBmFormStrucService.page(pageQuery.build(), query.build());
|
||||
return new ResponseEntity<>(formDataService.getSonDtlFormData(id),HttpStatus.OK);
|
||||
return new ResponseEntity<>(iPmFormDataService.getSonDtlFormData(id),HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/sync/{type}")
|
||||
public ResponseEntity<Object> sync(@RequestParam String type, String formDtl) {
|
||||
//参数判读,参数解析,调用参数入库
|
||||
formDataService.syncFormData("type", formDtl);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
iPmFormDataService.syncFormData("type", formDtl);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -38,6 +38,6 @@ public interface IPmFormDataService extends IService<PmFormData> {
|
||||
|
||||
void dynamicSql(String sql);
|
||||
|
||||
List<PmFormData> getByParentId(String parent_id);
|
||||
List<PmFormData> getByParentId(String...parent_id);
|
||||
|
||||
}
|
||||
|
||||
@@ -67,15 +67,6 @@ public class PmFormData implements Serializable {
|
||||
*/
|
||||
private String status = StatusEnum.FORM_STATUS.code("生成");
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String create_time;
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String create_name;
|
||||
|
||||
/**
|
||||
* 物料id
|
||||
@@ -119,4 +110,31 @@ public class PmFormData implements Serializable {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String create_time;
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String create_name;
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String update_time;
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
*/
|
||||
private String update_name;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -31,11 +31,16 @@
|
||||
<result property="source_form_type" column="source_form_type"/>
|
||||
<result property="form_type" column="form_type"/>
|
||||
<result property="status" column="status"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="create_name" column="create_name"/>
|
||||
<result property="create_time" column="create_time"/>
|
||||
<result property="material_id" column="material_id"/>
|
||||
<result property="qty" column="qty"/>
|
||||
<result property="pcsn" column="pcsn"/>
|
||||
<result property="material_code" column="material_code"/>
|
||||
<result property="material_name" column="material_name"/>
|
||||
<result property="material_spec" column="material_spec"/>
|
||||
<result property="single_weight" column="single_weight"/>
|
||||
<result property="vehicle_code" column="vehicle_code"/>
|
||||
<result property="parent_id" column="parent_id"/>
|
||||
<result property="form_data" column="form_data" typeHandler="com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler"/>
|
||||
@@ -67,7 +72,8 @@
|
||||
pm_form_data.*,
|
||||
md_me_materialbase.material_code,
|
||||
md_me_materialbase.material_name,
|
||||
md_me_materialbase.material_spec
|
||||
md_me_materialbase.material_spec,
|
||||
md_me_materialbase.single_weight
|
||||
FROM
|
||||
pm_form_data
|
||||
left join md_me_materialbase on pm_form_data.material_id = md_me_materialbase.material_id
|
||||
@@ -92,7 +98,8 @@
|
||||
pm_form_data.*,
|
||||
md_me_materialbase.material_code,
|
||||
md_me_materialbase.material_name,
|
||||
md_me_materialbase.material_spec
|
||||
md_me_materialbase.material_spec,
|
||||
md_me_materialbase.single_weight
|
||||
from pm_form_data left join md_me_materialbase on pm_form_data.material_id = md_me_materialbase.material_id
|
||||
where parent_id = #{id}
|
||||
</select>
|
||||
|
||||
@@ -63,6 +63,10 @@ public class PmFormDataDto implements Serializable {
|
||||
* 业务单据状态
|
||||
*/
|
||||
private String status;
|
||||
/**
|
||||
* 业务单据状态
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 创建id
|
||||
@@ -90,6 +94,10 @@ public class PmFormDataDto implements Serializable {
|
||||
* 物料spec
|
||||
*/
|
||||
private String material_spec;
|
||||
/**
|
||||
* 物料单重
|
||||
*/
|
||||
private String single_weight;
|
||||
|
||||
/**
|
||||
* 数量
|
||||
|
||||
@@ -224,9 +224,10 @@ public class PmFormDataServiceImpl extends ServiceImpl<PmFormDataMapper, PmFormD
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PmFormData> getByParentId(String parent_id) {
|
||||
public List<PmFormData> getByParentId(String[] parent_id) {
|
||||
Assert.notNull(parent_id,"请求参数不能为空");
|
||||
return this.list(new QueryWrapper<PmFormData>().eq("parent_id",parent_id));
|
||||
QueryWrapper<PmFormData> query = new QueryWrapper<PmFormData>().in("parent_id", parent_id);
|
||||
return this.list(query);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,97 @@
|
||||
package org.nl.wms.stor_manage.checkStorage.controller;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
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.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;
|
||||
import org.nl.wms.stor_manage.checkStorage.service.CheckStorageService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 表单信息表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2024-03-25
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/check")
|
||||
public class CheckController {
|
||||
|
||||
@Autowired
|
||||
private IPmFormDataService iPmFormDataService;
|
||||
@Autowired
|
||||
private CheckStorageService checkStorageService;
|
||||
|
||||
|
||||
@GetMapping()
|
||||
public ResponseEntity<Object> queryAll(FormDataQuery query, PageQuery page) {
|
||||
return new ResponseEntity<>(TableDataInfo.build(iPmFormDataService.queryTree(query,page)), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping("/getSonFormData/{id}")
|
||||
public ResponseEntity<Object> getSonDtlFormData(@PathVariable String id){
|
||||
//参数判读,参数解析,调用参数入库
|
||||
//Page<BmFormStruc> page = iBmFormStrucService.page(pageQuery.build(), query.build());
|
||||
return new ResponseEntity<>(iPmFormDataService.getSonDtlFormData(id),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/save")
|
||||
@Log("新增盘点单")
|
||||
public ResponseEntity<Object> save(@RequestBody JSONObject params) {
|
||||
checkStorageService.save(params);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/updateStatus")
|
||||
@Log("跟新单据状态")
|
||||
public ResponseEntity<Object> updateStatus(@RequestBody JSONObject param) {
|
||||
//TODO:明细校验
|
||||
List<PmFormData> childs = iPmFormDataService.getByParentId(param.getString("id"));
|
||||
long tmpCount = childs.stream().filter(a -> a.getStatus().equals(StatusEnum.FORM_STATUS.code("生成"))).count();
|
||||
if (tmpCount==0){
|
||||
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
|
||||
.set("status",param.getString("status"))
|
||||
.eq("id",param.getString("id")));
|
||||
}
|
||||
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) {
|
||||
checkStorageService.taskOpen(param);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@DeleteMapping()
|
||||
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
|
||||
checkStorageService.delete(ids);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,149 @@
|
||||
package org.nl.wms.stor_manage.checkStorage.service;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
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.flow_manage.flow.framework.entity.ExecutionDto;
|
||||
import org.nl.wms.flow_manage.monitor.event.FlowStartEvent;
|
||||
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.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.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/*
|
||||
* @author ZZQ
|
||||
* @Date 2024/6/17 21:25
|
||||
*/
|
||||
@Service
|
||||
public class CheckStorageService {
|
||||
@Autowired
|
||||
private IPmFormDataService iFormDataService;
|
||||
@Autowired
|
||||
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
|
||||
@Autowired
|
||||
private IStIvtStructattrService iStIvtStructattrService;
|
||||
|
||||
|
||||
/**
|
||||
* 生成移库单
|
||||
* @param form
|
||||
*/
|
||||
@Transactional
|
||||
public void save(JSONObject form){
|
||||
ArrayList<PmFormData> list = new ArrayList<>();
|
||||
Set<String> structs = new HashSet<>();
|
||||
|
||||
String user = SecurityUtils.getCurrentNickName();
|
||||
String now = DateUtil.now();
|
||||
List items = (List)form.remove("item");
|
||||
PmFormData mst = form.toJavaObject(PmFormData.class);
|
||||
mst.setCreate_name(user);
|
||||
mst.setCreate_time(now);
|
||||
mst.setId(IdUtil.getStringId());
|
||||
mst.setStatus(StatusEnum.FORM_STATUS.code("生成"));
|
||||
mst.setCode(CodeUtil.getNewCode(mst.getForm_type()));
|
||||
list.add(mst);
|
||||
for (Object itemO : items) {
|
||||
JSONObject itemJ = new JSONObject((Map) itemO);
|
||||
PmFormData dtl = itemJ.toJavaObject(PmFormData.class);
|
||||
dtl.setCreate_name(user);
|
||||
dtl.setCreate_time(now);
|
||||
dtl.setId(IdUtil.getStringId());
|
||||
dtl.setStatus(StatusEnum.FORM_STATUS.code("生成"));
|
||||
dtl.setParent_id(mst.getId());
|
||||
structs.add(dtl.getForm_data().getString("struct_code"));
|
||||
list.add(dtl);
|
||||
}
|
||||
iFormDataService.saveBatch(list);
|
||||
iStIvtStructattrService.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("lock_type", StatusEnum.LOCK.code("移库锁"))
|
||||
.in("struct_code",structs));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除移库单
|
||||
* @param ids
|
||||
*/
|
||||
@Transactional
|
||||
public void delete(String[] ids){
|
||||
if (ids.length>0){
|
||||
List<PmFormData> dtls = iFormDataService.getByParentId(ids);
|
||||
List<String> removeCollect = dtls.stream().map(PmFormData::getId).collect(Collectors.toList());
|
||||
removeCollect.addAll(Arrays.asList(ids));
|
||||
List<String> structs = new ArrayList<>();
|
||||
for (PmFormData dtl : dtls) {
|
||||
String struct_code = dtl.getForm_data().getString("struct_code");
|
||||
structs.add(struct_code);
|
||||
}
|
||||
iFormDataService.removeByIds(removeCollect);
|
||||
iStIvtStructattrService.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("lock_type", StatusEnum.LOCK.code("无锁"))
|
||||
.in("struct_code",structs));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void taskOpen(JSONObject form){
|
||||
PmFormData mst = form.toJavaObject(PmFormData.class);
|
||||
if (StringUtils.isNotEmpty(mst.getProc_inst_id())){
|
||||
throw new BadRequestException("下发失败:当前单据已存在流程,请勿重新下发");
|
||||
}
|
||||
JSONObject mstJ = (JSONObject) JSON.toJSON(mst);
|
||||
ExecutionDto dto = new ExecutionDto();
|
||||
dto.setForm_id(mst.getId());
|
||||
dto.setForm_type(mst.getForm_type());
|
||||
dto.setSource_form_type(mst.getSource_form_type());
|
||||
dto.setSource_form_id(mst.getSource_form_id());
|
||||
dto.setT(mstJ);
|
||||
dto.setItem(packageT(mstJ,"id"));
|
||||
FlowStartEvent startEvent = new FlowStartEvent("st_ivt_check",
|
||||
(proc_inst_id, empPlace) -> iMdPbVehicleMaterService.update(new UpdateWrapper<MdPbVehicleMater>().set("proc_inst_id", proc_inst_id).eq("vehicle_code", empPlace))
|
||||
, null);
|
||||
startEvent.setDto(dto);
|
||||
startEvent.setCallback(proc_inst_id->{
|
||||
iFormDataService.update(new UpdateWrapper<PmFormData>()
|
||||
.set("status",StatusEnum.FORM_STATUS.code("执行中"))
|
||||
.set("proc_inst_id",proc_inst_id)
|
||||
.eq("id",mst.getId()));
|
||||
});
|
||||
BussEventMulticaster.Publish(startEvent);
|
||||
|
||||
}
|
||||
private List<ExecutionDto> packageT(JSONObject current,String itemField){
|
||||
String id = current.getString(itemField);
|
||||
List<PmFormData> items = iFormDataService.getByParentId(id);
|
||||
if (!CollectionUtils.isEmpty(items)){
|
||||
List<ExecutionDto> list = new ArrayList<>();
|
||||
for (PmFormData item : items) {
|
||||
JSONObject itemJ = (JSONObject) JSON.toJSON(item);
|
||||
ExecutionDto itemDto = new ExecutionDto();
|
||||
itemDto.setT(itemJ);
|
||||
itemDto.setForm_id(item.getId());
|
||||
itemDto.setForm_type(item.getForm_type());
|
||||
itemDto.setSource_form_type(item.getSource_form_type());
|
||||
itemDto.setSource_form_id(item.getSource_form_id());
|
||||
itemDto.setItem(packageT(itemJ,itemField));
|
||||
list.add(itemDto);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -233,7 +233,8 @@ public class StIvtIostorinvServiceImpl extends ServiceImpl<StIvtIostorinvOutMapp
|
||||
, (proc_inst_id,innerVehicle) -> iMdPbVehicleMaterService.update(new UpdateWrapper<MdPbVehicleMater>()
|
||||
.set("proc_inst_id",proc_inst_id)
|
||||
.in("vehicle_code",innerVehicle==null?vechiles: ListOf.of(innerVehicle)))
|
||||
,null)
|
||||
//传递全局参数:出库分配出库点用
|
||||
,iostorinv.getForm_data())
|
||||
.build("st_ivt_iostorinv",iostorinv.getId(),iostorinv.getSource_form_type(),iostorinv.getSource_form_id(),form)
|
||||
.build("st_ivt_iostorinvdtl",dtlVo)
|
||||
);
|
||||
|
||||
@@ -29,23 +29,18 @@ public class StructEventListener extends AbstraceListener<StructEvent> {
|
||||
@Override
|
||||
protected String doEvent(StructEvent event) {
|
||||
//根据不同的task_type获取对应出入库类型
|
||||
String status = event.getStatus();
|
||||
String task_type = event.getTask_type();
|
||||
|
||||
if (status.equals(StatusEnum.FORM_STATUS.code("生成"))){
|
||||
|
||||
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);
|
||||
}
|
||||
if (status.equals(StatusEnum.FORM_STATUS.code("执行中"))){
|
||||
|
||||
}
|
||||
if (status.equals(StatusEnum.FORM_STATUS.code("完成"))){
|
||||
//更新出入库单明细状态;如果单据类型是其他的则从from-data表中更新
|
||||
Boolean in = StatusEnum.IOBILL_TYPE_IN.check(task_type);
|
||||
structattrService.changeStruct(in?event.getPoint_code2():event.getPoint_code1(),in?event.getVehicle_code():null,task_type);
|
||||
}
|
||||
if (status.equals(StatusEnum.FORM_STATUS.code("取消"))){
|
||||
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
package org.nl.wms.stor_manage.move.controller;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import org.nl.common.TableDataInfo;
|
||||
import org.nl.common.domain.entity.PageQuery;
|
||||
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;
|
||||
import org.nl.wms.stor_manage.move.service.MovingService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 表单信息表 前端控制器
|
||||
* </p>
|
||||
*
|
||||
* @author generator
|
||||
* @since 2024-03-25
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/move")
|
||||
public class MovingController {
|
||||
|
||||
@Autowired
|
||||
private IPmFormDataService iPmFormDataService;
|
||||
@Autowired
|
||||
private MovingService movingService;
|
||||
|
||||
|
||||
@GetMapping()
|
||||
public ResponseEntity<Object> queryAll(FormDataQuery query, PageQuery page) {
|
||||
return new ResponseEntity<>(TableDataInfo.build(iPmFormDataService.queryTree(query,page)), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping("/getSonFormData/{id}")
|
||||
public ResponseEntity<Object> getSonDtlFormData(@PathVariable String id){
|
||||
//参数判读,参数解析,调用参数入库
|
||||
//Page<BmFormStruc> page = iBmFormStrucService.page(pageQuery.build(), query.build());
|
||||
return new ResponseEntity<>(iPmFormDataService.getSonDtlFormData(id),HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/save")
|
||||
public ResponseEntity<Object> save(@RequestBody JSONObject params) {
|
||||
movingService.save(params);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/updateStatus")
|
||||
public ResponseEntity<Object> updateStatus(@RequestBody JSONObject param) {
|
||||
//TODO:明细校验
|
||||
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
|
||||
.set("status",param.getString("status"))
|
||||
.eq("id",param.getString("id")));
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/taskOpen")
|
||||
public ResponseEntity<Object> taskOpen(@RequestBody JSONObject param) {
|
||||
movingService.taskOpen(param);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@DeleteMapping()
|
||||
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
|
||||
movingService.delete(ids);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,163 @@
|
||||
package org.nl.wms.stor_manage.move.service;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
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.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.MapOf;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
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;
|
||||
import org.nl.wms.flow_manage.monitor.event.FlowContinueEvent;
|
||||
import org.nl.wms.flow_manage.monitor.event.FlowStartEvent;
|
||||
import org.nl.wms.md_manage.group_dick.service.IMdGruopDickService;
|
||||
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.pm_manage.form_data.service.IPmFormDataService;
|
||||
import org.nl.wms.pm_manage.form_data.service.dao.PmFormData;
|
||||
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.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/*
|
||||
* @author ZZQ
|
||||
* @Date 2024/6/17 21:25
|
||||
*/
|
||||
@Service
|
||||
public class MovingService {
|
||||
@Autowired
|
||||
private IPmFormDataService iFormDataService;
|
||||
@Autowired
|
||||
private IMdPbVehicleMaterService iMdPbVehicleMaterService;
|
||||
@Autowired
|
||||
private IStIvtStructattrService iStIvtStructattrService;
|
||||
|
||||
|
||||
/**
|
||||
* 生成移库单
|
||||
* @param form
|
||||
*/
|
||||
@Transactional
|
||||
public void save(JSONObject form){
|
||||
ArrayList<PmFormData> list = new ArrayList<>();
|
||||
Set<String> structs = new HashSet<>();
|
||||
|
||||
String user = SecurityUtils.getCurrentNickName();
|
||||
String now = DateUtil.now();
|
||||
List items = (List)form.remove("item");
|
||||
PmFormData mst = form.toJavaObject(PmFormData.class);
|
||||
mst.setCreate_name(user);
|
||||
mst.setCreate_time(now);
|
||||
mst.setId(IdUtil.getStringId());
|
||||
mst.setStatus(StatusEnum.FORM_STATUS.code("生成"));
|
||||
mst.setCode(CodeUtil.getNewCode(mst.getForm_type()));
|
||||
list.add(mst);
|
||||
for (Object itemO : items) {
|
||||
JSONObject itemJ = new JSONObject((Map) itemO);
|
||||
PmFormData dtl = itemJ.toJavaObject(PmFormData.class);
|
||||
dtl.setCreate_name(user);
|
||||
dtl.setCreate_time(now);
|
||||
dtl.setId(IdUtil.getStringId());
|
||||
dtl.setStatus(StatusEnum.FORM_STATUS.code("生成"));
|
||||
dtl.setParent_id(mst.getId());
|
||||
structs.add(dtl.getForm_data().getString("start_struct_code"));
|
||||
structs.add(dtl.getForm_data().getString("end_struct_code"));
|
||||
list.add(dtl);
|
||||
}
|
||||
if (structs.size() != items.size()*2){
|
||||
throw new BadRequestException("移库分配异常:库位信息不正确");
|
||||
}
|
||||
iFormDataService.saveBatch(list);
|
||||
iStIvtStructattrService.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("lock_type", StatusEnum.LOCK.code("移库锁"))
|
||||
.in("struct_code",structs));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除移库单
|
||||
* @param ids
|
||||
*/
|
||||
@Transactional
|
||||
public void delete(String[] ids){
|
||||
if (ids.length>0){
|
||||
List<PmFormData> dtls = iFormDataService.getByParentId(ids);
|
||||
List<String> removeCollect = dtls.stream().map(PmFormData::getId).collect(Collectors.toList());
|
||||
removeCollect.addAll(Arrays.asList(ids));
|
||||
|
||||
List<String> structs = new ArrayList<>();
|
||||
for (PmFormData dtl : dtls) {
|
||||
String start_struct_code = dtl.getForm_data().getString("start_struct_code");
|
||||
String end_struct_code = dtl.getForm_data().getString("end_struct_code");
|
||||
structs.add(start_struct_code);
|
||||
structs.add(end_struct_code);
|
||||
}
|
||||
iFormDataService.removeByIds(removeCollect);
|
||||
iStIvtStructattrService.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("lock_type", StatusEnum.LOCK.code("无锁"))
|
||||
.in("struct_code",structs));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void taskOpen(JSONObject form){
|
||||
PmFormData mst = form.toJavaObject(PmFormData.class);
|
||||
if (StringUtils.isNotEmpty(mst.getProc_inst_id())){
|
||||
throw new BadRequestException("下发失败:当前单据已存在流程,请勿重新下发");
|
||||
}
|
||||
JSONObject mstJ = (JSONObject) JSON.toJSON(mst);
|
||||
ExecutionDto dto = new ExecutionDto();
|
||||
dto.setForm_id(mst.getId());
|
||||
dto.setForm_type(mst.getForm_type());
|
||||
dto.setSource_form_type(mst.getSource_form_type());
|
||||
dto.setSource_form_id(mst.getSource_form_id());
|
||||
dto.setT(mstJ);
|
||||
dto.setItem(packageT(mstJ,"id"));
|
||||
FlowStartEvent startEvent = new FlowStartEvent("st_ivt_move",
|
||||
(proc_inst_id, empPlace) -> iMdPbVehicleMaterService.update(new UpdateWrapper<MdPbVehicleMater>().set("proc_inst_id", proc_inst_id).eq("vehicle_code", empPlace))
|
||||
, null);
|
||||
startEvent.setDto(dto);
|
||||
startEvent.setCallback(proc_inst_id->{
|
||||
iFormDataService.update(new UpdateWrapper<PmFormData>()
|
||||
.set("status",StatusEnum.FORM_STATUS.code("执行中"))
|
||||
.set("proc_inst_id",proc_inst_id)
|
||||
.eq("id",mst.getId()));
|
||||
});
|
||||
BussEventMulticaster.Publish(startEvent);
|
||||
|
||||
}
|
||||
private List<ExecutionDto> packageT(JSONObject current,String itemField){
|
||||
String id = current.getString(itemField);
|
||||
List<PmFormData> items = iFormDataService.getByParentId(id);
|
||||
if (!CollectionUtils.isEmpty(items)){
|
||||
List<ExecutionDto> list = new ArrayList<>();
|
||||
for (PmFormData item : items) {
|
||||
JSONObject itemJ = (JSONObject) JSON.toJSON(item);
|
||||
ExecutionDto itemDto = new ExecutionDto();
|
||||
itemDto.setT(itemJ);
|
||||
itemDto.setForm_id(item.getId());
|
||||
itemDto.setForm_type(item.getForm_type());
|
||||
itemDto.setSource_form_type(item.getSource_form_type());
|
||||
itemDto.setSource_form_id(item.getSource_form_id());
|
||||
itemDto.setItem(packageT(itemJ,itemField));
|
||||
list.add(itemDto);
|
||||
}
|
||||
return list;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -35,7 +35,7 @@ public class PickingController {
|
||||
|
||||
@GetMapping()
|
||||
public ResponseEntity<Object> queryAll(FormDataQuery query, PageQuery page) {
|
||||
return new ResponseEntity<>(TableDataInfo.build(iPmFormDataService.queryTree(query,page)), HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(TableDataInfo.build(iPmFormDataService.queryTree(query,page)), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping("/getSonFormData/{id}")
|
||||
@@ -50,12 +50,12 @@ public class PickingController {
|
||||
public ResponseEntity<Object> sync(@RequestParam String type, String formDtl) {
|
||||
//参数判读,参数解析,调用参数入库
|
||||
iPmFormDataService.syncFormData("type", formDtl);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/savePickTask")
|
||||
public ResponseEntity<Object> savePickTask(@RequestBody JSONArray params) {
|
||||
pickingService.savePickTask(params);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/updateStatus")
|
||||
public ResponseEntity<Object> updateStatus(@RequestBody JSONObject param) {
|
||||
@@ -63,12 +63,12 @@ public class PickingController {
|
||||
iPmFormDataService.update(new UpdateWrapper<PmFormData>()
|
||||
.set("status",param.getString("status"))
|
||||
.eq("id",param.getString("id")));
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/taskOpen")
|
||||
public ResponseEntity<Object> taskOpen(@RequestBody JSONObject param) {
|
||||
pickingService.taskOpen(param);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ public class StIvtStructattrController {
|
||||
dto.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
dto.setCreate_time(DateUtil.now());
|
||||
structattrService.save(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -27,7 +27,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);
|
||||
void changeStruct(String struct_code,String vehicle_code,String task_type,Boolean in_storage);
|
||||
void deleteAll(Long[] ids);
|
||||
|
||||
Object pageQuery(StructattrQuery query, PageQuery page);
|
||||
|
||||
@@ -4,22 +4,42 @@
|
||||
|
||||
<select id="getPageQuery" resultType="java.util.Map">
|
||||
SELECT
|
||||
md_pb_vehicleMater.material_id,
|
||||
md_pb_vehicleMater.qty,
|
||||
md_pb_vehicleMater.frozen_qty,
|
||||
md_pb_vehicleMater.pcsn,
|
||||
md_pb_vehicleMater.unit_id,
|
||||
md_me_materialbase.material_name,
|
||||
md_me_materialbase.material_code,
|
||||
md_me_materialbase.material_spec,
|
||||
struct.*,
|
||||
sect.sect_name,
|
||||
stor.stor_name
|
||||
FROM
|
||||
st_ivt_structattr struct
|
||||
left join st_ivt_sectattr sect on sect.sect_id = struct.sect_code
|
||||
left join st_ivt_bsrealstorattr stor on sect.stor_id = stor.id
|
||||
left join st_ivt_bsrealstorattr stor on struct.stor_code = stor.stor_code
|
||||
left join md_pb_vehicleMater on struct.vehicle_code = md_pb_vehicleMater.vehicle_code
|
||||
left JOIN md_me_materialbase on md_pb_vehicleMater.material_id = md_me_materialbase.material_id
|
||||
<where>
|
||||
<if test="query.is_used == true">
|
||||
and struct.is_used = '0'
|
||||
</if>
|
||||
<if test="query.material != null and query.material != ''">
|
||||
and (material_spec LIKE '%${query.material}%'
|
||||
or material_name LIKE '%${query.material}%')
|
||||
</if>
|
||||
<if test="query.is_used == false">
|
||||
and struct.is_used = '1'
|
||||
</if>
|
||||
<if test="query.is_used == null and query.is_used == ''">
|
||||
and struct.is_used = #{query.is_used}
|
||||
<if test="query.has == true">
|
||||
and struct.vehicle_code is not null and struct.lock_type = '00'
|
||||
</if>
|
||||
<if test="query.has == false">
|
||||
and struct.vehicle_code is null and struct.lock_type = '00'
|
||||
</if>
|
||||
<if test="query.vehicle_code != null and query.vehicle_code != ''">
|
||||
and struct.vehicle_code is not null
|
||||
</if>
|
||||
<if test="query.stor_code != null and query.stor_code != ''">
|
||||
and struct.stor_code = #{query.stor_code}
|
||||
@@ -35,6 +55,7 @@
|
||||
or struct.struct_name LIKE '%${query.search}%')
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY struct.struct_code
|
||||
</select>
|
||||
<select id="collectVehicle" resultType="org.nl.wms.stor_manage.struct.service.dto.StructattrVechielDto">
|
||||
SELECT
|
||||
|
||||
@@ -19,6 +19,8 @@ public class StructattrQuery extends BaseQuery<StIvtStructattr> {
|
||||
private String lock_type;
|
||||
private Boolean is_used;
|
||||
private String vehicle_code;
|
||||
private String material;
|
||||
private Boolean has;
|
||||
@Override
|
||||
public void paramMapping() {
|
||||
super.doP.put("search", QParam.builder().k(new String[]{"struct_code"}).type(QueryTEnum.LK).build());
|
||||
|
||||
@@ -64,12 +64,12 @@ public class StIvtStructattrServiceImpl extends ServiceImpl<StIvtStructattrMappe
|
||||
System.out.println(in);
|
||||
}
|
||||
@Override
|
||||
public void changeStruct(String struct_code, String vehicle_code, String task_type) {
|
||||
public void changeStruct(String struct_code, String vehicle_code, String task_type,Boolean in_storage) {
|
||||
String now = DateUtil.now();
|
||||
this.update(new UpdateWrapper<StIvtStructattr>()
|
||||
.set("vehicle_code",vehicle_code)
|
||||
.set("update_time",now)
|
||||
.set("lock_type", StatusEnum.LOCK.code("无"))
|
||||
.set("lock_type", StatusEnum.LOCK.code("无锁"))
|
||||
.eq("struct_code",struct_code));
|
||||
//变动结存记录"如果没有载具物料信息则不考虑结存:TODO:多级载具处理
|
||||
List<MdPbVehicleMater> vehicleMaters = vehicleMaterService.list(new QueryWrapper<MdPbVehicleMater>().eq("vehicle_code", vehicle_code));
|
||||
@@ -91,7 +91,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( StatusEnum.IOBILL_TYPE_IN.check(task_type));
|
||||
record.setGrowth(in_storage);
|
||||
records.add(record);
|
||||
}
|
||||
if (!CollectionUtils.isEmpty(records)){
|
||||
|
||||
@@ -43,13 +43,13 @@ public class BmExternalFieldMappingController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody BmExternalFieldMapping dto) {
|
||||
mappingsService.save(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/addRows")
|
||||
public ResponseEntity<Object> addRows(@RequestBody RequestMappingParam param) {
|
||||
mappingsService.addRows(param);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
@@ -97,7 +97,7 @@ public class SyncFormMappingController {
|
||||
if (needSave!=null && (Boolean)needSave){
|
||||
formDataService.saveBatch(pmFormDatas);
|
||||
}
|
||||
return new ResponseEntity<>(TableDataInfo.build(pmFormDatas),HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(TableDataInfo.build(pmFormDatas),HttpStatus.OK);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -47,7 +47,7 @@ public class SysCodeRuleController {
|
||||
// //SaCheckPermission("genCode:add")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody SysCodeRule codeRule) {
|
||||
codeRuleService.create(codeRule);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("删除编码")
|
||||
|
||||
@@ -42,7 +42,7 @@ public class SysCodeRuleDetailController {
|
||||
// //SaCheckPermission("genCode:add")
|
||||
public ResponseEntity<Object> create(@RequestBody SysCodeRuleDetail codeRuleDetail){
|
||||
codeDetailService.create(codeRuleDetail);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("删除编码明细")
|
||||
|
||||
@@ -89,7 +89,7 @@ public class DeptController {
|
||||
// //SaCheckPermission("dept:add")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody SysDept resources){
|
||||
deptService.createDept(resources);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
//
|
||||
@Log("修改部门")
|
||||
|
||||
@@ -57,7 +57,7 @@ public class SysDictController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@RequestBody Dict dict){
|
||||
dictService.create(dict);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@@ -94,7 +94,7 @@ public class SysDictController {
|
||||
@PostMapping("/dictDetail")
|
||||
public ResponseEntity<Object> createDetail(@RequestBody Dict resources){
|
||||
dictService.createDetail(resources);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改字典详情")
|
||||
|
||||
@@ -99,7 +99,7 @@ public class SysMenuController {
|
||||
//SaCheckPermission("menu:add")
|
||||
public ResponseEntity<Object> create(@RequestBody SysMenu form) {
|
||||
iSysMenuService.create(form);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改菜单")
|
||||
|
||||
@@ -50,7 +50,7 @@ class SysParamController {
|
||||
////SaCheckPermission("param:add")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody Param param) {
|
||||
paramService.create(param);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@@ -77,7 +77,7 @@ class SysParamController {
|
||||
//("根据编码获取值")
|
||||
@SaIgnore
|
||||
public ResponseEntity<Object> getValueByCode(@RequestBody String code) {
|
||||
return new ResponseEntity<>(paramService.findByCode(code), HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(paramService.findByCode(code), HttpStatus.OK);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -50,7 +50,7 @@ public class SysDataPermissionController {
|
||||
////SaCheckPermission("@el.check('dataPermission:add')")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody SysDataPermission permission) {
|
||||
dataPermissionService.create(permission);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
@@ -90,7 +90,7 @@ public class SysDataPermissionController {
|
||||
//("保存数据权限")
|
||||
public ResponseEntity<Object> saveDataPermission(@RequestBody JSONObject datas){
|
||||
dataPermissionService.savePermission(datas);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/dataShow")
|
||||
|
||||
@@ -60,7 +60,7 @@ public class SysQuartzJobController {
|
||||
throw new BadRequestException("A new " + ENTITY_NAME + " cannot already have an ID");
|
||||
}
|
||||
quartzJobService.createJob(resources);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改定时任务")
|
||||
|
||||
@@ -50,7 +50,7 @@ public class SysRoleController {
|
||||
//SaCheckPermission("roles:add")
|
||||
public ResponseEntity<Object> create(@RequestBody JSONObject param) {
|
||||
roleService.create(param);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改角色")
|
||||
|
||||
@@ -63,7 +63,7 @@ public class UserController {
|
||||
@PostMapping
|
||||
public ResponseEntity<Object> create(@RequestBody JSONObject user){
|
||||
userService.create(user);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@Log("修改用户")
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
_ _ ___________ _ _____ _ ___________ _____
|
||||
| \ | | _ | ___ \ | | ___| | | ___| ___|_ _|
|
||||
| \| | | | | |_/ / | | |__ | | | |__ | |_ | |
|
||||
| . ` | | | | ___ \ | | __|| | | __|| _| | |
|
||||
| |\ \ \_/ / |_/ / |____| |___| |____| |___| | | |
|
||||
\_| \_/\___/\____/\_____/\____/\_____/\____/\_| \_/
|
||||
|
||||
:: Spring Boot :: (v2.1.0.RELEASE)
|
||||
------------------------------
|
||||
托盘库编码:FStockPallet
|
||||
料箱库编码: FStockId
|
||||
虚拟库编码: FicStockId
|
||||
------------------------------
|
||||
|
||||
@@ -42,7 +42,7 @@ public class ${className}Controller {
|
||||
//@PreAuthorize("@el.check('${changeClassName}:add')")
|
||||
public ResponseEntity<Object> create(@Validated @RequestBody ${className}Dto dto){
|
||||
${changeClassName}Service.create(dto);
|
||||
return new ResponseEntity<>(HttpStatus.CREATED);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PutMapping
|
||||
|
||||
Reference in New Issue
Block a user