rev:新增流程,新增权限
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
package org.nl.wms.database.workshop.controller;
|
||||
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.base.TableDataInfo;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.logging.annotation.Log;
|
||||
import org.nl.wms.database.workshop.service.IMdBaseWorkshopService;
|
||||
import org.nl.wms.database.workshop.service.IStIvtUsershopService;
|
||||
import org.nl.wms.database.workshop.service.dao.MdBaseWorkshop;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* @author lyd
|
||||
* @date 2023-05-05
|
||||
**/
|
||||
@Slf4j
|
||||
@RestController
|
||||
|
||||
@RequestMapping("/api/userStor")
|
||||
public class StIvtUserShopController {
|
||||
|
||||
@Autowired
|
||||
private IStIvtUsershopService iStIvtUsershopService;
|
||||
|
||||
@GetMapping
|
||||
@Log("查询人员信息")
|
||||
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page) {
|
||||
return new ResponseEntity<>(TableDataInfo.build(iStIvtUsershopService.queryAll(whereJson, page)), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/save")
|
||||
@Log("保存用户车间信息")
|
||||
public ResponseEntity<Object> save(@RequestBody JSONObject whereJson) {
|
||||
iStIvtUsershopService.save(whereJson);
|
||||
return new ResponseEntity<>(HttpStatus.OK);
|
||||
}
|
||||
|
||||
@PostMapping("/queryUserStor")
|
||||
@Log("查询用户对应车间")
|
||||
public ResponseEntity<Object> queryUserStor(@RequestBody JSONObject whereJson) {
|
||||
return new ResponseEntity<>(iStIvtUsershopService.queryUserStor(whereJson), HttpStatus.OK);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package org.nl.wms.database.workshop.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.wms.database.workshop.service.dao.StIvtUsershop;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-31
|
||||
*/
|
||||
public interface IStIvtUsershopService extends IService<StIvtUsershop> {
|
||||
|
||||
/**
|
||||
* 查询数据分页
|
||||
*
|
||||
* @param whereJson 条件
|
||||
* @param pageable 分页参数
|
||||
* @return IPage<MdBaseWorkshop>
|
||||
*/
|
||||
IPage<JSONObject> queryAll(Map whereJson, PageQuery pageable);
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param whereJson /
|
||||
*/
|
||||
void save(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 查询用户对应车间
|
||||
*
|
||||
* @param whereJson /
|
||||
*/
|
||||
List<StIvtUsershop> queryUserStor(JSONObject whereJson);
|
||||
|
||||
/**
|
||||
* 查询人员对应车间公共方法
|
||||
* @return List<String>
|
||||
*/
|
||||
List<String> getWorkShop();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package org.nl.wms.database.workshop.service.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import java.io.Serializable;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 人员权限车间
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-31
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("st_ivt_usershop")
|
||||
public class StIvtUsershop implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableId(value = "user_id")
|
||||
private String user_id;
|
||||
|
||||
/**
|
||||
* 车间编码
|
||||
*/
|
||||
private String work_shop;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package org.nl.wms.database.workshop.service.dao.mapper;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import org.nl.wms.database.workshop.service.dao.StIvtUsershop;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTask;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-31
|
||||
*/
|
||||
public interface StIvtUsershopMapper extends BaseMapper<StIvtUsershop> {
|
||||
|
||||
IPage<JSONObject> selectPageLeftJoin(IPage<JSONObject> pages, Map whereJson);
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.nl.wms.database.workshop.service.dao.mapper.StIvtUsershopMapper">
|
||||
|
||||
<select id="selectPageLeftJoin" resultType="com.alibaba.fastjson.JSONObject">
|
||||
SELECT
|
||||
u.*,
|
||||
sdept2.name
|
||||
FROM
|
||||
sys_user u
|
||||
LEFT JOIN sys_user_dept sdept ON sdept.user_id = u.user_id
|
||||
LEFT JOIN sys_dept sdept2 ON sdept.dept_id = sdept2.dept_id
|
||||
<where>
|
||||
u.is_used = '1'
|
||||
<if test="whereJson.blurry != null">
|
||||
AND (u.username LIKE #{whereJson.blurry} or
|
||||
u.person_name LIKE #{whereJson.blurry})
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY u.create_time DESC
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,83 @@
|
||||
package org.nl.wms.database.workshop.service.impl;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.database.workshop.service.IStIvtUsershopService;
|
||||
import org.nl.wms.database.workshop.service.dao.MdBaseWorkshop;
|
||||
import org.nl.wms.database.workshop.service.dao.StIvtUsershop;
|
||||
import org.nl.wms.database.workshop.service.dao.mapper.StIvtUsershopMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author author
|
||||
* @since 2025-07-31
|
||||
*/
|
||||
@Service
|
||||
public class StIvtUsershopServiceImpl extends ServiceImpl<StIvtUsershopMapper, StIvtUsershop> implements IStIvtUsershopService {
|
||||
|
||||
@Override
|
||||
public IPage<JSONObject> queryAll(Map whereJson, PageQuery page) {
|
||||
IPage<JSONObject> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
pages = this.baseMapper.selectPageLeftJoin(pages, whereJson);
|
||||
return pages;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(JSONObject whereJson) {
|
||||
JSONObject jo = whereJson.getJSONObject("jo");
|
||||
JSONArray rows = whereJson.getJSONArray("rows");
|
||||
String user_id = jo.getString("user_id");
|
||||
this.removeById(user_id);
|
||||
for (int i = 0; i < rows.size(); i++) {
|
||||
JSONObject row = rows.getJSONObject(i);
|
||||
String work_shop = row.getString("work_shop");
|
||||
StIvtUsershop stIvtUsershop = new StIvtUsershop();
|
||||
stIvtUsershop.setUser_id(user_id);
|
||||
stIvtUsershop.setWork_shop(work_shop);
|
||||
this.save(stIvtUsershop);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StIvtUsershop> queryUserStor(JSONObject whereJson) {
|
||||
String user_id = whereJson.getString("user_id");
|
||||
List<StIvtUsershop> list = this.list(
|
||||
new QueryWrapper<StIvtUsershop>().lambda()
|
||||
.eq(StIvtUsershop::getUser_id, user_id)
|
||||
);
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getWorkShop() {
|
||||
String currentUserId = SecurityUtils.getCurrentUserId();
|
||||
List<StIvtUsershop> list = this.list(
|
||||
new QueryWrapper<StIvtUsershop>().lambda()
|
||||
.eq(StIvtUsershop::getUser_id, currentUserId)
|
||||
);
|
||||
List<String> collect = list.stream()
|
||||
.map(StIvtUsershop::getWork_shop)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
if (ObjectUtil.isEmpty(collect)) {
|
||||
collect = null;
|
||||
}
|
||||
return collect;
|
||||
}
|
||||
}
|
||||
@@ -25,6 +25,15 @@ public interface WmsToAcsService {
|
||||
*/
|
||||
AcsResponse renotifyAcs(List<AcsTaskDto> list);
|
||||
|
||||
/**
|
||||
* 下发任务2骑
|
||||
* 统一在这里维护
|
||||
*
|
||||
* @param list: 任务链表
|
||||
* @return
|
||||
*/
|
||||
AcsResponse renotifyAcs2(List<AcsTaskDto> list);
|
||||
|
||||
/**
|
||||
* 下发信号 - 覆膜机释放托盘
|
||||
*
|
||||
|
||||
@@ -36,6 +36,15 @@ public class WmsToAcsServiceImpl implements WmsToAcsService {
|
||||
return resultForAcs;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AcsResponse renotifyAcs2(List<AcsTaskDto> list) {
|
||||
String api = "api/wms/task";
|
||||
AcsResponse resultForAcs = AcsUtil.notifyAcs3(api, IssueAcsRequest.buildRequestObj("下发任务", list));
|
||||
// 记录日志
|
||||
// interactRecordService.saveRecord("下发任务", list, resultForAcs, GeneralDefinition.LMS_ACS);
|
||||
return resultForAcs;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultForAcs getVehicleForLaminatingMachine(List<PutActionRequest> list) {
|
||||
String api = "/api/wms/action";
|
||||
|
||||
@@ -105,8 +105,14 @@ public class MesToWmsServiceImpl implements MesToWmsService {
|
||||
jsonErro.put("ReturnCount", null);
|
||||
jsonErro.put("MsgTime", DateUtil.now());
|
||||
erroList.add(jsonErro);
|
||||
} else {
|
||||
// 判断是否是二期任务
|
||||
if (jsonItem.getString("TaskType").equals("BLGT")) {
|
||||
jsonItem.put("task_type","TWOPUBTask");
|
||||
} else {
|
||||
jsonItem.put("task_type",json.getString("task_type"));
|
||||
}
|
||||
|
||||
taskCreateList.add(jsonItem);
|
||||
}
|
||||
}
|
||||
@@ -125,7 +131,20 @@ public class MesToWmsServiceImpl implements MesToWmsService {
|
||||
}
|
||||
|
||||
// 调用下发acs
|
||||
AcsResponse acsResponse = wmsToAcsService.renotifyAcs(sendAcsList);
|
||||
// 判断是否二期任务
|
||||
AcsResponse acsResponse ;
|
||||
boolean isTwo = sendAcsList.stream()
|
||||
.allMatch(row -> row.getDtl_type().equals("2"));
|
||||
boolean isOne = sendAcsList.stream()
|
||||
.allMatch(row -> row.getDtl_type().equals("1"));
|
||||
if (isTwo) {
|
||||
acsResponse = wmsToAcsService.renotifyAcs2(sendAcsList);
|
||||
} else if (isOne) {
|
||||
acsResponse = wmsToAcsService.renotifyAcs(sendAcsList);
|
||||
} else {
|
||||
throw new BadRequestException("不能一起发送一期任务和二期任务!");
|
||||
}
|
||||
|
||||
if (acsResponse.getCode() == HttpStatus.HTTP_BAD_REQUEST) {
|
||||
// 说明有报错,处理报错内容
|
||||
List<JSONObject> resultErroList = acsResponse.getErrArr().toJavaList(JSONObject.class);
|
||||
|
||||
@@ -20,5 +20,5 @@ public interface SchBaseTaskMapper extends BaseMapper<SchBaseTask> {
|
||||
|
||||
int getCarryingByDevice(String deviceCode, String taskConfig);
|
||||
|
||||
IPage<SchBaseTask> selectPageLeftJoin(IPage<SchBaseTask> pages, SchBaseTaskQuery whereJson, List<String> collect);
|
||||
IPage<SchBaseTask> selectPageLeftJoin(IPage<SchBaseTask> pages, SchBaseTaskQuery whereJson, List<String> collect, List<String> shopList);
|
||||
}
|
||||
|
||||
@@ -70,6 +70,12 @@
|
||||
#{code}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="shopList != null and shopList != ''">
|
||||
AND t.workshop_code IN
|
||||
<foreach collection="shopList" item="work_shop" separator="," open="(" close=")">
|
||||
#{work_shop}
|
||||
</foreach>
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY t.create_time DESC
|
||||
</select>
|
||||
|
||||
@@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.nl.common.domain.query.PageQuery;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.wms.database.workshop.service.IStIvtUsershopService;
|
||||
import org.nl.wms.sch.task.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTaskconfig;
|
||||
@@ -51,6 +52,10 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
@Autowired
|
||||
private TaskFactory taskFactory;
|
||||
|
||||
@Autowired
|
||||
private IStIvtUsershopService iStIvtUsershopService;
|
||||
|
||||
|
||||
@Override
|
||||
public IPage<SchBaseTask> queryAll(SchBaseTaskQuery whereJson, PageQuery page) {
|
||||
List<String> collect = ObjectUtil.isNotEmpty(whereJson.getMore_task_status())
|
||||
@@ -62,7 +67,11 @@ public class SchBaseTaskServiceImpl extends ServiceImpl<SchBaseTaskMapper, SchBa
|
||||
}
|
||||
}
|
||||
IPage<SchBaseTask> pages = new Page<>(page.getPage() + 1, page.getSize());
|
||||
pages = schBaseTaskMapper.selectPageLeftJoin(pages, whereJson, collect);
|
||||
List<String> shopList = iStIvtUsershopService.getWorkShop();
|
||||
if (ObjectUtil.isEmpty(shopList)) {
|
||||
return pages;
|
||||
}
|
||||
pages = schBaseTaskMapper.selectPageLeftJoin(pages, whereJson, collect,shopList);
|
||||
return pages;
|
||||
}
|
||||
|
||||
|
||||
@@ -149,6 +149,10 @@ public class GeneralDefinition {
|
||||
* ACS路径
|
||||
*/
|
||||
public static final String ACS_URL = "acs_url";
|
||||
/**
|
||||
* ACS路径
|
||||
*/
|
||||
public static final String ACS_URL2 = "acs_url2";
|
||||
/**
|
||||
* 是否连接
|
||||
*/
|
||||
|
||||
@@ -113,6 +113,51 @@ public class AcsUtil {
|
||||
return resultForAcs;
|
||||
}
|
||||
|
||||
/**
|
||||
* 二期任务
|
||||
* 新的请求方式:对象中包含数组
|
||||
*
|
||||
* @param api
|
||||
* @param object
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> AcsResponse notifyAcs3(String api, T object) {
|
||||
SysParamServiceImpl sysParamService = SpringContextHolder.getBean(SysParamServiceImpl.class);
|
||||
//判断是否连接ACS系统
|
||||
Param isConnectAcs = sysParamService.findByCode(GeneralDefinition.IS_CONNECT_ACS);
|
||||
if (ObjectUtil.isEmpty(isConnectAcs)) {
|
||||
return AcsResponse.requestRefuse("参数表中:" + GeneralDefinition.IS_CONNECT_ACS + "不存在");
|
||||
}
|
||||
String isConnect = isConnectAcs.getValue();
|
||||
//ACS地址:127.0.0.1:8010
|
||||
Param acsUrlObj = sysParamService.findByCode(GeneralDefinition.ACS_URL2);
|
||||
if (ObjectUtil.isEmpty(acsUrlObj)) {
|
||||
return AcsResponse.requestRefuse("参数表中:" + GeneralDefinition.ACS_URL2 + "不存在");
|
||||
}
|
||||
String acsUrl = acsUrlObj.getValue();
|
||||
JSONObject result;
|
||||
if (StrUtil.equals(GeneralDefinition.NO, isConnect)) {
|
||||
return AcsResponse.requestRefuse("未连接ACS!");
|
||||
}
|
||||
String url = acsUrl + api;
|
||||
log.info("下发acs任务的参数为:{}", object.toString());
|
||||
AcsResponse resultForAcs;
|
||||
try {
|
||||
String resultMsg = HttpRequest.post(url)
|
||||
.body(JSON.toJSONString(object))
|
||||
.execute().body();
|
||||
result = JSONObject.parseObject(resultMsg);
|
||||
resultForAcs = JSONObject.toJavaObject(result, AcsResponse.class);
|
||||
} catch (Exception e) {
|
||||
String msg = e.getMessage();
|
||||
//网络不通
|
||||
log.error("连接失败:{}", msg);
|
||||
return AcsResponse.requestRefuse("网络不通,操作失败!");
|
||||
}
|
||||
return resultForAcs;
|
||||
}
|
||||
|
||||
public static JSONObject cancelTask(String api, JSONObject taskCode) {
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class BZXDMTHCTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class BZXDMTHCTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class CPJDBLXWTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class CPJDBLXWTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class CPJDGHJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class CPJDGHJTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class CPJDYHSZTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class CPJDYHSZTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class CPJDZBJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class CPJDZBJTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class KABDMTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class KABDMTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class KCPJTZPTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -76,6 +77,7 @@ public class KCPJTZPTask extends AbstractTask {
|
||||
}
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class KDMABTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class KDMABTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class KTPDZBJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class KTPDZBJTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MABCPJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class MABCPJTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MABCTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MABCTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MABDMTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MABDMTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MABGPTHJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MABGPTHJTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MBZCPTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MBZCPTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MCDMTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class MCDMTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MCDTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MCDTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MDDMTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MDDMTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MDMCPTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MDMCPTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MDMCTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class MDMCTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MGPTHJABTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MGPTHJABTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MGPTHJCPTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class MGPTHJCPTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class MTHCDCPJTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -70,6 +71,7 @@ public class MTHCDCPJTask extends AbstractTask {
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
|
||||
@@ -54,6 +54,7 @@ public class PUBLICLPQTask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class PUBLICLPQTask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -54,6 +54,7 @@ public class PUBMOVETask extends AbstractTask {
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A1");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
@@ -71,6 +72,7 @@ public class PUBMOVETask extends AbstractTask {
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("1");
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,150 @@
|
||||
package org.nl.wms.sch.task_manage.task.tasks.fj;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import org.nl.common.exception.BadRequestException;
|
||||
import org.nl.common.utils.SecurityUtils;
|
||||
import org.nl.config.IdUtil;
|
||||
import org.nl.wms.ext.mes.service.WmsToMesService;
|
||||
import org.nl.wms.sch.task.service.ISchBaseTaskService;
|
||||
import org.nl.wms.sch.task.service.ISchBaseTaskconfigService;
|
||||
import org.nl.wms.sch.task.service.dao.SchBaseTask;
|
||||
import org.nl.wms.sch.task_manage.AbstractTask;
|
||||
import org.nl.wms.sch.task_manage.AcsTaskDto;
|
||||
import org.nl.wms.sch.task_manage.GeneralDefinition;
|
||||
import org.nl.wms.sch.task_manage.enums.TaskFinishedTypeEnum;
|
||||
import org.nl.wms.sch.task_manage.task.TaskType;
|
||||
import org.nl.wms.sch.task_manage.task.core.TaskStatus;
|
||||
import org.nl.wms.util.TaskUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
/**
|
||||
* @Author: lxy
|
||||
* @Description: 二期公共任务配置
|
||||
* @Date: 2025/7/30
|
||||
*/
|
||||
@Component(value = "TWOPUBTask")
|
||||
@TaskType("TWOPUBTask")
|
||||
public class TWOPUBTask extends AbstractTask {
|
||||
@Autowired
|
||||
private ISchBaseTaskService taskService;
|
||||
|
||||
@Autowired
|
||||
private ISchBaseTaskconfigService taskConfigService;
|
||||
|
||||
@Autowired
|
||||
private WmsToMesService wmsToMesService;
|
||||
|
||||
@Override
|
||||
public String create(JSONObject json) {
|
||||
SchBaseTask task = new SchBaseTask();
|
||||
task.setTask_id(IdUtil.getStringId());
|
||||
task.setTask_code(json.getString("TaskCode"));
|
||||
task.setTask_status(TaskStatus.CREATE.getCode());
|
||||
task.setConfig_code(json.getString("task_type"));
|
||||
task.setPoint_code1(json.getString("PickingLocation"));
|
||||
task.setPoint_code2(json.getString("PlacedLocation"));
|
||||
task.setIs_vehicle(json.getString("IsPanCode"));
|
||||
task.setExt_group_data(json.getString("CarryIsEmptyTuoPan"));
|
||||
task.setRequest_param(json.toString());
|
||||
task.setPriority(json.getString("Priority"));
|
||||
task.setCreate_id(SecurityUtils.getCurrentUserId());
|
||||
task.setCreate_name(SecurityUtils.getCurrentNickName());
|
||||
task.setCreate_time(DateUtil.now());
|
||||
task.setWorkshop_code("A2");
|
||||
taskService.save(task);
|
||||
return task.getTask_id();
|
||||
}
|
||||
|
||||
@Override
|
||||
public AcsTaskDto sendAcsParam(String taskId) {
|
||||
SchBaseTask taskDao = taskService.getById(taskId);
|
||||
|
||||
// 组织下发给acs的数据
|
||||
AcsTaskDto acsTaskDto = new AcsTaskDto();
|
||||
acsTaskDto.setExt_task_uuid(taskDao.getTask_id());
|
||||
acsTaskDto.setTask_code(taskDao.getTask_code());
|
||||
acsTaskDto.setStart_device_code(taskDao.getPoint_code1());
|
||||
acsTaskDto.setNext_device_code(taskDao.getPoint_code2());
|
||||
acsTaskDto.setPriority(taskDao.getPriority());
|
||||
acsTaskDto.setTask_type("1");
|
||||
acsTaskDto.setDtl_type("2");
|
||||
acsTaskDto.setIs_vehicle(taskDao.getIs_vehicle());
|
||||
acsTaskDto.setIs_empvehicle(taskDao.getExt_group_data());
|
||||
|
||||
return acsTaskDto;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void updateStatus(String task_code, TaskStatus status) {
|
||||
// 校验任务
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (taskObj.getTask_status().equals(TaskStatus.FINISHED.getCode())) {
|
||||
throw new BadRequestException("该任务已完成!");
|
||||
}
|
||||
if (taskObj.getTask_status().equals(TaskStatus.CANCELED.getCode())) {
|
||||
throw new BadRequestException("该任务已取消!");
|
||||
}
|
||||
// 根据传来的类型去对任务进行操作
|
||||
if (status.equals(TaskStatus.EXECUTING)) {
|
||||
taskObj.setTask_status(TaskStatus.EXECUTING.getCode());
|
||||
taskObj.setRemark("执行中");
|
||||
TaskUtils.setUpdateByAcs(taskObj);
|
||||
taskService.updateById(taskObj);
|
||||
}
|
||||
if (status.equals(TaskStatus.FINISHED)) {
|
||||
this.finishTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS);
|
||||
}
|
||||
if (status.equals(TaskStatus.CANCELED)) {
|
||||
this.cancelTask(taskObj, TaskFinishedTypeEnum.AUTO_ACS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void forceFinish(String task_code) {
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (ObjectUtil.isEmpty(taskObj)) {
|
||||
throw new BadRequestException("该任务不存在");
|
||||
}
|
||||
this.finishTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void cancel(String task_code) {
|
||||
SchBaseTask taskObj = taskService.getByCode(task_code);
|
||||
if (ObjectUtil.isEmpty(taskObj)) {
|
||||
throw new BadRequestException("该任务不存在");
|
||||
}
|
||||
this.cancelTask(taskObj, TaskFinishedTypeEnum.MANUAL_PC);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void backMes(String task_code) {
|
||||
wmsToMesService.receiveTaskStatusMesData(taskService.getByCode(task_code));
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void finishTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
// 任务完成
|
||||
taskObj.setTask_status(TaskStatus.FINISHED.getCode());
|
||||
taskObj.setRemark(GeneralDefinition.TASK_FINISH);
|
||||
taskObj.setFinished_type(taskFinishedType.getCode());
|
||||
TaskUtils.setUpdateByType(taskObj, taskFinishedType);
|
||||
taskService.updateById(taskObj);
|
||||
|
||||
// 通知mes任务完成
|
||||
wmsToMesService.receiveTaskStatusMesData(taskObj);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void cancelTask(SchBaseTask taskObj, TaskFinishedTypeEnum taskFinishedType) {
|
||||
taskObj.setRemark(GeneralDefinition.TASK_CANCEL);
|
||||
taskObj.setTask_status(TaskStatus.CANCELED.getCode());
|
||||
taskObj.setFinished_type(taskFinishedType.getCode());
|
||||
TaskUtils.setUpdateByType(taskObj, taskFinishedType);
|
||||
taskService.updateById(taskObj);
|
||||
}
|
||||
}
|
||||
322
lms/nladmin-ui/src/views/wms/basedata/userworkshop/index.vue
Normal file
322
lms/nladmin-ui/src/views/wms/basedata/userworkshop/index.vue
Normal file
@@ -0,0 +1,322 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<!--工具栏-->
|
||||
<div class="head-container">
|
||||
<div v-if="crud.props.searchToggle">
|
||||
<!-- 搜索 -->
|
||||
<el-input
|
||||
v-model="query.blurry"
|
||||
size="mini"
|
||||
clearable
|
||||
placeholder="输入名称或者描述搜索"
|
||||
style="width: 200px;"
|
||||
class="filter-item"
|
||||
@keyup.enter.native="crud.toQuery"
|
||||
/>
|
||||
<rrOperation/>
|
||||
</div>
|
||||
<crudOperation :permission="permission"/>
|
||||
</div>
|
||||
<!-- 表单渲染 -->
|
||||
<el-row :gutter="15">
|
||||
<!--角色管理-->
|
||||
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="17" style="margin-bottom: 10px">
|
||||
<el-card class="box-card" shadow="never">
|
||||
<div slot="header" class="clearfix">
|
||||
<span class="role-span">角色列表</span>
|
||||
</div>
|
||||
<el-table
|
||||
ref="table"
|
||||
v-loading="crud.loading"
|
||||
highlight-current-row
|
||||
style="width: 100%;"
|
||||
:data="crud.data"
|
||||
@selection-change="crud.selectionChangeHandler"
|
||||
@current-change="handleCurrentChange"
|
||||
>
|
||||
<el-table-column show-overflow-tooltip prop="username" label="用户名"/>
|
||||
<el-table-column show-overflow-tooltip prop="person_name" label="姓名"/>
|
||||
<el-table-column prop="name" label="部门"/>
|
||||
</el-table>
|
||||
<!--分页组件-->
|
||||
<pagination/>
|
||||
</el-card>
|
||||
</el-col>
|
||||
<!-- 菜单授权 -->
|
||||
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="7">
|
||||
<el-card class="box-card" shadow="never">
|
||||
<div slot="header" class="clearfix">
|
||||
<el-tooltip class="item" effect="dark" content="选择指定角色分配菜单" placement="top">
|
||||
<span class="role-span">仓库选择</span>
|
||||
</el-tooltip>
|
||||
<el-button
|
||||
v-permission="['admin','roles:edit']"
|
||||
:disabled="!showButton"
|
||||
:loading="menuLoading"
|
||||
icon="el-icon-check"
|
||||
size="mini"
|
||||
style="float: right; padding: 6px 9px"
|
||||
type="primary"
|
||||
@click="saveMenu"
|
||||
>保存
|
||||
</el-button>
|
||||
</div>
|
||||
<el-table
|
||||
ref="multipleTable"
|
||||
:data="tableData"
|
||||
tooltip-effect="dark"
|
||||
style="width: 100%"
|
||||
@selection-change="handleSelectionChange">
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55">
|
||||
</el-table-column>
|
||||
<el-table-column prop="work_shop" label="车间编码" />
|
||||
<el-table-column prop="work_name" label="车间名称"/>
|
||||
</el-table>
|
||||
</el-card>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import crudUserStor from '@/views/wms/basedata/userworkshop/userStor'
|
||||
import { getDepts, getDeptSuperior } from '@/views/system/dept/dept'
|
||||
import { getChild, getMenusTree } from '@/views/system/menu/menu'
|
||||
import CRUD, { crud, form, header, presenter } from '@crud/crud'
|
||||
import rrOperation from '@crud/RR.operation'
|
||||
import crudOperation from '@crud/CRUD.operation'
|
||||
import udOperation from '@crud/UD.operation'
|
||||
import pagination from '@crud/Pagination'
|
||||
import Treeselect, { LOAD_CHILDREN_OPTIONS } from '@riophae/vue-treeselect'
|
||||
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
|
||||
import DateRangePicker from '@/components/DateRangePicker/index'
|
||||
|
||||
const defaultForm = { id: null, name: null, depts: [], description: null, dataScope: '全部', level: 3 }
|
||||
export default {
|
||||
name: 'userWorkShop',
|
||||
components: { Treeselect, pagination, crudOperation, rrOperation, udOperation, DateRangePicker },
|
||||
cruds() {
|
||||
return CRUD({
|
||||
title: '角色',
|
||||
url: 'api/userStor',
|
||||
crudMethod: { ...crudUserStor },
|
||||
optShow: { add: false, reset: false, edit: false, del: false }
|
||||
})
|
||||
},
|
||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||
data() {
|
||||
return {
|
||||
level: 3,
|
||||
currentId: 0, menuLoading: false, showButton: false,
|
||||
menus: [], menuIds: [], depts: [], deptDatas: [], // 多选时使用
|
||||
tableData: [
|
||||
{ 'work_shop': 'A1', 'work_name': '车间一' },
|
||||
{ 'work_shop': 'A2', 'work_name': '车间二' }
|
||||
],
|
||||
currentRow: null,
|
||||
permission: {
|
||||
add: ['admin', 'roles:add'],
|
||||
edit: ['admin', 'roles:edit'],
|
||||
del: ['admin', 'roles:del']
|
||||
},
|
||||
rules: {
|
||||
name: [
|
||||
{ required: true, message: '请输入名称', trigger: 'blur' }
|
||||
],
|
||||
permission: [
|
||||
{ required: true, message: '请输入权限', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getMenuDatas(node, resolve) {
|
||||
setTimeout(() => {
|
||||
getMenusTree(node.data.id ? node.data.id : 0).then(res => {
|
||||
resolve(res)
|
||||
})
|
||||
}, 100)
|
||||
},
|
||||
[CRUD.HOOK.afterRefresh]() {
|
||||
this.$refs.menu.setCheckedKeys([])
|
||||
},
|
||||
// 新增前初始化部门信息
|
||||
[CRUD.HOOK.beforeToAdd]() {
|
||||
this.deptDatas = []
|
||||
},
|
||||
// 编辑前初始化自定义数据权限的部门信息
|
||||
[CRUD.HOOK.beforeToEdit](crud, form) {
|
||||
this.deptDatas = []
|
||||
if (form.dataScope === '自定义') {
|
||||
this.getSupDepts(form.depts)
|
||||
}
|
||||
const _this = this
|
||||
form.depts.forEach(function(dept) {
|
||||
_this.deptDatas.push(dept.id)
|
||||
})
|
||||
},
|
||||
// 提交前做的操作
|
||||
[CRUD.HOOK.afterValidateCU](crud) {
|
||||
if (crud.form.dataScope === '自定义' && this.deptDatas.length === 0) {
|
||||
this.$message({
|
||||
message: '自定义数据权限不能为空',
|
||||
type: 'warning'
|
||||
})
|
||||
return false
|
||||
} else if (crud.form.dataScope === '自定义') {
|
||||
const depts = []
|
||||
this.deptDatas.forEach(function(data) {
|
||||
const dept = { id: data }
|
||||
depts.push(dept)
|
||||
})
|
||||
crud.form.depts = depts
|
||||
} else {
|
||||
crud.form.depts = []
|
||||
}
|
||||
return true
|
||||
},
|
||||
// 触发单选
|
||||
handleCurrentChange(val) {
|
||||
if (val) {
|
||||
this.showButton = true
|
||||
this.$refs.multipleTable.clearSelection()
|
||||
this.currentRow = val
|
||||
crudUserStor.queryUserStor(val).then(res => {
|
||||
res.forEach(row => {
|
||||
this.tableData.forEach(selected => {
|
||||
if (selected.work_shop === row.work_shop) {
|
||||
this.$refs.multipleTable.toggleRowSelection(selected, true)
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
menuChange(menu) {
|
||||
// 获取该节点的所有子节点,id 包含自身
|
||||
getChild(menu.id).then(childIds => {
|
||||
// 判断是否在 menuIds 中,如果存在则删除,否则添加
|
||||
if (this.menuIds.indexOf(menu.id) !== -1) {
|
||||
for (let i = 0; i < childIds.length; i++) {
|
||||
const index = this.menuIds.indexOf(childIds[i])
|
||||
if (index !== -1) {
|
||||
this.menuIds.splice(index, 1)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (let i = 0; i < childIds.length; i++) {
|
||||
const index = this.menuIds.indexOf(childIds[i])
|
||||
if (index === -1) {
|
||||
this.menuIds.push(childIds[i])
|
||||
}
|
||||
}
|
||||
}
|
||||
this.$refs.menu.setCheckedKeys(this.menuIds)
|
||||
})
|
||||
},
|
||||
// 保存菜单
|
||||
saveMenu() {
|
||||
const row = {}
|
||||
row.jo = this.currentRow
|
||||
row.rows = this.$refs.multipleTable.selection
|
||||
crudUserStor.save(row).then(res => {
|
||||
this.crud.notify('保存成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
|
||||
})
|
||||
},
|
||||
// 改变数据
|
||||
update() {
|
||||
// 无刷新更新 表格数据
|
||||
crudRoles.get(this.currentId).then(res => {
|
||||
for (let i = 0; i < this.crud.data.length; i++) {
|
||||
if (res.id === this.crud.data[i].id) {
|
||||
this.crud.data[i] = res
|
||||
break
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
// 获取部门数据
|
||||
getDepts() {
|
||||
getDepts({ enabled: true }).then(res => {
|
||||
this.depts = res.content.map(function(obj) {
|
||||
if (obj.hasChildren) {
|
||||
obj.children = null
|
||||
}
|
||||
return obj
|
||||
})
|
||||
})
|
||||
},
|
||||
getSupDepts(depts) {
|
||||
const ids = []
|
||||
depts.forEach(dept => {
|
||||
ids.push(dept.id)
|
||||
})
|
||||
getDeptSuperior(ids).then(res => {
|
||||
const date = res.content
|
||||
this.buildDepts(date)
|
||||
this.depts = date
|
||||
})
|
||||
},
|
||||
buildDepts(depts) {
|
||||
depts.forEach(data => {
|
||||
if (data.children) {
|
||||
this.buildDepts(data.children)
|
||||
}
|
||||
if (data.hasChildren && !data.children) {
|
||||
data.children = null
|
||||
}
|
||||
})
|
||||
},
|
||||
// 获取弹窗内部门数据
|
||||
loadDepts({ action, parentNode, callback }) {
|
||||
if (action === LOAD_CHILDREN_OPTIONS) {
|
||||
getDepts({ enabled: true, pid: parentNode.id }).then(res => {
|
||||
parentNode.children = res.content.map(function(obj) {
|
||||
if (obj.hasChildren) {
|
||||
obj.children = null
|
||||
}
|
||||
return obj
|
||||
})
|
||||
setTimeout(() => {
|
||||
callback()
|
||||
}, 200)
|
||||
})
|
||||
}
|
||||
},
|
||||
// 如果数据权限为自定义则获取部门数据
|
||||
changeScope() {
|
||||
if (this.form.dataScope === '自定义') {
|
||||
this.getDepts()
|
||||
}
|
||||
},
|
||||
checkboxT(row) {
|
||||
return row.level >= this.level
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style rel="stylesheet/scss" lang="scss">
|
||||
.role-span {
|
||||
font-weight: bold;
|
||||
color: #303133;
|
||||
font-size: 15px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
::v-deep .el-input-number .el-input__inner {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
::v-deep .vue-treeselect__multi-value {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
::v-deep .vue-treeselect__multi-value-item {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,43 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function queryStor(data) {
|
||||
return request({
|
||||
url: '/api/userStor/queryStor',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function queryUserStor(data) {
|
||||
return request({
|
||||
url: '/api/userStor/queryUserStor',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function save(data) {
|
||||
return request({
|
||||
url: '/api/userStor/save',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getUserStor(data) {
|
||||
return request({
|
||||
url: '/api/userStor/getUserStor',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getSect(data) {
|
||||
return request({
|
||||
url: '/api/userStor/getSect',
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export default { queryUserStor, queryStor, save, getUserStor, getSect }
|
||||
Reference in New Issue
Block a user